Remote SCIM API

The SCIM API from Remote — 4 operation(s) for scim.

OpenAPI Specification

remote-scim-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Remote Address Details SCIM API
  version: 0.1.0
servers:
- url: https://gateway.remote.com/
  variables: {}
- url: https://gateway.remote-sandbox.com/
  variables: {}
security:
- OAuth2: []
tags:
- name: SCIM
paths:
  /v1/scim/v2/Users/{id}:
    get:
      callbacks: {}
      deprecated: false
      description: Retrieves a single user for the authenticated company by user ID
      operationId: get_v1_scim_v2_Users_id
      parameters:
      - description: User ID (slug)
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.User'
          description: Success
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Not Found
      summary: Get user by ID via SCIM v2.0
      tags:
      - SCIM
  /v1/scim/v2/Users:
    get:
      callbacks: {}
      deprecated: false
      description: Retrieves a list of users for the authenticated company following SCIM 2.0 standard
      operationId: get_v1_scim_v2_Users
      parameters:
      - description: 1-based index of the first result
        example: 1
        in: query
        name: startIndex
        required: false
        schema:
          type: integer
      - description: Maximum number of results per page
        example: 50
        in: query
        name: count
        required: false
        schema:
          type: integer
      - description: Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge)
        in: query
        name: filter
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.UserListResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Not Found
      summary: List users via SCIM v2.0
      tags:
      - SCIM
  /v1/scim/v2/Groups:
    get:
      callbacks: {}
      deprecated: false
      description: Retrieves a list of groups (departments) for the authenticated company following SCIM 2.0 standard
      operationId: get_v1_scim_v2_Groups
      parameters:
      - description: 1-based index of the first result
        example: 1
        in: query
        name: startIndex
        required: false
        schema:
          type: integer
      - description: Maximum number of results per page
        example: 50
        in: query
        name: count
        required: false
        schema:
          type: integer
      - description: Filter expression for attributes (supports eq, ne, co, sw, ew, pr, lt, le, gt, ge)
        in: query
        name: filter
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.GroupListResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Not Found
      summary: List groups via SCIM v2.0
      tags:
      - SCIM
  /v1/scim/v2/Groups/{id}:
    get:
      callbacks: {}
      deprecated: false
      description: Retrieves a single group (department) for the authenticated company by group ID
      operationId: get_v1_scim_v2_Groups_id
      parameters:
      - description: Group ID (slug)
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.Group'
          description: Success
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integrations.Scim.ErrorResponse'
          description: Not Found
      summary: Get group by ID via SCIM v2.0
      tags:
      - SCIM
