Rill Data Orgs API

The Orgs API from Rill Data — 17 operation(s) for orgs.

OpenAPI Specification

rill-data-orgs-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  description: 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.
  title: Rill Admin Orgs API
  version: 1.0.0
tags:
- name: Orgs
paths:
  /v1/orgs:
    get:
      operationId: AdminService_ListOrganizations
      parameters:
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListOrganizationsResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListOrganizations lists all the organizations currently managed by the admin
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_CreateOrganization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1CreateOrganizationRequest'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CreateOrganizationResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: CreateOrganization creates a new organization
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}:
    delete:
      operationId: AdminService_DeleteOrganization
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DeleteOrganizationResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: DeleteOrganization deletes an organization
      x-visibility: public
      tags:
      - Orgs
    get:
      operationId: AdminService_GetOrganization
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: query
        name: superuserForceAccess
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetOrganizationResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: GetOrganization returns information about a specific organization
      x-visibility: public
      tags:
      - Orgs
    patch:
      operationId: AdminService_UpdateOrganization
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                billingEmail:
                  type: string
                defaultProjectRole:
                  type: string
                description:
                  type: string
                displayName:
                  type: string
                faviconAssetId:
                  type: string
                logoAssetId:
                  type: string
                logoDarkAssetId:
                  type: string
                newName:
                  type: string
                thumbnailAssetId:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1UpdateOrganizationResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: UpdateOrganization updates an organization
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/invites:
    get:
      operationId: AdminService_ListOrganizationInvites
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListOrganizationInvitesResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListOrganizationInvites lists all the org invites
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/members:
    get:
      operationId: AdminService_ListOrganizationMemberUsers
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - description: Optionally filter by role
        in: query
        name: role
        schema:
          type: string
      - description: Optionally include counts
        in: query
        name: includeCounts
        schema:
          type: boolean
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      - in: query
        name: superuserForceAccess
        schema:
          type: boolean
      - description: Optional search pattern to filter users by email or display name
        in: query
        name: searchPattern
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListOrganizationMemberUsersResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListOrganizationMemberUsers lists all the org members
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_AddOrganizationMemberUser
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                email:
                  type: string
                role:
                  type: string
                superuserForceAccess:
                  type: boolean
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AddOrganizationMemberUserResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: AddOrganizationMemberUser adds a user to the organization
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/members/{email}:
    delete:
      operationId: AdminService_RemoveOrganizationMemberUser
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: email
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RemoveOrganizationMemberUserResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: RemoveOrganizationMemberUser removes member from the organization
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects:
    get:
      operationId: AdminService_ListProjectsForOrganization
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListProjectsForOrganizationResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListProjectsForOrganization lists all the projects currently available for a given organization.
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_CreateProject
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                archiveAssetId:
                  description: archive_asset_id is set for projects whose project files are not stored in github but are managed by rill.
                  type: string
                description:
                  type: string
                devSlots:
                  format: int64
                  type: string
                directoryName:
                  description: 'directory_name should be the most recently observed local directory name for the project.

                    See ListProjectsForFingerprint for more context.'
                  type: string
                gitRemote:
                  description: '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.'
                  type: string
                primaryBranch:
                  type: string
                prodSlots:
                  format: int64
                  type: string
                prodVersion:
                  type: string
                project:
                  type: string
                provisioner:
                  type: string
                public:
                  type: boolean
                skipDeploy:
                  type: boolean
                subpath:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CreateProjectResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: CreateProject creates a new project
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}:
    delete:
      operationId: AdminService_DeleteProject
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DeleteProjectResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: DeleteProject deletes a project
      x-visibility: public
      tags:
      - Orgs
    get:
      operationId: AdminService_GetProject
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - description: Optional branch to get deployment for. If not set, then project's primary_branch is used.
        in: query
        name: branch
        schema:
          type: string
      - in: query
        name: accessTokenTtlSeconds
        schema:
          format: int64
          type: integer
      - in: query
        name: superuserForceAccess
        schema:
          type: boolean
      - in: query
        name: issueSuperuserToken
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetProjectResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: GetProject returns information about a specific project
      x-visibility: public
      tags:
      - Orgs
    patch:
      operationId: AdminService_UpdateProject
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                archiveAssetId:
                  type: string
                description:
                  type: string
                devSlots:
                  format: int64
                  type: string
                devTtlSeconds:
                  format: int64
                  type: string
                directoryName:
                  type: string
                gitRemote:
                  type: string
                newName:
                  type: string
                overrideDiskGb:
                  format: int64
                  type: string
                primaryBranch:
                  type: string
                prodSlots:
                  format: int64
                  type: string
                prodTtlSeconds:
                  format: int64
                  type: string
                prodVersion:
                  type: string
                provisioner:
                  type: string
                public:
                  type: boolean
                subpath:
                  type: string
                superuserForceAccess:
                  type: boolean
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1UpdateProjectResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: UpdateProject updates a project
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/invites:
    get:
      operationId: AdminService_ListProjectInvites
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListProjectInvitesResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListProjectInvites lists all the project invites
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/members:
    get:
      operationId: AdminService_ListProjectMemberUsers
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - description: Optionally filter by role
        in: query
        name: role
        schema:
          type: string
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      - in: query
        name: superuserForceAccess
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListProjectMemberUsersResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListProjectMemberUsers lists all the project members
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_AddProjectMemberUser
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                email:
                  type: string
                resources:
                  items:
                    $ref: '#/components/schemas/v1ResourceName'
                  type: array
                restrictResources:
                  type: boolean
                role:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AddProjectMemberUserResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: AddProjectMemberUser adds a member to the project
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/members/{email}:
    delete:
      operationId: AdminService_RemoveProjectMemberUser
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: email
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RemoveProjectMemberUserResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: RemoveProjectMemberUser removes member from the project
      x-visibility: public
      tags:
      - Orgs
    get:
      operationId: AdminService_GetProjectMemberUser
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: email
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetProjectMemberUserResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: GetProjectMemberUser gets the member details
      x-visibility: public
      tags:
      - Orgs
    put:
      operationId: AdminService_SetProjectMemberUserRole
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: email
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                resources:
                  items:
                    $ref: '#/components/schemas/v1ResourceName'
                  type: array
                restrictResources:
                  type: boolean
                role:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1SetProjectMemberUserRoleResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: SetProjectMemberUserRole sets the role for the member
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/usergroups:
    get:
      operationId: AdminService_ListProjectMemberUsergroups
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - description: Optionally filter by role
        in: query
        name: role
        schema:
          type: string
      - description: Optionally include counts
        in: query
        name: includeCounts
        schema:
          type: boolean
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListProjectMemberUsergroupsResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListProjectMemberUsergroups lists the user groups assigned to a project
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/usergroups/{usergroup}/roles:
    delete:
      operationId: AdminService_RemoveProjectMemberUsergroup
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: usergroup
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RemoveProjectMemberUsergroupResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: RemoveProjectMemberUsergroup revokes the project-level role for the user group
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_AddProjectMemberUsergroup
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: usergroup
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                resources:
                  items:
                    $ref: '#/components/schemas/v1ResourceName'
                  type: array
                restrictResources:
                  type: boolean
                role:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AddProjectMemberUsergroupResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: AddProjectMemberUsergroup adds a user group to the project with a role
      x-visibility: public
      tags:
      - Orgs
    put:
      operationId: AdminService_SetProjectMemberUsergroupRole
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - in: path
        name: project
        required: true
        schema:
          type: string
      - in: path
        name: usergroup
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                resources:
                  items:
                    $ref: '#/components/schemas/v1ResourceName'
                  type: array
                restrictResources:
                  type: boolean
                role:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1SetProjectMemberUsergroupRoleResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: SetProjectMemberUsergroupRole sets the role for the user group
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/projects/{project}/variables:
    get:
      operationId: AdminService_GetProjectVariables
      parameters:
      - description: Org the project belongs to.
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project to get variables for.
        in: path
        name: project
        required: true
        schema:
          type: string
      - description: 'Environment to get the variables for.

          If empty, only variables shared across all environments are returned.'
        in: query
        name: environment
        schema:
          type: string
      - description: 'If true, return variable values for all environments.

          Can''t be used together with the "environment" option.'
        in: query
        name: forAllEnvironments
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1GetProjectVariablesResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: GetProjectVariables returns project variables.
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/usergroups:
    get:
      operationId: AdminService_ListOrganizationMemberUsergroups
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      - description: Optionally filter by role
        in: query
        name: role
        schema:
          type: string
      - description: Optionally include counts
        in: query
        name: includeCounts
        schema:
          type: boolean
      - in: query
        name: pageSize
        schema:
          format: int64
          type: integer
      - in: query
        name: pageToken
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListOrganizationMemberUsergroupsResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: ListOrganizationMemberUsergroups lists the organization's user groups
      x-visibility: public
      tags:
      - Orgs
    post:
      operationId: AdminService_CreateUsergroup
      parameters:
      - in: path
        name: org
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                name:
                  type: string
              type: object
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1CreateUsergroupResponse'
          description: A successful response.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
          description: An unexpected error response.
      summary: CreateUsergroup creates a user group in the organization
      x-visibility: public
      tags:
      - Orgs
  /v1/orgs/{org}/usergroups/{usergroup}:
    delete:
      operationId: AdminService_DeleteUsergroup


# --- truncated at 32 KB (53 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rill-data/refs/heads/main/openapi/rill-data-orgs-api-openapi.yml