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

# List subcontractor contacts

> Get all contacts for a subcontractor



## OpenAPI

````yaml GET /subcontractors/{id}/contacts
openapi: 3.0.0
info:
  title: BuildPass API
  description: >-
    Approved integrators can connect to the BuildPass API on behalf of builders
    to build connections between a wide range of construction platforms.
  version: 1.0.0
servers:
  - url: https://api.buildpass.global
    description: Production server
security:
  - OAuth2: []
paths:
  /subcontractors/{id}/contacts:
    get:
      description: Get all contacts for a subcontractor
      operationId: getContacts
      parameters:
        - name: id
          description: The ID of the subcontractor
          in: path
          required: true
          schema:
            type: string
            example: sub_clgbsb90b001qjy0f0eo1hspp
        - name: offset
          description: >-
            The number of items to skip before starting to collect the result
            set
          in: query
          required: false
          schema:
            type: integer
            default: 0
            example: 0
        - name: limit
          description: The number of items to return.
          in: query
          required: false
          schema:
            type: integer
            default: 25
            example: 25
            maximum: 25
        - name: projectId
          description: Filter contacts by the project they are associated with
          in: query
          required: false
          schema:
            type: string
            example: proj_clgbsb90b001qjy0f0eo1hspp
        - name: isPrimary
          description: Filter contacts by whether they are the primary contact
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            example: 'true'
        - name: X-BuildPass-Api-Version
          in: header
          required: true
          schema:
            $ref: '#/components/schemas/X-BuildPass-Api-Version'
      responses:
        '200':
          description: A list of contacts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResponseContact'
components:
  schemas:
    X-BuildPass-Api-Version:
      type: string
      example: v1
      default: v1
      enum:
        - v1
      description: What API version to use.
    PaginatedResponseContact:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Contact'
        meta:
          $ref: '#/components/schemas/PaginationMeta'
    Contact:
      type: object
      properties:
        id:
          type: string
          example: con_clgbsb90b001qjy0f0eo1hspp
        createdAt:
          type: string
          format: date-time
          example: '2023-10-03T23:19:35.771Z'
        updatedAt:
          type: string
          format: date-time
          example: '2023-10-03T23:19:35.771Z'
        name:
          type: string
          example: John Doe
        email:
          type: string
          example: john.doe@example.com
        phone:
          type: string
          example: '+61401123456'
        isPrimary:
          type: boolean
          example: true
        type:
          type: string
          enum:
            - SUBCONTRACTOR
            - CLIENT
            - SITE_MANAGER
            - HSR
            - OTHER
          example: SUBCONTRACTOR
        projectIds:
          type: array
          items:
            type: string
            example: proj_clgbsb90b001qjy0f0eo1hspp
    PaginationMeta:
      type: object
      properties:
        totalCount:
          type: integer
          description: How many total items there are.
          example: 100
        totalPages:
          type: integer
          description: How many pages there are based on your offset and limit.
          example: 4
        offset:
          type: integer
          description: How many items skipped before starting to collect the result set.
          example: 0
        limit:
          type: integer
          description: How many items you requested to return.
          example: 25
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.buildpass.global/oauth/token
          scopes:
            read:subcontractors: Read subcontractors
            write:subcontractors: Write subcontractors
            read:prequalifications: Read prequalifications
            write:prequalifications: Write prequalifications
            read:insurances: Read insurances
            write:insurances: Write insurances
            read:contacts: Read contacts
            read:swms: Read SWMS
            read:timesheets: Read timesheets
            read:inductions: Read inductions
            read:meetings: Read meetings
            write:meetings: Write meetings
            read:photos: Read photos and photo folders
            write:photos: Create, update, delete, and sync photos and photo folders

````