Preskočiť na obsah
Sursa Developers

POST/v1/drafts

Vytvoriť návrh

create_draft

Vytvorí návrh novej karty (collection, vyžaduje COLLECTION_CREATE_CARDS) alebo úpravy existujúcej karty (card_id, vyžaduje CARD_EDIT; názov, štítky a text sa prevezmú z najnovšej verzie, ak nie sú zadané). Autor je prvým spoluautorom. Používateľ môže mať k jednej karte jeden aktívny návrh: opakovaná požiadavka vráti 409 drafts.exists s draft_id v details (pokračujte v tomto návrhu cez PATCH). scheduled_publish_at naplánuje publikovanie. Kľúč API uvádza autora návrhu v author_id (od verzie 1.62.0).

Autentifikácia

Odošlite kľúč API v hlavičke Authorization: Authorization: Bearer <kľúč>.

Parametre hlavičky

  • Idempotency-Keystring

    Kľúč na bezpečné opakovanie zápisu: 1 až 255 tlačiteľných znakov ASCII; odporúča sa UUID v4 pre každú logickú operáciu. Opakovanie s tým istým kľúčom do 24 hodín operáciu znova nespustí: vráti uloženú odpoveď (stav, hlavičky a telo) s hlavičkou Idempotency-Replayed: true. Ten istý kľúč s inou metódou, cestou, Content-Type alebo telom vráti 409 api.idempotency_mismatch; kým prvá požiadavka ešte prebieha, vráti 409 api.idempotency_in_progress s Retry-After: 1. Po odpovedi 5xx alebo 429 sa kľúč uvoľní a opakovanie operáciu spustí znova. Kľúč platí v rámci organizácie a volajúceho (kľúč API, používateľ alebo kľúč vlastného zdroja).

    length ≥ 1, length ≤ 255

Telo požiadavky

application/json

Objekt: DraftCreate

  • card_idstring | null
  • collectionstring | null

    Názov kolekcie pre novú kartu (povinné bez card_id).

  • titlestring | null

    length ≤ 200

  • body_markdownstring | null

    length ≤ 500000

  • tagsarray of string | null

    items ≤ 30

  • revision_notestring | null

    length ≤ 1000

  • verify_on_publishboolean

    Predvolené: false

  • notify_followersboolean

    Predvolené: false

  • scheduled_publish_atstring (date-time) | null
  • author_idinteger

    Autor návrhu, keď volá kľúč API (od verzie 1.62.0): aktívny používateľ organizácie kľúča; používateľ sa stane created_by a prvým spoluautorom. Pre kľúč povinné (inak 422 validation.failed); používateľ inej organizácie alebo neaktívny používateľ vráti 404 users.not_found. Oprávnenia na kolekciu a kartu sa kontrolujú pre kľúč, nie pre autora. V relácii je autorom prihlásený používateľ: iné author_id vráti 422 validation.failed.

    ≥ 1

Odpovede

201Vytvorené

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

  • Idempotency-Replayed

    true znamená, že odpoveď bola zopakovaná z uloženej odpovede pre tento Idempotency-Key: operácia sa znova nespustila.

application/json

Objekt: Draft

  • idintegerpovinné
  • org_idintegerpovinné
  • card_idstring | nullpovinné

    Karta, ktorú návrh upravuje; null – návrh novej karty.

  • collection_idintegerpovinné
  • collectionstringpovinné
  • titlestringpovinné
  • body_markdownstringpovinné
  • tagsarray of stringpovinné
  • base_versioninteger | null

    Verzia karty, z ktorej návrh vychádza.

  • scheduled_publish_atstring (date-time) | null
  • workflow_stateDraftWorkflowStatepovinné
  • revision_notestring | null
  • verify_on_publishbooleanpovinné
  • notify_followersbooleanpovinné
  • created_byintegerpovinné
  • updated_byinteger | null
  • created_atstring (date-time)povinné
  • updated_atstring (date-time)povinné
  • publish_requested_byinteger | null
  • publish_requested_atstring (date-time) | null
  • approved_byinteger | null
  • approved_atstring (date-time) | null
  • collaboratorsarray of DraftCollaboratorpovinné
  • conflictstring | null

    card_published – karta bola publikovaná alebo zmenená po začatí návrhu; card_deleted – karta bola odstránená; rozšíriteľné.

400Požiadavka je neplatná: hodnota parametra alebo stav objektu akciu nedovoľuje (`detail` je správa).

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

401Neboli odoslané žiadne prihlasovacie údaje (ani cookie relácie, ani kľúč API) alebo sa kľúč nenašiel.

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

403Akcia nie je povolená: rola nestačí, chýba prístup ku kolekcii alebo karte, požiadavka beží v režime „View as“ alebo je organizácia pozastavená či odstránená (`detail` je objekt s `code: org_suspended | org_deleted`).

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

404Objekt neexistuje alebo vám nie je dostupný. API nepotvrdzuje, že objekt s obmedzeným prístupom existuje.

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

409Stav objektu akciu nedovoľuje, napríklad duplicita, prebiehajúce indexovanie alebo úloha, ktorá je už spracovaná.

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

422Chyba validácie: telo alebo parametre nezodpovedajú schéme (`detail` je zoznam chýb validácie) alebo je hodnota parametra mimo rozsahu (`detail` je správa).

Hlavičky odpovede

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

429Príliš veľa požiadaviek (`api.rate_limited`), vyčerpaná kvóta organizácie na minútu, deň alebo mesiac (`api.quota_exceeded`; `error.details` obsahuje `quota`, `limit` a `reset_at`), dosiahnutý limit organizácie alebo zaneprázdnená služba odpovedí (`answers.engine_busy`). Počkajte čas uvedený v hlavičke `Retry-After`.

Hlavičky odpovede

  • Retry-After

    Počet sekúnd, ktoré treba počkať pred opakovaním požiadavky.

  • RateLimit-Policy

    Platné limity vo formáte návrhu IETF draft-ietf-httpapi-ratelimit-headers: položky oddelené čiarkami "<name>";q=<quota>;w=<window in seconds>. key je frekvencia požiadaviek kľúča API (kvóta je nárazová špička, okno je čas na jej úplné doplnenie; pre reláciu je to user, bez prihlasovacích údajov ip); minute, day a month sú kvóty organizácie na kalendárnu minútu, deň a mesiac v UTC.

  • RateLimit

    Čo zostáva z každého limitu v RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Limit najprísnejšej položky v RateLimit-Policy (tej, ktorej zostáva najmenej požiadaviek).

  • X-RateLimit-Remaining

    Počet požiadaviek, ktoré zostávajú v rámci najprísnejšieho limitu.

  • X-RateLimit-Reset

    Počet sekúnd do obnovenia najprísnejšieho limitu.

application/json

Objekt: Error

Chybové kódy

Kódy, ktoré táto operácia môže vrátiť v error.code, okrem všeobecných kódov každej požiadavky.

Bezpečné opakovanie

S každou požiadavkou POST a PATCH odošlite hlavičku Idempotency-Key (napríklad UUID). Opakovaná požiadavka s rovnakým kľúčom do 24 hodín vráti uloženú odpoveď namiesto toho, aby sa požiadavka vykonala znova.

Limity frekvencie

Odpovede obsahujú hlavičky RateLimit a RateLimit-Policy a staršie X-RateLimit-Limit, X-RateLimit-Remaining a X-RateLimit-Reset. Odpoveď 429 má hlavičku Retry-After v sekundách: počkajte a požiadavku zopakujte.

← drafts · Referencia API