# Get all staff members

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /api/rest/staff/shop/{shopId}:
    get:
      summary: Get all staff members
      deprecated: false
      description: >-
        Retrieve all staff members with their pay rates, positions, and
        permissions
      operationId: getAllStaff
      tags:
        - Staff
        - staff-api
      parameters:
        - name: shopId
          in: path
          description: Shop ID
          required: true
          example: 0
          schema:
            type: number
        - name: locationIds
          in: query
          description: Filter by Shopify location IDs (comma-separated)
          required: false
          schema:
            type: string
        - name: limit
          in: query
          description: Max number of items to return (default 10 when pagination used)
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Number of items to skip (default 0)
          required: false
          schema:
            type: integer
            minimum: 0
      responses:
        '200':
          description: List of staff members
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    examples:
                      - true
                  data:
                    type: object
                    description: >-
                      Paginated response: count, limit, offset, previous, next,
                      results
                    properties:
                      count:
                        type: number
                        description: Total number of items
                      limit:
                        type: number
                        description: Page size
                      offset:
                        type: number
                        description: Items skipped
                      previous:
                        type: object
                        description: Previous page cursor
                        x-apidog-orders: []
                        nullable: true
                      next:
                        type: object
                        description: Next page cursor
                        x-apidog-orders: []
                        nullable: true
                      results:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: number
                              description: Personnel ID
                            name:
                              type: string
                              description: Staff member name
                            externalId:
                              type: string
                              description: External ID (merchant external system ID)
                              nullable: true
                            permission:
                              type: string
                              description: 'Permission level: Admin, Manager, or Staff'
                            pin:
                              type: string
                              description: POS PIN code
                              nullable: true
                            status:
                              type: string
                              description: 'Status: active or inactive'
                            position:
                              type: string
                              description: Job position
                              nullable: true
                            locations:
                              type: array
                              description: Assigned locations
                              items:
                                type: object
                                properties:
                                  id:
                                    type: number
                                    description: Location ID
                                  name:
                                    type: string
                                    description: Location name
                                  shopifyLocationId:
                                    type: string
                                    description: Shopify location ID
                                  timezone:
                                    type: string
                                    description: Location timezone
                                  active:
                                    type: boolean
                                    description: Whether location is active
                                x-apidog-orders:
                                  - id
                                  - name
                                  - shopifyLocationId
                                  - timezone
                                  - active
                            compensation:
                              type: object
                              description: Compensation information
                              properties:
                                currencyCode:
                                  type: string
                                  description: Currency code (e.g., USD)
                                currencyMark:
                                  type: string
                                  description: Currency symbol (e.g., $)
                                amount:
                                  type: number
                                  description: Compensation amount
                                type:
                                  type: string
                                  description: >-
                                    Compensation type: hr (hourly), week
                                    (weekly), month (monthly/salaried)
                              x-apidog-orders:
                                - currencyCode
                                - currencyMark
                                - amount
                                - type
                            payrollSettings:
                              type: object
                              description: Payroll settings (if available)
                              properties:
                                classification:
                                  type: string
                                  description: 'Staff classification: Employee or Contractor'
                                payGroup:
                                  type: string
                                  description: Pay group
                                overtimeEligibility:
                                  type: boolean
                                  description: Overtime eligibility
                                commissionsEligibility:
                                  type: boolean
                                  description: Commission eligibility
                                posTipsEligibility:
                                  type: boolean
                                  description: POS tips eligibility
                                dateOfHiring:
                                  type: string
                                  description: Date of hiring
                                  nullable: true
                              x-apidog-orders:
                                - classification
                                - payGroup
                                - overtimeEligibility
                                - commissionsEligibility
                                - posTipsEligibility
                                - dateOfHiring
                              nullable: true
                            payrollStatus:
                              type: string
                              description: Payroll status
                              nullable: true
                          x-apidog-orders:
                            - id
                            - name
                            - externalId
                            - permission
                            - pin
                            - status
                            - position
                            - locations
                            - compensation
                            - payrollSettings
                            - payrollStatus
                    x-apidog-orders:
                      - count
                      - limit
                      - offset
                      - previous
                      - next
                      - results
                x-apidog-orders:
                  - success
                  - data
          headers: {}
          x-apidog-name: ''
        '401':
          description: Unauthorized - Invalid API key
          headers: {}
          x-apidog-name: ''
        '403':
          description: Forbidden - No access to this shop
          headers: {}
          x-apidog-name: ''
      security: []
      x-apidog-folder: Staff
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/763618/apis/api-33094545-run
components:
  schemas: {}
  securitySchemes: {}
servers: []
security: []

```
