Lees artikelen, collecties en wijzigingslogboeken met de Notiondesk API

Lees artikelen en collecties uit het helpcentrum van Notiondesk als markdown, in elke taal, met synchronisatiestatus, en bekijk wijzigingslogboekvermeldingen via de REST API.

7 min lezen

De Notiondesk API leest alles wat uw helpcentrum publiceert: elk artikel en elke collectie in elke taal, met de inhoud als Markdown, de publicatiestatus en de synchronisatiestatus, plus uw gepubliceerde wijzigingslogboekvermeldingen. Gebruik deze API om een ​​back-up van uw helpcentrum te maken, uw inhoud naar een andere tool te sturen of te controleren welke artikelen niet gesynchroniseerd konden worden.

De API leest de inhoud, maar schrijft deze nooit weg. Je artikelen en collecties blijven in Notion: om er een te wijzigen, bewerk je deze in Notion en start je een synchronisatie .

In de Notiondesk API wordt een verzameling een categorie genoemd.

Methode Pad Domein Doet
GET/sites/{site_id}/articlesreadGeeft een lijst van artikelen in één taal.
GET/sites/{site_id}/articles/{article_id}readLeest één artikel inclusief de opmaak.
GET/sites/{site_id}/categoriesreadGeeft een overzicht van collecties in één taal, inclusief hun hiërarchie.
GET/sites/{site_id}/categories/{category_id}readLeest een verzameling met de bijbehorende markdown-inhoud.
GET/sites/{site_id}/changelogreadToont gepubliceerde wijzigingslogboekvermeldingen, nieuwste eerst

Kies de taal

Elke route op deze pagina accepteert een optionele queryparameter locale, zoals ?locale=fr. Zonder deze parameter gebruikt het antwoord de standaardtaal van het helpcentrum. Bij de lijstroutes moet locale een van de talen zijn die het helpcentrum ondersteunt: de supported_locales van het helpcentrum . Lees ' Ondersteuning voor meerdere talen in uw helpcentrum' om talen toe te voegen.

Lijst met artikelen

De lijst bevat elk artikel in elke status, inclusief concepten en gearchiveerde artikelen, in de volgorde waarin ze zijn aangemaakt. Blader erdoorheen met page_size en cursor, zoals beschreven in Paginate en versie Notiondesk API-verzoeken .

curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/articles?page_size=100&locale=en" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
{
  "object": "list",
  "data": [
    {
      "id": "1761580412",
      "title": "Connect your Notion workspace",
      "slug": "connect-your-notion-workspace",
      "status": "published",
      "categories": [
        {"id": "910000002", "name": "Connecting Notion", "slug": "connecting-notion", "locale": "en", "status": "published"}
      ],
      "tags": [{"name": "Setup", "slug": "setup"}],
      "locales_count": 2,
      "updated_at": "2026-10-18T14:39:03+00:00",
      "published_at": "2026-10-05T04:39:04+00:00",
      "locale": "en",
      "reading_time": 3,
      "views_count": 42,
      "reactions_percent": {"smiley": 50, "neutral_face": 25, "disappointed": 25},
      "source_notion_page_id": "3d5001d0-2470-8122-a1b2-c3d4e5f60789",
      "notion_article_page_url": "https://www.notion.so/3d5001d024708122a1b2c3d4e5f60789",
      "sync_in_progress": false,
      "sync_timeout": false,
      "sync_failed": false,
      "sync_error_code": null,
      "auto_translated": false
    }
  ],
  "has_more": true,
  "next_cursor": "OPAQUE_CURSOR"
}
Veld Betekenis
idDe artikelidentificatiecode, gebruikt als article_id om het artikel te lezen.
__GEVANGEN_102__, __GEVANGEN_101__ De titel van het artikel en het bijbehorende padsegment in het helpcentrum.
statusdraft, published, review of archived. Zie Hoe u de zichtbaarheid van artikelen kunt beheren.
categoriesDe collecties waartoe het artikel behoort, elk met id, name, slug, locale en status
tagsDe tags van het artikel, elk met name en slug
locales_countIn hoeveel talen het artikel beschikbaar is
__GERESERVEERD_85__, __GERESERVEERD_84__ Wanneer het artikel voor het laatst is gewijzigd en wanneer het is gepubliceerd.
localeDe taal van dit item
reading_timeGeschatte leestijd, in minuten
views_countHoe vaak hebben lezers het artikel geopend?
reactions_percentElke lezersreactie met het aandeel ervan in alle reacties, in procenten. De namen van de reacties zijn afhankelijk van uw feedbackstijl.
__GERESERVEERD_79__, __GERESERVEERD_78__ De Notion-pagina waarvan het artikel wordt gesynchroniseerd, en de URL van de Notion-pagina in deze taal (null voor een automatische vertaling)
__GERESERVEERD_76__, __GERESERVEERD_75__, __GERESERVEERD_74__, __GERESERVEERD_73__ Of er een synchronisatie van het artikel gaande is, of de vorige synchronisatie is mislukt of een time-out heeft gegeven, en waarom.
auto_translatedOf deze taal door automatische vertaling is gegenereerd.
Opmerking: Filter de resultaten in je code om alle artikelen te vinden waarvan de laatste synchronisatie is mislukt, herstel dit vervolgens in Notion en synchroniseer het opnieuw .sync_failed: true

