API

CSV 레코드 일괄 가져오기

작성일 2026.04.23 | 수정일 2026.04.23

POST/crm-core/v1/records/import/csv
CSV 파싱이 이미 완료된 행 목록을 JSON으로 전달하여 레코드를 일괄 생성한다. 업로드된 행은 records 컬렉션에 삽입된 후 속성값은 record_values 컬렉션에 별도로 저장된다. 임포트 완료 후 RECORD_CREATED 자동화 트리거가 일괄 발행된다(선택적으로 스킵 가능). 권한: MEMBER 이상, 요금제 기능 records.bulkImportEnabled 필요.

Query Params

NameTypeRequiredDescription
skipAutomationbooleantrue면 생성 시 자동화 트리거 발행을 건너뜀

Body Params

NameTypeRequiredDescription
entityIdstring레코드를 추가할 개체 ID
rowsArray가져올 행 배열. 최대 5000개
rows[].namestring레코드 이름
rows[].dataObject속성값 맵. 속성 ID 또는 속성 이름을 키로 사용 가능
linkConfigsArray임포트 후 레코드 연결 설정. relationshipTypeIdcriteria 포함

Response

NameTypeRequiredDescription
importednumber성공적으로 생성된 레코드 수
recordIdsArray*생성된 레코드 ID 목록

Structure

코드 예제

const response = await fetch('https://api.solapi.com/crm-core/v1/records/import/csv?skipAutomation=false', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer ' + TOKEN,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    entityId: 'CRMET1260423081530123XYZ11122233',
    rows: [
      { name: '홍길동', data: { 'CRMPP1260423091530123PPP11122233': '010-1234-5678' } }
    ]
  })
});
const { imported, recordIds } = await response.json();
import requests

response = requests.post(
'https://api.solapi.com/crm-core/v1/records/import/csv',
headers={'Authorization': f'Bearer {TOKEN}'},
json={
'entityId': 'CRMET1260423081530123XYZ11122233',
'rows': [
{'name': '홍길동', 'data': {'CRMPP1260423091530123PPP11122233': '010-1234-5678'}}
]
}
)
data = response.json()

curl -X POST 'https://api.solapi.com/crm-core/v1/records/import/csv' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"entityId":"CRMET1260423081530123XYZ11122233","rows":[{"name":"홍길동","data":{"CRMPP1260423091530123PPP11122233":"010-1234-5678"}}]}'

lightbulb

요금제의 `records.bulkImportMaxRows` 한도를 초과하는 행 수를 전달하면 400 오류를 반환한다. 단일 요청 상한은 5000행이며, 대량 임포트는 여러 번 나누어 호출해야 한다.

lightbulb

`linkConfigs`를 함께 보내면 임포트 직후 지정한 관계 타입(`relationshipTypeId`)으로 기준 속성(`criteria`) 매칭을 통해 자동으로 레코드가 연결된다. 연결은 비동기로 실행되므로 응답 본문에는 즉시 포함되지 않는다.