Weav

List articles

GET https://api.weav.com/v1/kb-articles

Requires a token with the external-api:read or external-api:write ability.

Query parameters

category_idstring

Format: uuid.

statusstring

One of: draft, published.

updated_sincestring

Format: date-time.

per_pageintegerDefault: 15

Minimum: 1.

Maximum: 100.

pageintegerDefault: 1

Minimum: 1.

Request

cURL
curl --request GET \
  --url 'https://api.weav.com/v1/kb-articles' \
  --header "Authorization: Bearer ${WEAV_API_TOKEN}"
JavaScript
const response = await fetch("https://api.weav.com/v1/kb-articles", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.WEAV_API_TOKEN}`
  }
});
console.log(await response.json());
Python
import os
import requests

headers = {"Authorization": f"Bearer {os.environ['WEAV_API_TOKEN']}"}
response = requests.get("https://api.weav.com/v1/kb-articles", headers=headers)
print(response.json())
PHP
use GuzzleHttp\Client;

$client = new Client();
$response = $client->request('GET', 'https://api.weav.com/v1/kb-articles', [
    'headers' => ['Authorization' => 'Bearer '.getenv('WEAV_API_TOKEN')],
]);
echo $response->getBody();

Response

200 OK
{
    "data": [
        {
            "id": "9b2f6c1e-3d4a-4f5b-8c7d-1e2f3a4b5c6d",
            "category_id": "9b2f6c1e-3d4a-4f5b-8c7d-1e2f3a4b5c6d",
            "position": 0,
            "status": "draft",
            "published_at": "2026-01-01T00:00:00Z",
            "source": "manual",
            "translations": [
                {
                    "locale": "en",
                    "title": "string",
                    "slug": "string",
                    "content": "string",
                    "excerpt": "string",
                    "seo_title": "string",
                    "noindex": false,
                    "canonical_url": "https://example.com",
                    "og_image_url": "https://example.com",
                    "created_at": "2026-01-01T00:00:00Z",
                    "updated_at": "2026-01-01T00:00:00Z"
                }
            ],
            "created_at": "2026-01-01T00:00:00Z",
            "updated_at": "2026-01-01T00:00:00Z"
        }
    ]
}
  • 401 Unauthorized

Response fields

idstring

Format: uuid.

category_idstring | null

Format: uuid.

positioninteger | null
statusstring

One of: draft, published.

published_atstring | null

Format: date-time.

sourcestring

One of: manual, auto_generated, github, mcp.

translationsarray<object>
created_atstring | null

Format: date-time.

updated_atstring | null

Format: date-time.