فانکشنها
فانکشنهای استاندارد وب. همان مسیرهای برنامهها.
/v1/functionsList functions#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پاسخ
200object
functionsProject[]الزامیidstring (uuid)الزامیnamestringالزامیkindstringالزامیone of
function,appurlstringالزامیactive_versioninteger | nullالزامیcreated_atstring (date-time)الزامیstatusstringالزامیrunning: served a request (a static file or its code) in the last 3 minutes, or static files only (always running once deployed); idle: deployed and quiet, wakes on the next request
one of
running,idle,not_deployedcreated_byActor | nullwho created it; null when not known
kindstringone of
person,key,systemidstringnamestring | nullemailstring | nullavatarstring | nulla small image as a data URL
labelstringyouboolean
connectedobject[]the stores its production version uses
kindstringone of
database,cache,bucket,queuenamestring
last_buildobject | nullالزامیidstring (uuid)الزامیbranchstringالزامیmain for production
productionbooleanالزامیcommitstring | nullmessagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failedtriggerstringالزامیone of
cli,gitcreated_atstring (date-time)الزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions" \
-H "Authorization: Bearer $KEY"/v1/functionsCreate a function#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
بدنهٔ درخواستapplication/json
namestringالزامیone DNS label: lowercase letters, digits and hyphens, 1-63 characters, no
--pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
201Project
idstring (uuid)الزامیnamestringالزامیkindstringالزامیone of
function,appurlstringالزامیactive_versioninteger | nullالزامیcreated_atstring (date-time)الزامیstatusstringالزامیrunning: served a request (a static file or its code) in the last 3 minutes, or static files only (always running once deployed); idle: deployed and quiet, wakes on the next request
one of
running,idle,not_deployedcreated_byActor | nullwho created it; null when not known
kindstringone of
person,key,systemidstringnamestring | nullemailstring | nullavatarstring | nulla small image as a data URL
labelstringyouboolean
connectedobject[]the stores its production version uses
kindstringone of
database,cache,bucket,queuenamestring
last_buildobject | nullالزامیidstring (uuid)الزامیbranchstringالزامیmain for production
productionbooleanالزامیcommitstring | nullmessagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failedtriggerstringالزامیone of
cli,gitcreated_atstring (date-time)الزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_name, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 409 | Conflict: name_taken |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions" \
-H "Authorization: Bearer $KEY" \
-d '{"name":"my-api"}'/v1/functions/{name}Get a function#
- دسترسی
- کلید 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
پاسخ
200Project
idstring (uuid)الزامیnamestringالزامیkindstringالزامیone of
function,appurlstringالزامیactive_versioninteger | nullالزامیcreated_atstring (date-time)الزامیstatusstringالزامیrunning: served a request (a static file or its code) in the last 3 minutes, or static files only (always running once deployed); idle: deployed and quiet, wakes on the next request
one of
running,idle,not_deployedcreated_byActor | nullwho created it; null when not known
kindstringone of
person,key,systemidstringnamestring | nullemailstring | nullavatarstring | nulla small image as a data URL
labelstringyouboolean
connectedobject[]the stores its production version uses
kindstringone of
database,cache,bucket,queuenamestring
last_buildobject | nullالزامیidstring (uuid)الزامیbranchstringالزامیmain for production
productionbooleanالزامیcommitstring | nullmessagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failedtriggerstringالزامیone of
cli,gitcreated_atstring (date-time)الزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}Delete a function#
With its versions, previews, secrets and logs; its address stops answering at once and the name is free again. Refused while it has cron triggers, or while its live version or a preview binds a database, cache or bucket (checked after the role and the name, before step-up).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید 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
namestringdeletedbooleanالزامیversionsintegerhow many versions were removed
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found |
| 409 | Conflict: has_crons, has_bindings |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}Rename a function#
Its address and its previews' move to the new name at once and the old ones stop answering; custom domains stay. Its id, versions, variables, crons, alerts, logs and usage stay with it. The old name stays reserved for 15 minutes. Refused while a build is queued or running, or when a preview's address would pass 63 characters.
- دسترسی
- کلید 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
namestringالزامیone DNS label: lowercase letters, digits and hyphens, 1-63 characters, no
--pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200Project
idstring (uuid)الزامیnamestringالزامیkindstringالزامیone of
function,appurlstringالزامیactive_versioninteger | nullالزامیcreated_atstring (date-time)الزامیstatusstringالزامیrunning: served a request (a static file or its code) in the last 3 minutes, or static files only (always running once deployed); idle: deployed and quiet, wakes on the next request
one of
running,idle,not_deployedcreated_byActor | nullwho created it; null when not known
kindstringone of
person,key,systemidstringnamestring | nullemailstring | nullavatarstring | nulla small image as a data URL
labelstringyouboolean
connectedobject[]the stores its production version uses
kindstringone of
database,cache,bucket,queuenamestring
last_buildobject | nullالزامیidstring (uuid)الزامیbranchstringالزامیmain for production
productionbooleanالزامیcommitstring | nullmessagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failedtriggerstringالزامیone of
cli,gitcreated_atstring (date-time)الزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_name, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: name_taken, build_running, preview_too_long |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/functions/my-api" \
-H "Authorization: Bearer $KEY" \
-d '{"name":"my-api"}'/v1/functions/{name}/versionsList versions (newest 100)#
- دسترسی
- کلید 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
versionsVersion[]الزامیnumberintegerالزامیbundle_hashstring | nullsha256, hex
pattern
^[0-9a-f]{64}$manifest_hashstring | nullsha256, hex
pattern
^[0-9a-f]{64}$runtime_datestringcreated_bystringcreated_atstring (date-time)activebooleanالزامیlive in production
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/versions" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/versionsUpload a version#
A function needs modules and no files. JSON body up to 20 MiB.
- دسترسی
- کلید 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
main_modulestringentry module name; required with modules
pattern
^[A-Za-z0-9][A-Za-z0-9._-]{0,99}\.m?js$modulesobjectmodule name -> source; 1-50 modules, 10 MiB in all; required for a function
runtime_datestring (date)YYYY-MM-DD, 2022-01-01 to today; default today
varsobjectup to 64; names ^[A-Za-z_][A-Za-z0-9_]{0,63}$
bindingsobjectenv name -> the team's database, cache or bucket
filesobjectapps only: path -> file; the count, each size and the total by plan (GET /v1/limits)
headers_filestringapps only: a _headers file
redirects_filestringapps only: a _redirects file
spabooleanapps only: serve /index.html for unknown paths
پاسخ
201VersionCreated
versionintegerالزامیbundle_hashstring | nullsha256, hex
pattern
^[0-9a-f]{64}$manifest_hashstring | nullsha256, hex
pattern
^[0-9a-f]{64}$filesintegerspabooleanruntime_datestringvarsstring[]bindingsstring[]created_atstring (date-time)الزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_bundle, bad_bindings, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: missing_assets, rotate_storage_key |
| 413 | Body too large: too_large, limit_exceeded (over the plan's deployment limits, GET /v1/limits) |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/versions" \
-H "Authorization: Bearer $KEY" \
-d '{"main_module":"…","modules":{},"runtime_date":"2026-11-04","vars":{},"bindings":{},"files":{},"headers_file":"…","redirects_file":"…","spa":true}'/v1/functions/{name}/deployDeploy a version (production or a preview)#
A branch other than main, master or production deploys the preview <branch>--<name>.
- دسترسی
- کلید 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
versionintegerdefault: the newest
branchstringgit branch; default production
پاسخ
200Deployed
namestringالزامیurlstringالزامیbranchstring | nullpreview label; null for production
active_versionintegerالزامیsnapshotinteger | nullالزامیconfiguration revision; null when superseded
supersededbooleanonly when true: a newer version is already live at that address, so this deploy changed nothing (concurrent deploys: the newest wins)
database_branchesDatabaseBranchRef[]databasestringالزامیbranchstringالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_branch, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found, no_version |
| 409 | Conflict: binding_gone, too_many_branches, no_main, storage_busy |
| 500 | internal: an unexpected failure |
| 503 | Unavailable: storage_unavailable, storage_unreachable |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/deploy" \
-H "Authorization: Bearer $KEY" \
-d '{"version":1,"branch":"dev"}'/v1/startersThe starter functions, with their source#
hello, json-api, webhook, cron, database (env.DB) and cache (env.CACHE). Post a starter's files to POST /v1/functions/{name}/source.
- دسترسی
- کلید API یا نشست داشبورد
پاسخ
200object
startersobject[]idstringtitlestringmain_modulestringfilesmap of stringbindingsobject[]namestringtypestringone of
db,cache
cronsstring[]
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
نمونه
curl "https://api.ibel.ai/v1/starters" \
-H "Authorization: Bearer $KEY"/v1/source/limitsThe plan's limits on function source and uploaded archives#
- دسترسی
- کلید API یا نشست داشبورد
پاسخ
200object
planstringfunctionobjectfilesintegersource_bytesinteger
uploadobjectarchive_bytesintegerfilesintegerexpanded_bytesintegerfile_bytesintegerformatsstring[]
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
نمونه
curl "https://api.ibel.ai/v1/source/limits" \
-H "Authorization: Bearer $KEY"/v1/limitsDeployment size limits, the plan's and every plan's#
What one deployment may hold, by plan: static files, one file, all static files, the function's code compressed (gzip of the stored code) and before compression. Sizes are bytes. plan, function and upload are as in GET /v1/source/limits; deployment and run (copies of a function per server) are the caller's plan; plans is every plan, contract true where the limits are set by contract. The CLI checks a deployment against this before uploading; a deployment over a limit is refused with 413 limit_exceeded.
- دسترسی
- کلید API یا نشست داشبورد
پاسخ
200object
planstringfunctionobjectfilesintegersource_bytesinteger
uploadobjectarchive_bytesintegerfilesintegerexpanded_bytesintegerfile_bytesintegerformatsstring[]
deploymentDeploymentLimitsstatic_filesintegerstatic files in a deployment
file_bytesintegerone static file
static_bytesintegerall static files of a deployment, added up
function_bytesintegerthe function's code, gzip-compressed as stored
function_raw_bytesintegerthe function's code before compression
runobjectthe caller's plan's run limits (D117)
function_copiesintegercopies of one function a server runs at once
plansobjecthobbyDeploymentPlanLimitsstatic_filesintegerstatic files in a deployment
file_bytesintegerone static file
static_bytesintegerall static files of a deployment, added up
function_bytesintegerthe function's code, gzip-compressed as stored
function_raw_bytesintegerthe function's code before compression
function_copiesintegercopies of one function a server runs at once (D117)
contractbooleanthe limits are set by contract (Enterprise; Pro's numbers until a contract sets others)
proDeploymentPlanLimitsstatic_filesintegerstatic files in a deployment
file_bytesintegerone static file
static_bytesintegerall static files of a deployment, added up
function_bytesintegerthe function's code, gzip-compressed as stored
function_raw_bytesintegerthe function's code before compression
function_copiesintegercopies of one function a server runs at once (D117)
contractbooleanthe limits are set by contract (Enterprise; Pro's numbers until a contract sets others)
enterpriseDeploymentPlanLimitsstatic_filesintegerstatic files in a deployment
file_bytesintegerone static file
static_bytesintegerall static files of a deployment, added up
function_bytesintegerthe function's code, gzip-compressed as stored
function_raw_bytesintegerthe function's code before compression
function_copiesintegercopies of one function a server runs at once (D117)
contractbooleanthe limits are set by contract (Enterprise; Pro's numbers until a contract sets others)
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
نمونه
curl "https://api.ibel.ai/v1/limits" \
-H "Authorization: Bearer $KEY"/v1/git/remoteWhere git push goes, and how to sign in#
The username can be anything; the password is an API key (developer role or above).
- دسترسی
- کلید API یا نشست داشبورد
پاسخ
200object
basestringurl_templatestringe.g. https://git.ibel.ai/{name}.git
remotestringusernamestringpasswordstringone of
api_key
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
نمونه
curl "https://api.ibel.ai/v1/git/remote" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/sourceA version's source files (default the live version)#
A version a build or the CLI's bundler made has no plain source (editable false, reason built).
- دسترسی
- کلید API یا نشست داشبورد
پارامترها
namestringمسیرالزامیpattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$versionintegerکوئری
پاسخ
200object
namestringversionintegerlivebooleaneditablebooleanreasonstring | nullone of
built,nullmain_modulestring | nullfilesmap of string | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_param |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found, no_version |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/source" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/sourceDeploy a function from source files as written (no bundling)#
Each file is parsed as an ES module first. The version keeps the text (editable). Bindings left out on an existing function keep the live version's.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
filesmap of stringالزامیfile name (.js or .mjs) → text; count and size by plan
main_modulestringdefault worker.js, else the first file
bindingsobjectas on POST …/versions
varsmap of stringruntime_datestring (date)createbooleanmake the function if it does not exist
deploybooleanfalse: make the version only; default true
پاسخ
201objectCreated
namestringcreatedbooleanversionintegerdeployedbooleanurlstringactive_versioninteger | nullbundle_hashstringbindingsstring[]varsstring[]created_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_files, bad_name, bad_main, syntax_error, bad_bindings, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: name_taken |
| 413 | Too large: too_large, too_many_files, limit_exceeded (over the plan's deployment limits, GET /v1/limits) |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/source" \
-H "Authorization: Bearer $KEY" \
-d '{"files":{"KEY":"s3cr3t"}}'/v1/functions/{name}/rollbackRoll production back#
- دسترسی
- کلید 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
versionintegerdefault: the version live before the current one
پاسخ
200RolledBack
namestringالزامیurlstringالزامیactive_versionintegerالزامیsnapshotinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found, no_version |
| 409 | Conflict: not_deployed, binding_gone |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/rollback" \
-H "Authorization: Bearer $KEY" \
-d '{"version":1}'/v1/functions/{name}/previewsList branch previews#
- دسترسی
- کلید 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
previewsPreview[]الزامیbranchstringالزامیurlstringالزامیversionintegerالزامیupdated_atstring (date-time)git_branchstring | nullthe git branch the build came from
commitstring | nullmessagestring | nullthe commit's first line
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/previews" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/previews/{branch}Delete a preview#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersbranchstringمسیرالزامیthe git branch or its label
پاسخ
200PreviewDeleted
branchstringالزامیdeletedbooleanالزامیdatabase_branchesobject[]databasestringالزامیbranchstringالزامیdeletedbooleanالزامیreasonstring
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/previews/dev" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/envList environment variables#
The project's own and the team's shared ones linked to it. Values are masked unless revealed.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersenvironmentstringکوئریthe variables that apply there
one of
production,preview,developmentbranchstringکوئریwith it: the variables for every preview and that branch's
keystringکوئریone key
decryptstringکوئری1: plain values (owner, admin, developer); sensitive ones never
one of
1
پاسخ
200EnvVarList
variablesEnvVar[]الزامیidstring (uuid)الزامیkeystringالزامیpattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$environmentsstring[]الزامیbranchstring | nullالزامیa git branch; only with environments [preview]
scopestringالزامیteam: a shared variable
one of
project,teamtypestringالزامیsensitive: never shown again, production and preview only
one of
plain,sensitivevaluestring | nullالزامیthe text only when revealed (?decrypt=1) and plain
created_atstring (date-time)updated_atstring (date-time)created_byobject | nulltypestringone of
person,keynamestring | null
updated_byobject | nulltypestringone of
person,keynamestring | null
projectsobject[]shared variables only
namestringkindstringone of
function,app
sharedEnvVar[]a project's list: the team's shared variables linked to it
idstring (uuid)الزامیkeystringالزامیpattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$environmentsstring[]الزامیbranchstring | nullالزامیa git branch; only with environments [preview]
scopestringالزامیteam: a shared variable
one of
project,teamtypestringالزامیsensitive: never shown again, production and preview only
one of
plain,sensitivevaluestring | nullالزامیthe text only when revealed (?decrypt=1) and plain
created_atstring (date-time)updated_atstring (date-time)created_byobject | nulltypestringone of
person,keynamestring | null
updated_byobject | nulltypestringone of
person,keynamestring | null
projectsobject[]shared variables only
namestringkindstringone of
function,app
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_environments, bad_branch |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/env" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/envAdd or import environment variables#
All or none. Applies at once: running deployments restart with the new values.
- دسترسی
- کلید 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
one of: {key, value, …}, {variables: [...]}, {dotenv}
keystringvaluestringup to 5120 characters
variablesEnvVarInput[]several, up to 128
keystringالزامیvaluestringالزامیup to 5120 characters
environmentsstring[]default: all three; production and preview when sensitive; preview with a branch
branchstringa git branch: only its previews
typestringone of
plain,sensitivesensitiveboolean
dotenvstring.env text to import
environmentsstring[]for every row that leaves them out
branchstringprojects only
typestringone of
plain,sensitivesensitivebooleanupsertbooleanreplace the value of a variable with the same key, branch and environments
projectsstring[]shared variables only: the apps and functions it reaches
پاسخ
201EnvVarAdded
variablesEnvVar[]الزامیidstring (uuid)الزامیkeystringالزامیpattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$environmentsstring[]الزامیbranchstring | nullالزامیa git branch; only with environments [preview]
scopestringالزامیteam: a shared variable
one of
project,teamtypestringالزامیsensitive: never shown again, production and preview only
one of
plain,sensitivevaluestring | nullالزامیthe text only when revealed (?decrypt=1) and plain
created_atstring (date-time)updated_atstring (date-time)created_byobject | nulltypestringone of
person,keynamestring | null
updated_byobject | nulltypestringone of
person,keynamestring | null
projectsobject[]shared variables only
namestringkindstringone of
function,app
createdintegerالزامیupdatedintegerالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_variable, bad_key, bad_value, bad_environments, bad_type, bad_branch, sensitive_development, policy_sensitive, bad_dotenv, duplicate, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: env_conflict, sensitive, too_many |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/env" \
-H "Authorization: Bearer $KEY" \
-d '{"key":"STRIPE_KEY","value":"s3cr3t","variables":[{"key":"STRIPE_KEY","value":"s3cr3t","environments":["production"],"branch":"dev","type":"plain","sensitive":true}],"dotenv":"…","environments":["production"],"branch":"dev","type":"plain","sensitive":true,"upsert":true,"projects":["…"]}'/v1/functions/{name}/env/{id}One environment variable#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیthe variable's id
decryptstringکوئری1: plain values (owner, admin, developer); sensitive ones never
one of
1
پاسخ
200EnvVar
idstring (uuid)الزامیkeystringالزامیpattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$environmentsstring[]الزامیbranchstring | nullالزامیa git branch; only with environments [preview]
scopestringالزامیteam: a shared variable
one of
project,teamtypestringالزامیsensitive: never shown again, production and preview only
one of
plain,sensitivevaluestring | nullالزامیthe text only when revealed (?decrypt=1) and plain
created_atstring (date-time)updated_atstring (date-time)created_byobject | nulltypestringone of
person,keynamestring | null
updated_byobject | nulltypestringone of
person,keynamestring | null
projectsobject[]shared variables only
namestringkindstringone of
function,app
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/env/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/env/{id}Delete an environment variable#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیthe variable's id
پاسخ
200object
idstring (uuid)keystringdeletedboolean
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/env/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/env/{id}Change an environment variable#
A sensitive variable cannot become plain.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیthe variable's id
بدنهٔ درخواستapplication/json
keystringvaluestringup to 5120 characters
environmentsstring[]branchstring | nulltypestringone of
plain,sensitivesensitivebooleanprojectsstring[]shared variables only: replaces the links
پاسخ
200EnvVar
idstring (uuid)الزامیkeystringالزامیpattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$environmentsstring[]الزامیbranchstring | nullالزامیa git branch; only with environments [preview]
scopestringالزامیteam: a shared variable
one of
project,teamtypestringالزامیsensitive: never shown again, production and preview only
one of
plain,sensitivevaluestring | nullالزامیthe text only when revealed (?decrypt=1) and plain
created_atstring (date-time)updated_atstring (date-time)created_byobject | nulltypestringone of
person,keynamestring | null
updated_byobject | nulltypestringone of
person,keynamestring | null
projectsobject[]shared variables only
namestringkindstringone of
function,app
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_variable, bad_key, bad_value, bad_environments, bad_type, bad_branch, sensitive_development, policy_sensitive, bad_dotenv, duplicate, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: env_conflict, sensitive, too_many |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/env/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY" \
-d '{"key":"STRIPE_KEY","value":"s3cr3t","environments":["production"],"branch":"dev","type":"plain","sensitive":true,"projects":["…"]}'/v1/functions/{name}/secrets/{key}Set a secret (a sensitive variable for production and preview)#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterskeystringمسیرالزامیsecret name
pattern
^[A-Z_][A-Z0-9_]{0,63}$
بدنهٔ درخواستapplication/json
valuestringالزامیup to 5120 characters
پاسخ
200object
namestringupdatedboolean
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_name, bad_value, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: too_many |
| 500 | internal: an unexpected failure |
نمونه
curl -X PUT "https://api.ibel.ai/v1/functions/my-api/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY" \
-d '{"value":"s3cr3t"}'/v1/functions/{name}/secrets/{key}Delete a key in every environment#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterskeystringمسیرالزامیsecret name
پاسخ
200object
namestringdeletedboolean
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/secretsList the variables' keys#
- دسترسی
- کلید 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
secretsSecret[]الزامیnamestringالزامیupdated_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/secrets" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/cronsList cron triggers#
- دسترسی
- کلید 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
cronsCron[]الزامیexprstringالزامی5-field cron
tzstringالزامیIANA time zone
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/crons" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/cronsReplace the cron triggers#
- دسترسی
- کلید 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
crons(string | object)[]الزامیup to 5
exprstringالزامیtzstring
tzstringdefault
"Asia/Tehran"
پاسخ
200object
cronsCron[]الزامیexprstringالزامی5-field cron
tzstringالزامیIANA time zone
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_crons, too_many, bad_cron, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X PUT "https://api.ibel.ai/v1/functions/my-api/crons" \
-H "Authorization: Bearer $KEY" \
-d '{"crons":["0 3 * * *"]}'/v1/functions/{name}/logsLog entries, filtered and paged#
The newest limit entries that match, newest last; next_cursor reaches older ones. The store keeps about the last 2000 per project.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterssincestringکوئریISO time, epoch ms, or back from now: 30m, 1h, 7d
untilstringکوئریISO time or epoch ms
levelstringکوئریerror, warning, info (comma list)
sourcestringکوئریrequest, static, fetch, cron, console (comma list)
statusstringکوئریcodes or classes, e.g. 404,5xx
pathstringکوئریrequest paths (comma list); end with * for a prefix
environmentstringکوئریproduction or preview
branchstringکوئریa preview's branch
deploymentstringکوئریa version number, e.g. 12 or v12
qstringکوئریtext the entry contains
limitintegerکوئری1-1000, default 100
1–1000 · default
100cursorstringکوئریnext_cursor of the page before
facetsstringکوئری1: counts per filter value
bucketsintegerکوئریa histogram of the range in this many bars (up to 120)
0–120
پاسخ
200LogPage
logsLogEntry[]الزامیnewest last
idstringالزامیtintegermilliseconds since 1970
kindstringlevelstringmsgstringmethodstringpathstringstatusintegermsnumberversionintegerstaticbooleancronstringoutcomestringhoststringthe hostname a request was served on
tracestringthe request's trace id (32 hex), when its trace was kept; open it with GET /v1/traces/{trace_id}
severitystringone of
error,warning,infosourcestringone of
request,static,fetch,cron,consoleenvironmentstringone of
production,previewbranchstring | nulla preview's branch, when known
projectstringteam logs: the project
productstringone of
function,app
next_cursorstring | nullالزامیpass as cursor for older entries
matchedintegerالزامیentries in the range that match
scannedintegerالزامیtruncatedbooleanthe team's request read only part of its logs
facetsobjectwith facets=1: counts per filter value, each over what the other filters leave
levelobjectsourceobjectstatusobjectenvironmentobjectpathobjectprojectobject
histogramobjectwith buckets=n: the range in n bars, per level
fromintegertointegerbucketsobject[]fromintegererrorintegerwarningintegerinfointeger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_param |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/logs" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/tailFollow the log (server-sent events)#
Each event is data: <LogEntry JSON>; : keep-alive comments about every 10 s.
- دسترسی
- کلید 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
پاسخ
200stringtext/event-stream
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -N "https://api.ibel.ai/v1/functions/my-api/tail" \
-H "Authorization: Bearer $KEY"- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersfromstring (date-time)کوئریISO time; default an hour before
totostring (date-time)کوئریISO time; default now
پاسخ
200UsageReport
fromstring (date-time)الزامیtostring (date-time)الزامیtotalUsageالزامیrequestsintegererrorsintegerwall_msintegerstatic_requestsintegerbytes_outintegersubrequestsintegeregress_bytesinteger
seriesUsage[]الزامیrequestsintegererrorsintegerwall_msintegerstatic_requestsintegerbytes_outintegersubrequestsintegeregress_bytesintegerminutestring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_range |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/usage" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/observabilityRequests, errors and latency#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersrangestringکوئری1h (1-minute steps), 24h (15 minutes) or 7d (2 hours); any other value is 400 bad_range
one of
1h,24h,7d· default"1h"
پاسخ
200Observability
rangestringالزامیstepstringالزامیtotalsPercentilesالزامیrequestsintegerevery request served, static files and code
function_requestsintegerrequests that ran the code
static_requestsintegerrequests answered with a static file
errors_4xxintegererrors_5xxintegererror_ratenumberp50number | nullp95number | nullp99number | null
seriesPercentiles[]الزامیtstring (date-time)requestsintegerfunction_requestsintegerrequests that ran the code
static_requestsintegerrequests answered with a static file
errors_4xxintegererrors_5xxintegerp50number | nullp95number | nullp99number | null
routesPercentiles[]الزامیroutestringrequestsintegerfunction_requestsintegerrequests that ran the code
static_requestsintegerrequests answered with a static file
errors_5xxintegererror_ratenumberavg_msnumber | nullp50number | nullp95number | nullp99number | null
notestringcopiesFunctionCopieslimitintegerالزامیthe plan's copies per server (function_copies in GET /v1/limits)
perstringالزامیone of
servertotalsCopyFiguresالزامیcopies_maxintegerthe most copies running at once on one server
copies_avgnumberthe average copies on a server while it ran the function, one decimal
startsintegerextra copies started because the function was busy
start_ms_avginteger | nulltheir average start time, ms
start_ms_maxinteger | nullstopsintegerextra copies stopped when idle
requestsintegerqueuedintegerrequests that waited for a free copy
queue_ms_avginteger | nullthe average wait, ms
queue_ms_maxinteger | nullrejectedintegerrequests turned away with 429 or 503 (Retry-After 1) because no copy was free in time
rejected_planintegerof those, the 429s: the function was at its plan's copies
seriesobject[]الزامیthe same steps as the observability series
tstring (date-time)copies_maxintegercopies_avgnumberstartsintegerstart_ms_avginteger | nullqueuedintegerqueue_ms_avginteger | nullqueue_ms_maxinteger | nullrejectedintegerrejected_planinteger
serversCopyFigures[]الزامیserverstringthe server's number, "1", "2", and on
copies_maxintegerthe most copies running at once on one server
copies_avgnumberthe average copies on a server while it ran the function, one decimal
startsintegerextra copies started because the function was busy
start_ms_avginteger | nulltheir average start time, ms
start_ms_maxinteger | nullstopsintegerextra copies stopped when idle
requestsintegerqueuedintegerrequests that waited for a free copy
queue_ms_avginteger | nullthe average wait, ms
queue_ms_maxinteger | nullrejectedintegerrequests turned away with 429 or 503 (Retry-After 1) because no copy was free in time
rejected_planintegerof those, the 429s: the function was at its plan's copies
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_range |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/observability" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/buildsList builds (newest 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
پاسخ
200object
buildsBuild[]الزامیidstring (uuid)الزامیbranchstring | nullcommitstring | nullpattern
^[0-9a-f]{40}$messagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failed,cancelled,skippedtriggerstringالزامیone of
cli,gitversioninteger | nullerrorstring | nullcreated_atstring (date-time)الزامیstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nullstagedbooleana production build held for its checks
promotionstringone of
none,waiting,promoted,blocked,supersededscanobject | nullthe dependency scan's summary
queueobject | nulla queued build's place in the team's queue
positioninteger1 is the team's next
aheadintegerrunningintegerlimitintegerthe team's concurrent builds
reasonstringone of
team_limit,waiting_for_builder
configBuildConfig | nullthe build configuration frozen when the build started
root_dirstringالزامیa folder in the repository; empty: the root
ignore_commandstringالزامیexit 0 skips the build; empty: never skip
install_commandstringالزامیempty: detected
build_commandstringالزامیempty: detected
output_dirstringالزامیempty: detected
node_versionstring | nullالزامیnull: the default (26)
one of
22,24,26,nullsecret_scanstringالزامیone of
block,warncachebooleanالزامی
no_cachebooleanbuilt without the build cache
cacheobject | nullstatusstringone of
hit,miss,off,skipped,no_lockfilekeystringframeworkstringrestored_bytesintegersaved_bytesintegerevictedintegernotestring
hintobject | nulla failed build explained; show it above the log
kindstringone of
typescript,module_not_found,missing_env,out_of_memory,timeout,install_failed,secrets,no_output,build_command_failedtitlestringexplainstringfixstringfilestringlineintegercolumninteger
secretsobject | nullthe secret scan's summary
scannedbooleancountintegerhighintegerblockedbooleanpolicystringone of
block,warn
sbomobject | nullcomponentsintegerlock_filestring
provenanceobject | nullkey_idstringoutput_sha256string
skip_reasonstring | nullcancelled_bystring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/buildsQueue a build from a source tarball#
The body is a .tar.gz of the project, up to 100 MiB.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersbranchstringکوئریgit branch; none, main, master or production builds production
commitstringکوئری40-hex git SHA
pattern
^[0-9a-f]{40}$no_cachestringکوئری1: build without the build cache
one of
1,truetriggerstringکوئریgit counts only from the Git receiver (its own token); otherwise the build is cli
one of
cli,git
بدنهٔ درخواستapplication/gzip
string (binary)
پاسخ
201Build
idstring (uuid)الزامیbranchstring | nullcommitstring | nullpattern
^[0-9a-f]{40}$messagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failed,cancelled,skippedtriggerstringالزامیone of
cli,gitversioninteger | nullerrorstring | nullcreated_atstring (date-time)الزامیstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nullstagedbooleana production build held for its checks
promotionstringone of
none,waiting,promoted,blocked,supersededscanobject | nullthe dependency scan's summary
queueobject | nulla queued build's place in the team's queue
positioninteger1 is the team's next
aheadintegerrunningintegerlimitintegerthe team's concurrent builds
reasonstringone of
team_limit,waiting_for_builder
configBuildConfig | nullthe build configuration frozen when the build started
root_dirstringالزامیa folder in the repository; empty: the root
ignore_commandstringالزامیexit 0 skips the build; empty: never skip
install_commandstringالزامیempty: detected
build_commandstringالزامیempty: detected
output_dirstringالزامیempty: detected
node_versionstring | nullالزامیnull: the default (26)
one of
22,24,26,nullsecret_scanstringالزامیone of
block,warncachebooleanالزامی
no_cachebooleanbuilt without the build cache
cacheobject | nullstatusstringone of
hit,miss,off,skipped,no_lockfilekeystringframeworkstringrestored_bytesintegersaved_bytesintegerevictedintegernotestring
hintobject | nulla failed build explained; show it above the log
kindstringone of
typescript,module_not_found,missing_env,out_of_memory,timeout,install_failed,secrets,no_output,build_command_failedtitlestringexplainstringfixstringfilestringlineintegercolumninteger
secretsobject | nullthe secret scan's summary
scannedbooleancountintegerhighintegerblockedbooleanpolicystringone of
block,warn
sbomobject | nullcomponentsintegerlock_filestring
provenanceobject | nullkey_idstringoutput_sha256string
skip_reasonstring | nullcancelled_bystring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_source, bad_commit |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 413 | Body too large: too_large |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/builds" \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/gzip" --data-binary @source.tar.gz/v1/functions/{name}/builds/{id}Get a build#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
پاسخ
200Build
idstring (uuid)الزامیbranchstring | nullcommitstring | nullpattern
^[0-9a-f]{40}$messagestring | nullthe commit's first line
statusstringالزامیone of
queued,running,succeeded,failed,cancelled,skippedtriggerstringالزامیone of
cli,gitversioninteger | nullerrorstring | nullcreated_atstring (date-time)الزامیstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nullstagedbooleana production build held for its checks
promotionstringone of
none,waiting,promoted,blocked,supersededscanobject | nullthe dependency scan's summary
queueobject | nulla queued build's place in the team's queue
positioninteger1 is the team's next
aheadintegerrunningintegerlimitintegerthe team's concurrent builds
reasonstringone of
team_limit,waiting_for_builder
configBuildConfig | nullthe build configuration frozen when the build started
root_dirstringالزامیa folder in the repository; empty: the root
ignore_commandstringالزامیexit 0 skips the build; empty: never skip
install_commandstringالزامیempty: detected
build_commandstringالزامیempty: detected
output_dirstringالزامیempty: detected
node_versionstring | nullالزامیnull: the default (26)
one of
22,24,26,nullsecret_scanstringالزامیone of
block,warncachebooleanالزامی
no_cachebooleanbuilt without the build cache
cacheobject | nullstatusstringone of
hit,miss,off,skipped,no_lockfilekeystringframeworkstringrestored_bytesintegersaved_bytesintegerevictedintegernotestring
hintobject | nulla failed build explained; show it above the log
kindstringone of
typescript,module_not_found,missing_env,out_of_memory,timeout,install_failed,secrets,no_output,build_command_failedtitlestringexplainstringfixstringfilestringlineintegercolumninteger
secretsobject | nullthe secret scan's summary
scannedbooleancountintegerhighintegerblockedbooleanpolicystringone of
block,warn
sbomobject | nullcomponentsintegerlock_filestring
provenanceobject | nullkey_idstringoutput_sha256string
skip_reasonstring | nullcancelled_bystring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/logsA build's log#
1000 lines per call. Each step starts with a line ── <step> (unpack, install, build and deploy).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
afterstringکوئریthe last line id received, <ms>-<n>
پاسخ
200BuildLog
statusstringالزامیlinesobject[]الزامیidstringالزامیtintegerlinestringالزامی
last_idstringthe last entry read, shown or not: the next after
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_param |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/logs" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/cancelCancel a build#
A queued or running build; a running one stops and deploys nothing.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
پاسخ
200object
idstring (uuid)الزامیstatusstringالزامیone of
cancelled
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 409 | Conflict: not_running (the build already finished) |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/cancel" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/redeployBuild the same source again#
The same source or commit as the build, with today's build configuration.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
no_cachestringکوئری1: build without the build cache
one of
1,true
پاسخ
201object
idstring (uuid)الزامیstatusstringالزامیone of
queuedno_cachebooleanالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 409 | Conflict: source_gone |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/redeploy" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/secretsA build's secret findings#
Where the secret scan found likely secrets (never the values).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
پاسخ
200SecretFindings
summaryobject | nullالزامیscannedbooleancountintegerhighintegerblockedbooleanpolicystring
findingsobject[]الزامیrulestringdescriptionstringfilestringlineintegerconfidencestringone of
high,low
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/secrets" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/sbomA build's bill of materials#
The CycloneDX 1.5 document made from the build's lock file.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstring (uuid)مسیرالزامیbuild id
downloadstringکوئری1: as a file (content-disposition)
one of
1
پاسخ
200objectapplication/vnd.cyclonedx+json
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found, no_sbom |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/sbom" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/builds/{id}/provenanceA build's provenance record#
Only a build that deployed has 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 charactersidstring (uuid)مسیرالزامیbuild id
پاسخ
200ProvenanceRecord
statementProvenanceStatementالزامیtypestringone of
cloudhost.build-provenance/v1subjectobjectkindstringnamestringoutput_sha256stringbundle_sha256stringmanifest_sha256stringversioninteger
buildobjectidstring | nulltriggerstring | nullbranchstring | nullcommitstring | nullsource_sha256string | nulllock_filestring | nulllock_file_sha256string | nullsbom_sha256string | nullstarted_atstring | nullfinished_atstring | null
builderobjectnamestringisolationstringcachestring | null
issued_atstring (date-time)
signaturestringالزامیbase64
algorithmstringالزامیone of
ed25519key_idstringالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found, no_provenance |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/builds/88e2fe1d-6d75-4de5-8c8f-27380ec66903/provenance" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/build-configGet the build configuration#
How the project is built, the Node.js versions offered, the plan's limits and the build cache.
- دسترسی
- کلید 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
پاسخ
200BuildConfigView
settingsBuildConfigالزامیroot_dirstringالزامیa folder in the repository; empty: the root
ignore_commandstringالزامیexit 0 skips the build; empty: never skip
install_commandstringالزامیempty: detected
build_commandstringالزامیempty: detected
output_dirstringالزامیempty: detected
node_versionstring | nullالزامیnull: the default (26)
one of
22,24,26,nullsecret_scanstringالزامیone of
block,warncachebooleanالزامی
node_versionsstring[]الزامیdefault_node_versionstringالزامیlimitsobjectالزامیconcurrent_buildsintegercache_bytesinteger
cacheBuildCacheالزامیentriesobject[]الزامیkeystringframeworkstringbytesintegercreated_atstring (date-time)used_atstring (date-time)
bytesintegerالزامیlimit_bytesintegerالزامیthe plan's size: Hobby 500 MB, Pro 1 GB, Enterprise 2 GB
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/build-config" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/build-configChange the build configuration#
Only the fields sent change; null or an empty string puts a field back to its default. The next build uses them.
- دسترسی
- کلید 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
any of the fields; null or an empty string clears one
root_dirstring | nullup to 200 characters
ignore_commandstring | nullup to 500 characters
install_commandstring | nullup to 500 characters
build_commandstring | nullup to 500 characters
output_dirstring | nullup to 200 characters
node_versionstring | nullone of
22,24,26,nullsecret_scanstringone of
block,warncacheboolean
پاسخ
200object
settingsBuildConfigالزامیroot_dirstringالزامیa folder in the repository; empty: the root
ignore_commandstringالزامیexit 0 skips the build; empty: never skip
install_commandstringالزامیempty: detected
build_commandstringالزامیempty: detected
output_dirstringالزامیempty: detected
node_versionstring | nullالزامیnull: the default (26)
one of
22,24,26,nullsecret_scanstringالزامیone of
block,warncachebooleanالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_settings |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/build-config" \
-H "Authorization: Bearer $KEY" \
-d '{"root_dir":"…","ignore_command":"…","install_command":"…","build_command":"…","output_dir":"…","node_version":"22","secret_scan":"block","cache":true}'/v1/functions/{name}/build-cacheThe build cache#
What the project's build cache holds; the oldest entries go first when it is over the plan's size.
- دسترسی
- کلید 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
پاسخ
200BuildCache
entriesobject[]الزامیkeystringframeworkstringbytesintegercreated_atstring (date-time)used_atstring (date-time)
bytesintegerالزامیlimit_bytesintegerالزامیthe plan's size: Hobby 500 MB, Pro 1 GB, Enterprise 2 GB
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/build-cache" \
-H "Authorization: Bearer $KEY"- دسترسی
- کلید 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
clearedintegerالزامی
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/build-cache" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/transferMove to another team#
Refused while any version binds a database, cache or bucket.
- دسترسی
- فقط نشست داشبورد (کلید API پذیرفته نمیشود)
- نقشها
- admin or owner in both teams
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید 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
teamstring (uuid)الزامی
پاسخ
200object
movedstringtostring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: same_team, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required, session_only |
| 404 | Not found: not_found |
| 409 | Conflict: has_bindings |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/transfer" \
-H "Authorization: Bearer $SESSION" \
-d '{"team":"8c1e0c55-1f2a-4d3b-9e8f-0a1b2c3d4e5f"}'/v1/functions/{name}/domainsList the project's custom domains#
- دسترسی
- کلید 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
domainsDomain[]الزامیnamestringالزامیlowercase ASCII (an international name in its xn-- form)
apexstringالزامیthe registrable domain
typestringالزامیone of
apex,subdomainprojectobjectالزامیnamestringkindstringone of
function,appproductstringone of
functions,apps
branchstring | nulla git branch: the domain serves its preview
servesstring | nullthe platform address it serves; null for a redirect
redirectobject | nulltostringstatusintegerone of
301,302,307,308
statestringالزامیone of
pending,verifying,valid,misconfigured,errorreasonstring | nullwhat is missing or wrong, for people
verifiedbooleanالزامیownership proven by the TXT record
recordsDomainRecord[]الزامیthe records to set at the DNS provider
typestringالزامیone of
A,CNAME,TXTnamestringالزامیrelative to the registrable domain; @ is the domain itself
hoststringالزامیthe full name
valuestringالزامیpurposestringالزامیone of
routing,ownershipokbooleanالزامیfound as it should be at the last check
checksobject[]what the last lookup found
typestringhoststringokbooleanfoundstring[]
certificateobjectالزامیstatestringالزامیone of
none,issuing,valid,renewing,expirednot_beforestring (date-time)not_afterstring (date-time)issued_atstring (date-time)renew_errorstringnext_attempt_atstring (date-time)
urlstringالزامیchecked_atstring (date-time) | nullnext_check_atstring (date-time)created_atstring (date-time)alsoDomain[]add only: the www pair added with it
limitintegerdomains per project on the team's plan
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/domains" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/domainsAdd a custom domain#
Records: a subdomain is a CNAME to the platform's target, a registrable domain A records to the gateway addresses; a TXT record on the registrable domain proves ownership (one per team covers every name under it). States: pending, misconfigured, verifying (a certificate is being obtained), valid, error.
- دسترسی
- کلید 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
domainstringالزامیa subdomain (shop.example.ir) or a registrable domain (example.ir)
wwwstringfor a root or www name: also add the other one, redirecting to the root or to www
one of
none,redirect-to-apex,redirect-to-wwwredirect_tostringanother domain of the project: answer with a redirect there
redirect_statusintegerone of
301,302,307,308· default308branchstringa git branch: serve its preview instead of production
پاسخ
201Domain
namestringالزامیlowercase ASCII (an international name in its xn-- form)
apexstringالزامیthe registrable domain
typestringالزامیone of
apex,subdomainprojectobjectالزامیnamestringkindstringone of
function,appproductstringone of
functions,apps
branchstring | nulla git branch: the domain serves its preview
servesstring | nullthe platform address it serves; null for a redirect
redirectobject | nulltostringstatusintegerone of
301,302,307,308
statestringالزامیone of
pending,verifying,valid,misconfigured,errorreasonstring | nullwhat is missing or wrong, for people
verifiedbooleanالزامیownership proven by the TXT record
recordsDomainRecord[]الزامیthe records to set at the DNS provider
typestringالزامیone of
A,CNAME,TXTnamestringالزامیrelative to the registrable domain; @ is the domain itself
hoststringالزامیthe full name
valuestringالزامیpurposestringالزامیone of
routing,ownershipokbooleanالزامیfound as it should be at the last check
checksobject[]what the last lookup found
typestringhoststringokbooleanfoundstring[]
certificateobjectالزامیstatestringالزامیone of
none,issuing,valid,renewing,expirednot_beforestring (date-time)not_afterstring (date-time)issued_atstring (date-time)renew_errorstringnext_attempt_atstring (date-time)
urlstringالزامیchecked_atstring (date-time) | nullnext_check_atstring (date-time)created_atstring (date-time)alsoDomain[]add only: the www pair added with it
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_domain, reserved_domain, bad_redirect, bad_branch, bad_www, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, domain_limit |
| 404 | Not found: not_found |
| 409 | Conflict: domain_exists, domain_taken |
| 429 | Too many requests: rate_limited |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/domains" \
-H "Authorization: Bearer $KEY" \
-d '{"domain":"…"}'/v1/functions/{name}/domains/ibel.aiOne custom domain#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersdomainstringمسیرالزامیthe domain, e.g. shop.example.ir
پاسخ
200Domain
namestringالزامیlowercase ASCII (an international name in its xn-- form)
apexstringالزامیthe registrable domain
typestringالزامیone of
apex,subdomainprojectobjectالزامیnamestringkindstringone of
function,appproductstringone of
functions,apps
branchstring | nulla git branch: the domain serves its preview
servesstring | nullthe platform address it serves; null for a redirect
redirectobject | nulltostringstatusintegerone of
301,302,307,308
statestringالزامیone of
pending,verifying,valid,misconfigured,errorreasonstring | nullwhat is missing or wrong, for people
verifiedbooleanالزامیownership proven by the TXT record
recordsDomainRecord[]الزامیthe records to set at the DNS provider
typestringالزامیone of
A,CNAME,TXTnamestringالزامیrelative to the registrable domain; @ is the domain itself
hoststringالزامیthe full name
valuestringالزامیpurposestringالزامیone of
routing,ownershipokbooleanالزامیfound as it should be at the last check
checksobject[]what the last lookup found
typestringhoststringokbooleanfoundstring[]
certificateobjectالزامیstatestringالزامیone of
none,issuing,valid,renewing,expirednot_beforestring (date-time)not_afterstring (date-time)issued_atstring (date-time)renew_errorstringnext_attempt_atstring (date-time)
urlstringالزامیchecked_atstring (date-time) | nullnext_check_atstring (date-time)created_atstring (date-time)alsoDomain[]add only: the www pair added with it
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/domains/domain" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/domains/ibel.aiRemove a custom domain#
Stops serving it and deletes its certificate; domains redirecting to it stop redirecting.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersdomainstringمسیرالزامیthe domain, e.g. shop.example.ir
پاسخ
200object
namestringremovedboolean
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/functions/my-api/domains/domain" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/domains/ibel.aiChange a domain's redirect or branch#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersdomainstringمسیرالزامیthe domain, e.g. shop.example.ir
بدنهٔ درخواستapplication/json
redirect_tostring | nullredirect_statusintegerone of
301,302,307,308branchstring | null
پاسخ
200Domain
namestringالزامیlowercase ASCII (an international name in its xn-- form)
apexstringالزامیthe registrable domain
typestringالزامیone of
apex,subdomainprojectobjectالزامیnamestringkindstringone of
function,appproductstringone of
functions,apps
branchstring | nulla git branch: the domain serves its preview
servesstring | nullthe platform address it serves; null for a redirect
redirectobject | nulltostringstatusintegerone of
301,302,307,308
statestringالزامیone of
pending,verifying,valid,misconfigured,errorreasonstring | nullwhat is missing or wrong, for people
verifiedbooleanالزامیownership proven by the TXT record
recordsDomainRecord[]الزامیthe records to set at the DNS provider
typestringالزامیone of
A,CNAME,TXTnamestringالزامیrelative to the registrable domain; @ is the domain itself
hoststringالزامیthe full name
valuestringالزامیpurposestringالزامیone of
routing,ownershipokbooleanالزامیfound as it should be at the last check
checksobject[]what the last lookup found
typestringhoststringokbooleanfoundstring[]
certificateobjectالزامیstatestringالزامیone of
none,issuing,valid,renewing,expirednot_beforestring (date-time)not_afterstring (date-time)issued_atstring (date-time)renew_errorstringnext_attempt_atstring (date-time)
urlstringالزامیchecked_atstring (date-time) | nullnext_check_atstring (date-time)created_atstring (date-time)alsoDomain[]add only: the www pair added with it
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_redirect, bad_branch, nothing_to_change, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/functions/my-api/domains/domain" \
-H "Authorization: Bearer $KEY" \
-d '{"redirect_to":"…","redirect_status":301,"branch":"dev"}'/v1/functions/{name}/domains/ibel.ai/verifyCheck a domain's DNS now#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersdomainstringمسیرالزامیthe domain, e.g. shop.example.ir
پاسخ
200Domain
namestringالزامیlowercase ASCII (an international name in its xn-- form)
apexstringالزامیthe registrable domain
typestringالزامیone of
apex,subdomainprojectobjectالزامیnamestringkindstringone of
function,appproductstringone of
functions,apps
branchstring | nulla git branch: the domain serves its preview
servesstring | nullthe platform address it serves; null for a redirect
redirectobject | nulltostringstatusintegerone of
301,302,307,308
statestringالزامیone of
pending,verifying,valid,misconfigured,errorreasonstring | nullwhat is missing or wrong, for people
verifiedbooleanالزامیownership proven by the TXT record
recordsDomainRecord[]الزامیthe records to set at the DNS provider
typestringالزامیone of
A,CNAME,TXTnamestringالزامیrelative to the registrable domain; @ is the domain itself
hoststringالزامیthe full name
valuestringالزامیpurposestringالزامیone of
routing,ownershipokbooleanالزامیfound as it should be at the last check
checksobject[]what the last lookup found
typestringhoststringokbooleanfoundstring[]
certificateobjectالزامیstatestringالزامیone of
none,issuing,valid,renewing,expirednot_beforestring (date-time)not_afterstring (date-time)issued_atstring (date-time)renew_errorstringnext_attempt_atstring (date-time)
urlstringالزامیchecked_atstring (date-time) | nullnext_check_atstring (date-time)created_atstring (date-time)alsoDomain[]add only: the www pair added with it
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/domains/domain/verify" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/build-settingsGet build settings#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
پاسخ
200BuildSettings
smokebooleansmoke_pathstringtest_commandstring | nulltypecheckbooleantypecheck_commandstring | nullrequired_checksstring[]check_timeout_minutesintegerscan_fail_onstringone of
none,high,criticalplanstringappliesobjectthe same settings as the team's plan allows them today
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/build-settings" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/build-settingsChange build settings#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
بدنهٔ درخواستapplication/json
only the fields sent change
smokebooleansmoke_pathstringup to 200 characters
test_commandstring | nullup to 300 characters
typecheckbooleantypecheck_commandstring | nullup to 300 characters
required_checksstring[]0–10 items
check_timeout_minutesinteger1–60
scan_fail_onstringone of
none,high,critical
پاسخ
200BuildSettings
smokebooleansmoke_pathstringtest_commandstring | nulltypecheckbooleantypecheck_commandstring | nullrequired_checksstring[]check_timeout_minutesintegerscan_fail_onstringone of
none,high,criticalplanstringappliesobjectthe same settings as the team's plan allows them today
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_settings, bad_name, bad_status, bad_url |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Forbidden: forbidden, plan_required |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X PUT "https://api.ibel.ai/v1/functions/my-api/build-settings" \
-H "Authorization: Bearer $KEY" \
-d '{"smoke":true,"smoke_path":"…","test_command":"…","typecheck":true,"typecheck_command":"…","required_checks":["…"],"check_timeout_minutes":1,"scan_fail_on":"none"}'/v1/functions/{name}/deployments/{build}/checksA deployment's checks#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
پاسخ
200DeploymentChecks
buildstring (uuid)promotionstringone of
none,waiting,promoted,blocked,supersededstagedbooleanversioninteger | nulldeadlinestring (date-time) | nullchecksCheck[]namestringالزامیsourcestringالزامیone of
builtin,externalstatusstringالزامیone of
pending,queued,running,passed,failed,timed_outrequiredbooleansummarystring | nullurlstring | nullattemptintegerstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nulllogstringthe end of its output; only on the single-check route
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/deployments/build/checks" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/deployments/{build}/checks/{check}One check, with its log#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
checkstringمسیرالزامیthe check's name; a '/' in it is sent as %2F
pattern
^[a-z0-9][a-z0-9._/-]{0,63}$
پاسخ
200Check
namestringالزامیsourcestringالزامیone of
builtin,externalstatusstringالزامیone of
pending,queued,running,passed,failed,timed_outrequiredbooleansummarystring | nullurlstring | nullattemptintegerstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nulllogstringthe end of its output; only on the single-check route
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/deployments/build/checks/check" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/deployments/{build}/checks/{check}Report an external check (a CI)#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
checkstringمسیرالزامیthe check's name; a '/' in it is sent as %2F
pattern
^[a-z0-9][a-z0-9._/-]{0,63}$
بدنهٔ درخواستapplication/json
statusstringالزامیone of
running,passed,failedsummarystringup to 300 characters
urlstringup to 500 characters
logstringup to 65536 characters
پاسخ
200Check
namestringالزامیsourcestringالزامیone of
builtin,externalstatusstringالزامیone of
pending,queued,running,passed,failed,timed_outrequiredbooleansummarystring | nullurlstring | nullattemptintegerstarted_atstring (date-time) | nullfinished_atstring (date-time) | nullsecondsinteger | nulllogstringthe end of its output; only on the single-check route
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_settings, bad_name, bad_status, bad_url |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 409 | Conflict: running, decided, not_waiting, superseded, too_many_checks, reserved_name |
| 500 | internal: an unexpected failure |
نمونه
curl -X PUT "https://api.ibel.ai/v1/functions/my-api/deployments/build/checks/check" \
-H "Authorization: Bearer $KEY" \
-d '{"status":"running"}'/v1/functions/{name}/deployments/{build}/checks/{check}/rerunRun a check again#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
checkstringمسیرالزامیthe check's name; a '/' in it is sent as %2F
pattern
^[a-z0-9][a-z0-9._/-]{0,63}$
پاسخ
200object
rerunstringone of
smoke,pending,buildbuildstring (uuid)
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 409 | Conflict: running, decided, not_waiting, superseded, too_many_checks, reserved_name |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/deployments/build/checks/check/rerun" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/deployments/{build}/promoteMake a deployment waiting on its checks live#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
پاسخ
200object
buildstring (uuid)promotionstringversioninteger
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Forbidden: forbidden, plan_required |
| 404 | Not found: not_found |
| 409 | Conflict: running, decided, not_waiting, superseded, too_many_checks, reserved_name |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/deployments/build/promote" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/deployments/{build}/vulnerabilitiesVulnerable dependencies of a build#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
پاسخ
200Vulnerabilities
buildstring (uuid)scanobjectstatusstringone of
ok,no_lockfile,unreadable,too_large,no_data,not_runlockfilestring | nullpackagesintegercountsobjectblockedboolean
vulnerabilitiesVulnerability[]packagestringversionstringseveritystringone of
critical,high,moderate,low,unknownadvisorystringaliasesstring[]titlestringfixed_versionstring | nulldevbooleanscorenumber | null
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/deployments/build/vulnerabilities" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/deployments/{build}/vulnerabilities/rescanScan a build's dependencies again#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$buildstring (uuid)مسیرالزامیthe build's id (a deployment)
پاسخ
200Vulnerabilities
buildstring (uuid)scanobjectstatusstringone of
ok,no_lockfile,unreadable,too_large,no_data,not_runlockfilestring | nullpackagesintegercountsobjectblockedboolean
vulnerabilitiesVulnerability[]packagestringversionstringseveritystringone of
critical,high,moderate,low,unknownadvisorystringaliasesstring[]titlestringfixed_versionstring | nulldevbooleanscorenumber | null
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 409 | Conflict: running, decided, not_waiting, superseded, too_many_checks, reserved_name |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/functions/my-api/deployments/build/vulnerabilities/rescan" \
-H "Authorization: Bearer $KEY"/v1/functions/{name}/vulnerabilitiesThe project's dependency summary#
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
namestringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
پاسخ
200object
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/functions/my-api/vulnerabilities" \
-H "Authorization: Bearer $KEY"/v1/provenance/keyThe platform's provenance key#
The Ed25519 public key that signs build provenance records.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پاسخ
200object
algorithmstringالزامیone of
ed25519key_idstringالزامیpublic_keystringالزامیPEM
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/provenance/key" \
-H "Authorization: Bearer $KEY"/v1/provenance/verifyCheck a provenance record#
Checks the signature with the platform's key, and whether the record is the one held for that build.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
بدنهٔ درخواستapplication/json
statementProvenanceStatementالزامیtypestringone of
cloudhost.build-provenance/v1subjectobjectkindstringnamestringoutput_sha256stringbundle_sha256stringmanifest_sha256stringversioninteger
buildobjectidstring | nulltriggerstring | nullbranchstring | nullcommitstring | nullsource_sha256string | nulllock_filestring | nulllock_file_sha256string | nullsbom_sha256string | nullstarted_atstring | nullfinished_atstring | null
builderobjectnamestringisolationstringcachestring | null
issued_atstring (date-time)
signaturestringالزامیbase64
algorithmstringالزامیone of
ed25519key_idstringالزامی
پاسخ
200object
validbooleanالزامیreasonstringissued_by_usbooleanالزامیstatementProvenanceStatementtypestringone of
cloudhost.build-provenance/v1subjectobjectkindstringnamestringoutput_sha256stringbundle_sha256stringmanifest_sha256stringversioninteger
buildobjectidstring | nulltriggerstring | nullbranchstring | nullcommitstring | nullsource_sha256string | nulllock_filestring | nulllock_file_sha256string | nullsbom_sha256string | nullstarted_atstring | nullfinished_atstring | null
builderobjectnamestringisolationstringcachestring | null
issued_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/provenance/verify" \
-H "Authorization: Bearer $KEY" \
-d '{"statement":{"type":"cloudhost.build-provenance/v1","subject":{"kind":"…","name":"my-api","output_sha256":"…","bundle_sha256":"…","manifest_sha256":"…","version":1},"build":{"id":"88e2fe1d-6d75-4de5-8c8f-27380ec66903","trigger":"…","branch":"dev","commit":"3f786850e387550fdab836ed7e6dc881de23001b","source_sha256":"…","lock_file":"…","lock_file_sha256":"…","sbom_sha256":"…","started_at":"…","finished_at":"…"},"builder":{"name":"my-api","isolation":"…","cache":"…"},"issued_at":"2026-11-04T09:30:00Z"},"signature":"…","algorithm":"ed25519","key_id":"…"}'