C1

C1 App Owner API

The App Owner API from C1 — 3 operation(s) for app owner.

OpenAPI Specification

c1-app-owner-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  description: The ConductorOne API is a HTTP API for managing ConductorOne resources.
  title: ConductorOne Access Conflict App Owner API
  version: 0.1.0-alpha
servers:
- description: The ConductorOne API server for the current tenant.
  url: https://{tenantDomain}.conductor.one
  variables:
    tenantDomain:
      default: example
      description: The domain of the tenant to use for this request.
security:
- bearerAuth: []
  oauth: []
tags:
- name: App Owner
paths:
  /api/v1/apps/{app_id}/ownerids:
    get:
      description: ListOwnerIDs lists owner IDs for a given app.
      operationId: c1.api.app.v1.AppOwners.ListOwnerIDs
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: The app_id field for the app to list owners of.
          readOnly: false
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.ListAppOwnerIDsResponse'
          description: The response message for listing app owners IDs.
      summary: List Owner I Ds
      tags:
      - App Owner
      x-speakeasy-entity-operation:
        terraform-datasource: null
        terraform-resource: App_Owner#read
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: ListOwnerIDs
  /api/v1/apps/{app_id}/owners:
    delete:
      description: Delete deletes the owners from a given app.
      operationId: c1.api.app.v1.AppOwners.Delete
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: The app_id field for the app to remove the owner of.
          readOnly: false
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.app.v1.DeleteAppOwnersRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.DeleteAppOwnersResponse'
          description: the empty response message for deleting app owners.
      summary: Delete
      tags:
      - App Owner
      x-speakeasy-entity-operation:
        terraform-resource: App_Owner#delete
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: Delete
    get:
      description: List owners of an app.
      operationId: c1.api.app.v1.AppOwners.List
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: The appId field.
          readOnly: false
          type: string
      - in: query
        name: page_size
        schema:
          description: The pageSize where 0 <= pageSize <= 100. Values < 10 will be set to 10. A value of 0 returns the default page size (currently 25)
          format: int32
          readOnly: false
          type: integer
      - in: query
        name: page_token
        schema:
          description: The pageToken field.
          readOnly: false
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.ListAppOwnersResponse'
          description: Successful response
      summary: List
      tags:
      - App Owner
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: List
    put:
      description: Sets the owners for a given app to the specified list of users.
      operationId: c1.api.app.v1.AppOwners.Set
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: The app_id field for the app to set the owners of.
          readOnly: false
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.app.v1.SetAppOwnersRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.SetAppOwnersResponse'
          description: The empty response message for setting the app owners.
      summary: Set
      tags:
      - App Owner
      x-speakeasy-entity-operation:
        terraform-resource: App_Owner#create
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: Set
  /api/v1/apps/{app_id}/owners/{user_id}:
    delete:
      description: Removes an owner from an app.
      operationId: c1.api.app.v1.AppOwners.Remove
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: App ID of the app to remove the owner from.
          readOnly: false
          type: string
      - in: path
        name: user_id
        required: true
        schema:
          description: User ID of the user to remove as an owner.
          readOnly: false
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.app.v1.RemoveAppOwnerRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.RemoveAppOwnerResponse'
          description: Empty response with a status code indicating success.
      summary: Remove
      tags:
      - App Owner
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: Remove
    post:
      description: Adds an owner to an app.
      operationId: c1.api.app.v1.AppOwners.Add
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          description: The appId field.
          readOnly: false
          type: string
      - in: path
        name: user_id
        required: true
        schema:
          description: The userId field.
          readOnly: false
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/c1.api.app.v1.AddAppOwnerRequestInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/c1.api.app.v1.AddAppOwnerResponse'
          description: Empty response with a status code indicating success
      summary: Add
      tags:
      - App Owner
      x-speakeasy-group: AppOwners
      x-speakeasy-name-override: Add
