رفتن به محتوا
cloudhostمستندات
مرجع API

محافظت و انتشار

محافظت پیش‌نمایش و پروداکشن، لینک اشتراک، ارتقا، انتشار تدریجی و هم‌خوانی نسخه‌ها.

توضیح هر مسیر به انگلیسی است، همان متنی که مرجع از کد ساخته می‌شود. مسیرها، نام فیلدها و کدها همان‌اند که در درخواست می‌نویسید.
GET/v1/functions/{name}/protection

Get deployment protection#

Who may open previews (off, team: members who sign in, password) and whether production is protected too; exceptions (domain names never protected), options_passthrough (OPTIONS requests pass, for CORS preflight), password_set, the bypass token's hint, the shareable links, and pro (the password and links are Pro).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/functions/my-api/protection" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/functions/{name}/protection

Set deployment protection#

Any of previews (off, team, password), production, options_passthrough, exceptions (20 at most), password (8 to 128 characters; needed the first time password is chosen; changing it signs everyone out). Answers like GET.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • previewsstring

    one of off, team, password

  • productionboolean
  • options_passthroughboolean
  • exceptionsstring[]

    0–20 items

  • passwordstring

    8–128 characters

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_mode, routing_bad_exceptions, routing_bad_password, routing_password_needed
401unauthorized: missing, invalid, expired or revoked credential
402routing_plan_required: password protection is Pro
404not_found
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/protection" \
  -H "Authorization: Bearer $KEY" \
  -d '{"previews":"off","production":true,"options_passthrough":true,"exceptions":["…"],"password":"…"}'
POST/v1/functions/{name}/protection/bypass

Create the bypass token#

A token for automation that skips protection, sent as the x-protection-bypass header or query parameter (the query parameter also sets a cookie). {token, hint, header}; the token is shown only in this answer and replaces the earlier one.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/protection/bypass" \
  -H "Authorization: Bearer $KEY"
DELETE/v1/functions/{name}/protection/bypass

Delete the bypass token#

{deleted: true}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/protection/bypass" \
  -H "Authorization: Bearer $KEY"
POST/v1/functions/{name}/protection/sign-out

Sign every visitor out#

Sign-in, password and link cookies stop working; visitors sign in again. {signed_out: true}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/protection/sign-out" \
  -H "Authorization: Bearer $KEY"
GET/v1/functions/{name}/routing

Get promotion and version settings#

{auto_promote, skew_protection, skew_hours, production_version, deployment_ids, candidates: [{version, url, releasing, build, commit, message, since}], release, pinned: [{version, url}]}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/functions/my-api/routing" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/functions/{name}/routing

Set promotion and version settings#

auto_promote: false = deploy without promoting: a production build becomes a candidate at rel-<version>--<name> and goes live only when promoted or released. skew_protection keeps an open page on the version it came from for skew_hours (1 to 168, default 12).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • auto_promoteboolean
  • skew_protectionboolean
  • skew_hoursinteger

    1–168

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_window, routing_bad_body
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/routing" \
  -H "Authorization: Bearer $KEY" \
  -d '{"auto_promote":true,"skew_protection":true,"skew_hours":1}'
POST/v1/functions/{name}/promote

Promote a version#

Make version (or the version of build) live in production at once. Ends a gradual release. {name, active_version, url}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • versioninteger
  • buildstring (uuid)

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
409routing_already_live, routing_preview_build, routing_not_ready
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/promote" \
  -H "Authorization: Bearer $KEY" \
  -d '{"version":1,"build":"8c1e0c55-1f2a-4d3b-9e8f-0a1b2c3d4e5f"}'
GET/v1/functions/{name}/releases

List gradual releases#

{releases: [Release], active} newest first. A Release: {number, status: active|completed|stopped|superseded, percent, version, from_version, steps, step, next_step_at, error_rate, min_requests, end_reason, url, started_by, started_at, changed_at, ended_at}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/functions/my-api/releases" \
  -H "Authorization: Bearer $KEY"
POST/v1/functions/{name}/releases

Start a gradual release#

Send percent (default: the first step, or 10) of production traffic to version (or build). Each visitor stays on one side (a cookie). steps: percentages ending at 100, e.g. [10, 25, 50, 100], or {percent, after_minutes} objects; with every_minutes the steps run on a schedule, else by hand. The release stops by itself when more than error_rate (default 0.05) of the version's requests fail, once it has min_requests (default 50).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • versioninteger
  • buildstring (uuid)
  • stepsany[]

    0–12 items

  • every_minutesnumber

    0–10080

  • percentinteger

    1–99

  • error_ratenumber

    at most 1

  • min_requestsinteger

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_steps, routing_bad_percent, routing_bad_threshold
401unauthorized: missing, invalid, expired or revoked credential
404not_found
409routing_release_active, routing_already_live, not_deployed
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/releases" \
  -H "Authorization: Bearer $KEY" \
  -d '{"version":1,"build":"8c1e0c55-1f2a-4d3b-9e8f-0a1b2c3d4e5f","steps":[],"every_minutes":0,"percent":1,"error_rate":1,"min_requests":1}'
