개발자
SpeakNotes API 인증
API는 API 키, OAuth 액세스 토큰, 또는 로그인 세션의 Firebase ID 토큰 등 세 가지 자격 증명을 허용합니다.
API 키
모든 요청 시 키를 베어러 토큰으로 전송하세요. 로그인한 계정이라면 누구나 키를 생성할 수 있으며 즉시 사용 가능합니다.
curl https://api.speaknotes.io/v1/notes \ -H "Authorization: Bearer sn_live_YOUR_API_KEY"
라이브 키는 sn_live_로 시작하며 실제 라이브러리에 적용됩니다. 샌드박스 키는 sn_test_로 시작하며 고정된 결과에 대해 실행됩니다. 범위(scope) 도입 이전에 발급된 키도 여전히 작동하며 모든 권한을 가집니다.
범위(Scopes)
모든 키와 OAuth 토큰에는 범위가 지정됩니다. 읽기 권한이 쓰기 권한을 포함하지 않으므로, notes:read 범위만 가진 키로는 아무것도 삭제할 수 없습니다. 범위가 누락된 요청은 누락된 항목을 명시하는 403 오류를 반환합니다.
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.
속도 제한
제한은 IP가 아닌 자격 증명별로 계산되므로 한 통합이 다른 통합을 방해하지 않습니다. 모든 응답에는 X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset이 포함되며, 429 응답에는 Retry-After가 포함됩니다.
120
읽기 분당
30
쓰기 분당
10
처리 분당
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
다른 SpeakNotes 사용자가 로그인할 수 있는 서비스를 구축 중인가요? 사용자가 키를 직접 붙여넣게 하는 대신 OAuth를 사용하세요. /developers/oauth
로테이션 및 취소
키는 생성 시 한 번만 표시되며 해시 형태로만 저장됩니다. 키를 취소하면 즉시 효력이 발생합니다. 키 생성 시 만료 날짜를 지정할 수도 있습니다.