Marketing API Error Codes

This document provides information about some of the error codes returned by the Marketing API.

Error Codes

Error Code Description


An unknown error occurred


Application request limit reached


Application does not have permission for this action


User request limit reached


Invalid parameter


Session key invalid or no longer valid


Incorrect signature


Invalid OAuth 2.0 Access Token


Permission error


Managing advertisements requires the extended permission ads_management and an application that is whitelisted 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


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](/docs/facebook-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 (not, for example, the id of the page for the city; city ids are returned by, e.g.,


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.

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.