Desenvolvedores

Autenticação da API do SpeakNotes

A API aceita três credenciais: uma chave de API, um token de acesso OAuth ou um token de ID do Firebase de uma sessão autenticada.

Chaves de API

Envie a chave como um token bearer em cada solicitação. Qualquer conta autenticada pode criar uma, e ela funciona imediatamente.

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

Chaves de produção começam com sn_live_ e atuam em sua biblioteca real. Chaves de sandbox começam com sn_test_ e operam com saídas fixas. Chaves emitidas antes da existência de escopos ainda funcionam e possuem acesso total.

Escopos

Cada chave e cada token OAuth possuem escopos. Ler nunca implica em escrever, portanto, uma chave com escopo notes:read não pode excluir nada. Uma solicitação sem um escopo recebe um erro 403 que indica o que está faltando.

  • 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.

Limites de taxa

Os limites são contados por credencial, não por IP, para que uma integração não prejudique outra. Cada resposta contém X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset, e um erro 429 contém o cabeçalho Retry-After.

120
Leituras por minuto
30
Escritas por minuto
10
Processamento por 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

Está criando algo para outros usuários do SpeakNotes acessarem? Use OAuth em vez de pedir que eles colem uma chave. /developers/oauth

Rotação e revogação

Uma chave é exibida apenas uma vez, na criação, e armazenada apenas como um hash. Revogar uma chave entra em vigor imediatamente. As chaves também podem receber uma data de validade quando você as cria.