REST API

인박스와 연락처

DM · 멘션 · 댓글 대화, 직접 보내는 답, 연락처, 승인을 기다리는 스레드 답글, 팔로워 수.

대화는 한 사람과의 DM, 스레드 멘션, 네이버 블로그 댓글 묶음입니다. DM 대화에 답하면 DM 이 나가고, 멘션 · 댓글 대화에 답하면 그 아래 공개 답글이 됩니다.

DM 은 그 사람의 마지막 메시지 뒤 24시간 안에만 나갑니다. 창 밖에서 보내면 403 window_closed 입니다. 직접 답하면 그 대화에서 자동화가 30분 동안 쉽니다.

대화

GET/v1/conversations

대화 목록, 최근 메시지 순. 상태, 종류, 안 읽음, 별표, 계정, 채널, 검색어로 거릅니다.

이름타입설명
statequeryopen (default) or closed.
kindquerydm, mention or comment.
unreadquery1 for unread only.
starredquery1 for starred only.
accountIdqueryOne connected account.
platformqueryOne platform id, e.g. instagram.
searchqueryMatches the username, the name or the last message.
beforequeryA lastMessageAt from the previous page.
limitquery1-200.
{
  "data": [
    {
      "id": "cnv_91d2",
      "accountId": "acc_7f3c",
      "account": { "platform": "instagram", "handle": "@brand" },
      "contact": { "id": "ctc_44a0", "username": "jiyoung", "name": "Jiyoung", "optedOut": false },
      "kind": "dm",
      "state": "open",
      "unread": true,
      "lastMessagePreview": "Is it still available?",
      "window": { "open": true, "expiresAt": "2026-10-03T09:12:00.000Z", "mode": "window" }
    }
  ],
  "hasMore": false,
  "counts": { "open": { "total": 1, "unread": 1 } }
}

GET/v1/conversations/{id}

대화 하나와 연락처, 메시지.

POST/v1/conversations/{id}/messages

계정으로 답합니다. DM 대화는 DM, 멘션 · 댓글 대화는 공개 답글입니다.

이름타입설명
text필수stringWhat to send.
mediaIdstringAttach one uploaded file to a DM.
{ "data": { "id": "msg_0c7e", "mid": "aWdfZAG…", "sentAs": "window" } }

POST/v1/conversations/{id}/drafts/{messageId}

자동화가 승인을 기다리며 만든 초안을 보냅니다. 글을 고쳐 보낼 수도 있습니다.

DELETE/v1/conversations/{id}/drafts/{messageId}

초안을 보내지 않고 버립니다.

POST/v1/inbox/sync

계정 하나의 최근 대화를 채널에서 가져옵니다.

상태

POST/v1/conversations/{id}/read

읽음으로 표시합니다.

POST/v1/conversations/{id}/open

닫은 대화를 다시 엽니다.

POST/v1/conversations/{id}/close

닫습니다. 열린 목록에서 빠집니다.

POST/v1/conversations/{id}/star

별표를 답니다.

POST/v1/conversations/{id}/unstar

별표를 뗍니다.

POST/v1/conversations/{id}/assign

사람에게 맡깁니다 (userId, 없으면 나).

POST/v1/conversations/{id}/unassign

맡김을 풉니다.

연락처

GET/v1/contacts

계정에 글을 보낸 사람들. 태그, 필드, 수신 거부, 채널이 알려 주는 곳에서는 팔로우 여부.

이름타입설명
accountIdqueryOne connected account.
tagqueryContacts with this tag.
optedOutquery1 for people who opted out.
searchqueryMatches the username or the name.
limitquery1-500, defaults to 100.

GET/v1/contacts/{id}

연락처 하나와 그 대화.

PATCH/v1/contacts/{id}

태그, 사용자 필드, 수신 거부를 정합니다.

이름타입설명
tagsstring[]Replaces the tags. Up to 50.
fieldsobjectCustom fields to set, merged into the existing ones.
optedOutbooleantrue stops every automated message to this person.

POST/v1/contacts/{id}/refresh

채널에서 프로필을 다시 읽습니다.

DELETE/v1/contacts/{id}

우리 쪽의 연락처와 대화 · 메시지를 지웁니다. 채널에는 아무 변화가 없습니다.

계정 단위

GET/v1/accounts/{id}/audience

팔로워 수와 스레드의 인구 통계. 팔로워 목록은 어느 채널에서도 주지 않습니다.

GET/v1/messaging/violations

채널 규칙에 막혀 자동화가 보내지 않은 메시지, 최근 것부터.

승인을 기다리는 스레드 답글

GET/v1/threads/pending-replies

스레드 계정에서 승인을 기다리는 답글.

이름타입설명
accountId필수queryA connected Threads account.

POST/v1/threads/pending-replies/{replyId}

기다리는 답글 하나를 승인하거나 무시합니다.

이름타입설명
accountId필수stringThe Threads account that holds the reply.
approvebooleanfalse ignores the reply. Defaults to true.