رفتن به محتوا

مرجع API

همهٔ مسیرهایی که یک توکن شخصی API می‌تواند فراخوانی کند، به ترتیب فهرست کناری. هر مدخل دسترسی‌های مسیر، این‌که دقیقه مصرف می‌کند یا نه، سقف درخواست‌ها، و پارامترها و فیلدهای آن را می‌گوید.

  • آدرس پایه: https://app.lobbe.ai/api/v1
  • احراز هویت: هر درخواست Authorization: Bearer $LOBBE_TOKEN را می‌فرستد.
  • سند OpenAPI: https://app.lobbe.ai/api/v1/openapi.json، که این‌جا هم با آدرس /openapi.json در دسترس است. این صفحه‌ها از همین سند ساخته می‌شوند.
مسیر کار آن دسترسی‌ها
GET /whoami این توکن متعلق به کیست، چه دسترسی‌هایی دارد، سقف روزانه‌اش و محدودیت‌های ارسال هر توکن فعال
مسیر کار آن دسترسی‌ها
GET /recordings/ready فهرست جلسه‌های آماده، از تازه‌ترین recordings:read
GET /recordings/search جست‌وجو در جلسه‌های آمادهٔ صاحب حساب با واژه‌هایشان، از تازه‌ترین جلسه recordings:query
GET /recordings/{id}/ask/quote هزینهٔ پرسیدن یک سؤال از این جلسه، به دقیقه recordings:query
POST /recordings/{id}/ask پرسیدن یک سؤال از یک جلسه، با پاسخ از رونوشت و لُب آن؛ هر پاسخ هزینه دارد recordings:query
GET /recordings/{id}/bundle یک جلسهٔ آماده: رونوشت، لُب و آمار آن؛ با format=markdown یک سند Markdown برمی‌گرداند recordings:read
GET /recordings/{id}/status پیشرفت یک جلسه؛ در مرحلهٔ نام‌گذاری، لینکی که از صاحب جلسه می‌خواهد گوینده‌ها را نام‌گذاری کند recordings:read یا recordings:write
POST /recordings ارسال صدای یک جلسه (multipart)؛ پاسخ ۲۰۲ همراه با لینک وضعیت آن recordings:write
POST /recordings/{id}/naming رد شدن از نام‌گذاری گوینده‌ها: صداهای بی‌نام پیشنهادهای لُب را می‌گیرند و لُب ساخته می‌شود recordings:write
POST /recordings/{id}/retry تلاش دوباره برای جلسهٔ ناموفق: مرحله‌ای که شکست خورد دوباره اجرا می‌شود، بدون هزینهٔ تازه recordings:write
مسیر کار آن دسترسی‌ها
GET /events آنچه پس از یک نشانگر برای جلسه‌های صاحب حساب رخ داده است: ساخته‌شدن، انتظار برای نام‌گذاری، آماده‌شدن، شکست، تغییر و حذف recordings:read یا recordings:write
مسیر کار آن دسترسی‌ها
GET /series/readable سری‌هایی که ساخته‌اید یا عضوشان هستید series:read
GET /series/{id} یک سری که ساخته‌اید یا عضو آن هستید: نام، پیش‌فرض‌ها و شمار جلسه‌های آمادهٔ آن series:read
PATCH /series/{id} تغییر سری‌ای که ساخته‌اید: نام، نوع سری و زبان پیش‌فرض، شیوهٔ عنوان یا تقویم آن series:write
POST /series ساختن یک سری: نام، نوع سری و زبان پیش‌فرض، شیوهٔ عنوان و تقویم آن series:write
GET /series/{id}/keyterms واژگان یک سری (فقط برای سازندهٔ آن) و این‌که واژگان حساب هم به کار می‌رود یا نه series:read
PUT /series/{id}/keyterms جایگزینی واژگان یک سری (فقط برای سازندهٔ آن)؛ جلسه‌ای که از واژگان استفاده کند هزینهٔ افزودهٔ آن را دارد series:write
GET /series/{id}/ask/quote هزینهٔ پرسیدن یک سؤال از این سری، به دقیقه، و این‌که چند جلسه را در بر می‌گیرد series:query
POST /series/{id}/ask پرسیدن یک سؤال از کل یک سری، با پاسخ از همهٔ جلسه‌های آمادهٔ آن؛ هر پاسخ هزینه دارد series:query
مسیر کار آن دسترسی‌ها
GET /account حساب: صاحب آن، موجودی آن به دقیقه و تنظیمات آن account:read
GET /account/keyterms واژگان حساب: واژه‌هایی که تبدیل گفتار به متن باید بشناسد account:read
PUT /account/keyterms جایگزینی واژگان حساب؛ جلسه‌ای که از واژگان استفاده کند هزینهٔ افزودهٔ آن را دارد account:write
GET /account/memory آنچه لُب دربارهٔ صاحب حساب به یاد دارد، همان‌گونه که صفحهٔ تنظیمات نشان می‌دهد account:read
PATCH /account/settings تغییر نام‌گذاری گوینده‌ها، یادگیری حافظه یا ایمیل خلاصه؛ نه چیز دیگری account:write
PATCH /account/memory/{id} بازنویسی یک نکتهٔ حافظه؛ نکتهٔ ویرایش‌شده همان‌گونه که نوشته‌اید می‌ماند account:write
DELETE /account/memory/{id} حذف یک نکتهٔ حافظه account:write
  • هر پاسخ JSON موفق schemaVersion: 1 دارد. فیلدهایی را که نمی‌شناسید نادیده بگیرید. بدنهٔ خطا فقط { error: … } است و schemaVersion ندارد، و ?format=markdown متن Markdown برمی‌گرداند.
  • x-lobbe-scopes دسترسی‌هایی را نام می‌برد که مسیر را باز می‌کنند: هر کدام از آن‌ها برای توکن کافی است. "any" (در GET /whoami) یعنی هر توکن فعالی، با هر دسترسی‌ای.
  • x-lobbe-spends در مسیری که می‌تواند دقیقه مصرف کند true است؛ همراه این مسیرها هدر Idempotency-Key را بفرستید (تکرارپذیری و تلاش دوباره).
  • x-lobbe-rate-limit دستهٔ مسیر (class) و سقف آن دسته برای هر توکن را می‌گوید: requests درخواست در هر windowSeconds ثانیه. همهٔ مسیرهای یک دسته از همان یک سقف سهم می‌برند (جدول پایین).
  • x-lobbe-summary-fa و x-lobbe-description-fa همان متن‌ها را به فارسی دارند.
  • PATCH /series/{id} و PATCH /account/settings دست‌کم یک فیلد می‌خواهند (minProperties: 1): بدنهٔ خالی پاسخ 400 می‌گیرد.
  • خطاها با { error: { code, message, details? } } پاسخ داده می‌شوند: code قرارداد است و message ممکن است تغییر کند. همهٔ کدها در خطاها آمده‌اند.
  • یک استثنا شکل قدیمی خود را نگه داشته است: در پاسخ 409 NOT_READY مسیر جلسهٔ کامل، details کنار error می‌آید نه درون آن، و details.status می‌گوید جلسه در چه مرحله‌ای است:
{
"error": { "code": "NOT_READY", "message": "…" },
"details": { "status": "TRANSCRIBING" }
}
دسته سقف هر توکن مسیرها
read ۶۰۰ درخواست در هر ۱۰ دقیقه GET /whoami، GET /recordings/ready، GET /recordings/{id}/bundle، GET /recordings/{id}/status، GET /events، GET /series/readable، GET /series/{id}، GET /series/{id}/keyterms، GET /account، GET /account/keyterms، GET /account/memory
submit ۳۰ درخواست در هر ۱۰ دقیقه POST /recordings، POST /recordings/{id}/naming، POST /recordings/{id}/retry
search ۱۲۰ درخواست در هر ۱۰ دقیقه GET /recordings/search، GET /recordings/{id}/ask/quote، GET /series/{id}/ask/quote
ask ۳۰ درخواست در هر ۱۰ دقیقه POST /recordings/{id}/ask، POST /series/{id}/ask
settings ۶۰ درخواست در هر ۱۰ دقیقه POST /series، PATCH /series/{id}، PUT /series/{id}/keyterms، PATCH /account/settings، PUT /account/keyterms، PATCH /account/memory/{id}، DELETE /account/memory/{id}