Sviluppatori

Autenticazione API di SpeakNotes

L'API accetta tre credenziali: una chiave API, un token di accesso OAuth o un token ID Firebase da una sessione autenticata.

Chiavi API

Invia la chiave come bearer token in ogni richiesta. Qualsiasi account autenticato può crearne una e funziona immediatamente.

curl https://api.speaknotes.io/v1/notes \
  -H "Authorization: Bearer sn_live_YOUR_API_KEY"

Le chiavi live iniziano con sn_live_ e agiscono sulla tua libreria reale. Le chiavi sandbox iniziano con sn_test_ e vengono eseguite su un output fisso. Le chiavi emesse prima dell'introduzione degli ambiti funzionano ancora e dispongono di accesso completo.

Ambiti (Scopes)

Ogni chiave e ogni token OAuth possiede degli ambiti. La lettura non implica mai la scrittura, quindi una chiave con ambito notes:read non può eliminare nulla. Una richiesta priva di un ambito riceve un errore 403 che indica cosa manca.

  • notes:readRead notes, transcripts, and summaries.
  • notes:writeCreate, update, and delete notes.
  • folders:readRead folders.
  • folders:writeCreate, update, and delete folders.
  • transcriptions:writeTranscribe audio and video.
  • summaries:writeGenerate summaries from audio, text, and YouTube URLs.
  • usage:readRead credit balance and usage history.

Limiti di frequenza

I limiti sono conteggiati per credenziale, non per IP, in modo che un'integrazione non possa esaurire le risorse di un'altra. Ogni risposta riporta X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset, e un errore 429 contiene Retry-After.

120
Letture al minuto
30
Scritture al minuto
10
Elaborazione al minuto
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="SpeakNotes API", error="invalid_token",
  resource_metadata="https://api.speaknotes.io/.well-known/oauth-protected-resource"

{
  "error": {
    "type": "authentication_error",
    "code": "invalid_token",
    "message": "The API key is invalid, expired, or revoked.",
    "doc_url": "https://speaknotes.io/developers/errors#invalid_token"
  }
}

OAuth

Stai creando qualcosa a cui gli utenti di SpeakNotes devono accedere? Usa OAuth invece di chiedere loro di incollare una chiave. /developers/oauth

Rotazione e revoca

Una chiave viene mostrata una sola volta, al momento della creazione, e archiviata solo come hash. La revoca ha effetto immediato. Alle chiavi può anche essere assegnata una data di scadenza al momento della creazione.