Download OpenAPI specification:Download
Rill Admin API enables programmatic management of Rill Cloud resources, including organizations, projects, and user access. It provides endpoints for creating, updating, and deleting these resources, as well as managing authentication and permissions.
| pageSize | integer <int64> |
| pageToken | string |
{- "nextPageToken": "string",
- "organizations": [
- {
- "billingCustomerId": "string",
- "billingEmail": "string",
- "billingPlanDisplayName": "string",
- "billingPlanName": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "customDomain": "string",
- "defaultProjectRoleId": "string",
- "defaultProvisioner": "string",
- "description": "string",
- "displayName": "string",
- "faviconUrl": "string",
- "id": "string",
- "logoDarkUrl": "string",
- "logoUrl": "string",
- "name": "string",
- "paymentCustomerId": "string",
- "quotas": {
- "deployments": 0,
- "outstandingInvites": 0,
- "projects": 0,
- "seats": 0,
- "slotsPerDeployment": 0,
- "slotsTotal": 0,
- "storageLimitBytesPerDeployment": "string"
}, - "thumbnailUrl": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
]
}| description | string |
| displayName | string |
| name | string |
{- "description": "string",
- "displayName": "string",
- "name": "string"
}{- "organization": {
- "billingCustomerId": "string",
- "billingEmail": "string",
- "billingPlanDisplayName": "string",
- "billingPlanName": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "customDomain": "string",
- "defaultProjectRoleId": "string",
- "defaultProvisioner": "string",
- "description": "string",
- "displayName": "string",
- "faviconUrl": "string",
- "id": "string",
- "logoDarkUrl": "string",
- "logoUrl": "string",
- "name": "string",
- "paymentCustomerId": "string",
- "quotas": {
- "deployments": 0,
- "outstandingInvites": 0,
- "projects": 0,
- "seats": 0,
- "slotsPerDeployment": 0,
- "slotsTotal": 0,
- "storageLimitBytesPerDeployment": "string"
}, - "thumbnailUrl": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| superuserForceAccess | boolean |
{- "organization": {
- "billingCustomerId": "string",
- "billingEmail": "string",
- "billingPlanDisplayName": "string",
- "billingPlanName": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "customDomain": "string",
- "defaultProjectRoleId": "string",
- "defaultProvisioner": "string",
- "description": "string",
- "displayName": "string",
- "faviconUrl": "string",
- "id": "string",
- "logoDarkUrl": "string",
- "logoUrl": "string",
- "name": "string",
- "paymentCustomerId": "string",
- "quotas": {
- "deployments": 0,
- "outstandingInvites": 0,
- "projects": 0,
- "seats": 0,
- "slotsPerDeployment": 0,
- "slotsTotal": 0,
- "storageLimitBytesPerDeployment": "string"
}, - "thumbnailUrl": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}, - "permissions": {
- "admin": true,
- "createProjects": true,
- "guest": true,
- "manageOrg": true,
- "manageOrgAdmins": true,
- "manageOrgMembers": true,
- "manageProjects": true,
- "readOrg": true,
- "readOrgMembers": true,
- "readProjects": true
}
}| org required | string |
| billingEmail | string |
| defaultProjectRole | string |
| description | string |
| displayName | string |
| faviconAssetId | string |
| logoAssetId | string |
| logoDarkAssetId | string |
| newName | string |
| thumbnailAssetId | string |
{- "billingEmail": "string",
- "defaultProjectRole": "string",
- "description": "string",
- "displayName": "string",
- "faviconAssetId": "string",
- "logoAssetId": "string",
- "logoDarkAssetId": "string",
- "newName": "string",
- "thumbnailAssetId": "string"
}{- "organization": {
- "billingCustomerId": "string",
- "billingEmail": "string",
- "billingPlanDisplayName": "string",
- "billingPlanName": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "customDomain": "string",
- "defaultProjectRoleId": "string",
- "defaultProvisioner": "string",
- "description": "string",
- "displayName": "string",
- "faviconUrl": "string",
- "id": "string",
- "logoDarkUrl": "string",
- "logoUrl": "string",
- "name": "string",
- "paymentCustomerId": "string",
- "quotas": {
- "deployments": 0,
- "outstandingInvites": 0,
- "projects": 0,
- "seats": 0,
- "slotsPerDeployment": 0,
- "slotsTotal": 0,
- "storageLimitBytesPerDeployment": "string"
}, - "thumbnailUrl": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| pageSize | integer <int64> |
| pageToken | string |
{- "invites": [
- {
- "attributes": { },
- "email": "string",
- "invitedBy": "string",
- "roleName": "string",
- "usergroups": [
- "string"
]
}
], - "nextPageToken": "string",
- "totalCount": 0
}| org required | string |
| role | string Optionally filter by role |
| includeCounts | boolean Optionally include counts |
| pageSize | integer <int64> |
| pageToken | string |
| superuserForceAccess | boolean |
| searchPattern | string Optional search pattern to filter users by email or display name |
{- "members": [
- {
- "attributes": { },
- "createdOn": "2019-08-24T14:15:22Z",
- "projectsCount": 0,
- "roleName": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "userEmail": "string",
- "userId": "string",
- "userName": "string",
- "userPhotoUrl": "string",
- "usergroupsCount": 0
}
], - "nextPageToken": "string",
- "totalCount": 0
}| org required | string |
| attributes | object Custom attributes to set on the new membership. If the user has not signed up yet, they are stored on the invite and applied when the invite is accepted. |
string | |
| role | string |
| superuserForceAccess | boolean |
| usergroups | Array of strings Names of user groups in the org to add the user to. If the user has not signed up yet, they are stored on the invite and applied when the invite is accepted. Groups are additive: on a re-invite they are merged with the groups already on the invite. |
{- "attributes": { },
- "email": "string",
- "role": "string",
- "superuserForceAccess": true,
- "usergroups": [
- "string"
]
}{- "pendingSignup": true
}| org required | string |
| pageSize | integer <int64> |
| pageToken | string |
{- "nextPageToken": "string",
- "projects": [
- {
- "annotations": {
- "property1": "string",
- "property2": "string"
}, - "archiveAssetId": "string",
- "createdByUserId": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "description": "string",
- "devSlots": "string",
- "devTtlSeconds": "string",
- "directoryName": "string",
- "frontendUrl": "string",
- "gitRemote": "string",
- "id": "string",
- "managedGitId": "string",
- "name": "string",
- "orgId": "string",
- "orgName": "string",
- "overrideDiskGb": "string",
- "primaryBranch": "string",
- "primaryDeploymentId": "string",
- "prodSlots": "string",
- "prodTtlSeconds": "string",
- "prodVersion": "string",
- "provisioner": "string",
- "public": true,
- "subpath": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
]
}| org required | string |
| archiveAssetId | string archive_asset_id is set for projects whose project files are not stored in github but are managed by rill. |
| description | string |
| devSlots | string <int64> |
| directoryName | string directory_name should be the most recently observed local directory name for the project. See ListProjectsForFingerprint for more context. |
| gitRemote | string git_remote is set for projects whose project files are stored in Git. It currently only supports Github remotes. It should be a HTTPS remote ending in .git for github.com. Either git_remote or archive_asset_id should be set. |
| primaryBranch | string |
| prodSlots | string <int64> |
| prodVersion | string |
| project | string |
| provisioner | string Provisioner to use for the project's deployments. Superuser-only; empty means the org's default provisioner (or the global default) is used. |
| public | boolean |
| skipDeploy | boolean |
| subpath | string |
{- "archiveAssetId": "string",
- "description": "string",
- "devSlots": "string",
- "directoryName": "string",
- "gitRemote": "string",
- "primaryBranch": "string",
- "prodSlots": "string",
- "prodVersion": "string",
- "project": "string",
- "provisioner": "string",
- "public": true,
- "skipDeploy": true,
- "subpath": "string"
}{- "project": {
- "annotations": {
- "property1": "string",
- "property2": "string"
}, - "archiveAssetId": "string",
- "createdByUserId": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "description": "string",
- "devSlots": "string",
- "devTtlSeconds": "string",
- "directoryName": "string",
- "frontendUrl": "string",
- "gitRemote": "string",
- "id": "string",
- "managedGitId": "string",
- "name": "string",
- "orgId": "string",
- "orgName": "string",
- "overrideDiskGb": "string",
- "primaryBranch": "string",
- "primaryDeploymentId": "string",
- "prodSlots": "string",
- "prodTtlSeconds": "string",
- "prodVersion": "string",
- "provisioner": "string",
- "public": true,
- "subpath": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| project required | string |
| branch | string Optional branch to get deployment for. If not set, then project's primary_branch is used. |
| accessTokenTtlSeconds | integer <int64> |
| superuserForceAccess | boolean |
| issueSuperuserToken | boolean |
{- "deployment": {
- "branch": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "editable": true,
- "environment": "string",
- "id": "string",
- "ownerUserId": "string",
- "projectId": "string",
- "runtimeHost": "string",
- "runtimeInstanceId": "string",
- "status": "DEPLOYMENT_STATUS_UNSPECIFIED",
- "statusMessage": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "usedOn": "2019-08-24T14:15:22Z"
}, - "jwt": "string",
- "project": {
- "annotations": {
- "property1": "string",
- "property2": "string"
}, - "archiveAssetId": "string",
- "createdByUserId": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "description": "string",
- "devSlots": "string",
- "devTtlSeconds": "string",
- "directoryName": "string",
- "frontendUrl": "string",
- "gitRemote": "string",
- "id": "string",
- "managedGitId": "string",
- "name": "string",
- "orgId": "string",
- "orgName": "string",
- "overrideDiskGb": "string",
- "primaryBranch": "string",
- "primaryDeploymentId": "string",
- "prodSlots": "string",
- "prodTtlSeconds": "string",
- "prodVersion": "string",
- "provisioner": "string",
- "public": true,
- "subpath": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}, - "projectPermissions": {
- "admin": true,
- "createAlerts": true,
- "createBookmarks": true,
- "createMagicAuthTokens": true,
- "createReports": true,
- "manageAlerts": true,
- "manageBookmarks": true,
- "manageDev": true,
- "manageMagicAuthTokens": true,
- "manageProd": true,
- "manageProject": true,
- "manageProjectAdmins": true,
- "manageProjectMembers": true,
- "manageProvisionerResources": true,
- "manageReports": true,
- "readDev": true,
- "readDevStatus": true,
- "readProd": true,
- "readProdStatus": true,
- "readProject": true,
- "readProjectMembers": true,
- "readProvisionerResources": true
}
}| org required | string |
| project required | string |
| archiveAssetId | string |
| description | string |
| devSlots | string <int64> |
| devTtlSeconds | string <int64> |
| directoryName | string |
| gitRemote | string |
| newName | string |
| overrideDiskGb | string <int64> |
| primaryBranch | string |
| prodSlots | string <int64> |
| prodTtlSeconds | string <int64> |
| prodVersion | string |
| provisioner | string Provisioner to use for the project's deployments. Superuser-only; empty unsets it so the org's default provisioner (or the global default) is used. It only affects deployments provisioned after the change; existing deployments stay on their current provisioner. |
| public | boolean |
| subpath | string |
| superuserForceAccess | boolean |
{- "archiveAssetId": "string",
- "description": "string",
- "devSlots": "string",
- "devTtlSeconds": "string",
- "directoryName": "string",
- "gitRemote": "string",
- "newName": "string",
- "overrideDiskGb": "string",
- "primaryBranch": "string",
- "prodSlots": "string",
- "prodTtlSeconds": "string",
- "prodVersion": "string",
- "provisioner": "string",
- "public": true,
- "subpath": "string",
- "superuserForceAccess": true
}{- "project": {
- "annotations": {
- "property1": "string",
- "property2": "string"
}, - "archiveAssetId": "string",
- "createdByUserId": "string",
- "createdOn": "2019-08-24T14:15:22Z",
- "description": "string",
- "devSlots": "string",
- "devTtlSeconds": "string",
- "directoryName": "string",
- "frontendUrl": "string",
- "gitRemote": "string",
- "id": "string",
- "managedGitId": "string",
- "name": "string",
- "orgId": "string",
- "orgName": "string",
- "overrideDiskGb": "string",
- "primaryBranch": "string",
- "primaryDeploymentId": "string",
- "prodSlots": "string",
- "prodTtlSeconds": "string",
- "prodVersion": "string",
- "provisioner": "string",
- "public": true,
- "subpath": "string",
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| project required | string |
| pageSize | integer <int64> |
| pageToken | string |
{- "invites": [
- {
- "email": "string",
- "invitedBy": "string",
- "orgRoleName": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "roleName": "string"
}
], - "nextPageToken": "string"
}| org required | string |
| project required | string |
| role | string Optionally filter by role |
| pageSize | integer <int64> |
| pageToken | string |
| superuserForceAccess | boolean |
{- "members": [
- {
- "createdOn": "2019-08-24T14:15:22Z",
- "orgRoleName": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "roleName": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "userEmail": "string",
- "userId": "string",
- "userName": "string",
- "userPhotoUrl": "string"
}
], - "nextPageToken": "string"
}| org required | string |
| project required | string |
| attributes | object Custom attributes to set on the user's org membership (attributes are org-scoped). If the user has not signed up yet, they are stored on the org invite and applied when the invite is accepted. Setting attributes requires permission to manage org members. |
string | |
Array of objects (v1ResourceName) | |
| restrictResources | boolean |
| role | string |
| usergroups | Array of strings Names of user groups in the org to add the user to (user groups are org-scoped). If the user has not signed up yet, they are stored on the org invite and applied when the invite is accepted. Setting user groups requires permission to manage org members. |
{- "attributes": { },
- "email": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "role": "string",
- "usergroups": [
- "string"
]
}{- "pendingSignup": true
}| org required | string |
| project required | string |
| email required | string |
{- "member": {
- "createdOn": "2019-08-24T14:15:22Z",
- "orgRoleName": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "roleName": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "userEmail": "string",
- "userId": "string",
- "userName": "string",
- "userPhotoUrl": "string"
}
}| org required | string |
| project required | string |
| email required | string |
Array of objects (v1ResourceName) | |
| restrictResources | boolean |
| role | string |
{- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "role": "string"
}{ }| org required | string |
| project required | string |
| role | string Optionally filter by role |
| includeCounts | boolean Optionally include counts |
| pageSize | integer <int64> |
| pageToken | string |
{- "members": [
- {
- "createdOn": "2019-08-24T14:15:22Z",
- "groupId": "string",
- "groupManaged": true,
- "groupName": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "roleName": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "usersCount": 0
}
], - "nextPageToken": "string"
}| org required | string |
| project required | string |
| usergroup required | string |
Array of objects (v1ResourceName) | |
| restrictResources | boolean |
| role | string |
{- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "role": "string"
}{ }| org required | string |
| project required | string |
| usergroup required | string |
Array of objects (v1ResourceName) | |
| restrictResources | boolean |
| role | string |
{- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "role": "string"
}{ }| org required | string Org the project belongs to. |
| project required | string Project to get variables for. |
| environment | string Environment to get the variables for. If empty, only variables shared across all environments are returned. |
| forAllEnvironments | boolean If true, return variable values for all environments. Can't be used together with the "environment" option. |
{- "variables": [
- {
- "createdOn": "2019-08-24T14:15:22Z",
- "environment": "string",
- "id": "string",
- "name": "string",
- "updatedByUserId": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "value": "string"
}
], - "variablesMap": {
- "property1": "string",
- "property2": "string"
}
}| org required | string |
| role | string Optionally filter by role |
| includeCounts | boolean Optionally include counts |
| pageSize | integer <int64> |
| pageToken | string |
{- "members": [
- {
- "createdOn": "2019-08-24T14:15:22Z",
- "groupId": "string",
- "groupManaged": true,
- "groupName": "string",
- "resources": [
- {
- "name": "string",
- "type": "string"
}
], - "restrictResources": true,
- "roleName": "string",
- "updatedOn": "2019-08-24T14:15:22Z",
- "usersCount": 0
}
], - "nextPageToken": "string"
}| org required | string |
| name | string |
{- "name": "string"
}{- "usergroup": {
- "createdOn": "2019-08-24T14:15:22Z",
- "groupDescription": "string",
- "groupId": "string",
- "groupName": "string",
- "managed": true,
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| usergroup required | string |
| pageSize | integer <int64> |
| pageToken | string |
{- "nextPageToken": "string",
- "usergroup": {
- "createdOn": "2019-08-24T14:15:22Z",
- "groupDescription": "string",
- "groupId": "string",
- "groupName": "string",
- "managed": true,
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| usergroup required | string |
| description | string |
| newName | string |
{- "description": "string",
- "newName": "string"
}{- "usergroup": {
- "createdOn": "2019-08-24T14:15:22Z",
- "groupDescription": "string",
- "groupId": "string",
- "groupName": "string",
- "managed": true,
- "updatedOn": "2019-08-24T14:15:22Z"
}
}| org required | string |
| usergroup required | string |
| pageSize | integer <int64> |
| pageToken | string |
{- "members": [
- {
- "createdOn": "2019-08-24T14:15:22Z",
- "pendingAcceptance": true,
- "updatedOn": "2019-08-24T14:15:22Z",
- "userEmail": "string",
- "userId": "string",
- "userName": "string",
- "userPhotoUrl": "string"
}
], - "nextPageToken": "string"
}| org required | string |
| usergroup required | string |
| email required | string |
{ }{ }