API

개체 삭제

작성일 2026.04.23 | 수정일 2026.04.29

DELETE/crm-core/v1/entities/{entityId}

개체를 휴지통으로 이동(soft-delete)합니다. 함께 속한 레코드도 모두 soft-delete 되며, 14일 유예 기간 후 GC 프로세스가 영구 삭제합니다. 유예 기간 중에는 POST /crm-core/v1/entities/{entityId}/restore 로 복원 가능합니다. MEMBER 이상 권한이 필요합니다.

Path Params

NameTypeRequiredDescription
entityIdstring*삭제할 개체의 고유 ID

Response

NameTypeRequiredDescription
entityIdstring*삭제된 개체 ID (입력값 그대로 반환)

Structure

코드 예제

const crypto = require('crypto');

const apiKey = 'NCSXXXXXXXXXXXXX';
const apiSecret = 'YOUR_API_SECRET';
const dateTime = new Date().toISOString();
const salt = crypto.randomBytes(16).toString('hex');
const signature = crypto.createHmac('sha256', apiSecret).update(dateTime + salt).digest('hex');
const authHeader = HMAC-SHA256 apiKey=${apiKey}, date=${dateTime}, salt=${salt}, signature=${signature};

const response = await fetch(https://api.solapi.com/crm-core/v1/entities/${entityId}, {
method: 'DELETE',
headers: { 'Authorization': authHeader, 'Content-Type': 'application/json' }
});
const data = await response.json();

import hmac, hashlib, secrets, requests
from datetime import datetime, timezone

api_key = 'NCSXXXXXXXXXXXXX'
api_secret = 'YOUR_API_SECRET'
date_time = datetime.now(timezone.utc).strftime('%Y-%m-%dT%H:%M:%SZ')
salt = secrets.token_hex(16)
signature = hmac.new(api_secret.encode(), (date_time + salt).encode(), hashlib.sha256).hexdigest()
auth_header = f'HMAC-SHA256 apiKey={api_key}, date={date_time}, salt={salt}, signature={signature}'

response = requests.delete(f'https://api.solapi.com/crm-core/v1/entities/{entity_id}', headers={
'Authorization': auth_header,
'Content-Type': 'application/json'
})
data = response.json()

API_KEY="NCSXXXXXXXXXXXXX"
API_SECRET="YOUR_API_SECRET"
DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
SALT=$(openssl rand -hex 16)
SIGNATURE=$(echo -n "${DATE}${SALT}" | openssl dgst -sha256 -hmac "${API_SECRET}" | awk '{print $NF}')
AUTH="HMAC-SHA256 apiKey=${API_KEY}, date=${DATE}, salt=${SALT}, signature=${SIGNATURE}"

curl -X DELETE 'https://api.solapi.com/crm-core/v1/entities/CRMET1260423081530123XYZ11122233' \
-H "Authorization: ${AUTH}" \
-H "Content-Type: application/json"

lightbulb

삭제 시 플랜 사용량(`entities.max`, `records.max`)이 자동 감소합니다. **14일 유예 기간**이 지나면 GC 가 영구 삭제하며 복구가 불가능합니다. 즉시 영구 삭제는 `DELETE /crm-core/v1/entities/{entityId}/permanent` 를 사용하세요 (CRM OWNER 전용).

lightbulb

복원 시 slug 가 다른 활성 개체와 충돌하거나 플랜 한도를 초과하면 409/403 으로 실패할 수 있습니다.

lightbulb

DELETE 후 동일 `entityId` 로 GET 시 → `410 EntityDeleted` 응답. 이미 삭제된 개체에 다시 DELETE 시 → `409 EntityAlreadyDeleted` (백엔드 적용 후).

lightbulb

**401 응답**: `{ "errorCode": "Unauthorized", "errorMessage": "권한이 없습니다." }`