> ## Documentation Index
> Fetch the complete documentation index at: https://docs.launchmystore.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Delete Article

> Delete an article

# Delete Article

Permanently deletes an article. This action cannot be undone.

## Request

<CodeGroup>
  ```bash cURL theme={null}
  curl -X DELETE "https://api.launchmystore.io/api/v1/articles/art_xyz789.json" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://api.launchmystore.io/api/v1/articles/art_xyz789.json', {
    method: 'DELETE',
    headers: {
      'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
    }
  });
  ```
</CodeGroup>

## Path Parameters

<ParamField path="id" type="string" required>
  The unique article ID to delete
</ParamField>

## Response

The response uses the standard `{ status, state, message, data }` envelope.
On success `state` is `"success"`, `message` confirms the deletion, and
`data` is omitted.

<ResponseField name="status" type="integer">
  HTTP status code (`200` on success)
</ResponseField>

<ResponseField name="state" type="string">
  `"success"` or `"error"`
</ResponseField>

<ResponseField name="message" type="string">
  Human-readable confirmation message
</ResponseField>

## Example Response

```json theme={null}
{
  "status": 200,
  "state": "success",
  "message": "Article deleted successfully"
}
```

## Notes

* The deletion is permanent and cannot be undone.

## Error Codes

Errors return the same envelope with `state: "error"` and a `message`.

| Status | `message`           | When                                       |
| ------ | ------------------- | ------------------------------------------ |
| `401`  | —                   | Invalid or missing access token            |
| `403`  | —                   | App doesn't have the `write_content` scope |
| `404`  | `Article not found` | No article with the specified ID exists    |
