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

# Importar CSV para uma lista existente

> Importa dados de um CSV para uma lista existente. Cria contatos novos, atualiza existentes conforme fieldResolutions, e vincula à lista. Duplicatas são ignoradas.



## OpenAPI

````yaml https://api.nuvia.ai/api/docs/user-json post /v1/tables/{id}/import-csv
openapi: 3.0.0
info:
  title: Nuvia API - Empresa
  description: Documentação da API para empresas
  version: '1.0'
  contact: {}
servers:
  - url: https://api.nuvia.ai
security: []
tags:
  - name: auth
    description: Autenticação
paths:
  /v1/tables/{id}/import-csv:
    post:
      tags:
        - tables
      summary: Importar CSV para uma lista existente
      description: >-
        Importa dados de um CSV para uma lista existente. Cria contatos novos,
        atualiza existentes conforme fieldResolutions, e vincula à lista.
        Duplicatas são ignoradas.
      operationId: TableController_importCsvToList
      parameters:
        - name: x-company-id
          in: header
          description: >-
            Identificador da empresa-alvo. Obrigatório apenas para API Keys
            globais (type=global). Ignorado para API Keys de empresa e usuários
            humanos.
          required: false
          schema:
            type: string
        - name: id
          required: true
          in: path
          description: ID da lista
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportCsvToListDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      security:
        - JWT-auth: []
components:
  schemas:
    ImportCsvToListDto:
      type: object
      properties:
        csvRows:
          type: array
          minItems: 1
          items:
            anyOf:
              - type: object
                additionalProperties:
                  type: string
              - type: object
                properties:
                  data:
                    type: object
                    additionalProperties:
                      type: string
                    description: Dados da linha do CSV
                  fieldResolutions:
                    description: Resoluções de conflito individuais para esta linha
                    type: object
                    additionalProperties:
                      type: string
                      enum:
                        - csv
                        - keep
                required:
                  - data
          description: >-
            Array de linhas do CSV. Pode ser objeto simples ou { data,
            fieldResolutions } para resoluções individuais
        columnMapping:
          type: array
          minItems: 1
          items:
            type: object
            properties:
              csvColumn:
                type: string
                description: Nome da coluna no CSV
              targetField:
                type: string
                description: >-
                  Campo destino: phone_number, name, email, country_code,
                  linkedin_identifier, job_title, seniority, department,
                  country, region, city, experience, skills ou
                  cf_<custom_field_id>
              isRequired:
                description: Se o campo é obrigatório
                type: boolean
            required:
              - csvColumn
              - targetField
          description: Mapeamento de colunas CSV para campos do contato
        fieldResolutions:
          type: object
          description: >-
            Resolução de conflitos global (fallback quando linha não tem
            resoluções individuais)
          additionalProperties:
            type: string
            enum:
              - csv
              - keep
        businessMapping:
          type: object
          description: Mapeamento opcional de Business para vincular empresas aos contatos
          properties:
            enabled:
              type: boolean
              description: Se o mapeamento de Business está habilitado
            searchField:
              type: string
              enum:
                - domain
                - name
                - corporate_id
              description: Campo usado para buscar Business existente
            columnMapping:
              type: array
              items:
                type: object
                properties:
                  csvColumn:
                    type: string
                    description: Nome da coluna no CSV
                  targetField:
                    type: string
                    description: >-
                      Campo destino: phone_number, name, email, country_code,
                      linkedin_identifier, job_title, seniority, department,
                      country, region, city, experience, skills ou
                      cf_<custom_field_id>
                  isRequired:
                    description: Se o campo é obrigatório
                    type: boolean
                required:
                  - csvColumn
                  - targetField
              description: Mapeamento de colunas CSV para campos de Business
          required:
            - enabled
            - searchField
            - columnMapping
        contactMapping:
          type: object
          description: >-
            Mapeamento opcional de Contact para vincular contatos às empresas
            (usado em listas de Business)
          properties:
            enabled:
              type: boolean
              description: Se o mapeamento de Contact está habilitado
            searchField:
              type: string
              enum:
                - phone_number
                - email
                - name
                - linkedin_identifier
              description: Campo usado para buscar Contact existente
            columnMapping:
              type: array
              items:
                type: object
                properties:
                  csvColumn:
                    type: string
                    description: Nome da coluna no CSV
                  targetField:
                    type: string
                    description: >-
                      Campo destino: phone_number, name, email, country_code,
                      linkedin_identifier, job_title, seniority, department,
                      country, region, city, experience, skills ou
                      cf_<custom_field_id>
                  isRequired:
                    description: Se o campo é obrigatório
                    type: boolean
                required:
                  - csvColumn
                  - targetField
              description: Mapeamento de colunas CSV para campos de Contact
            delimiter:
              description: >-
                Delimitador para split de multiplos valores em uma celula
                (default: virgula)
              type: string
          required:
            - enabled
            - searchField
            - columnMapping
      required:
        - csvRows
        - columnMapping
  securitySchemes:
    JWT-auth:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Token JWT de autenticação

````