Error Codes

The following are error codes returned by the API:

Error Code Description


Negative-value error codes are internal Facebook errors. Check error_subcode for the actual failure code.


An unknown error occurred

1, subcode 99

An unknown error occurred. This error may occur if you set level to adset but the correct value should be campaign.


Application request limit reached


Application does not have permission for this action


User request limit reached


Invalid parameter

100, subcode 33

Unsupported post request.

This error may occur if your access token is not added as a system user with appropriate permissions to the ad account that owns a Custom Audience. Verify the ad account in Business Manager and verify all system users appear under the ad account as Admin:

  • Click on Business Settings
  • Click the ad account
  • Select Add people
  • Search for system user and add them as Admins
  • Retry your API call

100, subcode 1487694

Invalid parameter.

The category you selected is no longer available. Several behavior-based targeting categories are deprecated. If you try to use them to create ads, your requests fails and returns this error. Use Targeting Search to see categories available for targeting.

100, subcode 1752129

Invalid parameter.

This Task Combination Is Not Supported. To assign a user for this ad account valid capabilities, you should pass in a combination of tasks defined in the mapping. See Business Manager API, Permitted Roles.


Session key invalid or no longer valid


Incorrect signature


Invalid OAuth 2.0 Access Token


Permission error

200, subcode 1870034

Custom Audience Terms Not Accepted: You'll need to agree to the Custom Audience terms before you can create or edit an audience or an ad set. See Facebook, Custom Audience Terms

200, subcode 1870047

Audience Size too Low: You cannot remove users from this audience because it will result in a low audience size and may result in under-delivery or non-delivery of your ads.


Managing advertisements requires the extended permission `ads_management` and an application that is in our allow list to access the Marketing API


Unable to display a preview of this ad


The given currency is invalid for usage with ads.


Invalid call to update this adaccount


Failed to create custom audience.

2654 subcode 1713092

No write permission for this ad account. Developer making this call must have permissions for the ad account to create an audience for it.


Unknown Error Code


One or more of the given URLs is not allowed by the Stream post URL security app setting. It must match the Website URL or Canvas URL, or the domain must be a subdomain of one of the App's domains. Read more about Login Security to learn more about app settings related to security.


Ad Create Failed - Too Many Ads: The account {account_id} has reached the maximum number of ads {max}


Invalid Parameter In Spec: Parameter has invalid value or missing required parameter: {param-value}


Invalid Campaign ID: You must specify a campaign, and the campaign specified must belong to the account specified and must not be deleted.


Campaign Ended: You can't edit ads in a campaign that has ended. Please create a new ad within this campaign, update the campaign end time, pick another campaign, or create a new campaign.


Ad Bid Too High: Your bid is above the maximum for its type and placement. Please try again with a value below the maximum if you would like to raise your bid.


Bid Too Low: Your bid is below the minimum for its placement and type. If you don't want your ad to run at the minimum bid rate, please pause it. Otherwise, please increase the bid to be within the suggested range.


Campaign budget was too low. Please increase the daily budget to at least 2 times the amount of the highest CPC ad bid, which is at least {minimum_budget}. You bid {bid}.


The ad creative is invalid


Ad Missing Targeting Spec: Ad spec needs a targeting spec. Please use targeting field to specify what audience the ad should be shown to. Field 'countries' is required; all others are optional.


Ad Create Failed: The Ad Create Failed for the following reason: {reason}


Target Spec Invalid: The target spec is invalid: {reason}


Ad Edit Failed - Spec Errors: {error}


Invalid Cities: Please check that the format in which you are specify the cities is correct, and if you specify IDs, that they are of the correct type. This can not be the the ID of the page for the city; city ids are returned by, `/search?type=adcity`.


Invalid Connection: You can only specify connections to objects you are an administrator or developer of.


Invalid Negative Connections: If you specify negative targeting, you must be the administrator or developer of the objects whose fans you want to specify to exclude. You are not an admin of the following specified connections: {connections}


Could not save creative


Invalid Image Hash: Invalid Image Hash - {hash}


Permission Error: Either the object you are trying to access is not visible to you or the action you are trying to take is restricted to certain account types.


Ad targeting does not match targeting of the story: The targeting specified for this ad is not compatible with the story being boosted. Check the privacy and language/country targeting of the story you are trying to sponsor.


Invalid object - not admin or object not public: The user is not an admin of the object or the object is not publicly accessible.


Invalid URL For Creative Destination: Creative must have a valid destination URL, and if attached object is page, destination must match page.


Ad Creation Limited By Daily Spend: The number of ads you can create in a given period of time has a limit determined by your daily spend level. Higher spend levels allow creation of more ads. Increase your daily spend limit or create fewer ads per time period.


Campaign Update Failed: Campaign {campaign_id}: {reason}


Campaign Creation Failed: {reason}


Targeting declined due to policy: Invalid ads targeting. The targeting spec was declined due to policy restrictions.


Not Allowed To Use View Tags: Only some partners are allowed to use view tags. Please verify that you are using an approved account.


Custom Audience Unavailable: The custom audience you're trying to use hasn't been shared with your ad account. Please create or choose a different custom audience, or ask the owner of the custom audience to let you use it.


The post does not belong to the specified Page: Post to be promoted does not belong to the Page specified. The post belongs to {otherDestination}; try using this as the destination or using a post that belongs to the specified Page. Specified Page: {destination}.


Custom Audience Has Been Deleted: Cannot use deleted custom audience. Please choose another audience.


