Skip to content

Get an app

GET
/api/apps/{id}
curl --request GET \
--url https://opfield.example.com/api/apps/550e8400-e29b-41d4-a716-446655440000 \
--header 'Authorization: Bearer <token>'

By id or slug. Environments the caller may view, each with placementFolderIds (the folderId to pass when creating a resource of that type inside the environment), allowedNodeIds (nodes the environment may place workloads on), health, visible member counts and maintenance state; permissions says what the caller may change; permissions.create[environmentId][family] says which resource types the caller may create in that environment (the family create scope broadly, on the placement folder or on an allowed node). access (app and each environment) is full with apps:view, members when seen only through members the caller can view: maintenance state and root folders are then left out, and allowed nodes unless the caller may create in that environment. An environment the caller holds grants in (on its placement folders) is visible this way even while it is still empty.

id
required
string
>= 1 characters
Example
550e8400-e29b-41d4-a716-446655440000

Successful response

Media typeapplication/json
object
data
required

Resource object. Exact fields depend on the endpoint.

object
id
string
name
string
key
additional properties
Example
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Example resource",
"createdAt": "2024-01-01T12:00:00.000Z",
"updatedAt": "2024-01-01T12:30:00.000Z"
}
}

Bad request

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "VALIDATION_ERROR",
"message": "Request validation failed",
"details": [
{
"path": [
"name"
],
"message": "Required"
}
]
}

Authentication required

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "UNAUTHORIZED",
"message": "Authentication required"
}

Forbidden

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "FORBIDDEN",
"message": "Insufficient permissions"
}

Not found

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "NOT_FOUND",
"message": "Resource not found"
}

Conflict

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "CONFLICT",
"message": "Resource already exists"
}

Unprocessable entity

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "UNPROCESSABLE_ENTITY",
"message": "Request could not be processed"
}

Internal server error

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "INTERNAL_ERROR",
"message": "Internal server error"
}