POST/v1/users/import
Felhasználók importálása CSV-ből
users_import
A CSV-fájlt a csv mezőben küldd el. Az első sor a fejléc. Az elválasztó , vagy ;, és a fejlécből állapítja meg. A kódolás UTF-8 (BOM megengedett), legfeljebb 1000 adatsorral.
Oszlopok: email (kötelező; álnevek: e-mail, mail, почта), name (display_name, имя), role (admin, editor, verifier, viewer; álnév: роль), groups (группы; több csoportot | vagy ; jellel válassz el, egy szokásos csoport kulcsa vagy neve szerint), profile (data_profile, профиль; az adatprofil kulcsa). Az ismeretlen oszlopokat kihagyja, és az ignored_columns mezőben sorolja fel.
dry_run: true esetén (alapértelmezett) módosítás nélküli előnézetet ad vissza: soronként a műveletet és a hibákat. Egyébként végrehajtja a hiba nélküli sorokat:
- invite: meghívót küld a fájlban megadott szerepkörrel, profillal és névvel. Ha a levelezés be van állítva, e-mail megy ki, a hivatkozás pedig a válaszban is szerepel.
- exists: ezzel az e-mail-címmel már létezik felhasználó. A felhasználó bekerül a fájlban megadott csoportokba; a szerepköre és a profilja nem változik.
- pending: erre a címre már elfogadásra vár egy meghívó. A fájlban megadott csoportok hozzáadódnak.
A hibás sorokat kihagyja. A meghívott felhasználók a meghívó elfogadásakor kerülnek be a csoportjaikba. A create_groups létrehozza a hiányzó szokásos csoportokat; nélküle az ismeretlen csoport sorhibának számít. A csomag felhasználói korlátját és az előfizetés felhasználói helyeit az összes új meghívóra egyszerre ellenőrzi: ha nem elegendők, semmit sem hajt végre (402). A kézi meghívókra vonatkozó korlát (50 függőben lévő) az importálásra nem vonatkozik. Az ORG_MANAGE_USERS jogosultság szükséges. Az auditnaplóba a users.import eseményt, minden meghívóhoz pedig az invitation.create eseményt írja.
Hitelesítés
Küldj egy API-kulcsot az Authorization fejlécben: Authorization: Bearer <kulcs>.
Fejlécparaméterek
Idempotency-KeystringKulcs egy írási kérés biztonságos megismétléséhez: 1–255 nyomtatható ASCII-karakter; logikai műveletenként egy UUID v4 ajánlott. Ha 24 órán belül ugyanazzal a kulccsal ismétled meg a kérést, a művelet nem fut le újra: a mentett választ kapod vissza (állapot, fejlécek és törzs) az
Idempotency-Replayed: truefejléccel. Ugyanaz a kulcs más metódussal, útvonallal,Content-Typeértékkel vagy törzzsel409 api.idempotency_mismatchválaszt ad; amíg az első kérés még fut, a válasz409 api.idempotency_in_progress,Retry-After: 1fejléccel. 5xx vagy 429 válasz után a kulcs felszabadul, és a megismételt kérés újra lefuttatja a műveletet. A kulcs a szervezethez és a hívóhoz (API-kulcs, felhasználó vagy egyéni forrás forráskulcsa) kötődik.length ≥ 1, length ≤ 255
Kéréstörzs
application/json
csvstringkötelezőA CSV-fájl tartalma UTF-8 kódolásban.
length ≥ 1, length ≤ 2000000
dry_runbooleanCsak előnézet (alapértelmezett). A
falsevégrehajtja a hibátlan sorokat.Alapértelmezett: true
default_rolestringSzerepkör a
roleoszlop nélküli vagy üres cellájú sorokhoz.Alapértelmezett: "viewer"
default_profilestring | nullAdatprofil a profil nélküli sorokhoz. Ha üres, a szervezet alapértelmezett profilja érvényes (az adminisztrátorok teljes hozzáférést kapnak).
create_groupsbooleanA hiányzó normál csoportok létrehozása. E jelző nélkül az ismeretlen csoport sorhibának számít.
Alapértelmezett: false
ttl_daysintegerA meghívók érvényessége napokban.
Alapértelmezett: 7≥ 1, ≤ 30
Válaszok
200Az importálás előnézete vagy eredménye, soronként
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
Idempotency-ReplayedA
trueazt jelenti, hogy a válasz az ehhez azIdempotency-Keykulcshoz mentett válasz megismétlése: a művelet nem futott le újra.
application/json
dry_runbooleankötelezőtotalintegerkötelezőAz adatsorok száma a fájlban.
delimiterstringkötelezőA fejlécből felismert elválasztó karakter.
columnsarray of stringkötelezőFelismert oszlopok kanonikus alakban (
email,name,role,groups,profile).ignored_columnsarray of stringkötelezőcreated_groupsarray of stringkötelezőA végrehajtás során létrehozott csoportok.
400A kérés érvénytelen: egy paraméter értéke vagy az objektum állapota nem teszi lehetővé a műveletet (a `detail` egy üzenet).
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
401Nem érkeztek hitelesítő adatok (sem munkamenet-süti, sem API-kulcs), vagy a kulcs nem található.
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
402A szervezet elérte valamelyik csomagkorlátját (kártyák, tárhely vagy felhasználók). Az `error.details` a `kind`, a `limit` és a `used` mezőt tartalmazza.
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
403A művelet nem engedélyezett: a szerepkör nem elegendő, nincs hozzáférés a gyűjteményhez vagy a kártyához, a kérés „View as” módban fut, vagy a szervezetet felfüggesztették vagy törölték (a `detail` egy objektum, `code: org_suspended | org_deleted` mezővel).
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
413A kéréstörzs meghaladja a megengedett méretet.
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
422Érvényesítési hiba: a törzs vagy a paraméterek nem felelnek meg a sémának (a `detail` az érvényesítési hibák listája), vagy egy paraméter értéke kívül esik a megengedett tartományon (a `detail` egy üzenet).
Válaszfejlécek
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
429Túl sok kérés (`api.rate_limited`), elfogyott a szervezet percre, napra vagy hónapra szóló kvótája (`api.quota_exceeded`; az `error.details` a `quota`, a `limit` és a `reset_at` mezőt tartalmazza), a szervezet elérte a korlátját, vagy a válaszszolgáltatás foglalt (`answers.engine_busy`). Várj a `Retry-After` fejlécben megadott ideig.
Válaszfejlécek
Retry-AfterEnnyi másodpercet várj, mielőtt újrapróbálod a kérést.
RateLimit-PolicyAz érvényben lévő korlátok az IETF
draft-ietf-httpapi-ratelimit-headerstervezetének formátumában: vesszővel elválasztott"<name>";q=<quota>;w=<window in seconds>elemek. Akeyaz API-kulcs kérésgyakorisága (a kvóta a csúcskeret, az időablak a teljes visszatöltődés ideje; munkamenetnéluser, hitelesítő adatok nélkülip); aminute, adayés amontha szervezetnek az UTC szerinti naptári percre, napra és hónapra szóló kvótája.RateLimitMennyi maradt a
RateLimit-Policyegyes korlátaiból:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitA
RateLimit-Policylegszigorúbb elemének korlátja (amelyből a legkevesebb kérés maradt).X-RateLimit-RemainingA legszigorúbb korlát szerint még hátralévő kérések száma.
X-RateLimit-ResetA legszigorúbb korlát visszaállásáig hátralévő másodpercek.
application/json
Hibakódok
Azok a kódok, amelyeket ez a végpont hiba esetén az error.code mezőben visszaadhat, a minden kérésre érvényes általános kódokon kívül.
- 409api.idempotency_in_progress
- 400api.idempotency_key_invalid
- 409api.idempotency_mismatch
- 403auth.admin_required
- 401auth.not_authenticated
- 403api_keys.scope
- 402limits.users
- 402billing.seats_exceeded
- 400profiles.unknown
- 413users_import.too_many_rows
- 422users_import.csv_invalid
- 422users_import.no_email_column
- 422users_import.empty
- 422validation.failed
Biztonságos újrapróbálkozás
Minden POST és PATCH kéréssel küldj Idempotency-Key fejlécet (például egy UUID-t). Ha 24 órán belül ugyanazzal a kulccsal megismétled a kérést, a mentett választ kapod vissza, és a kérés nem fut le újra.
Gyakorisági korlátok
A válaszokban ott van a RateLimit és a RateLimit-Policy fejléc, valamint a korábbi X-RateLimit-Limit, X-RateLimit-Remaining és X-RateLimit-Reset fejléc. A 429-es válasz Retry-After fejléce másodpercben adja meg a várakozást: várj, majd próbáld újra.