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

# [BETA] List contacts

> Retrieve a list of contacts with pagination.



## OpenAPI

````yaml https://api.getpg.ai/docs/v1/openapi.json get /contacts
openapi: 3.0.0
info:
  title: PG:AI Public API
  version: 1.0.0
  description: >-
    Public API for accessing PG:AI account intelligence, contacts, territories,
    and more. All endpoints require API key authentication via the x-api-key
    header.
  contact:
    name: PG:AI Support
    url: https://www.getpg.ai
servers:
  - url: https://api.getpg.ai/public-api/v1
    description: Production
security:
  - ApiKeyAuth: []
paths:
  /contacts:
    get:
      tags:
        - contacts
      summary: '[BETA] List contacts'
      description: Retrieve a list of contacts with pagination.
      parameters:
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
          description: Page number
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 25
          description: >-
            Page size. Default 25, maximum 50 on all list endpoints. Omit to use
            the default; increase up to 50 only if you need larger pages.
      responses:
        '200':
          description: Paginated list of contacts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactsListResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized - Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'Forbidden - Insufficient permissions. Required: contacts:read'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      deprecated: false
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ContactsListResponse:
      type: object
      description: Paginated list of contacts
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Contact'
        pagination:
          type: object
          properties:
            page:
              type: integer
            limit:
              type: integer
            total:
              type: integer
    Error:
      type: object
      description: Error response
      properties:
        error:
          type: string
          description: Error type or code
        message:
          type: string
          description: Human-readable error message
        details:
          type: object
          description: Additional error details
          additionalProperties: true
      required:
        - error
    Contact:
      type: object
      description: Contact information
      properties:
        id:
          type: string
          format: uuid
          description: Contact ID
        full_name:
          type: string
          description: Full name
        first_name:
          type: string
          description: First name
        last_name:
          type: string
          description: Last name
        current_job_title:
          type: string
          description: Current job title
        linkedin_url:
          type: string
          format: uri
          description: LinkedIn profile URL
        location:
          type: string
          description: Location
        country:
          type: string
          nullable: true
          description: Country
        country_code:
          type: string
          nullable: true
          description: Country code
        summary:
          type: string
          description: Professional summary
        image_url:
          type: string
          format: uri
          description: Profile image URL
        headline:
          type: string
          description: Professional headline
        emails:
          type: array
          items:
            type: string
          description: Email addresses
        phones:
          type: array
          items:
            type: string
          description: Phone numbers
        skills:
          type: array
          items:
            type: string
          description: Skills
        company:
          type: object
          properties:
            name:
              type: string
            linkedin_id:
              type: string
        experience:
          type: array
          items:
            type: object
            properties:
              job_id:
                type: string
                format: uuid
              company_id:
                type: string
                format: uuid
              company:
                type: string
              company_linkedin_id:
                type: string
              title:
                type: string
              location:
                type: string
                nullable: true
              start_date:
                type: string
                format: date-time
              end_date:
                type: string
                format: date-time
                nullable: true
              is_current:
                type: boolean
              description:
                type: string
                nullable: true
              created_at:
                type: string
                format: date-time
        education:
          type: array
          items:
            type: object
            properties:
              degree:
                type: string
              field_of_study:
                type: string
                nullable: true
              school:
                type: string
              start_year:
                type: integer
              end_year:
                type: integer
        created_at:
          type: string
          format: date-time
          description: Creation timestamp
        updated_at:
          type: string
          format: date-time
          nullable: true
          description: Last update timestamp
      required:
        - id
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Your API key for authentication. Get your API key from the PG:AI
        dashboard under Settings > API Keys.

````