GET/v1/functions/{name}/releases/{number}

Get a release#

A Release (current for the active one) with metrics: {series: [{version, minute, requests, errors, static_requests}], totals: [{version, requests, errors, error_rate, static_requests}]} since it started.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

  • numberstringمسیرالزامی

    a release number, or current

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/functions/my-api/releases/1405-000001" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/functions/{name}/releases/current

Set the release's share#

{percent} 1 to 100; 100 makes the version production and completes the release. Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • percentintegerالزامی

    1–100

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/releases/current" \
  -H "Authorization: Bearer $KEY" \
  -d '{"percent":1}'
POST/v1/functions/{name}/releases/current/advance

Next step#

The plan's next step (after the last: production). Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/releases/current/advance" \
  -H "Authorization: Bearer $KEY"
POST/v1/functions/{name}/releases/current/stop

Stop the release#

All traffic back to production at once; the version stays at its own address, waiting. Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/functions/my-api/releases/current/stop" \
  -H "Authorization: Bearer $KEY"
GET/v1/apps/{name}/protection

Get deployment protection#

Who may open previews (off, team: members who sign in, password) and whether production is protected too; exceptions (domain names never protected), options_passthrough (OPTIONS requests pass, for CORS preflight), password_set, the bypass token's hint, the shareable links, and pro (the password and links are Pro).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/apps/my-api/protection" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/apps/{name}/protection

Set deployment protection#

Any of previews (off, team, password), production, options_passthrough, exceptions (20 at most), password (8 to 128 characters; needed the first time password is chosen; changing it signs everyone out). Answers like GET.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • previewsstring

    one of off, team, password

  • productionboolean
  • options_passthroughboolean
  • exceptionsstring[]

    0–20 items

  • passwordstring

    8–128 characters

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_mode, routing_bad_exceptions, routing_bad_password, routing_password_needed
401unauthorized: missing, invalid, expired or revoked credential
402routing_plan_required: password protection is Pro
404not_found
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/apps/my-api/protection" \
  -H "Authorization: Bearer $KEY" \
  -d '{"previews":"off","production":true,"options_passthrough":true,"exceptions":["…"],"password":"…"}'
POST/v1/apps/{name}/protection/bypass

Create the bypass token#

A token for automation that skips protection, sent as the x-protection-bypass header or query parameter (the query parameter also sets a cookie). {token, hint, header}; the token is shown only in this answer and replaces the earlier one.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/protection/bypass" \
  -H "Authorization: Bearer $KEY"
DELETE/v1/apps/{name}/protection/bypass

Delete the bypass token#

{deleted: true}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X DELETE "https://api.ibel.ai/v1/apps/my-api/protection/bypass" \
  -H "Authorization: Bearer $KEY"
POST/v1/apps/{name}/protection/sign-out

Sign every visitor out#

Sign-in, password and link cookies stop working; visitors sign in again. {signed_out: true}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/protection/sign-out" \
  -H "Authorization: Bearer $KEY"
GET/v1/apps/{name}/routing

Get promotion and version settings#

{auto_promote, skew_protection, skew_hours, production_version, deployment_ids, candidates: [{version, url, releasing, build, commit, message, since}], release, pinned: [{version, url}]}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/apps/my-api/routing" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/apps/{name}/routing

Set promotion and version settings#

auto_promote: false = deploy without promoting: a production build becomes a candidate at rel-<version>--<name> and goes live only when promoted or released. skew_protection keeps an open page on the version it came from for skew_hours (1 to 168, default 12).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • auto_promoteboolean
  • skew_protectionboolean
  • skew_hoursinteger

    1–168

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_window, routing_bad_body
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/apps/my-api/routing" \
  -H "Authorization: Bearer $KEY" \
  -d '{"auto_promote":true,"skew_protection":true,"skew_hours":1}'
POST/v1/apps/{name}/promote

Promote a version#

Make version (or the version of build) live in production at once. Ends a gradual release. {name, active_version, url}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • versioninteger
  • buildstring (uuid)

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
409routing_already_live, routing_preview_build, routing_not_ready
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/promote" \
  -H "Authorization: Bearer $KEY" \
  -d '{"version":1,"build":"8c1e0c55-1f2a-4d3b-9e8f-0a1b2c3d4e5f"}'
