Hoppa till innehållet
Sursa Developers

POST/v1/api-keys

Skapa en API-nyckel

create_api_key

Autentisering

Skicka en API-nyckel i huvudet Authorization: Authorization: Bearer <nyckel>.

Parametrar i huvuden

  • Idempotency-Keystring

    Nyckel för ett säkert nytt försök med en skrivning: 1–255 utskrivbara ASCII-tecken; ett UUID v4 per logisk åtgärd rekommenderas. Ett nytt försök med samma nyckel inom 24 timmar kör inte åtgärden igen, utan returnerar det sparade svaret (status, huvuden och brödtext) med huvudet Idempotency-Replayed: true. Samma nyckel med en annan metod, sökväg, Content-Type eller brödtext returnerar 409 api.idempotency_mismatch; medan det första anropet fortfarande pågår returneras 409 api.idempotency_in_progress med Retry-After: 1. Efter ett 5xx- eller 429-svar frigörs nyckeln, och ett nytt försök kör åtgärden igen. Nyckeln gäller inom organisationen och för anroparen (API-nyckel, användare eller källnyckel för en egen källa).

    length ≥ 1, length ≤ 255

  • X-View-Asstring

    Bara för API-nycklar med rollen admin. Gör anropet som dataprofilen <profile>[:viewer|verifier|editor], till exempel employee:viewer. Installationsnyckeln kan inte använda det här huvudet (403).

Cookie-parametrar

  • kb_view_asstring

    Cookie för läget ”View as” (visa som en annan användare) i en session. POST /auth/view-as sätter den och DELETE /auth/view-as tar bort den.

Anropets brödtext

application/json

Objekt: ApiKeyCreate

  • namestringobligatorisk

    length ≥ 1, length ≤ 64

  • rolestring

    Standard: "editor"

  • data_profilestring | null

    Nyckelns dataprofil. Utan det här fältet får nyckeln organisationens standardprofil. En dataprofil gäller inte rollen admin. En nyckel med den rollen ser all data i organisationen, och en annan profil än full returnerar 400 api_keys.data_profile_not_applicable.

  • expires_atstring (date-time) | null

    Nyckelns utgångstid (ISO 8601, i framtiden). null eller inget värde betyder att nyckeln inte upphör att gälla.

  • scopesarray of ApiKeyScope | null

    Nyckelns omfång. Om fältet saknas följer omfången rollen: admin får read, write, admin; editor och verifier får read, write; viewer får read. Omfånget system utfärdas bara av installationens administratör. Detaljerade omfång resource:action (ApiKeyScope) accepteras också; de tidigare read, write och admin expanderas till uppsättningar av omfång.

  • collection_idsarray of integer | null

    Begränsar nyckeln till dessa samlingar i organisationen. Kort, sökning, svar och händelser fungerar bara i dem, utöver rollen och dataprofilen. Inget värde eller en tom lista betyder ingen begränsning. Om den anropande nyckeln själv är begränsad till samlingar kan den nya nyckeln bara ligga i dess samlingar. Utan det här fältet får den nya nyckeln den anropande nyckelns samlingar. En tom lista eller en samling utanför dess lista returnerar 400 api_keys.invalid_collections.

    items ≤ 100

  • allowed_cidrsarray of string | null

    Nätverk som nyckeln får användas från, till exempel 10.0.0.0/8 eller 2001:db8::/32. En enskild adress är ett nätverk med en adress. Ett anrop från en annan adress returnerar 403 api_keys.ip_not_allowed. Inget värde betyder ingen begränsning.

    items ≤ 50

Svar

200Lyckat svar

Svarshuvuden

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

  • Idempotency-Replayed

    true betyder att svaret spelades upp från det sparade svaret för denna Idempotency-Key: åtgärden kördes inte igen.

application/json

Objekt: ApiKeyCreated

  • idintegerobligatorisk
  • namestringobligatorisk
  • prefixstringobligatorisk
  • roleRoleobligatorisk
  • created_atstring (date-time)obligatorisk
  • keystringobligatorisk
  • data_profilestring | nullobligatorisk
  • expires_atstring (date-time)

    Utgångstid. Finns bara för nycklar med utgångstid.

  • scopesarray of string

    Nyckelns uttryckliga omfång. Finns bara för nycklar med uttryckligen angivna omfång.

  • collection_idsarray of integer

    Begränsning till samlingar. Finns bara för nycklar med en begränsning.

  • allowed_cidrsarray of string

    Tillåtna nätverk. Finns bara för nycklar med en begränsning.

400Anropet är ogiltigt: ett parametervärde eller objektets tillstånd tillåter inte åtgärden (`detail` är ett meddelande).

Svarshuvuden

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

application/json

Objekt: Error

401Inga autentiseringsuppgifter skickades (varken en sessionscookie eller en API-nyckel), eller så hittades inte nyckeln.

Svarshuvuden

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

application/json

Objekt: Error

403Åtgärden är inte tillåten: rollen räcker inte, det saknas åtkomst till samlingen eller kortet, anropet körs i läget ”View as” (visa som en annan användare), eller organisationen är avstängd eller borttagen (`detail` är ett objekt med `code: org_suspended | org_deleted`).

Svarshuvuden

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

application/json

Objekt: Error

422Valideringsfel: brödtexten eller parametrarna stämmer inte med schemat (`detail` är en lista med valideringsfel), eller så ligger ett parametervärde utanför det tillåtna intervallet (`detail` är ett meddelande).

Svarshuvuden

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

application/json

Objekt: Error

429För många anrop (`api.rate_limited`), organisationens kvot för minuten, dygnet eller månaden är förbrukad (`api.quota_exceeded`; `error.details` innehåller `quota`, `limit` och `reset_at`), organisationens gräns är nådd eller svarstjänsten är upptagen (`answers.engine_busy`). Vänta den tid som anges i huvudet `Retry-After`.

Svarshuvuden

  • Retry-After

    Antal sekunder att vänta innan du skickar anropet igen.

  • RateLimit-Policy

    Gällande gränser i formatet från IETF-utkastet draft-ietf-httpapi-ratelimit-headers: kommaseparerade poster "<name>";q=<quota>;w=<window in seconds>. key är API-nyckelns anropsfrekvens (kvoten är toppen (burst), fönstret är tiden tills den har fyllts på helt; för en session är det user, utan autentiseringsuppgifter ip); minute, day och month är organisationens kvoter för kalenderminuten, kalenderdygnet och kalendermånaden i UTC.

  • RateLimit

    Vad som återstår av varje gräns i RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Gränsen för den striktaste posten i RateLimit-Policy (den med minst antal återstående anrop).

  • X-RateLimit-Remaining

    Återstående anrop inom den striktaste gränsen.

  • X-RateLimit-Reset

    Sekunder tills den striktaste gränsen nollställs.

application/json

Objekt: Error

Felkoder

Koder som den här slutpunkten kan returnera i error.code, utöver de allmänna koderna för alla anrop.

Säkra nya försök

Skicka huvudet Idempotency-Key (till exempel ett UUID) med varje POST och PATCH. Ett nytt försök med samma nyckel inom 24 timmar returnerar det sparade svaret i stället för att köra anropet igen.

Hastighetsbegränsningar

Svaren innehåller huvudena RateLimit och RateLimit-Policy samt de tidigare X-RateLimit-Limit, X-RateLimit-Remaining och X-RateLimit-Reset. Ett 429-svar har Retry-After i sekunder: vänta och försök igen.

← api-keys · API-referens