Skip to content

Probe a Gitea/Forgejo instance for supported auth modes

POST
/api/v1/projects/git-instance
curl --request POST \
--url https://api.deploybase.eu/api/v1/api/v1/projects/git-instance \
--header 'Authorization: <Authorization>' \
--header 'Content-Type: application/json' \
--data '{ "git_repo_url": "example" }'

Reports the instance family and version, and whether keyless JWT auth is available

Repository URL

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

OK

Media type application/json
object
data
meta
object
request_id
string
timestamp
string
trace_id
string
data
object
family
string
Allowed values: forgejo gitea unknown
issuer_url
string
major

Major is the parsed leading version component, 0 when unknown.

integer
reason

Reason explains a false SupportsJWT in words a user can act on. Empty when SupportsJWT is true.

string
supports_jwt

SupportsJWT is true only on positive evidence: a Forgejo instance reporting v16 or newer. An unreachable or unparseable instance is false, never assumed.

boolean
team_id

TeamID is echoed so the UI can generate a claim rule pinning it. It is the one claim in our tokens that a customer can rely on, because it is the only one deploybase derives rather than accepts from the user – see forgejoissuer.Claims.

string
version

Version is the raw string the instance reported, for display and support.

string
Example
{
"data": {
"family": "forgejo"
}
}

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"
}
}