Skip to content

Apply for the functions closed beta

POST
/api/v1/team/functions-beta/apply
curl --request POST \
--url https://api.deploybase.eu/api/v1/api/v1/team/functions-beta/apply \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "terms_version": "example" }'

Records the team’s application and the terms version accepted, then notifies the platform team. Nothing is granted here: a platform admin enrols the team later, so the state moves from “eligible” to “applied”. The first application stands — a second one is a conflict, not an overwrite.

Accepted terms version

Media type application/json
object
terms_version
required
string
Example generated
{
"terms_version": "example"
}

Created

Media type application/json
object
data
meta
object
request_id
string
timestamp
string
trace_id
string
data
object
beta_open
boolean
can_apply
boolean
granted_at
string
invites_open

InvitesOpen false means the closed beta is not taking applications yet: the dashboard hides the invite surfaces for teams in state “eligible” and the apply endpoint refuses. It says nothing about a team that is already applied or enrolled.

boolean
prompt_eligible
boolean
requested_at
string
requested_by_is_me

RequestedByIsMe lets the UI say “you applied” rather than naming a colleague we would otherwise have to resolve a Zitadel subject into.

boolean
state
string
team_name

TeamName is the label the apply form binds the acceptance to (“on behalf of ”). Same fallback as every other place a team needs a readable name: DisplayLabel (name -> slug -> id), because auto-provisioned teams carry a raw Zitadel org id as their name.

string
terms_version

TermsVersion is always the CURRENT terms version — the one a client must echo back on apply — never the version the team accepted historically. A stale page therefore cannot silently re-accept old terms.

string
Example generated
{
"data": {
"beta_open": true,
"can_apply": true,
"granted_at": "example",
"invites_open": true,
"prompt_eligible": true,
"requested_at": "example",
"requested_by_is_me": true,
"state": "example",
"team_name": "example",
"terms_version": "example"
},
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Bad Request

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Unauthorized

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Forbidden

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Not Found

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Conflict

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Unprocessable Entity

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Internal Server Error

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}

Service Unavailable

Media type application/json
object
code
string
details
error
string
meta
object
request_id
string
timestamp
string
trace_id
string
Example generated
{
"code": "example",
"details": "example",
"error": "example",
"meta": {
"request_id": "example",
"timestamp": "example",
"trace_id": "example"
}
}