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

# Get Content

> Retrieve a full Content Studio article including the markdown body

Retrieve a single Content Studio article with its full markdown `content`, outline, metadata and sources. This is the endpoint to call from a CMS automation once you have an article ID from [List Content](/developers/endpoints/content/list).

<ParamField header="Authorization" type="string" required>
  Bearer token. Example: `Bearer qw-api-xxx`
</ParamField>

### Path Parameters

<ParamField path="brandId" type="string" required>
  The unique identifier of the brand
</ParamField>

<ParamField path="articleId" type="string" required>
  The unique identifier of the article
</ParamField>

### Response

<ResponseField name="success" type="boolean">
  Indicates if the request was successful
</ResponseField>

<ResponseField name="brand" type="object">
  `id`, `name`, `domain`
</ResponseField>

<ResponseField name="article" type="object">
  <Expandable title="Article">
    <ResponseField name="id" type="string">Article ID</ResponseField>
    <ResponseField name="title" type="string">Article title</ResponseField>
    <ResponseField name="slug" type="string">URL slug or `null`</ResponseField>
    <ResponseField name="description" type="string">Short description or `null`</ResponseField>
    <ResponseField name="content" type="string">Full article body in **Markdown**</ResponseField>
    <ResponseField name="articleType" type="string">Article type</ResponseField>
    <ResponseField name="status" type="string">`DRAFT`, `GENERATING`, `LIVE` or `ARCHIVED`</ResponseField>
    <ResponseField name="targetLength" type="number">Target word count used for generation</ResponseField>
    <ResponseField name="wordCount" type="number">Actual word count</ResponseField>
    <ResponseField name="guidelines" type="string">Generation guidelines or `null`</ResponseField>
    <ResponseField name="includeTldr" type="boolean">Whether a TL;DR was requested</ResponseField>
    <ResponseField name="includeFaq" type="boolean">Whether an FAQ was requested</ResponseField>
    <ResponseField name="metaData" type="object">SEO/initialization metadata (JSON) or `null`</ResponseField>
    <ResponseField name="outline" type="object">Structured outline with `sections` or `null`</ResponseField>
    <ResponseField name="finalUrl" type="string">Published URL (if set by you) or `null`</ResponseField>
    <ResponseField name="publishedAt" type="string">Publish timestamp (ISO 8601) or `null`</ResponseField>
    <ResponseField name="generatedAt" type="string">Content generation timestamp (ISO 8601) or `null`</ResponseField>
    <ResponseField name="createdAt" type="string">Creation timestamp (ISO 8601)</ResponseField>
    <ResponseField name="updatedAt" type="string">Last update timestamp (ISO 8601)</ResponseField>

    <ResponseField name="sources" type="array">
      Sources used for the article. Each object has `id`, `title`, `url`, `usageType`, `order`.
    </ResponseField>
  </Expandable>
</ResponseField>

A `404 RESOURCE_NOT_FOUND` is returned if the article does not exist or does not belong to the brand.

### Example Request

```bash theme={null}
curl -X GET "https://www.qwairy.co/api/v1/brands/cm1234567890abcdef/content/art_abc123" \
  -H "Authorization: Bearer qw-api-your-token-here"
```

### Example Response

```json theme={null}
{
  "success": true,
  "brand": {
    "id": "cm1234567890abcdef",
    "name": "My Brand",
    "domain": "mybrand.com"
  },
  "article": {
    "id": "art_abc123",
    "title": "How to choose the right solution in 2026",
    "slug": "how-to-choose-the-right-solution-2026",
    "description": "A practical buyer's guide.",
    "content": "# How to choose the right solution in 2026\n\n## Introduction\n\n...",
    "articleType": "HOW_TO",
    "status": "LIVE",
    "targetLength": 1500,
    "wordCount": 1480,
    "guidelines": null,
    "includeTldr": true,
    "includeFaq": false,
    "metaData": {
      "seo": {
        "metaTitle": "How to choose the right solution (2026 guide)",
        "metaDescription": "A practical buyer's guide for 2026."
      }
    },
    "outline": {
      "sections": [
        { "id": "s1", "level": 2, "title": "Introduction", "order": 0 }
      ],
      "generatedAt": "2026-05-08T14:20:00.000Z"
    },
    "finalUrl": "https://mybrand.com/blog/how-to-choose",
    "publishedAt": "2026-05-10T09:00:00.000Z",
    "generatedAt": "2026-05-08T14:22:00.000Z",
    "createdAt": "2026-05-08T13:50:00.000Z",
    "updatedAt": "2026-05-10T09:00:00.000Z",
    "sources": [
      {
        "id": "src_1",
        "title": "Industry benchmark report",
        "url": "https://example.com/benchmark",
        "usageType": "AUTO",
        "order": 0
      }
    ]
  }
}
```
