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

# Get Contact

> Look up an existing contact in your organization by phone number.

## Basic Usage

```bash theme={null}
curl -X GET "https://api.flowiq.live/contact?phone_number=27123456789" \
  -H "Authorization: Bearer fiq_YOUR_API_KEY"
```

***

## Query Parameters

| Parameter      | Type   | Required | Description                         |
| -------------- | ------ | -------- | ----------------------------------- |
| `phone_number` | string | Yes\*    | Phone number with country code      |
| `whatsapp_id`  | string | Yes\*    | Normalized digits-only phone number |

\*Provide either `phone_number` or `whatsapp_id` — both formats are accepted.

***

## Response

### Success (200)

```json theme={null}
{
  "success": true,
  "contact": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "full_name": "John Doe",
    "whatsapp_id": "27123456789",
    "phone_number": "+27123456789",
    "email": "john@example.com",
    "tags": ["customer", "premium"],
    "organization_id": "org-uuid-here",
    "bot_status": "active",
    "allow_broadcast": true,
    "archived": false,
    "blocked": false,
    "active_status": false,
    "has_unread_messages": false,
    "source": { "type": "api" },
    "contact_summary": null,
    "contact_summary_updated_at": null,
    "created_at": "2025-12-11T10:30:00Z",
    "updated_at": "2025-12-11T10:30:00Z"
  }
}
```

### Error: Contact Not Found (404)

```json theme={null}
{
  "error": "Contact not found",
  "message": "No contact found with phone number 27123456789"
}
```

***

## Integration Example

```javascript theme={null}
async function getContact(apiKey, phoneNumber) {
  const url = new URL("https://api.flowiq.live/contact");
  url.searchParams.set("phone_number", phoneNumber);

  const response = await fetch(url.toString(), {
    headers: { Authorization: `Bearer ${apiKey}` },
  });

  const data = await response.json();
  if (!response.ok) throw new Error(data.message);
  return data.contact;
}
```


## OpenAPI

````yaml flowiq-api-reference/openapi.json GET /contact
openapi: 3.1.0
info:
  title: FlowIQ Conversations API
  version: 1.0.0
  description: >-
    Complete WhatsApp Conversations API for retrieving messages, contacts, and
    conversation history.


    ## Authentication

    All endpoints require a Bearer token in the header:

    ```

    Authorization: Bearer YOUR_BEARER_TOKEN

    ```


    ## Example API Call

    ```bash

    curl -X GET
    "https://api.flowiq.live/conversations?whatsappNumber=27123456789&limit=10"
    \
      -H "Authorization: Bearer YOUR_BEARER_TOKEN"
    ```


    **Response:**

    ```json

    {
      "success": true,
      "messages": [...],
      "pagination": {
        "currentPage": 1,
        "totalPages": 5,
        "hasNextPage": true
      },
      "count": 10
    }

    ```
  contact:
    name: FlowIQ Support
    email: dev@flowapt.com
servers:
  - url: https://api.flowiq.live
    description: FlowIQ Production API
security:
  - BearerAuth: []
tags:
  - name: Endpoints
    description: Conversation and contact management API endpoints
  - name: Webhooks
    description: Webhook registration and management
paths:
  /contact:
    get:
      tags:
        - Endpoints
      summary: Get Contact
      description: Look up an existing contact in your organization by phone number.
      operationId: getContact
      parameters:
        - name: phone_number
          in: query
          required: false
          schema:
            type: string
          description: Recipient phone number with country code (use this or whatsapp_id)
          example: '27123456789'
        - name: whatsapp_id
          in: query
          required: false
          schema:
            type: string
          description: WhatsApp ID (normalized phone number, digits only)
          example: '27123456789'
      responses:
        '200':
          description: Contact found
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  contact:
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                        example: 123e4567-e89b-12d3-a456-426614174000
                      full_name:
                        type: string
                        nullable: true
                        example: John Doe
                      whatsapp_id:
                        type: string
                        example: '27123456789'
                      phone_number:
                        type: string
                        nullable: true
                        example: '+27123456789'
                      email:
                        type: string
                        nullable: true
                        example: john@example.com
                      tags:
                        type: array
                        items:
                          type: string
                        example:
                          - customer
                          - premium
                      organization_id:
                        type: string
                        format: uuid
                      bot_status:
                        type: string
                        nullable: true
                        example: active
                      allow_broadcast:
                        type: boolean
                        example: true
                      archived:
                        type: boolean
                        example: false
                      blocked:
                        type: boolean
                        example: false
                      active_status:
                        type: boolean
                        example: false
                      has_unread_messages:
                        type: boolean
                        example: false
                      source:
                        type: object
                        nullable: true
                      contact_summary:
                        type: string
                        nullable: true
                      contact_summary_updated_at:
                        type: string
                        format: date-time
                        nullable: true
                      created_at:
                        type: string
                        format: date-time
                      updated_at:
                        type: string
                        format: date-time
              example:
                success: true
                contact:
                  id: 123e4567-e89b-12d3-a456-426614174000
                  full_name: John Doe
                  whatsapp_id: '27123456789'
                  phone_number: '+27123456789'
                  email: john@example.com
                  tags:
                    - customer
                    - premium
                  organization_id: org-uuid-here
                  bot_status: active
                  allow_broadcast: true
                  archived: false
                  blocked: false
                  active_status: false
                  has_unread_messages: false
                  source:
                    type: api
                    location: {}
                    created_at: '2025-12-11T10:30:00Z'
                  contact_summary: null
                  contact_summary_updated_at: null
                  created_at: '2025-12-11T10:30:00Z'
                  updated_at: '2025-12-11T10:30:00Z'
        '400':
          description: Missing or invalid phone number
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Missing required parameter
                message: phone_number (or whatsapp_id) query parameter is required
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Invalid API key
                message: API key has been revoked
        '404':
          description: Contact not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Contact not found
                message: No contact found with phone number 27123456789
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Internal server error
                message: Unexpected error
      security:
        - BearerAuth: []
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Whether the request was successful
          example: false
        error:
          type: string
          description: Error message
          example: Invalid or missing API key
        message:
          type: string
          description: Detailed error message
          example: Invalid or missing API key
        details:
          type: string
          description: Additional error details (optional)
          example: Shopify order not found
      required:
        - success
        - error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: 'Bearer token for authentication. Format: `Bearer YOUR_BEARER_TOKEN`'
      bearerFormat: JWT

````