Lees een artikel als markdown.

curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/articles/1761580412?locale=en" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
{
  "id": "1761580412",
  "type": "article",
  "title": "Connect your Notion workspace",
  "slug": "connect-your-notion-workspace",
  "text": "# Connect your Notion workspace\n\nOpen **Settings**, then **Notion**...",
  "url": "https://help.example.com/en/articles/connect-your-notion-workspace",
  "locale": "en",
  "last_updated": "2026-10-18T14:39:03+00:00",
  "category": {"id": "910000002", "title": "Connecting Notion", "slug": "connecting-notion"},
  "tags": ["setup"],
  "truncated": false,
  "author": {"name": "Ada Lovelace"},
  "status": "published",
  "content_available": true,
  "sync_in_progress": false,
  "sync_timeout": false,
  "sync_failed": false,
  "sync_error_code": null
}
Veld Betekenis
typeAltijd __GERESERVEERD_69__
textDe artikelinhoud als Markdown. Leeg als er nog geen inhoud is opgeslagen.
truncatedtrue toen text werd afgesneden op 200.000 bytes. De afsnijding valt altijd op een volledig teken.
content_availableOf Notiondesk al inhoud voor deze taal bevat.
urlHet openbare adres van het artikel
categoryDe belangrijkste collectie van het artikel: id, title en slug
tagsDe slugs van de tags van het artikel
authorAuteur van het artikel: __GEVANGEN_56__

Elke status is leesbaar, zodat u een concept kunt lezen voordat u het publiceert. Een artikel zonder vertaling in de gevraagde locale beantwoordt met 404 not_found.

Lijstcollecties

Elk item is een verzameling in de gevraagde taal, in de volgorde waarin de verzamelingen zijn aangemaakt:

Herbouw je collectiestructuur met drie velden:

curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/categories?page_size=100" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
{
  "id": "910000001",
  "name": "Getting Started",
  "slug": "getting-started",
  "updated_at": "2026-10-18T14:39:12+00:00",
  "locale": "en",
  "is_parent": true,
  "source_notion_page_id": "5d5001d0-2470-8122-a1b2-c3d4e5f60789",
  "notion_category_page_url": "https://www.notion.so/5d5001d024708122a1b2c3d4e5f60789",
  "sync_in_progress": false,
  "sync_timeout": false,
  "sync_failed": false,
  "sync_error_code": null,
  "parent_ids": [],
  "children_ids": ["910000002"],
  "locales_count": 2,
  "status": "published",
  "auto_translated": false
}
Veld Betekenis
is_parent__GERESERVEERD_52__ voor een collectie bovenaan de hiërarchie
parent_idsDe collecties direct boven deze
children_idsDe collecties direct onder deze

De lijst bevat geen artikeltellingen. Om de artikelen in een collectie te tellen, moet u de artikelen weergeven en groeperen op categories. Lees hoe collecties uw helpcentrum organiseren in Collecties gebruiken om uw artikelen te organiseren .

Lees een verzameling

Het antwoord heeft dezelfde structuur als een artikel: type is category, title, slug, url, status, de synchronisatievelden, en text met de eigen inhoud van de collectie als markdown, leeg als er geen inhoud is.

Lijst met wijzigingslogboekvermeldingen

