مرجع 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 |
این توکن متعلق به کیست، چه دسترسیهایی دارد، سقف روزانهاش و محدودیتهای ارسال | هر توکن فعال |
جلسهها
Section titled “جلسهها”| مسیر | کار آن | دسترسیها |
|---|---|---|
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 |
رویدادها
Section titled “رویدادها”| مسیر | کار آن | دسترسیها |
|---|---|---|
GET /events |
آنچه پس از یک نشانگر برای جلسههای صاحب حساب رخ داده است: ساختهشدن، انتظار برای نامگذاری، آمادهشدن، شکست، تغییر و حذف | recordings:read یا recordings:write |
سریها
Section titled “سریها”| مسیر | کار آن | دسترسیها |
|---|---|---|
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 |
قراردادها
Section titled “قراردادها”- هر پاسخ 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" }}سقف درخواستها
Section titled “سقف درخواستها”| دسته | سقف هر توکن | مسیرها |
|---|---|---|
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} |