> ## Documentation Index
> Fetch the complete documentation index at: https://docs.onsi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Search Members

This API can be used to search for members on your platform.

## Member Statuses

* `active`: Member has accepted the invitation and is active on the platform.
* `invited`: Member has been invited but has not yet accepted the invitation.
* `inactive`: Member has been removed from the platform, or they have requested their Onsi account to be deleted.

## Member Identifiers

* `memberId`: The Onsi-issued unique identifier for the member.
* `workerId`: An external identifier for the member, such as an employee ID, this is typically used to identify the member in your system (this is optional).


## OpenAPI

````yaml GET /v1/members
openapi: 3.0.2
info:
  title: BMO Partner API
  version: v1
servers:
  - url: https://api.onsi.com
    description: Production
  - url: https://api.onsi.dev
    description: Sandbox
security:
  - apiKey: []
paths:
  /v1/members:
    get:
      tags:
        - members
      operationId: getMembers
      parameters:
        - name: memberIds
          in: query
          description: Filter by internal Onsi member IDs
          schema:
            type: array
            items:
              example: mem_<id>
              description: The unique identifier for a Member, prefixed with mem_
              type: string
        - name: statuses
          in: query
          description: Filter by member status
          schema:
            type: array
            items:
              type: string
              enum:
                - active
                - invited
                - inactive
        - name: emails
          in: query
          description: Filter by member's email
          schema:
            type: array
            items:
              type: string
        - name: workerIds
          in: query
          description: Filter by your worker IDs
          schema:
            type: array
            items:
              example: ID_123
              description: >-
                Unique ID provided by API consumer, must be unique across all
                members (active, invited and inactive)
              type: string
        - name: skip
          in: query
          required: true
          schema:
            default: 0
            type: number
        - name: take
          in: query
          required: true
          schema:
            default: 50
            type: number
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  members:
                    type: array
                    items:
                      $ref: '#/components/schemas/Member'
                  total:
                    example: 1
                    type: number
                  skip:
                    example: 0
                    type: number
                  take:
                    example: 50
                    type: number
                required:
                  - members
                  - total
                  - skip
                  - take
                additionalProperties: false
components:
  schemas:
    Member:
      title: Member
      description: A member on the platform.
      type: object
      properties:
        email:
          type: string
          format: email
          pattern: >-
            ^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$
        memberId:
          example: mem_q5sdae3se6eg9m9dcvug
          description: Onsi's ID of the member
          type: string
        firstName:
          example: John
          type: string
        lastName:
          example: Smith
          type: string
        phone:
          example: '+447123456789'
          anyOf:
            - type: string
              nullable: true
        tier:
          example: Gold
          description: Tier name for the member
          type: string
        workerId:
          anyOf:
            - example: ID_123
              description: >-
                Unique ID provided by API consumer, must be unique across all
                members (active, invited and inactive)
              type: string
              nullable: true
        status:
          description: The status of the member.
          type: string
          enum:
            - active
            - invited
            - inactive
        accountDetails:
          anyOf:
            - anyOf:
                - $ref: '#/components/schemas/BankAccountUK'
                - $ref: '#/components/schemas/BankAccountEU'
              nullable: true
        enablePayroll:
          example: true
          type: boolean
        gender:
          anyOf:
            - description: Gender of the member
              type: string
              enum:
                - Female
                - Male
                - NonBinary
              nullable: true
        dob:
          example: '1990-01-01'
          description: Date of birth of the member, must later than 1900
          anyOf:
            - description: Date in ISO8601 `YYYY-MM-DD` format
              type: string
              pattern: ^\d{4}-\d{2}-\d{2}$
              nullable: true
      required:
        - email
        - memberId
        - firstName
        - lastName
        - phone
        - tier
        - workerId
        - status
        - accountDetails
        - enablePayroll
        - dob
      additionalProperties: false
    BankAccountUK:
      title: BankAccountUK
      example:
        accountHolder: John Smith
        sortCode: '123456'
        accountNumber: '12345678'
      description: A UK bank account
      type: object
      properties:
        accountHolder:
          type: string
        sortCode:
          type: string
        accountNumber:
          type: string
      required:
        - accountHolder
        - sortCode
        - accountNumber
      additionalProperties: false
    BankAccountEU:
      title: BankAccountEU
      example:
        accountHolder: John Smith
        iban: GB29NWBK60161331926819
      description: A EU bank account
      type: object
      properties:
        accountHolder:
          type: string
        iban:
          type: string
      required:
        - accountHolder
        - iban
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key

````