Разработчикам

Быстрый старт API SpeakNotes

Создайте ключ, выполните свой первый вызов в песочнице (sandbox), а затем переходите к работе в реальной среде. Четыре шага, все через curl.

1. Создайте ключ

Откройте настройки (Settings), API-ключи и создайте один. Выберите sandbox во время разработки: ключи sandbox возвращают фиксированный результат, не расходуют кредиты и записывают данные в отдельную библиотеку, которую можно удалить.

2. Выполните обобщение в песочнице

Каждый маршрут работает с ключом sandbox. Формат ответа идентичен реальному, поэтому вы можете уверенно строить на нем свою разработку.

curl -X POST https://api.speaknotes.io/v1/summaries \
  -H "Authorization: Bearer sn_test_YOUR_SANDBOX_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "We agreed to ship the billing fix on Friday. Sam owns the migration.",
    "styleId": "meeting-notes"
  }'

# {
#   "title": "Sandbox meeting notes",
#   "summary": "## Decisions\n- Sandbox mode confirmed working ...",
#   "styleId": "meeting-notes",
#   "creditsCharged": 0,
#   "notice": "Sandbox response: fixed output, no credits charged."
# }

3. Переключитесь на реальный ключ

Тот же запрос, другой ключ. Этот ключ использует реальную модель и расходует кредиты, а ответ показывает, сколько было использовано и сколько осталось.

curl -X POST https://api.speaknotes.io/v1/summaries \
  -H "Authorization: Bearer sn_live_YOUR_LIVE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text": "...", "styleId": "meeting-notes"}'

# Response headers include:
#   X-Credits-Remaining: 1998
# Response body includes:
#   "creditsCharged": 2

4. Загрузите файл

Длинные медиафайлы обрабатываются в фоновом режиме. Создайте загрузку, выполните PUT-запрос файла по подписанному URL, отметьте его как завершенный, а затем опрашивайте заметку, пока ее статус не станет Done.

# 1. create the note and get a signed upload URL
curl -X POST https://api.speaknotes.io/v1/uploads \
  -H "Authorization: Bearer $SPEAKNOTES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"fileName": "standup.m4a", "contentType": "audio/mp4", "styleId": "meeting-notes"}'

# 2. upload the file straight to the signed URL
curl -X PUT "$UPLOAD_URL" -H "Content-Type: audio/mp4" --data-binary @standup.m4a

# 3. tell SpeakNotes the upload finished (this is where credits are charged)
curl -X POST https://api.speaknotes.io/v1/uploads/$NOTE_ID/complete \
  -H "Authorization: Bearer $SPEAKNOTES_API_KEY"

# 4. poll until status is Done, then read the note
curl https://api.speaknotes.io/v1/notes/$NOTE_ID/status \
  -H "Authorization: Bearer $SPEAKNOTES_API_KEY"

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

Изучение API

GET /v1 не требует учетных данных и возвращает ресурсы, области действия (scopes), лимиты запросов, стоимость кредитов и инструкции по аутентификации. Это самый быстрый способ для агента сориентироваться.

curl https://api.speaknotes.io/v1

# Returns the resources, scopes, rate limits, credit costs,
# and how to authenticate. No credential required.

Далее: аутентификация и области действия (scopes), коды ошибок и стоимость каждой операции.