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

# Update contact



## OpenAPI

````yaml /openapi.json put /api/contact/{id}
openapi: 3.0.0
info:
  title: GoMobile Backend API
  description: >-
    API documentation for GoMobile telephony platform - automated calling
    campaigns, interactive voice flows, and call management
  version: '1.0'
  contact: {}
servers:
  - url: http://localhost:3000
    description: Local Development
security: []
tags:
  - name: Organizations
    description: Multi-tenant organization management
  - name: Teams
    description: Team structure and hierarchy
  - name: Contacts
    description: Customer contact management (CRM)
  - name: Entities
    description: Business entities management
  - name: Audiences
    description: Contact segmentation and groups
  - name: Programs
    description: Call campaign configuration
  - name: Call Flows
    description: Interactive call flow builder
paths:
  /api/contact/{id}:
    put:
      tags:
        - Contacts
      summary: Update contact
      operationId: ContactController_update
      parameters:
        - name: id
          required: true
          in: path
          description: Contact UUID
          schema: {}
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateContactDto'
      responses:
        '200':
          description: Contact updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactResponseDto'
        '404':
          description: Contact not found
components:
  schemas:
    UpdateContactDto:
      type: object
      properties:
        firstName:
          type: string
          example: John
        lastName:
          type: string
          example: Doe
        fullName:
          type: string
          example: John Doe
        primaryEmail:
          type: string
          example: john@example.com
        primaryPhone:
          type: string
          example: '+212612345678'
        address:
          type: string
          example: 123 Main St
        city:
          type: string
          example: Casablanca
        state:
          type: string
          example: Casablanca-Settat
        zip:
          type: string
          example: '20000'
        occupation:
          type: string
          example: Engineer
        preferredChannel:
          type: string
          example: phone
        customAttributes:
          type: object
          example:
            age: 30
            interests:
              - tech
          nullable: true
          additionalProperties: true
    ContactResponseDto:
      type: object
      properties:
        id:
          type: string
          example: 123e4567-e89b-12d3-a456-426614174000
        organizationId:
          type: string
          example: 123e4567-e89b-12d3-a456-426614174000
        firstName:
          type: string
          example: John
          nullable: true
        lastName:
          type: string
          example: Doe
          nullable: true
        fullName:
          type: string
          example: John Doe
          nullable: true
        primaryEmail:
          type: string
          example: john@example.com
          nullable: true
        primaryPhone:
          type: string
          example: '+212612345678'
        address:
          type: string
          example: 123 Main St
          nullable: true
        city:
          type: string
          example: Casablanca
          nullable: true
        state:
          type: string
          example: Casablanca-Settat
          nullable: true
        zip:
          type: string
          example: '20000'
          nullable: true
        occupation:
          type: string
          example: Engineer
          nullable: true
        preferredChannel:
          type: string
          example: phone
          nullable: true
        gender:
          type: string
          enum:
            - male
            - female
        channels:
          type: array
          example: []
          items:
            type: string
          nullable: true
        createdAt:
          format: date-time
          type: string
          example: '2024-01-01T00:00:00.000Z'
        updatedAt:
          format: date-time
          type: string
          example: '2024-01-01T00:00:00.000Z'
      required:
        - id
        - organizationId
        - primaryPhone
        - channels
        - createdAt
        - updatedAt

````