Instagram Messaging API · error code

Instagram error 200: This person isn't available right now

Permanent - do not retryHTTP 403Recipient & delivery

Last verified against Meta for Developers - Messenger Platform error codes

What Instagram returns
Message Not Sent: This person isn't available right now.

What error 200 means

Code 200 with subcode 1545041 means Meta refused to deliver to this particular person, and it will not tell you exactly why. The documented message - "This person isn't available right now." - is deliberately vague because the reasons are privacy-sensitive: the account may be deactivated or deleted, restricted by Instagram, or the person may have blocked the business or tightened who can message them. The same string also appears under code 551, which is the block-shaped variant of the same refusal.

The defining property is that it is recipient-specific: the identical payload delivers to other IGSIDs. That distinguishes it cleanly from token errors (190, everything fails) and from permission or window errors (200 base, 10/2534022, which name their cause). Treat it as a hard per-recipient stop. Retrying does not help, and repeatedly messaging people who cannot receive from you is exactly the behavior Meta's integrity systems watch for.

Why it happens

  • The person deactivated or deleted their Instagram account.
  • The person blocked the business account, or restricted messages so the business cannot reach them.
  • Instagram restricted or suspended the recipient's account.
  • A stale IGSID refers to a person who no longer has a message thread with the account.

How to fix Instagram error 200

  1. 1Stop sending to this IGSID now; mark the conversation unreachable in your system.
  2. 2Verify the same send succeeds for a known-good recipient to confirm the failure is recipient-scoped.
  3. 3Suppress the recipient from campaigns and automations; re-enable only if they message you again (a fresh inbound event proves reachability).
  4. 4Do not attempt to work around the refusal via comments or mentions - respect the person's unavailability.

How to stop it recurring

Build a suppression list keyed on this subcode and honor it everywhere sends originate, so one unreachable recipient cannot generate a stream of refused calls. A rising rate of 1545041 across your audience is a quality signal worth investigating - it often tracks content people did not opt into. The sibling refusals are 551 and 10/2018108; the messaging-window rules that govern legitimate re-contact are in the limits reference.

Official reference: Meta for Developers - Messenger Platform error codes. See all Instagram error codes or the Instagram limits and quotas.

Related codes

Error 200 - quick answers

What does Instagram error 200 mean?

Code 200 with subcode 1545041 means Meta refused to deliver to this particular person, and it will not tell you exactly why. The documented message - "This person isn't available right now." - is deliberately vague because the reasons are privacy-sensitive: the account may be deactivated or deleted, restricted by Instagram, or the person may have blocked the business or tightened who can message them.

How do I fix Instagram error 200?

1. Stop sending to this IGSID now; mark the conversation unreachable in your system. 2. Verify the same send succeeds for a known-good recipient to confirm the failure is recipient-scoped. 3. Suppress the recipient from campaigns and automations; re-enable only if they message you again (a fresh inbound event proves reachability). 4. Do not attempt to work around the refusal via comments or mentions - respect the person's unavailability.

Should I retry after error 200?

No. Retrying the same request produces the same error; the condition has to be fixed first. Treat it as a permanent failure for that message and surface it, rather than looping.

Stop debugging Instagram by hand

Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.