LINE Messaging API · error code

LINE error 403: Not enough recipients (narrowcast)

Policy / accountHTTP 403404 / 410: recipients, profiles and content

Last verified against LINE Developers - Messaging API reference (error responses)

What LINE returns
Not enough recipients <detail varies>

What error 403 means

The narrowcast endpoint enforces privacy floors on audience size, and this 403 is what tripping the first of them looks like. The documented restrictions: "To specify attribute data as a condition of sending, your LINE Official Account's target reach number must be 100 people or more. Returns a 403 HTTP status code if your target reach is less than 100 people." Beyond that, "the final number of recipients must be 50 or more" when using attributes or audiences, and each audience combined into the condition must itself have at least 50 recipients - with the wrinkle that those two 50-floors don't reject your request up front: the API still returns 202, and "an error will occur when message delivery starts."

That split behavior is the debugging trap. A narrowcast can be accepted (202) and then die asynchronously minutes later; you only see the failure by polling the get-narrowcast-progress endpoint, where the phase turns to failed. So "narrowcast returns 403" and "narrowcast silently doesn't deliver" are usually the same family of problem at different thresholds: under 100 target reach fails fast, under 50 final recipients fails late.

These are policy floors designed to prevent de-anonymizing individuals through narrow targeting, so there is no override. Audiences created by uploading user IDs from your own account and chat tag audiences are documented exceptions to the per-audience floor - but the floors still apply to audiences created by other LINE Official Accounts.

What it looks like

HTTP/1.1 403 Forbidden

{
  "message": "Not enough recipients"
}

Why it happens

  • The LINE Official Account's target reach is below 100, and the narrowcast request filters by attribute data (age, gender, OS, region).
  • The combination of filters narrows the final recipient count below 50 - accepted with 202, then failing when delivery starts.
  • One of the audiences specified has fewer than 50 recipients (for audience types where the floor applies).
  • Testing narrowcast on a development account with a handful of friends - the floors make that structurally impossible.
  • The remaining monthly quota is smaller than the target reach that narrowcast must reserve, causing a delivery-time failure instead.

How to fix LINE error 403

  1. 1Check target reach in LINE Official Account Manager; if it's under 100, attribute-based narrowcast can't be used yet - grow the friend base or switch approach.
  2. 2Poll GET /v2/bot/message/progress/narrowcast?requestId=... after every 202 to catch delivery-phase failures, and log the failedDescription.
  3. 3Broaden the filter conditions or merge audiences so the final recipient estimate clears 50.
  4. 4For small, known recipient sets, use multicast with explicit user IDs (up to 500 per request) - it has no minimum floor.
  5. 5Check remaining monthly quota before large narrowcasts - the reservation is based on target reach, not actual recipients.

How to stop it recurring

Encode the floors into your campaign tooling: refuse to submit attribute-targeted narrowcasts when target reach is under 100, warn when estimated recipients approach 50, and always store the requestId so the progress endpoint can be polled to completion. For developer and staging accounts, standardize on multicast for testing - narrowcast is untestable below the privacy thresholds by design. See sending caps and audience limits.

Official reference: LINE Developers - Messaging API reference (error responses). See all LINE error codes or the LINE limits and quotas.

Related codes

Error 403 - quick answers

What does LINE error 403 mean?

The narrowcast endpoint enforces privacy floors on audience size, and this 403 is what tripping the first of them looks like. The documented restrictions: "To specify attribute data as a condition of sending, your LINE Official Account's target reach number must be 100 people or more.

How do I fix LINE error 403?

1. Check target reach in LINE Official Account Manager; if it's under 100, attribute-based narrowcast can't be used yet - grow the friend base or switch approach. 2. Poll GET /v2/bot/message/progress/narrowcast?requestId=... after every 202 to catch delivery-phase failures, and log the failedDescription. 3. Broaden the filter conditions or merge audiences so the final recipient estimate clears 50. 4. For small, known recipient sets, use multicast with explicit user IDs (up…

Stop debugging LINE by hand

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