The Apps API lets you list applications in your Stormkit account. It is useful for discovering appId values that are required by other API endpoints.
Returns a paginated list of applications belonging to the authenticated user.
Base URL: https://api.stormkit.io
Authentication: User-level API key passed as the Authorization header (no Bearer prefix required). To generate one: Profile → Account → API Keys.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
teamId |
number | Yes | — | ID of the team to scope results to. The API key owner must be a member. |
from |
number | No | 0 |
Pagination offset. Must be ≥ 0. |
repo |
string | No | — | Exact case-insensitive match on the repository path (e.g. github/org/repo). |
displayName |
string | No | — | Exact case-insensitive match on the application display name. |
repoanddisplayNamecan be combined and are applied as AND conditions.
| Field | Type | Description |
|---|---|---|
apps |
App[] |
Array of application objects for the current page. |
hasNextPage |
boolean | true when more results exist. To fetch the next page, add from=<current_offset + len(apps)>. |
App object:
| Field | Type | Description |
|---|---|---|
id |
string | Unique application ID. Use this as appId in other endpoints. |
displayName |
string | Human-readable name of the application. |
repo |
string | Repository path (e.g. github/org/repo). Empty when isBare is true. |
isBare |
boolean | true when no repository is linked. |
userId |
string | ID of the user who owns the application. |
teamId |
string | ID of the team the application belongs to. |
defaultEnvId |
string | ID of the default environment. Use this as envId in environment-scoped endpoints. |
createdAt |
string | Unix timestamp (seconds) when the application was created. |
| Status | Condition |
|---|---|
400 |
Missing or invalid parameter (e.g. teamId omitted, non-integer). |
403 |
Missing/invalid API key, or user is not a member of the given team. |
500 |
Internal server error. |
The page size is fixed at 20 items. To iterate all pages:
from=0.hasNextPage is true, set from = from + len(apps) and repeat.hasNextPage is false.# First page
curl -X GET \
-H 'Authorization: <api_key>' \
'https://api.stormkit.io/v1/apps?teamId=7'
# Second page
curl -X GET \
-H 'Authorization: <api_key>' \
'https://api.stormkit.io/v1/apps?teamId=7&from=20'
# Exact match by repository
curl -X GET \
-H 'Authorization: <api_key>' \
'https://api.stormkit.io/v1/apps?teamId=7&repo=github/acme/my-app'
# Exact match by display name
curl -X GET \
-H 'Authorization: <api_key>' \
'https://api.stormkit.io/v1/apps?teamId=7&displayName=my-app-abc123'
// Example response
{
"apps": [
{
"id": "1510",
"displayName": "my-app-abc123",
"repo": "github/acme/my-app",
"isBare": false,
"userId": "42",
"teamId": "7",
"defaultEnvId": "305",
"createdAt": "1700489144"
}
],
"hasNextPage": false
}