그래프 API 버전

메시지

Messenger나 Instagram 메시지 대화 내의 개별적인 메시지.

메시지 ID를 가져오려면 대화 엔드포인트 또는 Webhooks를 사용하여 각 메시지 ID를 검색합니다.

읽기

그래프 API 탐색기
GET /v21.0/{message-id} HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/{message-id}',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{message-id}",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{message-id}",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{message-id}"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

요구 사항

유형설명

앱 검수

앱에서 역할(예: 개발자, 테스터, 관리자)이 부여되지 않은 사용자의 데이터에 액세스하려면 필수

기능

해당 사항 없음

토큰

쿼리 대상이거나 Instagram 프로페셔널 계정에 링크된 페이지에서 MODERATE 또는 MESSAGING 작업을 수행할 수 있는 사용자의 페이지 액세스 토큰

권한

pages_messagingpages_manage_metadata 권한

Instagram 메시지에는 instagram_basicinstagram_manage_messaging 권한도 필요합니다.

제한 사항

Instagram 메시지의 경우

  • 링크된 Facebook 페이지가 있는 Instagram 프로페셔널 계정만 이 엔드포인트에 액세스할 수 있습니다.
  • 이 엔드포인트를 쿼리하면 이 대화에 대한 모든 메시지가 반환됩니다. 그러나 대화에서 가장 최근 메시지 20개에 대한 데이터만 쿼리할 수 있습니다. 가장 최근 20개보다 이전의 메시지인 경우 메시지가 삭제되었다는 내용의 오류가 반환됩니다.

필드

필드에 데이터가 없을 경우 JSON 응답으로 반환되지 않습니다.

이름설명

attachments.data

배열
file_url
generic_template
id
image_data
name
video_data

메시지에 첨부된 이미지, 동영상 또는 파일 CDN URL 등의 미디어


메시지에 첨부된 파일의 URL

메시지에 첨부된 이미지의 URL. 다음의 키:값 쌍을 포함할 수 있습니다.

  • cta: title, type, url을 포함한 개체
  • medial_url: 문자열, 이미지 URL
  • subtitle: 문자열, 픽셀 단위
  • title: 문자열,

첨부 파일의 ID

메시지에 첨부된 이미지의 URL. 다음과 같은 키:값 쌍을 포함할 수 있습니다.

  • animated_gif_preview_url: 문자열, GIF 미리 보기 URL
  • animated_gif_url: 문자열, GIF URL
  • height: 정수, 픽셀 단위
  • max_height: 정수, 픽셀 단위
  • max_width: 정수, 픽셀 단위
  • preview_url: 문자열, URL 미리 보기
  • render_as_sticker: 부울, true 또는 false
  • url: 문자열, 이미지 URL
  • width: 정수, 픽셀 단위

첨부 파일의 이름

메시지에 첨부된 동영상의 URL

created_time

datetime

메시지가 생성된 시각

from

개체
id
email
name
username

메시지를 보낸 주체에 대한 정보. 사용자, 페이지 또는 Instagram 프로페셔널 계정이 해당할 수 있습니다.

ID는 사용자의 경우 Instagram 범위 ID 또는 페이지 범위 ID이거나, 비즈니스의 경우 Page ID 또는 Instagram 프로페셔널 계정 ID일 수 있습니다.

사용자 또는 Facebook 페이지의 이메일. 페이지 메시지에만 해당

사용자 또는 Facebook 페이지의 이름. 페이지 메시지에만 해당

Instagram 사용자 또는 Instagram 프로페셔널 계정의 사용자 이름. Instagram 메시지에만 해당

"from": {
    "username": "INSTAGRAM-USERNAME",
    "id": "ID"
  }

id

문자열

메시지의 ID

is_unsupported

부울

true일 경우에만 반환됩니다. 메시지에 지원되지 않는 콘텐츠가 포함되었습니다.

message

문자열

메시지의 텍스트 내용. 메시지에 텍스트가 없으면 이 필드는 비어 있습니다.

reactions

배열
data 배열
reaction 이모티콘
users 개체의 배열
id

username

메시지가 받은 공감 유형이며, 해당 공감 유형으로 공감한 모든 사용자의 리스트가 포함됩니다.

공감 개체의 배열

공감 이모티콘 유형

메시지에 공감한 사용자의 리스트


ID는 Instagram 사용자의 경우 Instagram 범위 ID이거나, 비즈니스의 경우 Instagram 프로페셔널 계정 ID가 될 수 있습니다.

Instagram 사용자 또는 Instagram 프로페셔널 계정의 사용자 이름. Instagram 메시지에만 해당

"reactions":
  {
    "reaction": "❤️",
    "users" : [
      {
        "username": "INSTAGRAM-USERNAME",
        "id": "ID", 
      },
    ]
  }

shares

배열

메시지에 포함된 미디어 공유(예: 게시물, 제품 템플릿). 공유 개체의 경우 데이터를 가져오려면 하위 필드도 요청해야 합니다.

"shares": {
  "data": [{
    "template": {
      "payload":{
        "product": {
           "elements":{     //Can contain multiple products if applicable
             "data": [
              {
                "id" : "PRODUCT-ID",    // 0 if business can't see this product
                "retailer_id": "ID-ASSIGNED-BY-THE-RETAILER", 
                "image_url" : "IMAGE-URL", 
                "name" : "PRODUCT-NAME",
                "price" : "$10"
              },
            ],
          }
        }
      }
    }
  }]
}   

story

배열

스토리의 링크 및 ID. 언급과 답장만 지원됩니다.

StoryReply: 
{
    "link": "CDN-URL",
    "id": "STORY-ID"
}

StoryMention: 
{
    "link": "CDN-URL",
    "id": "STORY-ID"
}

tags

개체

메시지 폴더와 메시지 소스를 나타내는 태그의 이름을 포함한 data 배열

  • Facebook 페이지의 경우 nameinbox, read, source:chat이 될 수 있습니다.

to

개체
data 배열
id
email
name
username

메시지를 받은 주체에 대한 정보



ID는 사용자의 경우 Instagram 범위 ID 또는 페이지 범위 ID이거나, 비즈니스의 경우 Page ID 또는 Instagram 프로페셔널 계정 ID일 수 있습니다.

사용자 또는 Facebook 페이지의 이메일. 페이지 메시지에만 해당

사용자 또는 Facebook 페이지의 이름. 페이지 메시지에만 해당

Instagram 사용자 또는 Instagram 프로페셔널 계정의 사용자 이름. Instagram 메시지에만 해당

"to": {
  "data": [
    { 
      "username": "INSTAGRAM-USERNAME", 
      "id": "ID" 
    }
  ]
}

에지

이름 설명

/attachments

메시지에 첨부된 파일

/shares

링크, 사진, 동영상, 스티커, 제품을 포함한 공유된 항목

만들기

이 엔드포인트에서는 해당 작업을 수행할 수 없습니다.

업데이트

이 엔드포인트에서는 해당 작업을 수행할 수 없습니다.

삭제

이 엔드포인트에서는 해당 작업을 수행할 수 없습니다.