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

# Cria ou atualiza um cliente com dados completos

> Cria ou atualiza um cliente incluindo informações pessoais, endereço e dados profissionais.



## OpenAPI

````yaml POST /v1/customer/unified
openapi: 3.1.0
info:
  title: API Credicarro
  description: API para gerenciamento de cobranças e pagamentos usando o Credicarro.
  version: 1.0.0
servers:
  - url: https://api.staging.credicarro.com.br/integration
    description: Servidor para o ambiente de staging
security: []
paths:
  /v1/customer/unified:
    post:
      tags:
        - Cliente
      summary: Criar ou atualizar cliente com dados completos
      description: >-
        Cria ou atualiza um cliente incluindo informações pessoais, endereço e
        dados profissionais.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: Dados completos do cliente
              required:
                - celular
                - cpf
                - dataDeNascimento
                - email
                - nome
                - sobrenome
                - endereco
                - dadosProfissionais
              additionalProperties: false
              properties:
                celular:
                  type: string
                  minLength: 1
                  description: >-
                    Telefone celular no formato E.164 (código do país + DDD +
                    número).
                  example: +55 (11) 99876-5432
                cpf:
                  type: string
                  minLength: 11
                  maxLength: 11
                  description: CPF do cliente **somente números** (11 dígitos).
                  example: '12345678901'
                dataDeNascimento:
                  type: string
                  format: date-time
                  description: Data de nascimento em formato ISO-8601.
                  example: '1990-05-20T00:00:00-03:00'
                email:
                  type: string
                  minLength: 1
                  description: Endereço de e-mail do cliente.
                  example: maria.souza@exemplo.com.br
                nome:
                  type: string
                  minLength: 1
                  description: Primeiro nome do cliente.
                  example: Maria
                sobrenome:
                  type: string
                  minLength: 1
                  description: Sobrenome do cliente.
                  example: Souza
                endereco:
                  type: object
                  required:
                    - rua
                    - cidade
                    - estado
                    - bairro
                    - cep
                  properties:
                    rua:
                      type: string
                      example: Av. Paulista
                    cidade:
                      type: string
                      example: São Paulo
                    estado:
                      type: string
                      example: SP
                    bairro:
                      type: string
                      example: Bela Vista
                    cep:
                      type: string
                      example: '01311000'
                    numero:
                      type: string
                      example: '1578'
                    complemento:
                      type: string
                      example: Bloco B, Apto 1203
                dadosProfissionais:
                  type: object
                  required:
                    - tipoOcupacao
                    - renda
                  properties:
                    tipoOcupacao:
                      type: integer
                      format: int32
                      description: |
                        Tipo de ocupação do cliente.
                        Valores aceitos:
                          - 1 = aposentado
                          - 2 = pensionista
                          - 3 = assalariado
                          - 4 = autônomo
                          - 6 = freelancer
                          - 7 = proprietário
                      example: 1
                    renda:
                      type: number
                      format: double
                      description: Renda mensal do cliente em reais.
                      example: 6500
      responses:
        '201':
          description: Cliente criado com sucesso
          content:
            application/json:
              schema:
                type: object
                properties:
                  id_cliente:
                    type: string
                    format: uuid
                    description: Identificador único do cliente
                    example: 123e4567-e89b-12d3-a456-426614174000
        '400':
          description: Erro na requisição
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
      security:
        - bearerAuth: []
components:
  schemas:
    ProblemDetails:
      type: object
      properties:
        tipo:
          type: string
          description: Tipo de problema encontrado
          example: Partner.AccountIsIncompleted
        titulo:
          type: string
          description: Título do erro
          example: Bad Request
        status:
          type: integer
          format: int32
          description: Status Code do erro
          example: 400
        detalhe:
          type: string
          description: Descrição do erro
          example: Cadastro de conta não finalizado
        erro:
          type: 'null'
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Cabeçalho de autenticação Bearer no formato `Bearer <token>` onde
        `<token>` é seu TOKEN de autenticação

````