레코드 전문 검색
작성일 2026.04.23 | 수정일 2026.04.23
GET/crm-core/v1/records/search/fulltext/:entityId
특정 개체 내에서 레코드 이름(name 필드)을 기준으로 부분 일치 검색을 수행한다. 자동 완성(autocomplete) 또는 빠른 탐색 UI에 적합하다. 결과는 마스킹 정책과 소유권 규칙이 적용된 후 반환된다.
Path Params
| Name | Type | Required | Description |
|---|---|---|---|
| entityId | string | 검색 대상 개체 ID |
Query Params
| Name | Type | Required | Description |
|---|---|---|---|
| q | string | 검색어. 이름 필드에 대해 대소문자 무시 부분 일치 검색 수행 | |
| limit | number | 최대 결과 수. 기본값 20, 상한 권장 100 |
Response
| Name | Type | Required | Description |
|---|---|---|---|
| [] | Array | 매칭된 레코드 배열. 마스킹·서명 URL이 반영됨 | |
| [].recordId | string | 레코드 ID | |
| [].entityId | string | 개체 ID | |
| [].name | string | 레코드 이름 | |
| [].data | Object | 속성값 맵 (마스킹 적용) | |
| [].tags | Array | 태그 배열 | |
| [].profileImage | Object | 프로필 이미지 메타 (서명 URL) | |
| [].dateCreated | date | * | 생성 시각 |
Structure
코드 예제
const params = new URLSearchParams({ q: '홍길동', limit: '20' });
const response = await fetch(
https://api.solapi.com/crm-core/v1/records/search/fulltext/CRMET1260423081530123XYZ11122233?${params},
{
method: 'GET',
headers: { 'Authorization': 'Bearer ' + TOKEN }
}
);
const data = await response.json();
import requests
response = requests.get(
'https://api.solapi.com/crm-core/v1/records/search/fulltext/CRMET1260423081530123XYZ11122233',
headers={'Authorization': f'Bearer {TOKEN}'},
params={'q': '홍길동', 'limit': 20}
)
data = response.json()
curl -X GET 'https://api.solapi.com/crm-core/v1/records/search/fulltext/CRMET1260423081530123XYZ11122233?q=%ED%99%8D%EA%B8%B8%EB%8F%99&limit=20' \
-H 'Authorization: Bearer YOUR_TOKEN'
lightbulb
검색 대상은 레코드 `name` 필드 한정이며 속성값(`data.*`)은 검색 대상에 포함되지 않는다. 속성값 기반 검색이 필요하면 `POST /crm-core/v1/records/search/advanced`의 `contains` 조건을 사용한다.