비즈니스 관리자 계정 또는 단순히 비즈니스 계정으로 불리기도 하는 Meta 비즈니스 계정의 이름이 비즈니스 포트폴리오로 변경됩니다. 이 변경 사항은 Meta 테크놀로지 전반에 점진적으로 적용될 예정입니다. 해당 변경 사항은 겉치레에 불과하며, Meta 비즈니스 계정 ID(비즈니스 포트폴리오 ID)에는 영향을 미치지 않습니다.

메시지 전송 상태

이 문서에서는 주어진 API 리소스를 사용하여 메시지를 성공적으로 보낼 수 있는지 여부를 확인하는 방법을 설명합니다.

다음 노드에는 health_status 필드가 있습니다.

위의 노드에서 health_status 필드를 요청하는 경우, API에서는 대상 노드를 사용하고 있다면 메시지 요청과 관련된 모든 노드의 메시지 전송 상태에 대한 요약을 반환합니다. 이 요약에는 API를 사용하여 메시지를 성공적으로 보낼 수 있는지 여부, 하나 이상의 노드에서 다소 제한이 있어서 일부만 성공할지 여부, 메시지를 전혀 보낼 수 없는지 여부가 나와 있습니다.

요청 구문

GET /<NODE_ID>?fields=health_status

응답

{
  "health_status": {
    "can_send_message": "<OVERALL_MESSAGING_STATUS>",
    "entities": [
    
      /* Only included if targeting a business phone number */
      {
        "entity_type": "PHONE_NUMBER",
        "id": "<BUSINESS_PHONE_NUMBER_ID>",
        "can_send_message": "<BUSINESS_PHONE_NUMBER_MESSAGING_STATUS>"
      },
      
      /* Only included if targeting a template */
      {
        "entity_type": "MESSAGE_TEMPLATE",
        "id": "<TEMPLATE_ID>",
        "can_send_message": "<TEMPLATE_MESSAGING_STATUS>"
      },
      
      /* WABA, business, and app always included */
      {
        "entity_type": "WABA",
        "id": "<WABA_ID>",
        "can_send_message": "<WABA_MESSAGING_STATUS>"
      },
      {
        "entity_type": "BUSINESS",
        "id": "<BUSINESS_PORTFOLIO_ID>",
        "can_send_message": "<BUSINESS_PORTFOLIO_MESSAGING_STATUS>"
      },
      {
        "entity_type": "APP",
        "id": "<APP_ID>",
        "can_send_message": "<APP_MESSAGING_STATUS>"
      }
    ]
  },
  "id": "<NODE_ID>"
}

응답 내용

자리 표시자설명예시 값

<APP_ID>

앱 ID입니다.

634974688087057

<APP_MESSAGING_STATUS>

앱의 메시지 전송 상태입니다. 메시지 전송 상태를 참조하세요.

AVAILABLE

<BUSINESS_PORTFOLIO_ID>

비즈니스 포트폴리오 ID입니다.

506914307656634

<BUSINESS_PORTFOLIO_MESSAGING_STATUS>

비즈니스 포트폴리오의 메시지 전송 상태입니다. 메시지 전송 상태를 참조하세요.

AVAILABLE

<BUSINESS_PHONE_NUMBER_ID>

비즈니스 전화번호 ID입니다.

106540352242922

<BUSINESS_PHONE_NUMBER_MESSAGING_STATUS>

비즈니스 전화번호의 메시지 전송 상태입니다. 메시지 전송 상태를 참조하세요.

AVAILABLE

<NODE_ID>

대상 노드의 ID입니다.

161311403722088

<OVERALL_MESSAGING_STATUS>

전반적인 메시지 전송 상태입니다(대상 노드를 사용하는 경우 메시지 요청과 관련된 모든 노드에 대한 요약 반환). 메시지 전송 상태를 참조하세요.

AVAILABLE

<TEMPLATE_ID>

템플릿 ID입니다.

1421988012088524

<TEMPLATE_MESSAGING_STATUS>

템플릿의 메시지 전송 상태입니다. 메시지 전송 상태를 참조하세요.

AVAILABLE

<WABA_ID>

WABA ID입니다.

102290129340398

<WABA_MESSAGING_STATUS>

WABA의 메시지 전송 상태입니다. 메시지 전송 상태를 참조하세요.

AVAILABLE

메시지 전송 상태

