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

# Contact

> Retrieve a stored contact by its ID.

<Warning>
  **Work in progress**

  This section is currently under active development as part of improvements planned for 2026. Content may change as we expand product capabilities.

  If you're interested in early access or want to learn more about what's coming, feel free to [reach out to the team](/guides/support/contact-flinks).
</Warning>

Retrieve a stored contact by its ID. This is typically used to look up contact details before creating an EFT transaction using a `contactId` reference instead of providing name fields inline.

## Usage in the EFT Flow

When [creating a transaction](/api/pay/endpoints/eft/create-transaction), you can pass either inline name fields (`firstName` + `lastName`, or `legalName`) or a `contactId` in the `contactInfo` object. Use this endpoint to verify the stored contact details before submitting the transaction.


## OpenAPI

````yaml GET /api/v1/contacts/{contactId}
openapi: 3.0.3
info:
  title: Flinks EFT API
  description: >
    Flinks Electronic Funds Transfer (EFT) API provides endpoints to create,
    monitor, and manage PAD-based debit and credit transactions through Canada's
    EFT rail.


    ## Authentication

    Most endpoints require authentication using an API key passed via the
    `x-client-id` header, provided during onboarding.


    For more information, visit: https://docs.flinks.com
  version: 1.0.0
  contact:
    name: Flinks Support
    url: https://www.flinks.com/contact/sales
  termsOfService: https://www.flinks.com
servers:
  - url: https://www.{baseurl}.com
    description: Flinks Pay Production
    variables:
      baseurl:
        default: '{baseurl}'
        description: The base URI for the environment (e.g. flinks)
security: []
tags:
  - name: Transactions
    description: Create EFT debit and credit transactions
  - name: Payment Requests
    description: Monitor and manage payment requests
  - name: Schedules
    description: Manage recurring payment schedules
  - name: Contacts
    description: Retrieve stored contact information
  - name: PAD Agreements
    description: Retrieve Pre-Authorized Debit agreements
  - name: Institutions
    description: Retrieve supported financial institutions
paths:
  /api/v1/contacts/{contactId}:
    get:
      tags:
        - Contacts
      summary: Get Contact
      description: Retrieve a stored contact by its ID.
      operationId: getContact
      parameters:
        - name: x-client-id
          in: header
          schema:
            type: string
        - name: contactId
          in: path
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactModel'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ContactModel:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique contact identifier.
          example: dc48faa6-ea0e-484d-8e1b-a73887a11d49
        firstName:
          type: string
          nullable: true
          description: Contact's first name.
          example: Jane
        lastName:
          type: string
          nullable: true
          description: Contact's last name.
          example: Doe
        legalName:
          type: string
          nullable: true
          description: Legal entity name.
        middleName:
          type: string
          nullable: true
        shortName:
          type: string
          nullable: true
        emailAddress:
          type: string
          nullable: true
          description: Contact's email address.
          example: jane.doe@example.com
        phoneNumber:
          type: string
          nullable: true
        contactType:
          $ref: '#/components/schemas/ContactType'
        addresses:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/AddressModel'
        accounts:
          $ref: '#/components/schemas/AccountModel'
    ErrorResponse:
      type: object
      properties:
        type:
          type: string
          description: Error type URI.
          example: https://tools.ietf.org/html/rfc7231#section-6.5.1
        title:
          type: string
          description: Error title.
          example: Bad Request
        status:
          type: integer
          description: HTTP status code.
          example: 400
        detail:
          type: string
          description: Human-readable error description.
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Field-level validation errors.
    ContactType:
      type: string
      enum:
        - Individual
        - Business
      description: Contact type classification.
    AddressModel:
      type: object
      properties:
        id:
          type: string
          format: uuid
        isPrimary:
          type: boolean
        addressLine1:
          type: string
          nullable: true
        addressLine2:
          type: string
          nullable: true
        unit:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        province:
          type: string
          nullable: true
        country:
          type: string
          nullable: true
        postalCode:
          type: string
          nullable: true
    AccountModel:
      type: object
      properties:
        eftAccounts:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/EftAccountModel'
        interacAccounts:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/InteracAccountModel'
    EftAccountModel:
      type: object
      properties:
        id:
          type: string
          format: uuid
        institutionCode:
          type: string
          nullable: true
        transitNumber:
          type: string
          nullable: true
        accountNumber:
          type: string
          nullable: true
        isValid:
          type: boolean
    InteracAccountModel:
      type: object
      properties:
        id:
          type: string
          format: uuid
        email:
          type: string
          nullable: true

````