components:
  schemas:
    Integrations.Scim.GroupListResponse:
      additionalProperties: false
      example:
        Resources:
        - displayName: Engineering
          id: engineering-dept
          members:
          - display: John Doe
            value: user-123-slug
          meta:
            created: '2024-01-01T00:00:00Z'
            lastModified: '2024-01-01T00:00:00Z'
            resourceType: Group
          schemas:
          - urn:ietf:params:scim:schemas:core:2.0:Group
        itemsPerPage: 10
        schemas:
        - urn:ietf:params:scim:api:messages:2.0:ListResponse
        startIndex: 1
        totalResults: 10
      properties:
        Resources:
          description: Array of group resources
          items:
            $ref: '#/components/schemas/Integrations.Scim.Group'
          type: array
        itemsPerPage:
          description: Number of results returned in the current set
          type: integer
        schemas:
          description: SCIM schema identifiers
          items:
            type: string
          type: array
        startIndex:
          description: 1-based index of the first result in the current set
          type: integer
        totalResults:
          description: Total number of results matching the query
          type: integer
      required:
      - schemas
      - totalResults
      - startIndex
      - itemsPerPage
      - Resources
      title: Integrations.Scim.GroupListResponse
      type: object
    Integrations.Scim.ErrorResponse:
      additionalProperties: false
      example:
        detail: 'Invalid filter. Expected format: <attribute> eq <value>.'
        schemas:
        - urn:ietf:params:scim:api:messages:2.0:Error
        scimType: invalidFilter
        status: '400'
      properties:
        detail:
          description: Human-readable error message
          type: string
        schemas:
          description: SCIM schema identifiers
          items:
            type: string
          type: array
        scimType:
          description: SCIM error type
          nullable: true
          type: string
        status:
          description: HTTP status code
          type: string
      required:
      - schemas
      - detail
      - status
      title: Integrations.Scim.ErrorResponse
      type: object
    Integrations.Scim.Group:
      additionalProperties: false
      example:
        displayName: Engineering
        id: engineering-dept
        members:
        - display: John Doe
          value: user-123-slug
        meta:
          created: '2024-01-01T00:00:00Z'
          lastModified: '2024-01-01T00:00:00Z'
          resourceType: Group
        schemas:
        - urn:ietf:params:scim:schemas:core:2.0:Group
      properties:
        displayName:
          description: Display name of the group
          type: string
        id:
          description: Unique identifier for the group
          type: string
        members:
          description: Array of group members (per RFC 7643)
          items:
            properties:
              $ref:
                description: URI of the user resource
                type: string
              display:
                description: Display name of the user
                type: string
              value:
                description: User ID (slug)
                type: string
            required:
            - value
            type: object
          type: array
        meta:
          properties:
            created:
              description: Creation timestamp
              type: string
            lastModified:
              description: Last modification timestamp
              type: string
            resourceType:
              description: Resource type
              type: string
          type: object
        schemas:
          description: SCIM schema identifiers
          items:
            type: string
          type: array
      required:
      - schemas
      - id
      - displayName
      - members
      title: Integrations.Scim.Group
      type: object
    Integrations.Scim.User:
      additionalProperties: false
      example:
        active: true
        department: Engineering
        emails:
        - primary: true
          type: work
          value: john.doe@example.com
        employeeNumber: EMP001
        id: '123456'
        manager:
          displayName: Jane Manager
          value: '789012'
        meta:
          created: '2023-01-01T00:00:00Z'
          lastModified: '2023-01-01T00:00:00Z'
          resourceType: User
        name:
          familyName: Doe
          formatted: John Doe
          givenName: John
        schemas:
        - urn:ietf:params:scim:schemas:core:2.0:User
        - urn:ietf:params:scim:schemas:extension:enterprise:2.0:User
        userName: john.doe@example.com
      properties:
        active:
          description: Whether the user is active
          type: boolean
        department:
          description: Identifies the name of a department (Enterprise User extension)
          type: string
        emails:
          items:
            properties:
              primary:
                description: Whether this is the primary email
                type: boolean
              type:
                description: Type of email (e.g., 'work')
                type: string
              value:
                description: Email address
                type: string
            required:
            - value
            - type
            type: object
          type: array
        employeeNumber:
          description: Numeric or alphanumeric identifier assigned to a person (Enterprise User extension)
          type: string
        id:
          description: Unique identifier for the user
          type: string
        manager:
          description: The user's manager (Enterprise User extension)
          properties:
            $ref:
              description: The URI of the SCIM resource representing the user's manager
              type: string
            displayName:
              description: The displayName of the user's manager
              type: string
            value:
              description: The id of the SCIM resource representing the user's manager
              type: string
          type: object
        meta:
          properties:
            created:
              description: Creation timestamp
              type: string
            lastModified:
              description: Last modification timestamp
              type: string
            resourceType:
              description: Resource type
              type: string
          type: object
        name:
          properties:
            familyName:
              description: Last name
              type: string
            formatted:
              description: Full name
              type: string
            givenName:
              description: First name
              type: string
          required:
          - givenName
          - familyName
          type: object
        schemas:
          description: SCIM schema identifiers
          items:
            type: string
          type: array
        userName:
          description: Username for the user
          type: string
      required:
      - schemas
      - id
      - userName
      - name
      - emails
      - active
      title: Integrations.Scim.User
      type: object
    Integrations.Scim.UserListResponse:
      additionalProperties: false
      example:
        Resources:
        - active: true
          department: Engineering
          emails:
          - primary: true
            type: work
            value: john.doe@example.com
          employeeNumber: EMP001
          id: '123456'
          manager:
            displayName: Jane Manager
            value: '789012'
          meta:
            created: '2023-01-01T00:00:00Z'
            lastModified: '2023-01-01T00:00:00Z'
            resourceType: User
          name:
            familyName: Doe
            formatted: John Doe
            givenName: John
          schemas:
          - urn:ietf:params:scim:schemas:core:2.0:User
          - urn:ietf:params:scim:schemas:extension:enterprise:2.0:User
          userName: john.doe@example.com
        itemsPerPage: 50
        schemas:
        - urn:ietf:params:scim:api:messages:2.0:ListResponse
        startIndex: 1
        totalResults: 100
      properties:
        Resources:
          description: Array of user resources
          items:
            $ref: '#/components/schemas/Integrations.Scim.User'
          type: array
        itemsPerPage:
          description: Number of results returned in the current set
          type: integer
        schemas:
          description: SCIM schema identifiers
          items:
            type: string
          type: array
        startIndex:
          description: 1-based index of the first result in the current set
          type: integer
        totalResults:
          description: Total number of results matching the query
          type: integer
      required:
      - schemas
      - totalResults
      - startIndex
      - itemsPerPage
      - Resources
      title: Integrations.Scim.UserListResponse
      type: object
  securitySchemes:
    BasicAuth:
      description: 'Authenticate using the basic authentication for partners.


        Use the CLIENT_ID as login and CLIENT_SECRET as password.

        '
      scheme: basic
      type: http
    ClientToken:
      description: 'Authenticate a partner using only the the provided `client_token`.


        This authentication method only allows accessing marketing endpoints.

        '
      scheme: bearer
      type: http
    CustomerAPIToken:
      description: 'Authenticate using API Key generated by the customer in their Integration Settings page.

        '
      scheme: bearer
      type: http
    OAuth2:
      description: 'Authenticate using OAuth 2.0 protocol.

        '
      flows:
        authorizationCode:
          authorizationUrl: /auth/oauth2/authorize
          scopes:
            company_department:read: company_department:read
            webhook:write: webhook:write
            magic_link:write: magic_link:write
            offboarding:write: offboarding:write
            custom_field:write: custom_field:write
            address:write: address:write
            expense:read: expense:read
            employment:write: employment:write
            identity_verification:write: identity_verification:write
            timesheet:write: timesheet:write
            travel_letter:write: travel_letter:write
            incentive:read: incentive:read
            personal_detail:read: personal_detail:read
            invoices:write: invoices:write
            work_authorization:write: work_authorization:write
            timeoff:write: timeoff:write
            company_structure:read: company_structure:read
            benefit_renewal:write: benefit_renewal:write
            benefit_offer:read: benefit_offer:read
            employment_documents: employment_documents
            onboarding:write: onboarding:write
            payroll_run:read: payroll_run:read
            risk_reserve:write: risk_reserve:write
            invoices: invoices
            resignation_letter:read: resignation_letter:read
            resignation:read: resignation:read
            convert_currency:read: convert_currency:read
            employments: employments
            probation_document:read: probation_document:read
            company_admin: company_admin
            payroll: payroll
            help_center_article:read: help_center_article:read
            timesheet:read: timesheet:read
            custom_field_value:write: custom_field_value:write
            company_currencies:read: company_currencies:read
            payslip:read: payslip:read
            pay_item:write: pay_item:write
            resignation:write: resignation:write
            custom_field:read: custom_field:read
            payroll_calendar:read: payroll_calendar:read
            contract_amendment:write: contract_amendment:write
            offboarding:read: offboarding:read
            timeoff:read: timeoff:read
            probation_document:write: probation_document:write
            country:read: country:read
            webhook:read: webhook:read
            company_department:write: company_department:write
            company_manager:read: company_manager:read
            pay_item:read: pay_item:read
            contract_amendment:read: contract_amendment:read
            company:read: company:read
            sso_configuration:write: sso_configuration:write
            benefit_offer:write: benefit_offer:write
            contract_eligibility:write: contract_eligibility:write
            benefit_renewal:read: benefit_renewal:read
            background_check:read: background_check:read
            custom_field_value:read: custom_field_value:read
            expense:write: expense:write
            identity_verification:read: identity_verification:read
            address:read: address:read
            document:write: document:write
            time_and_attendance: time_and_attendance
            employment_payments: employment_payments
            form:read: form:read
            work_authorization:read: work_authorization:read
            invoices:read: invoices:read
            incentive:write: incentive:write
            employment:read: employment:read
            contract:read: contract:read
            company_manager:write: company_manager:write
            travel_letter:read: travel_letter:read
            document:read: document:read
            sso_configuration:read: sso_configuration:read
          tokenUrl: /auth/oauth2/token
        clientCredentials:
          scopes:
            company:read: company:read
            company:write: company:write
            company_admin: company_admin
            company_management: company_management
            convert_currency:read: convert_currency:read
            country:read: country:read
            employment_documents: employment_documents
            employment_payments: employment_payments
            employments: employments
            help_center_article:read: help_center_article:read
            invoices: invoices
            payroll: payroll
            payroll_calendar:read: payroll_calendar:read
            pricing_plan:read: pricing_plan:read
            pricing_plan:write: pricing_plan:write
            time_and_attendance: time_and_attendance
            webhook:read: webhook:read
            webhook:write: webhook:write
          tokenUrl: /auth/oauth2/token
      type: oauth2
    OAuth2Assertion:
      description: 'Authenticate as the employee using the `urn:ietf:params:oauth:grant-type:jwt-bearer` grant in the OAuth2 protocol.

        '
      flows:
        clientCredentials:
          scopes:
            address:read: address:read
            address:write: address:write
            bank_account:read: bank_account:read
            bank_account:write: bank_account:write
            document:read: document:read
            document:write: document:write
            emergency_contact:read: emergency_contact:read
            emergency_contact:write: emergency_contact:write
            employment_documents: employment_documents
            employment_payments: employment_payments
            employments: employments
            expense:read: expense:read
            incentive:read: incentive:read
            payroll: payroll
            payslip:read: payslip:read
            personal_detail:read: personal_detail:read
            personal_detail:write: personal_detail:write
            time_and_attendance: time_and_attendance
            timeoff:read: timeoff:read
            timeoff:write: timeoff:write
            timesheet:read: timesheet:read
          tokenUrl: /auth/oauth2/token
          x-assertionType: urn:ietf:params:oauth:client-assertion-type:jwt-bearer
      type: oauth2
    OAuth2AuthorizationCode:
      description: 'Authenticate as the token authorizer using `authorization_code` / `refresh_token` grants in the OAuth 2.0 protocol.

        '
      flows:
        authorizationCode:
          authorizationUrl: /auth/oauth2/authorize
          refreshUrl: /auth/oauth2/token
          scopes:
            company_department:read: company_department:read
            webhook:write: webhook:write
            magic_link:write: magic_link:write
            offboarding:write: offboarding:write
            custom_field:write: custom_field:write
            address:write: address:write
            expense:read: expense:read
            employment:write: employment:write
            identity_verification:write: identity_verification:write
            timesheet:write: timesheet:write
            travel_letter:write: travel_letter:write
            incentive:read: incentive:read
            personal_detail:read: personal_detail:read
            invoices:write: invoices:write
            work_authorization:write: work_authorization:write
            timeoff:write: timeoff:write
            company_structure:read: company_structure:read
            benefit_renewal:write: benefit_renewal:write
            benefit_offer:read: benefit_offer:read
            employment_documents: employment_documents
            onboarding:write: onboarding:write
            payroll_run:read: payroll_run:read
            risk_reserve:write: risk_reserve:write
            invoices: invoices
            resignation_letter:read: resignation_letter:read
            resignation:read: resignation:read
            convert_currency:read: convert_currency:read
            employments: employments
            probation_document:read: probation_document:read
            company_admin: company_admin
            payroll: payroll
            help_center_article:read: help_center_article:read
            timesheet:read: timesheet:read
            custom_field_value:write: custom_field_value:write
            company_currencies:read: company_currencies:read
            payslip:read: payslip:read
            pay_item:write: pay_item:write
            resignation:write: resignation:write
            custom_field:read: custom_field:read
            payroll_calendar:read: payroll_calendar:read
            contract_amendment:write: contract_amendment:write
            offboarding:read: offboarding:read
            timeoff:read: timeoff:read
            probation_document:write: probation_document:write
            country:read: country:read
            webhook:read: webhook:read
            company_department:write: company_department:write
            company_manager:read: company_manager:read
            pay_item:read: pay_item:read
            contract_amendment:read: contract_amendment:read
            company:read: company:read
            sso_configuration:write: sso_configuration:write
            benefit_offer:write: benefit_offer:write
            contract_eligibility:write: contract_eligibility:write
            benefit_renewal:read: benefit_renewal:read
            background_check:read: background_check:read
            custom_field_value:read: custom_field_value:read
            expense:write: expense:write
            identity_verification:read: identity_verification:read
            address:read: address:read
            document:write: document:write
            time_and_attendance: time_and_attendance
            employment_payments: employment_payments
            form:read: form:read
            work_authorization:read: work_authorization:read
            invoices:read: invoices:read
            incentive:write: incentive:write
            employment:read: employment:read
            contract:read: contract:read
            company_manager:write: company_manager:write
            travel_letter:read: travel_letter:read
            document:read: document:read
            sso_configuration:read: sso_configuration:read
          tokenUrl: /auth/oauth2/token
      type: oauth2
    OAuth2ClientCredentials:
      description: 'Authenticate using `client_credentials` grant in the OAuth 2.0 protocol.

        '
      flows:
        clientCredentials:
          scopes:
            company:read: company:read
            company:write: company:write
            company_admin: company_admin
            company_management: company_management
            convert_currency:read: convert_currency:read
            country:read: country:read
            employment_documents: employment_documents
            employment_payments: employment_payments
            employments: employments
            help_center_article:read: help_center_article:read
            invoices: invoices
            payroll: payroll
            payroll_calendar:read: payroll_calendar:read
            pricing_plan:read: pricing_plan:read
            pricing_plan:write: pricing_plan:write
            time_and_attendance: time_and_attendance
            webhook:read: webhook:read
            webhook:write: webhook:write
          tokenUrl: /auth/oauth2/token
      type: oauth2