메시지를 보내려고 시도할 때 앱, 앱을 소유하거나 앱에 대한 소유권을 주장한 비즈니스 포트폴리오, WABA, 비즈니스 전화번호, 템플릿(템플릿 메시지를 보내는 경우)을 포함하여 여러 노드가 관여합니다.

이들 노드는 각각 다음과 같은 메시지 전송 상태 중 하나를 can_send_message 속성에 할당받을 수 있습니다.

  • AVAILABLE: 노드가 모든 메시지 전송 요구 사항을 충족함을 나타냅니다.
  • LIMITED: 노드가 메시지 전송 요구 사항을 충족하지만 다소 제한이 있음을 나타냅니다. 주어진 노드에 이 값이 있을 경우, 추가 정보가 포함됩니다.
  • BLOCKED: 노드가 하나 이상의 메시지 전송 요구 사항을 충족하지 못함을 나타냅니다. 주어진 노드에 이 값이 있을 경우, 오류와 가능한 해결 방법을 설명하는 errors 속성이 포함됩니다.

전체 상태

전체 메시지 전송 상태 속성(health_status.can_send_message)은 다음과 같이 설정됩니다.

  • 하나 이상의 노드가 차단될 경우에는 BLOCKED로 설정됩니다.
  • 차단된 노드가 없지만 하나 이상의 노드가 제한되는 경우에는 LIMITED로 설정됩니다.
  • 모든 노드를 사용할 수 있는 경우에는 AVAILABLE로 설정됩니다.

요청 예시

curl 'https://graph.facebook.com/v21.0/106540352242922?fields=health_status' \
-H 'Authorization: Bearer EAAJB'

응답 예시

{
  "health_status": {
    "can_send_message": "AVAILABLE",
    "entities": [
      {
        "entity_type": "PHONE_NUMBER",
        "id": "106540352242922",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "WABA",
        "id": "102290129340398",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "BUSINESS",
        "id": "506914307656634",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "APP",
        "id": "634974688087057",
        "can_send_message": "AVAILABLE"
      }
    ]
  },
  "id": "106540352242922"
}

추가 정보 속성

주어진 노드의 can_send_message 속성이 LIMITED로 설정되는 경우, 제한에 대한 추가적 컨텍스트를 제공하는 additional_info 속성이 포함됩니다.

제한된 응답 예시

메시지를 전송하는 데 사용할 수 있지만 표시 이름이 승인되지 않아서 전송할 수 있는 개수에 제한이 있는 비즈니스 전화번호에 대한 요청의 응답 예시는 다음과 같습니다.

{
  "health_status": {
    "can_send_message": "LIMITED",
    "entities": [
      {
        "entity_type": "PHONE_NUMBER",
        "id": "106540352242922",
        "can_send_message": "LIMITED",
        "additional_info": [
          "Your display name has not been approved yet. Your message limit will increase after the display name is approved."
        ]
      },
      {
        "entity_type": "WABA",
        "id": "102290129340398",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "BUSINESS",
        "id": "506914307656634",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "APP",
        "id": "634974688087057",
        "can_send_message": "AVAILABLE"
      }
    ]
  },
  "id": "105154286024403"
}

Errors 속성

주어진 노드의 can_send_message 속성이 BLOCKED로 설정되는 경우, 해당 상태가 된 이유와 가능한 해결 방법을 설명하는 errors 속성이 포함됩니다.

차단된 응답 예시

아직 대기 상태여서 템플릿 메시지로 전송할 수 없는 템플릿에 대한 요청의 응답 예시는 다음과 같습니다.

{
  "health_status": {
    "can_send_message": "BLOCKED",
    "entities": [
      {
        "entity_type": "MESSAGE_TEMPLATE",
        "id": "2632273056924580",
        "can_send_message": "BLOCKED",
        "errors": [
          {
            "error_code": 141002,
            "error_description": "Message templates can only be sent out if they are approved.",
            "possible_solution": "Edit or appeal the message template review decision."
          }
        ]
      },
      {
        "entity_type": "WABA",
        "id": "102290129340398",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "BUSINESS",
        "id": "506914307656634",
        "can_send_message": "AVAILABLE"
      },
      {
        "entity_type": "APP",
        "id": "634974688087057",
        "can_send_message": "AVAILABLE"
      }
    ]
  },
  "id": "2632273056924580"
}