Preskočiť na obsah
Sursa Developers

Identifikátory objektov

Každý objekt API má id. Uložte si ho vo svojom systéme, keď sa potrebujete k objektu vrátiť: názvy sa môžu meniť, identifikátory nikdy.

ObjektidPríklad
Karta, priečinokReťazec"3f2c9a7e-5b1d-4c8e-9f0a-1b2c3d4e5f60"
UdalosťReťazec s predponou evt_"evt_0123456789abcdef0123456789abcdef"
NahrávanieReťazec s predponou upl_"upl_8b0c…"
Aplikácia OAuthReťazec s predponou app_"app_5f1c…"
Kolekcia, používateľ, skupina, kľúč API, webhook, úloha a väčšina ostatnýchCelé číslo3

Identifikátory považujte za nepriehľadné. Neanalyzujte ich a nepredpokladajte iný formát než typ: reťazcový identifikátor môže byť ľubovoľný reťazec až do dĺžky, ktorú jeho pole povoľuje.

Nové druhy objektov, na ktoré budete pravdepodobne odkazovať zo svojich systémov, dostanú reťazcové identifikátory s krátkou predponou, ktorá pomenúva druh, a za ňou 32 šestnástkových znakov.

Odkazy medzi objektmi

Objekty na seba odkazujú cez ID v poliach s názvom <object>_id: collection_id, owner_id, folder_id. Ak chcete súvisiaci objekt dostať v tej istej odpovedi, použite expand[].

Parametre cesty, ktoré prijímajú ID, sa pomenúvajú rovnako: {card_id}, {webhook_id}, {upload_id}.

Kolekcie podľa ID

Kolekcie majú id aj jedinečný názov name, napríklad support. Cesty, ktoré existovali predtým, ako sa začali uprednostňovať identifikátory, prijímajú názov kolekcie:

GET /v1/collections/support/stats

Tie isté cesty prijímajú aj ID zapísané ako id:<number>:

curl https://api.sursa.com/v1/collections/id:3/stats \
  -H "Authorization: Bearer $SURSA_API_KEY"

V novom kóde uprednostnite tvar id:: administrátor môže kolekciu premenovať, ale jej ID zostane rovnaké. Segment zložený len z číslic, napríklad /v1/collections/3, stále znamená kolekciu s názvom 3. Názov kolekcie nemôže obsahovať :, takže sa tieto dva tvary nikdy nezamenia.

V telách požiadaviek a parametroch dotazu stojí collection_id vedľa staršieho collection (názov). Keď odošlete oba, platí collection_id. collection_id, ktoré v organizácii neexistuje alebo ktoré kľúč nesmie vidieť, vráti 404 s kódom collections.not_found.

curl -G https://api.sursa.com/v1/cards \
  -H "Authorization: Bearer $SURSA_API_KEY" \
  --data-urlencode "collection_id=3"

Vlastné identifikátory

Karty môžu v external_id niesť identifikátor záznamu, z ktorého vo vašom systéme pochádzajú: najviac 512 znakov, jedinečný medzi kartami organizácie. Vďaka nemu nikdy nemusíte ukladať ID karty v Surse:

OperáciaČo robí
PUT /v1/cards-by-external-id/{external_id}Vytvorí kartu, alebo nahradí jej obsah, ak existuje.
GET /v1/cards-by-external-id/{external_id}Načíta kartu.
GET /v1/cards?external_id=…Nájde kartu v zozname spolu s ďalšími filtrami.

Keď je external_id súčasťou cesty, zakódujte ho pre URL: z crm/A-1042 sa stane crm%2FA-1042.

Dokumenty vlastného zdroja majú vlastné external_id v rámci svojho zdroja. Tieto dva identifikátory sa nezrazia: kartu vlastného zdroja zmeníte opätovným odoslaním dokumentu do jej zdroja, nie cez PUT /v1/cards-by-external-id/…, ktoré v takom prípade odpovie 409 s kódom cards.managed_by_source.