Pāriet uz saturu
Sursa Developers

POST/v1/sources

Izveidot avotu

create_source

Ar organizācijas API atslēgu (kopš 1.62.0) ir pieejams tikai pielāgots avots (kind: custom): atslēgai nepieciešama loma admin un tvērums admin. Jebkurš cits veids atgriež 400 sources.kind_not_allowed_for_key; savienotāji, kas pierakstās pie pakalpojuma sniedzēja, tiek iestatīti pārlūkā. Savienotāju lauki publiskajā specifikācijā netiek rādīti. Pielāgots avots pieņem name, kolekciju (collection_id vai collection), atļauju režīmu permissions_mode, kolekcijas mapi kartītēm (folder_id un folder_mode) un atlasītās dokumentu mapes (roots). Dokumenti tiek nosūtīti ar operācijām /v1/push/sources/{source_id}/*.

Autentifikācija

Nosūtiet API atslēgu galvenē Authorization: Authorization: Bearer <atslēga>.

Galvenes parametri

  • X-View-Asstring

    Tikai API atslēgām ar lomu admin. Izpilda pieprasījumu datu profila <profile>[:viewer|verifier|editor] vārdā, piemēram, employee:viewer. Instalācijas atslēga šo galveni lietot nevar (403).

  • Idempotency-Keystring

    Atslēga drošam rakstīšanas darbības atkārtojumam: 1–255 drukājamas ASCII rakstzīmes; ieteicams viens UUID v4 katrai loģiskajai operācijai. Atkārtojums ar to pašu atslēgu 24 stundu laikā operāciju neizpilda vēlreiz: tiek atgriezta saglabātā atbilde (statuss, galvenes un saturs) ar galveni Idempotency-Replayed: true. Tā pati atslēga ar citu metodi, ceļu, Content-Type vai saturu atgriež 409 api.idempotency_mismatch; kamēr pirmais pieprasījums vēl izpildās – 409 api.idempotency_in_progress ar Retry-After: 1. Pēc atbildes 5xx vai 429 atslēga tiek atbrīvota, un atkārtojums izpilda operāciju vēlreiz. Atslēga ir piesaistīta organizācijai un izsaucējam (API atslēgai, lietotājam vai pielāgotā avota atslēgai).

    length ≥ 1, length ≤ 255

Sīkdatņu parametri

  • kb_view_asstring

    Režīma „View as“ (skatīt kā) sīkdatne sesijai. POST /auth/view-as to iestata, un DELETE /auth/view-as to notīra.

Pieprasījuma saturs

application/json

Objekts: SourceCreate

  • kindstring

    Avota veids (sk. SourceKind); ar organizācijas API atslēgu – tikai custom.

    Noklusējums: "gdrive"

  • namestringobligāts

    length ≥ 1, length ≤ 120

  • collectionstring

    Avota kolekcijas nosaukums; tā vietā var nodot collection_id (kopš 1.62.0).

    length ≥ 1, length ≤ 64

  • collection_idinteger

    Avota kolekcija pēc ID (kopš 1.62.0); ja nodoti abi, noteicošais ir collection_id.

  • permissions_modestring

    Avota kartīšu atļauju režīms (kopš 1.62.0, kā update_source_settings): own izmanto kolekcijas atļaujas, mirror ņem tās no dokumenta (permissions). Lai izvēlētos mirror, vajadzīgas tiesības pārvaldīt kolekcijas atļaujas.

    Atļautās vērtības: ownmirror

  • default_owner_idinteger | null
  • verify_interval_daysinteger

    Noklusējums: 90≥ 1, ≤ 3650

  • tagsarray of string

    Noklusējums: []

  • default_categorystring | null
  • rootsarray of string | null

    Atlasītās avota mapes: par kartītēm kļūst tikai to iekšienē esošie elementi. Pielāgotam avotam – dokumentu mapju ceļi (Guides/Billing); savienotājiem – pakalpojuma sniedzēja koka mezgli.

  • folder_idstring | null

    Mape avota kolekcijā, kurā tiek ievietotas kartītes (null nozīmē kolekcijas sakni).

  • folder_modestring

    flat visu ievieto atlasītajā mapē; mirror izveido mapes, kas atkārto elementa ceļu avotā, ne dziļāk par mapju ligzdošanas limitu (3 līmeņi; dziļākie elementi nonāk tuvākajā mapē).

    Atļautās vērtības: flatmirror

    Noklusējums: "flat"

Atbildes

200Veiksmīga atbilde

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

  • Idempotency-Replayed

    true nozīmē, ka atbilde ir atkārtota no šai Idempotency-Key saglabātās atbildes: operācija netika izpildīta vēlreiz.

400Pieprasījums nav derīgs: parametra vērtība vai objekta stāvoklis neļauj veikt darbību (`detail` ir ziņojums).

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

401Nav nosūtīti akreditācijas dati (ne sesijas sīkdatne, ne API atslēga), vai atslēga nav atrasta.

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

403Darbība nav atļauta: loma nav pietiekama, nav piekļuves kolekcijai vai kartītei, pieprasījums izpildās režīmā „View as“ vai organizācija ir apturēta vai dzēsta (`detail` ir objekts ar `code: org_suspended | org_deleted`).

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

404Objekts neeksistē vai jums nav pieejams. API neapstiprina, ka ierobežotas piekļuves objekts eksistē.

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

422Validācijas kļūda: saturs vai parametri neatbilst shēmai (`detail` ir validācijas kļūdu saraksts), vai parametra vērtība ir ārpus pieļaujamā diapazona (`detail` ir ziņojums).

Atbildes galvenes

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

429Pārāk daudz pieprasījumu (`api.rate_limited`), organizācijas minūtes, dienas vai mēneša kvota ir izlietota (`api.quota_exceeded`; `error.details` satur `quota`, `limit` un `reset_at`), sasniegts organizācijas limits vai atbilžu pakalpojums ir aizņemts (`answers.engine_busy`). Pagaidiet galvenē `Retry-After` norādīto laiku.

Atbildes galvenes

  • Retry-After

    Sekunžu skaits, kas jāpagaida, pirms atkārtojat pieprasījumu.

  • RateLimit-Policy

    Spēkā esošie limiti IETF dokumenta projekta draft-ietf-httpapi-ratelimit-headers formātā: ar komatiem atdalīti elementi "<name>";q=<quota>;w=<window in seconds>. key ir API atslēgas pieprasījumu biežums (kvota ir īslaicīgais pīķis, laika logs – laiks, kurā kvota pilnībā atjaunojas; sesijai tas ir user, bez akreditācijas datiem – ip); minute, day un month ir organizācijas kvotas kalendārajai minūtei, dienai un mēnesim pēc UTC.

  • RateLimit

    Cik atlicis no katra RateLimit-Policy limita: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Stingrākā RateLimit-Policy ieraksta limits (tā, kurā atlicis vismazāk pieprasījumu).

  • X-RateLimit-Remaining

    Atlikušo pieprasījumu skaits stingrākā limita ietvaros.

  • X-RateLimit-Reset

    Sekundes līdz stingrākā limita atiestatīšanai.

application/json

Objekts: Error

Kļūdu kodi

Kodi, ko šī operācija var atgriezt laukā error.code papildus vispārīgajiem kodiem, kas iespējami jebkuram pieprasījumam.

Droši atkārtojumi

Ar katru POST un PATCH pieprasījumu nosūtiet galveni Idempotency-Key (piemēram, UUID). Atkārtots pieprasījums ar to pašu atslēgu 24 stundu laikā atgriež saglabāto atbildi, nevis izpilda pieprasījumu vēlreiz.

Pieprasījumu biežuma limiti

Atbildēs ir galvenes RateLimit un RateLimit-Policy, kā arī agrākās X-RateLimit-Limit, X-RateLimit-Remaining un X-RateLimit-Reset. Atbildē 429 ir galvene Retry-After sekundēs: nogaidiet un atkārtojiet pieprasījumu.

← sources · API rokasgrāmata