GET/v1/apps/{name}/releases

List gradual releases#

{releases: [Release], active} newest first. A Release: {number, status: active|completed|stopped|superseded, percent, version, from_version, steps, step, next_step_at, error_rate, min_requests, end_reason, url, started_by, started_at, changed_at, ended_at}.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404not_found
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/apps/my-api/releases" \
  -H "Authorization: Bearer $KEY"
POST/v1/apps/{name}/releases

Start a gradual release#

Send percent (default: the first step, or 10) of production traffic to version (or build). Each visitor stays on one side (a cookie). steps: percentages ending at 100, e.g. [10, 25, 50, 100], or {percent, after_minutes} objects; with every_minutes the steps run on a schedule, else by hand. The release stops by itself when more than error_rate (default 0.05) of the version's requests fail, once it has min_requests (default 50).

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • versioninteger
  • buildstring (uuid)
  • stepsany[]

    0–12 items

  • every_minutesnumber

    0–10080

  • percentinteger

    1–99

  • error_ratenumber

    at most 1

  • min_requestsinteger

پاسخ

200object

خطاها

وضعیتتوضیح
400routing_bad_steps, routing_bad_percent, routing_bad_threshold
401unauthorized: missing, invalid, expired or revoked credential
404not_found
409routing_release_active, routing_already_live, not_deployed
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/releases" \
  -H "Authorization: Bearer $KEY" \
  -d '{"version":1,"build":"8c1e0c55-1f2a-4d3b-9e8f-0a1b2c3d4e5f","steps":[],"every_minutes":0,"percent":1,"error_rate":1,"min_requests":1}'
GET/v1/apps/{name}/releases/{number}

Get a release#

A Release (current for the active one) with metrics: {series: [{version, minute, requests, errors, static_requests}], totals: [{version, requests, errors, error_rate, static_requests}]} since it started.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

  • numberstringمسیرالزامی

    a release number, or current

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl "https://api.ibel.ai/v1/apps/my-api/releases/1405-000001" \
  -H "Authorization: Bearer $KEY"
PATCH/v1/apps/{name}/releases/current

Set the release's share#

{percent} 1 to 100; 100 makes the version production and completes the release. Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

بدنهٔ درخواستapplication/json

  • percentintegerالزامی

    1–100

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X PATCH "https://api.ibel.ai/v1/apps/my-api/releases/current" \
  -H "Authorization: Bearer $KEY" \
  -d '{"percent":1}'
POST/v1/apps/{name}/releases/current/advance

Next step#

The plan's next step (after the last: production). Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/releases/current/advance" \
  -H "Authorization: Bearer $KEY"
POST/v1/apps/{name}/releases/current/stop

Stop the release#

All traffic back to production at once; the version stays at its own address, waiting. Answers with the Release.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
مالک، ادمین، توسعه‌دهنده

پارامترها

  • namestringمسیرالزامی

    the function's or app's name

    pattern ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ · up to 63 characters

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
404routing_no_release
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/apps/my-api/releases/current/stop" \
  -H "Authorization: Bearer $KEY"
POST/v1/protection/grant

Sign in to a protected deployment#

Used by the dashboard's sign-in page for team protection: {host, return} → {redirect}, the deployment's address with a one-time hand-over that becomes the visitor's cookie. The caller must be a member of the team that owns it.

دسترسی
کلید API یا نشست داشبورد
نقش‌ها
همهٔ نقش‌ها

بدنهٔ درخواستapplication/json

  • hoststringالزامی
  • returnstringالزامی

پاسخ

200object

خطاها

وضعیتتوضیح
401unauthorized: missing, invalid, expired or revoked credential
403routing_not_member, routing_other_team
404routing_no_site
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/protection/grant" \
  -H "Authorization: Bearer $KEY" \
  -d '{"host":"…","return":"https://example.com"}'
POST/v1/protection/password

Open a password-protected deployment#

Used by the sign-in page for password protection: {host, return, password} → {redirect}. No key needed; 20 tries a minute per project.

دسترسی
بدون اعتبارنامه

بدنهٔ درخواستapplication/json

  • hoststringالزامی
  • returnstringالزامی
  • passwordstringالزامی

پاسخ

200object

خطاها

وضعیتتوضیح
401routing_wrong_password
404routing_no_site
409routing_no_password
429rate_limited
500internal: an unexpected failure

نمونه

curl -X POST "https://api.ibel.ai/v1/protection/password" \
  -d '{"host":"…","return":"https://example.com","password":"…"}'