سکرتها
پروژههای سکرت با محیط، نسخه و بازگشت، توکن پروژه، دسترسی، گزارش، مصرف و اتصال به فانکشن و برنامه.
/v1/secrets/projectsList secrets projects#
The team's secrets projects (a restricted one only to those who may see it) and the plan's limits.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پاسخ
200object
projectsSecretProject[]الزامیnamestringالزامیdescriptionstringenvironmentsstring[]الزامیrotate_daysinteger | nullrestrictedbooleansecretsintegertokensintegerlinksintegerreads_30dintegercreated_atstring (date-time)updated_atstring (date-time)accessstringwhat the caller may do with values
one of
none,read,write
limitsSecretLimitsprojectsintegersecretsintegerperProjectintegersecrets_usedinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects" \
-H "Authorization: Bearer $KEY"/v1/secrets/projectsCreate a secrets project#
Environments default to production, preview and development. restricted: true needs owner or admin.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
بدنهٔ درخواستapplication/json
namestringالزامیpattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$descriptionstringup to 300 characters
environmentsstring[]1–10 items
rotate_daysinteger | null1–3650
restrictedboolean
پاسخ
201SecretProjectCreated
namestringالزامیdescriptionstringenvironmentsstring[]الزامیrotate_daysinteger | nullrestrictedbooleansecretsintegertokensintegerlinksintegerreads_30dintegercreated_atstring (date-time)updated_atstring (date-time)accessstringwhat the caller may do with values
one of
none,read,write
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_name, bad_environments, bad_days, bad_restricted |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, limit |
| 404 | Not found: not_found |
| 409 | Conflict: name_taken |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects" \
-H "Authorization: Bearer $KEY" \
-d '{"name":"STRIPE_KEY"}'- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200SecretProject
namestringالزامیdescriptionstringenvironmentsstring[]الزامیrotate_daysinteger | nullrestrictedbooleansecretsintegertokensintegerlinksintegerreads_30dintegercreated_atstring (date-time)updated_atstring (date-time)accessstringwhat the caller may do with values
one of
none,read,write
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}Delete a secrets project#
With its secrets, versions and tokens. Refused while a function or app links it (409 linked).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید API نیازی ندارد.
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200object
deletedstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found |
| 409 | Conflict: linked |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/secrets/projects/shop" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}Change a secrets project#
Any of description, rotate_days, restricted (owner or admin) and name (owner or admin). Environments change with the environments routes.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
descriptionstringup to 300 characters
rotate_daysinteger | null1–3650
restrictedbooleannamestringpattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
پاسخ
200SecretProject
namestringالزامیdescriptionstringenvironmentsstring[]الزامیrotate_daysinteger | nullrestrictedbooleansecretsintegertokensintegerlinksintegerreads_30dintegercreated_atstring (date-time)updated_atstring (date-time)accessstringwhat the caller may do with values
one of
none,read,write
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: nothing, use_environments, bad_name, bad_days, bad_restricted |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: name_taken |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/secrets/projects/shop" \
-H "Authorization: Bearer $KEY" \
-d '{"description":"…","rotate_days":1,"restricted":true,"name":"STRIPE_KEY"}'/v1/secrets/projects/{project}/environmentsAdd an environment#
copy_from starts it with another environment's current values.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
namestringالزامیpattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$copy_fromstring | nullpattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
201objectCreated
environmentsstring[]copiedinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_environment |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, limit |
| 404 | Not found: not_found |
| 409 | Conflict: exists |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/environments" \
-H "Authorization: Bearer $KEY" \
-d '{"name":"STRIPE_KEY"}'/v1/secrets/projects/{project}/environments/{env}Remove an environment#
And its values. Refused for the last one, or while a live token reads it.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید API نیازی ندارد.
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersenvstringمسیرالزامیthe environment
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200object
environmentsstring[]
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_environment |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found |
| 409 | Conflict: last_environment, in_use |
| 500 | internal: an unexpected failure |
نمونه
curl -X DELETE "https://api.ibel.ai/v1/secrets/projects/shop/environments/production" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/secretsList secrets#
Also takes a project token (Bearer chsm_…). Names, types, versions per environment and rotation dates; never values. With values=1 and env, every value of that environment (SecretValues; needs step-up with a session).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- any role for names; values need developer or above (and access on a restricted project), or a project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersvaluesstringکوئری1: the values of one environment
one of
1,trueenvstringکوئریthe environment (default: the token's one environment, else development, else the project's first)
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200SecretList | SecretValues
projectstringenvironmentsstring[]secretsobject[]namestringdescriptionstringtypestringone of
sensitive,plainrotate_daysinteger | nullenvironmentsmap of object | nullupdated_atstring (date-time)updated_byobjecttypestringone of
person,key,tokenidstringnamestring | null
rotation_duestring (date-time) | nullrotation_overduebooleancreated_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_environment |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found, no_environment |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/secrets/projects/shop/secrets" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/secretsSet many secrets#
Also takes a project token (Bearer chsm_…). secrets (an object) or dotenv (the text of a .env file), up to 500, all or nothing.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
secretsmap of stringdotenvstringenvironmentsstring[]1–10 items
typestringone of
sensitive,plainnotestringup to 200 characters
پاسخ
201objectCreated
importedintegersecretsSecretWritten[]namestringtypestringversionsmap of integer
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_secrets, bad_name, bad_value, bad_environment, bad_type |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, limit |
| 404 | Not found: not_found |
| 409 | Conflict: stays_sensitive |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/secrets" \
-H "Authorization: Bearer $KEY" \
-d '{"secrets":{"KEY":"s3cr3t"},"dotenv":"…","environments":["…"],"type":"sensitive","note":"…"}'/v1/secrets/projects/{project}/secrets/{name}Read a secret#
Also takes a project token (Bearer chsm_…). One value; version for an older one; masked=1 answers with the mask only (no read counted, no step-up). A session needs step-up for the value.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- any role for names; values need developer or above (and access on a restricted project), or a project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 charactersenvstringکوئریthe environment (default: the token's one environment, else development, else the project's first)
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$versionintegerکوئریan older version's number
at least 1
maskedstringکوئری1: the mask only
one of
1,true
پاسخ
200SecretValue
namestringenvironmentstringversionintegertypestringupdated_atstring (date-time)valuestring | nullmaskedstringwith masked=1: dots and the length, never a character of the value
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_environment, bad_param |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found, no_environment |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/secrets/{name}Set a secret#
Also takes a project token (Bearer chsm_…). A new version in each environment named (default: all of the project's, or all the token reaches).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 characters
بدنهٔ درخواستapplication/json
valuestringالزامی1–5120 characters
environmentsstring[]1–10 items
typestringone of
sensitive,plain· default"sensitive"descriptionstringup to 300 characters
rotate_daysinteger | null1–3650
notestringup to 200 characters
پاسخ
200SecretWritten
namestringtypestringversionsmap of integer
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_value, bad_environment, bad_environments, bad_type, bad_days |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, limit |
| 404 | Not found: not_found |
| 409 | Conflict: stays_sensitive |
| 500 | internal: an unexpected failure |
نمونه
curl -X PUT "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY" \
-d '{"value":"s3cr3t"}'/v1/secrets/projects/{project}/secrets/{name}Delete a secret#
Also takes a project token (Bearer chsm_…). With its history; env removes it from one environment only (as a version that says so).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 charactersenvstringکوئریremove it from this environment only
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200object
deletedstringenvironmentstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 DELETE "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/secrets/{name}Change a secret's settings#
Also takes a project token (Bearer chsm_…). Type (plain to sensitive only), description and rotate_days.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 characters
بدنهٔ درخواستapplication/json
typestringone of
sensitive,plaindescriptionstringup to 300 characters
rotate_daysinteger | null1–3650
پاسخ
200object
namestringtypestringdescriptionstringrotate_daysinteger | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_type, bad_days |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: stays_sensitive |
| 500 | internal: an unexpected failure |
نمونه
curl -X PATCH "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY" \
-H "Authorization: Bearer $KEY" \
-d '{"type":"sensitive","description":"…","rotate_days":1}'/v1/secrets/projects/{project}/secrets/{name}/rotateRotate a secret#
Also takes a project token (Bearer chsm_…). A new version with the value given, or a random one (length, default 40) returned once as value. Clears the rotation reminder.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید API نیازی ندارد.
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 characters
بدنهٔ درخواستapplication/json
valuestringup to 5120 characters
lengthinteger16–512
environmentsstring[]1–10 items
notestringup to 200 characters
پاسخ
200SecretWritten
namestringtypestringversionsmap of integervaluestringthe generated value, shown once
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_value, bad_length, bad_environment |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required, limit |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY/rotate" \
-H "Authorization: Bearer $KEY" \
-d '{"value":"s3cr3t","length":16,"environments":["…"],"note":"…"}'/v1/secrets/projects/{project}/secrets/{name}/versionsA secret's versions#
Also takes a project token (Bearer chsm_…). Every kept version, newest first; env for one environment. Never values.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- any role for names; values need developer or above (and access on a restricted project), or a project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 charactersenvstringکوئریone environment
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200object
namestringversionsSecretVersion[]environmentstringversionintegerkindstringone of
set,import,rotate,rollback,deletenotestringcurrentbooleancreated_atstring (date-time)created_byobject | nulltypestringone of
person,key,tokenidstringnamestring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY/versions" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/secrets/{name}/rollbackRoll a secret back#
Also takes a project token (Bearer chsm_…). Version to's value becomes a new current version in env.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (write access on a restricted project), or a write project token
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید API نیازی ندارد.
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersnamestringمسیرالزامیthe secret's name
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$· up to 64 characters
بدنهٔ درخواستapplication/json
envstringpattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$tointegerالزامیat least 1
پاسخ
200SecretWritten
namestringtypestringversionsmap of integerrolled_back_tointeger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_version, bad_environment |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/secrets/STRIPE_KEY/rollback" \
-H "Authorization: Bearer $KEY" \
-d '{"to":1}'/v1/secrets/projects/{project}/exportEvery value of one environment#
Also takes a project token (Bearer chsm_…). For run -- and programs (a session needs step-up). plain=1 leaves sensitive values out and names them in withheld (what secrets pull uses). format=dotenv answers text/plain NAME="value" lines.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- any role for names; values need developer or above (and access on a restricted project), or a project token
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersenvstringکوئریthe environment (default: the token's one environment, else development, else the project's first)
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$plainstringکوئری1: sensitive values left out
one of
1,trueformatstringکوئریdotenv: text instead of JSON
one of
dotenv
پاسخ
200SecretExport
projectstringenvironmentstringvaluesmap of stringwithheldstring[]
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required |
| 404 | Not found: not_found, no_environment |
| 500 | internal: an unexpected failure |
نمونه
curl "https://api.ibel.ai/v1/secrets/projects/shop/export" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/tokensList a project's tokens#
Live, expired and revoked; never the secret.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200object
tokensSecretToken[]idstringnamestringaccessstringone of
read,writeenvironmentsstring[] | nullexpires_atstring (date-time) | nulllast_used_atstring (date-time) | nullcreated_atstring (date-time)created_byobject | nulltypestringone of
person,key,tokenidstringnamestring | null
revoked_atstring (date-time) | nullstatestringone of
active,expired,revoked
limitinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop/tokens" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/tokensMake a project token#
Read or write, all or some environments, optional expiry; never more than its maker reaches. The token is shown once.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (with that access to each environment)
- تایید دوم
- با نشست داشبورد، عامل دوم در ۱۰ دقیقهٔ اخیر لازم است؛ کلید API نیازی ندارد.
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
namestringup to 80 characters
accessstringone of
read,write· default"read"environmentsstring[]1–10 items
expires_in_daysinteger | null1–3650
پاسخ
201SecretTokenCreated
idstringnamestringaccessstringone of
read,writeenvironmentsstring[] | nullexpires_atstring (date-time) | nulllast_used_atstring (date-time) | nullcreated_atstring (date-time)created_byobject | nulltypestringone of
person,key,tokenidstringnamestring | null
revoked_atstring (date-time) | nullstatestringone of
active,expired,revokedtokenstringchsm_<id>_<secret>, shown once
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_access, bad_environment, bad_environments, bad_days |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, step_up_required, limit |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/tokens" \
-H "Authorization: Bearer $KEY" \
-d '{"name":"STRIPE_KEY","access":"read","environments":["…"],"expires_in_days":1}'/v1/secrets/projects/{project}/tokens/{id}Revoke a project token#
At once on this API process, within 15 seconds on the others.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersidstringمسیرالزامیthe token's id
pattern
^[0-9a-f]{12}$
پاسخ
200object
revokedstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 DELETE "https://api.ibel.ai/v1/secrets/projects/shop/tokens/3f9a1c2b7d4e" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/accessWho reaches a project#
Every member with their role, their listing on a restricted project and what they may do; and the live tokens.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200object
restrictedbooleanpeopleSecretAccessPerson[]idstringemailstringnamestringrolestringlistedstring | nullone of
read,write,nullaccessstringone of
none,read,write
tokensSecretToken[]idstringnamestringaccessstringone of
read,writeenvironmentsstring[] | nullexpires_atstring (date-time) | nulllast_used_atstring (date-time) | nullcreated_atstring (date-time)created_byobject | nulltypestringone of
person,key,tokenidstringnamestring | null
revoked_atstring (date-time) | nullstatestringone of
active,expired,revoked
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop/access" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/access/{person}List a member on a project#
Read or write access on a restricted project.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterspersonstring (uuid)مسیرالزامیthe member's id
بدنهٔ درخواستapplication/json
accessstringالزامیone of
read,write
پاسخ
200object
personstringemailstringaccessstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_access |
| 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/secrets/projects/shop/access/5b0f4c2e-8f1d-4a7e-9c3b-2d6e1f0a9b8c" \
-H "Authorization: Bearer $KEY" \
-d '{"access":"read"}'/v1/secrets/projects/{project}/access/{person}Unlist a member#
Takes the person off a project's list.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterspersonstring (uuid)مسیرالزامیthe member's id
پاسخ
200object
removedstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 DELETE "https://api.ibel.ai/v1/secrets/projects/shop/access/5b0f4c2e-8f1d-4a7e-9c3b-2d6e1f0a9b8c" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/auditA project's audit trail#
Every read, change, rotation, rollback, pull, export, token, access change and link; never a value. Identical reads in one minute are one event with a count.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characterslimitintegerکوئریevents per page
1–500 · default
100beforestringکوئریthe
nextof the last pagepattern
^\d{1,18}$actionstringکوئریone action (or its family, e.g. token)
secretstringکوئریone secret
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$envstringکوئریone environment
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200SecretAudit
eventsobject[]idstringatstring (date-time)projectstringactionstringsecretstring | nullenvironmentstring | nullversioninteger | nullactorobject | nulltypestringone of
person,key,tokenidstringnamestring | null
ipstring | nullcountinteger
nextstring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_param, bad_name, bad_environment |
| 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/secrets/projects/shop/audit" \
-H "Authorization: Bearer $KEY"- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین
پارامترها
limitintegerکوئریevents per page
1–500 · default
100beforestringکوئریthe
nextof the last pagepattern
^\d{1,18}$actionstringکوئریone action (or its family)
secretstringکوئریone secret
pattern
^[A-Za-z_][A-Za-z0-9_]{0,63}$envstringکوئریone environment
pattern
^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$
پاسخ
200SecretAudit
eventsobject[]idstringatstring (date-time)projectstringactionstringsecretstring | nullenvironmentstring | nullversioninteger | nullactorobject | nulltypestringone of
person,key,tokenidstringnamestring | null
ipstring | nullcountinteger
nextstring | null
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_param, bad_name, bad_environment |
| 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/secrets/audit" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/usageA project's usage#
Reads and writes per day and this month, and secrets stored.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersdaysintegerکوئریdays back
1–90 · default
30
پاسخ
200SecretUsage
projectstringdaysobject[]daystringreadsintegerwritesinteger
monthobjectreadsintegerwritesinteger
secrets_storedinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop/usage" \
-H "Authorization: Bearer $KEY"/v1/secrets/usageThe team's secrets usage#
As a project's, for the whole team, with the plan and its included amounts. Meters: secrets_stored and secret_reads (prices in GET /v1/pricing); writes are counted, not priced.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
daysintegerکوئریdays back
1–90 · default
30
پاسخ
200SecretUsage
daysobject[]daystringreadsintegerwritesinteger
monthobjectreadsintegerwritesinteger
secrets_storedintegerplanstringincludedobjectsecretsintegerreadsintegerwritesinteger
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/usage" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/linksFunctions and apps reading a project#
Each with its mode and binding.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
پاسخ
200object
linksSecretLink[]projectstringkindstringsecrets_projectstringmodestringone of
binding,variablesbindingstring | nullcreated_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/projects/shop/links" \
-H "Authorization: Bearer $KEY"/v1/secrets/projects/{project}/linksLink a function or app#
It reads the project with no network call: binding mode gives env.SECRETS.get("NAME") and env.SECRETS.list(); variables gives each secret as env.NAME (a project or team variable of the same name wins). Production deployments get the production values, previews the preview values. One project per function or app.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- owner, admin, developer (with read access to production and preview)
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 characters
بدنهٔ درخواستapplication/json
projectstringالزامیthe function's or app's name
modestringone of
binding,variables· default"binding"bindingstringpattern
^[A-Z_][A-Z0-9_]{0,63}$· default"SECRETS"
پاسخ
201SecretLinkCreated
projectstringkindstringsecrets_projectstringmodestringone of
binding,variablesbindingstring | nullcreated_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: bad_project, bad_mode, bad_binding |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 409 | Conflict: linked |
| 500 | internal: an unexpected failure |
نمونه
curl -X POST "https://api.ibel.ai/v1/secrets/projects/shop/links" \
-H "Authorization: Bearer $KEY" \
-d '{"project":"shop"}'/v1/secrets/projects/{project}/links/{function}Unlink a function or app#
It stops reading the project at once.
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- مالک، ادمین، توسعهدهنده
پارامترها
projectstringمسیرالزامیthe secrets project's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$· up to 63 charactersfunctionstringمسیرالزامیthe function's or app's name
pattern
^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
پاسخ
200object
unlinkedstring
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 DELETE "https://api.ibel.ai/v1/secrets/projects/shop/links/function" \
-H "Authorization: Bearer $KEY"/v1/secrets/linksThe links of a function or app#
Which secrets project it reads (the environment variables page).
- دسترسی
- کلید API یا نشست داشبورد
- نقشها
- همهٔ نقشها
پارامترها
projectstringکوئریthe function's or app's name
پاسخ
200object
linksSecretLink[]projectstringkindstringsecrets_projectstringmodestringone of
binding,variablesbindingstring | nullcreated_atstring (date-time)
خطاها
| وضعیت | توضیح |
|---|---|
| 400 | Bad request: 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 "https://api.ibel.ai/v1/secrets/links" \
-H "Authorization: Bearer $KEY"