AttendBeacon
Avaa työtila

Käsitteet

Kutsurajoitukset

Kukin avain voi tehdä 120 kutsua minuutissa REST-rajapintaan ja MCP-palvelimeen yhteensä. Jokainen vastaus kertoo, montako on jäljellä.

Raja

Kukin avain voi tehdä 120 kutsua minuutissa. REST API ja MCP-palvelin lasketaan samaan aikaikkunaan, joten tekoälyavustaja ja synkronointi, jotka käyttävät samaa avainta, jakavat sen rajan; anna kummallekin oma avain.

Synkronointi, joka lukee 500 osallistujaa sivulla, lukee rajan puitteissa 60 000 osallistujaa minuutissa, joten hyvin tehty integraatio törmää rajaan harvoin. Silmukka, joka kysyy samaa asiaa yhä uudelleen, törmää siihen minuutissa, ja juuri sitä varten raja on olemassa.

Missä mennään

Jokainen vastaus, hylkäykset mukaan lukien, kertoo rajan kahdessa muodossa: IETF:n RateLimit-otsakkeina ja X-RateLimit-*-otsakkeina, joita useimmat asiakaskirjastot lukevat.

HTTP
HTTP/1.1 200 OK
RateLimit-Policy: "default";q=120;w=60
RateLimit: "default";r=117;t=42
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
X-RateLimit-Reset: 42

r (remaining) on tässä aikaikkunassa jäljellä olevat kutsut ja t sekunnit uuden ikkunan alkuun.

Kun raja ylittyy

Kutsu hylätään vastauksella 429 Too Many Requests, sekunteina ilmoitetulla Retry-After-otsakkeella ja ongelmakuvauksella, jossa on "code": "rateLimited". Mitään ei tehty: odota ja lähetä se sitten uudelleen. Hylätty kutsu näkyy avainten käyttölokissa, joten näet, milloin se tapahtui.

HTTP
HTTP/1.1 429 Too Many Requests
Retry-After: 18
Content-Type: application/problem+json

{ "status": 429, "code": "rateLimited", "detail": "This key made more than 120 calls in a minute. Try again in 18 seconds; the RateLimit header says what is left." }

Näin pysyt reilusti rajan alla

  • Pyydä suuria sivuja: limit=500 on hyvä.
  • Synkronoi updatedSince-parametrilla sen sijaan, että lukisit kaiken joka kerta (Sivutus ja synkronointi).
  • Käytä webhookeja kyselemisen sijaan juuri tapahtuneiden asioiden seuraamiseen.
  • Lähetä If-None-Match hallussasi olevan ETagin kanssa: 304 on nopea, vaikka se lasketaankin.
  • Pidä taukoa, kun RateLimit-otsakkeen r käy vähiin, äläkä odota hylkäystä.

Aikaikkuna lasketaan palvelinkohtaisesti, joten kiireisenä päivänä avain voi silloin tällöin saada hieman rajaa enemmän. Älä rakenna sen varaan: pidä otsakkeita totuutena.

Oppaat ja tämä sivusto ovat omalla kielelläsi. API-viiteoppaan omat kuvaukset ovat englanniksi, kuten itse rajapintakin.