Het wijzigingslogboek toont de gepubliceerde artikelen die zijn opgeslagen in uw wijzigingslogboekcollecties, met de nieuwste artikelen bovenaan. U kunt dit instellen via 'Wijzigingslogboeken instellen' in uw helpcentrum .

curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/categories/910000001?locale=en" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/changelog?page_size=50&locale=en" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
{
  "object": "list",
  "data": [
    {
      "id": "article:1761497350",
      "title": "Multilingual sync is now available",
      "slug": "multilingual-sync-is-now-available",
      "text": "Help centers on the Enterprise plan can now sync every configured locale in a single run instead of one language at a time.",
      "published_at": "2026-10-13T09:12:44+00:00",
      "last_updated": "2026-10-18T14:39:03+00:00",
      "tags": [],
      "url": "https://help.example.com/en/changelogs",
      "locale": "en"
    }
  ],
  "has_more": true,
  "next_cursor": "OPAQUE_CURSOR"
}
Veld Betekenis
idarticle: gevolgd door het artikel-ID van de vermelding. Verwijder het voorvoegsel om de volledige vermelding met het artikelpad te lezen.
textDe tekst van het bericht, meestal een fragment van ongeveer 30 woorden.
__GERESERVEERD_38__, __GERESERVEERD_37__ Wanneer het artikel is gepubliceerd en wanneer het voor het laatst is gewijzigd.
tagsDe slugs van de tags van het item
urlUw wijzigingslogboekpagina in deze taal

Goed om te weten:

  • Een item wordt alleen weergegeven als de bijbehorende changelog in de gevraagde taal is gepubliceerd.
  • In een helpcentrum dat gebruikmaakt van gastaccounts, toont de lijst alleen de items die elke lezer kan zien.
  • De lijst bevat maximaal de 1000 nieuwste vermeldingen. Daarna wordt has_more vervangen door false, zelfs als er oudere vermeldingen zijn.
  • In zeldzame gevallen, tijdens een tijdelijk serviceprobleem, kan een lijst een item overslaan of herhalen. Lees de lijst later opnieuw voor een complete lijst.

Fouten

Status Wanneercode
400 page_size valt buiten het bereik van 1 tot 100, cursor is ongeldig, locale is geen taal die door het helpcentrum wordt ondersteund (lijst) of is niet 2 tot 10 tekens lang (enkele leesbewerkingen), of de query bevat een onbekende parameter.validation_error
403 De sleutel mist het bereik readinsufficient_scope
403 Alleen het wijzigingslogboek: het wijzigingslogboek is uitgeschakeld of niet inbegrepen in uw abonnement, of de analyses van het helpcentrum zijn uitgeschakeld.permission_denied
404 Het helpcentrum, artikel of de verzameling bestaat niet in uw werkruimte, er is geen vertaling beschikbaar in locale, of het wijzigingslogboek is ingeschakeld maar er is geen verzameling voor wijzigingslogboeken.not_found

Elke route kan ook antwoorden met invalid_version, authentication_error, rate_limited en internal_error. Zie Foutmeldingen, snelheidslimieten en herhaalpogingen van de Notiondesk API afhandelen .

Veelgestelde vragen

Kan ik artikelen aanmaken of bewerken met de Notiondesk API?

Nee. Notion is de bron van waarheid voor je content. Bewerk het artikel in Notion en start vervolgens een synchronisatie met de API of wacht op een geplande synchronisatie.

Bevat de artikellijst ook concepten?

Ja. De lijst en de leesroute bevatten alle statussen: draft, published, review en archived. Filter de resultaten in je code op status om alleen gepubliceerde artikelen te behouden.

Hoe exporteer ik alle artikelen als Markdown?

Maak een lijst van de artikelen en lees ze vervolgens één voor één door. Het voorbeeldartikel bevat een compleet back-upscript.

Wat betekent truncated: true?

De markdown van het artikel is langer dan 200.000 bytes, daarom bevat text de eerste 200.000 bytes, afgekapt op een heel teken.

Waarom is notion_article_page_url leeg voor sommige talen?

Die tekst is automatisch vertaald en heeft daarom geen eigen Notion-pagina.

Wat volgt?

Gerelateerde artikelen

Was deze pagina nuttig?

Still need help? Ask us