Conversion Spec Needed: For ads pointing to an offsite location with a non-zero bid on actions, you must specify the conversion spec.


Invalid aggregation day for conversion data. The aggregation day must be larger than or equal to 1.


Adcreative Create Failed: The Adcreative Create Failed for the following reason: {reason}


Cannot Use Syndicated Audiences From Multiple Partners: When specifying partner-created custom audiences for an ad, all audiences must be from the same provider.


Failed to update the creative: Failed to update creative {id}. Failed for the following reason: {reason}


Ad Needs Exclusion Targeting: This ad cannot be created with the targeting spec you selected. Your ad has a conversion objective that users can only do once, so you must target the ad at those users who have not already converted. If you are using the Facebook API, consider including the following string in your targeting spec: {exclusion-targeting-spec}.


Invalid CPA Bid: The action type you selected is not allowed for Cost-Per-Action (CPA) bidding: '{action_type}'. Please change your optimization goal or switch your bid type to regular Optimized CPM.


This type of page post is not eligible to be promoted. {debug_info}


Conversion Tracking Pixel Permission Error: The conversion tracking pixel you're trying to use is owned by another user and hasn't been shared with you. Please use a tracking pixel that's been shared with you or create a new one.


Too many async requests


The new budget value is too low: The new budget value of {new_budget} is too low. The minimum acceptable is {minimum_budget}.


No supported fields were provided for updating the campaign


No supported fields were provided for updating the ad


Ad Update Failed {reason}


You must specify an object_id for this adcreative type (creative type 27)


There have been too many calls from this ad-account. Wait a bit and try again.


You have overlapping locations specified in the geo_locations field. Your broader option will override the narrower option, please remove one to proceed.


The promoted object is invalid: it could have been deleted or never existed.


The given prediction id in a reach and frequency campaign is not reserved.


The given reservation in a reach and frequency campaign is not finalized yet.


The given reservation in a reach and frequency campaign is already finalized


The prediction in a reach and frequency campaign is already reserved.


This indicates the operation fails for an unknown reason.


The given page types are not supported by the inventory manager.


A finalized prediction order can not be cancelled. You can create a new prediction or delete the campaign.


Conversion Spec Targets Invalid ID: You are targeting an ID in your conversion spec without admin permissions on that object. {debug_info}


This Promotion Can't Be Edited: This can't be edited because you promoted it from your Page. Find the post on your Page to pause, delete, or update budget for this promotion.


This Promotion Can't Be Edited: This can't be edited because you promoted it from your Page. Find the post on your Page to pause, delete, or update budget for this promotion.


Your bid strategy is invalid. Current available bid strategies are LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, and TARGET_COST. Please choose a valid bid strategy to suit your business goals. Effective as of 3.0.


You are trying to set a bid strategy on an ad set in an ad campaign with campaign budget optimization enabled. Setting bid strategy on such an ad set is not allowed. Either remove bid strategy on your ad set or disable campaign budget optimization on your campaign. Effective as of 3.0.


You are trying to set a bid strategy on an ad set in an ad campaign that does not use Auction buying type. Setting bid strategy on such an ad set is not allowed. Effective as of 3.0.


Bid amount required: you must provide a bid cap or target cost in bid_amount field. For LOWEST_COST_WITH_BID_CAP you must provide bid_amount field to set a bid cap. For TARGET_COST, you must provide bid_amount field to set an average target cost goal. Effective as of 3.0.


You can't set a bid cap on ad sets with LOWEST_COST_WITHOUT_CAP bid strategy. Please either remove bid_amount or change to use LOWEST_COST_WITH_BID_CAP with bid_amount. Effective as of 3.0.


Optimization Goal Isn't Available: You can't use the selected optimization goal for your campaign objective. Please select a different goal and edit your campaign.


We disallow creation of empty product sets for Advantage+ catalog ads. Please add products to your catalog and create a set that contains at least one product.


Unable to Create Campaign Using This Ad Account. To create Collaborative Ads campaigns, Brand Advertisers must use a separate ad account for each seller they partner with. Make sure you use a separate ad account associated with the seller who owns this catalog segment. Under limited availability.


Unable to Create Campaign Using This Catalog Segment. You cannot use this ad account to run ads for this catalog segment. The business created this catalog segment for a Brand Advertiser to use in Collaborative Ads. Choose a different ad account, or use this ad account to run campaigns using a product catalog instead. Under limited availability.


You can't edit your pixel, conversion event, custom conversion or optimization for an ad set after the ad set is published. To run an ad set with your desired changes, create a new ad set.

Error handling should be done using only the Error Codes. The Description string is subject to change without prior notice.


This is a property included in the error_data blob of any API call that results in a validation error, which indicates which field(s) is at fault for the validation error. This can be used to provide contextual errors, e.g. displaying an error right next to the field(s) at fault in the GUI of an ad creation tool.

blame_field_specs is an array, where each element of the array is a blame_field_spec which indicates a single field from the API spec that is at fault.

A blame_field_spec itself is an array also, which indicates the name of the field that is at fault and the location of this field within the overall API spec provided.


Single field at fault

    "message":"The budget for your Ad-Set is too low.  It must be at least $1.00 per day.",

Indicates that the daily_budget field of the API spec is at fault and in this case it was too low.

Multiple fields at fault

  ["targeting_spec", "interested_in"], 
  ["bid_info", "impressions"]

Indicates that there is an error related to the interested_in subfield within the targeting_spec field of the API spec, and the error is also related to field impressions within the bid_info field of the API spec.