Celonis Team API

Retrieve team member profiles and authentication events.

OpenAPI Specification

celonis-team-openapi.yaml Raw ↑
openapi: 3.0.1
info:
  title: OpenAPI Specification
  version: 1.0.0
  description: >-
    This is the documentation for the Team API, that allows querying data for a
    Celonis Platform team.
servers:
  - description: Default Server URL
    url: /
tags:
  - description: >-
      Allows you to query and export a list of all members assigned to a Celonis
      Platform team.
    name: Members API
  - description: >-
      Allows you to query the Login History for a team and export it for use
      with external monitoring tools to capture and monitor platform login
      events.
    name: Login History API
paths:
  /api/external/authentication-events:
    get:
      description: >-
        Login History events can be filtered by specifying a date interval.<br>
        Maximum number of events that will be received by page is 200. <br> The
        OAuth 2.0 scope to use is <tt>team.login-history:read</tt>.<br> If there
        would be more events on the specified date interval total number of
        pages will be returned for further querying.
      operationId: findAllAuthenticationEvents
      parameters:
        - description: Page number to be retrieved, starts with 0
          example: 0
          in: query
          name: pageNumber
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - description: Limit of results per page
          example: 200
          in: query
          name: pageSize
          required: false
          schema:
            type: integer
            format: int32
            default: 200
            maximum: 200
            minimum: 1
        - description: Date Time ISO 8601 yyyy-MM-ddTHH:mm:ss
          example: '2022-01-01T09:00:00'
          in: query
          name: from
          required: false
          schema:
            type: string
            format: date-time
        - description: Date Time ISO 8601 yyyy-MM-ddTHH:mm:ss
          example: '2022-01-31T09:00:00'
          in: query
          name: to
          required: false
          schema:
            type: string
            format: date-time
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PageTransportAuthenticationEventExternalTransport
          description: A list of Login History events
        '204':
          description: No Content
        '400':
          content: {}
          description: >-
            Bad Request. Please check the response contents for an explanation
            of the cause.
        '401':
          description: >-
            Unauthorized. Check whether your API key or application key has
            sufficient permissions. In case you are unsure, please refer the
            documentation on [application
            keys](https://docs.celonis.com/en/creating-api-keys.html) and
            [permissions](https://docs.celonis.com/en/creating-and-granting-permissions-to-application-keys.html).
        '403':
          description: Forbidden
        '405':
          description: Method Not Allowed
        '500':
          content: {}
          description: >-
            An internal error happened. Please forward the associated error ID
            along with any helpful information to [our
            support](https://www.celopeers.com/s/support?language=en_US)
      security:
        - Authorization: []
      summary: List Login History
      tags:
        - Login History API
  /api/external/members:
    get:
      description: >-
        Maximum number of members that will be received by page is 200.<br> The
        OAuth 2.0 scope to use is <tt>team.user-group-info:read</tt>.<br>
      operationId: getMemberProfileExternalTransport
      parameters:
        - description: Page number to be retrieved. Starts with 0.
          example: 0
          in: query
          name: pageNumber
          required: false
          schema:
            type: integer
            format: int32
            default: 0
            minimum: 0
        - description: Limit of results per page
          example: 200
          in: query
          name: pageSize
          required: false
          schema:
            type: integer
            format: int32
            default: 200
            maximum: 200
            minimum: 1
        - description: A boolean parameter to show internal or external members
          example: true
          in: query
          name: includeInternal
          required: true
          schema:
            type: boolean
            default: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PageTransportMemberProfileExternalTransport
          description: A list of Members
        '204':
          description: No Content
        '400':
          content: {}
          description: >-
            Bad Request. Check the response contents for an explanation of the
            cause.
        '401':
          description: >-
            Unauthorized. Check whether your API key or application key has
            sufficient permissions. If you are unsure, refer the documentation
            on [application
            keys](https://docs.celonis.com/en/creating-api-keys.html) and
            [permissions](https://docs.celonis.com/en/creating-and-granting-permissions-to-application-keys.html).
        '403':
          description: Forbidden
        '405':
          description: Method Not Allowed
        '500':
          content: {}
          description: >-
            An internal error happened. Forward the associated error ID along
            with any helpful information to [our
            support](https://www.celopeers.com/s/support?language=en_US)
      security:
        - Authorization: []
      summary: List of all members
      tags:
        - Members API
components:
  schemas:
    AuthenticationEventExternalTransport:
      type: object
      properties:
        authenticationEventType:
          $ref: '#/components/schemas/AuthenticationEventType'
        email:
          type: string
          description: Email associated with Login History request
          example: email@example.com
        success:
          type: boolean
          description: Result of the Login History Event
          example: true
        timestamp:
          type: string
          format: date-time
          description: Date and time when event occurred in ISO 8601 UTC format
          example: '2021-01-08T16:36:29.003Z'
    AuthenticationEventType:
      type: string
      description: Category of the Login History Event
      enum:
        - LOGIN
        - LOGIN_SSO
        - LOGIN_CELONIS_ID
        - LOGIN_OIDC
        - LOGOUT
        - ACCOUNT_TEMPORARILY_LOCKED
        - ACCOUNT_NOT_CONFIRMED
        - ACCOUNT_NOT_ACTIVE
        - NOT_MEMBER_OF_TEAM
        - TEAM_MEMBERSHIP_NOT_ACTIVE
        - TEAM_MEMBERSHIP_NOT_CONFIRMED
        - BAD_CREDENTIALS
        - INVALID_2FA_TOKEN
        - INVALID_PROVIDER
      example: LOGIN
    ExternalGroupTransport:
      type: object
      properties:
        name:
          type: string
          description: Name of the group
          example: Sample Group
        teamRole:
          type: string
          description: Role assigned to group
          example: ANALYST
    MemberProfileExternalTransport:
      type: object
      properties:
        group:
          type: array
          items:
            $ref: '#/components/schemas/ExternalGroupTransport'
        inactivityPeriod:
          type: integer
          format: int64
          description: Number of days in which the user has not logged in.
          example: 14
        lastLogin:
          type: string
          description: Date and time when of member last login in UTC format
          example: 12/10/2023, 6:49:07 AM UTC
        nameAndEmail:
          type: string
          description: Name and email address of member
          example: Lorem Ipsum (email@example.com)
        status:
          type: string
          description: Current status of member in his team
          example: Active
        userId:
          type: string
          description: Unique identifier of a member
          example: 8161c24e-2b32-44eb-bedb-ede2267be989
        userRole:
          type: string
          description: Role of the member in the Celonis Platform
          example: MEMBER
    PageTransportAuthenticationEventExternalTransport:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/AuthenticationEventExternalTransport'
        pageNumber:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        totalCount:
          type: integer
          format: int64
    PageTransportMemberProfileExternalTransport:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/MemberProfileExternalTransport'
        pageNumber:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        totalCount:
          type: integer
          format: int64
  securitySchemes:
    Authorization:
      description: >-
        Prefix the Token with "AppKey " or "Bearer " (word and space) to
        indicate the Authorization type
      in: header
      name: Authorization
      type: apiKey