Skip to main content
API-referencen angiver driftsprofilen for hver handling. Brug den til at afgøre, om et kald kan prøves igen, og hvilke headers det kræver.

Grænser for kald

Grænser gælder pr. bruger og arbejdsområde i faste, minutlange tidsvinduer. Svar, der tæller mod en grænse, indeholder X-RateLimit-Limit og X-RateLimit-Remaining. Et begrænset kald giver 429 RATE_LIMITED og en Retry-After-header i sekunder. Vent den angivne tid, og prøv derefter igen med eksponentielt backoff og jitter. Grænserne beskytter tjenestens drift. De er ikke faste kundekvoter og kan blive mere specifikke uden at ændre handlingens offentlige kontrakt.

Idempotente skrivekald

Oprettelse, arkivering, gendannelse, generering og godkendelse kræver headeren Idempotency-Key. Vælg en uigennemsigtig værdi, der er unik for én logisk handling, for eksempel et UUID. Floral gemmer et afsluttet resultat i 24 timer. Et identisk nyt forsøg fra samme nøgle, arbejdsområde og handling gentager oprindelig status, svarindhold, ETag, Location og X-Request-ID. Hvis nøglen genbruges med et andet kanonisk mål, et andet fortolket input eller en anden If-Match-værdi inden for samme handling, får du 409 IDEMPOTENCY_CONFLICT. Nøgler er afgrænset pr. handling, men du bør stadig bruge en ny nøgle til hvert nyt logisk kald.
Hvis forbindelsen lukker, før du modtager svaret, sender du det identiske kald igen med samme nøgle. Opret kun en ny nøgle til en ny logisk handling.

Optimistisk samtidighed

Detaljesvar for ændringsbare ressourcer indeholder en stærk ETag. Delvise opdateringer og tilstandsændringer kræver den nyeste værdi i If-Match.
Behandl værdien som uigennemsigtig, og behold anførselstegnene. Gem den nye ETag efter et gennemført skrivekald. Ved 412 VERSION_CONFLICT skal du genindlæse ressourcen, afstemme den ønskede ændring med den aktuelle tilstand og prøve igen med den nye værdi. Prøv ikke automatisk en 412 igen uden afstemning.

Request-id og logning

Send en unik X-Request-ID på højst 128 tegn pr. logisk kald. Floral returnerer det gældende id i svaret og i alle fejlformater. Idempotente gentagelser returnerer det oprindelige id, så forsøgene kan forbindes. Gem følgende i integrationens logs uden tokens eller følsomme body-felter:
  • operationId, workspaceSlug og ressource-id;
  • brugt idempotensnøgle eller ressourceversion;
  • HTTP-status, fejlkode og X-Request-ID;
  • tidspunkt og resultat for hvert nyt forsøg.
Floral registrerer den godkendte aktør ved skrivekald. Brug en nøgle, der tilhører den person, som er ansvarlig for ændringen, og behold request-id’et ved undersøgelse af en hændelse.

Beslutningstabel for nye forsøg