components:
  schemas:
    c1.api.app.v1.AddAppOwnerResponse:
      description: Empty response with a status code indicating success
      title: Add App Owner Response
      type: object
      x-speakeasy-name-override: AddAppOwnerResponse
    c1.api.app.v1.AddAppOwnerRequestInput:
      description: Empty request body. Just placeholder for the add app owner request which uses URL values for input.
      title: Add App Owner Request
      type: object
      x-speakeasy-name-override: AddAppOwnerRequest
    c1.api.app.v1.ListAppOwnersResponse:
      description: The ListAppOwnersResponse message.
      properties:
        list:
          description: The list of results containing up to X results, where X is the page size defined in the request
          items:
            $ref: '#/components/schemas/c1.api.user.v1.User'
          nullable: true
          readOnly: false
          type: array
        nextPageToken:
          description: The nextPageToken is shown for the next page if the number of results is larger than the max page size. The server returns one page of results and the nextPageToken until all results are retreived. To retrieve the next page, use the same request and append a pageToken field with the value of nextPageToken shown on the previous page.
          readOnly: false
          type: string
      title: List App Owners Response
      type: object
      x-speakeasy-name-override: ListAppOwnersResponse
    c1.api.app.v1.SetAppOwnersResponse:
      description: The empty response message for setting the app owners.
      title: Set App Owners Response
      type: object
      x-speakeasy-name-override: SetAppOwnersResponse
    c1.api.user.v1.User:
      description: The User object provides all of the details for an user, as well as some configuration.
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        delegatedUserId:
          description: The id of the user to whom tasks will be automatically reassigned to.
          readOnly: false
          type: string
        deletedAt:
          format: date-time
          readOnly: true
          type: string
        department:
          description: The department which the user belongs to in the organization.
          readOnly: true
          type: string
        departmentSources:
          description: A list of objects mapped based on department attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        directoryIds:
          description: A list of unique ids that represent different directories.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
        directoryStatus:
          description: The status of the user in the directory.
          enum:
          - UNKNOWN
          - ENABLED
          - DISABLED
          - DELETED
          readOnly: true
          type: string
          x-speakeasy-unknown-values: allow
        directoryStatusSources:
          description: A list of objects mapped based on directoryStatus attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        displayName:
          description: The display name of the user.
          readOnly: true
          type: string
        email:
          description: This is the user's email.
          readOnly: true
          type: string
        emailSources:
          description: A list of source data for the email attribute.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        emails:
          description: This is a list of all of the user's emails from app users.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
        employeeIdSources:
          description: A list of source data for the employee IDs attribute.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        employeeIds:
          description: This is a list of all of the user's employee IDs from app users.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
        employmentStatus:
          description: The users employment status.
          readOnly: true
          type: string
        employmentStatusSources:
          description: A list of objects mapped based on employmentStatus attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        employmentType:
          description: The employment type of the user.
          readOnly: true
          type: string
        employmentTypeSources:
          description: A list of objects mapped based on employmentType attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        id:
          description: A unique identifier of the user.
          readOnly: true
          type: string
        jobTitle:
          description: The job title of the user.
          readOnly: true
          type: string
        jobTitleSources:
          description: A list of objects mapped based on jobTitle attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        managerIds:
          description: A list of ids of the user's managers.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
        managerSources:
          description: A list of objects mapped based on managerId attribute mappings configured in the system.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        profile:
          additionalProperties: true
          readOnly: true
          type: object
        roleIds:
          description: A list of unique identifiers that maps to ConductorOne's user roles let you assign users permissions tailored to the work they do in the software.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        status:
          description: The status of the user in the system.
          enum:
          - UNKNOWN
          - ENABLED
          - DISABLED
          - DELETED
          readOnly: false
          type: string
          x-speakeasy-unknown-values: allow
        type:
          description: The type of the user.
          enum:
          - USER_TYPE_UNSPECIFIED
          - USER_TYPE_SYSTEM
          - USER_TYPE_HUMAN
          - USER_TYPE_SERVICE
          - USER_TYPE_AGENT
          readOnly: true
          type: string
          x-speakeasy-unknown-values: allow
        updatedAt:
          format: date-time
          readOnly: true
          type: string
        username:
          description: This is the user's primary username. Typically sourced from the primary directory.
          readOnly: true
          type: string
        usernameSources:
          description: A list of source data for the usernames attribute.
          items:
            $ref: '#/components/schemas/c1.api.user.v1.UserAttributeMappingSource'
          nullable: true
          readOnly: true
          type: array
        usernames:
          description: This is a list of all of the user's usernames from app users.
          items:
            type: string
          nullable: true
          readOnly: true
          type: array
      title: User
      type: object
      x-speakeasy-name-override: User
    c1.api.app.v1.DeleteAppOwnersRequestInput:
      description: The request message for deleting app owners.
      properties:
        userIds:
          description: The user_ids field for the users to set as an owner of the app.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: Delete App Owners Request
      type: object
      x-speakeasy-name-override: DeleteAppOwnersRequest
    c1.api.app.v1.RemoveAppOwnerResponse:
      description: Empty response with a status code indicating success.
      title: Remove App Owner Response
      type: object
      x-speakeasy-name-override: RemoveAppOwnerResponse
    c1.api.app.v1.RemoveAppOwnerRequestInput:
      description: RemoveAppOwnerRequest is the request body for removing an app owner. It uses URL values for input.
      title: Remove App Owner Request
      type: object
      x-speakeasy-name-override: RemoveAppOwnerRequest
    c1.api.user.v1.UserAttributeMappingSource:
      description: The UserAttributeMappingSource message.
      properties:
        appId:
          description: The appId field.
          readOnly: false
          type: string
        appUserId:
          description: The appUserId field.
          readOnly: false
          type: string
        appUserProfileAttributeKey:
          description: The appUserProfileAttributeKey field.
          readOnly: false
          type: string
        userAttributeMappingId:
          description: The userAttributeMappingId field.
          readOnly: false
          type: string
        value:
          description: The value field.
          readOnly: false
          type: string
      title: User Attribute Mapping Source
      type: object
      x-speakeasy-name-override: UserAttributeMappingSource
    c1.api.app.v1.SetAppOwnersRequestInput:
      description: The request message for setting the app owners.
      properties:
        userIds:
          description: The user_ids field for the users to set as an owner of the app.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: Set App Owners Request
      type: object
      x-speakeasy-entity: App_Owner
      x-speakeasy-name-override: SetAppOwnersRequest
    c1.api.app.v1.DeleteAppOwnersResponse:
      description: the empty response message for deleting app owners.
      title: Delete App Owners Response
      type: object
      x-speakeasy-name-override: DeleteAppOwnersResponse
    c1.api.app.v1.ListAppOwnerIDsResponse:
      description: The response message for listing app owners IDs.
      properties:
        userIds:
          description: The list of owner IDs for the app.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
      title: List App Owner I Ds Response
      type: object
      x-speakeasy-name-override: ListAppOwnerIDsResponse
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: 'This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187) function.'
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2