Ads Review Information (Legacy)
Warning
Deprecation Notice
The Marketing Version 202310 (Marketing October 2023) and earlier versions (excluding 202306 and 202307) have been sunset. Additionally, the unversioned APIs will be sunset soon. We recommend that you migrate to the versioned APIs as well as migrate to the new Content and Community Management APIs to avoid disruptions. See the Migration page for more details.
If you haven’t yet migrated and have questions, submit a request on the LinkedIn Developer Support Portal.
The Ads Review Information API provides a programmatic way for LinkedIn partners to retrieve ad entities status such as Ad Lift Tests. You can check the review state, final decision, and metadata associated with granular information such as rejection reasons.
Note
This endpoint can only be used for fetching the review status of an ad entity. Update operations are not permitted. Currently this API only supports review of Ad Lift test entity.
Permissions
Permission | Description |
---|---|
rw_ads | Manage and read an authenticated member's ad accounts. Restricted to ad accounts in which the authenticated member has one of the following Ad Account roles. |
r_ads | Read an authenticated member's ad accounts. Restricted to ad accounts in which the authenticated member has one of the following Ad Account roles. |
See Account Access Controls for more information on Ad Account roles.
Schema
The following tables show the schemas for the response fields.
AdReviewInformation
Review result for an ad entity.
Field Name | Type | Description |
---|---|---|
decisionInfo | ReviewDecisionInformation | Contains the final ad entity decision and additional decision metadata. Field is not present if a decision has not been made on the ad entity yet (e.g., if an ad entity is newly created and the review process has not yet completed). If stateInfo.state is IN_PROGRESS and decisionInfo is present, it means that a temporary decision has been made subject to change. If stateInfo.state is COMPLETED, then decisionInfo is always present and represents a final decision that does not change unless re-review is triggered. |
stateInfo | ReviewStateInformation | Contains the current review state and additional metadata about that state. |
ReviewDecisionInformation
Final decision on an ad entity and associated metadata.
Field Name | Type | Description |
---|---|---|
decision | string | One of the following decisions can be taken upon an ad entity. |
decisionReason | ReviewRejectionMetadata | Reason for current entity decision |
ReviewStateInformation
Current review state of an ad entity and associated metadata
Field Name | Type | Description |
---|---|---|
state | string | Current entity review state. Possible values include: |
ReviewRejectionMetadata
Reasons for review rejection
Field Name | Type | Description |
---|---|---|
customRejectionInformation | optional Union of MessageRejectionInformation[], CardRejectionInformation[] | The union of custom rejection information, like rejection reasons for a particular ad entity. For example, messageRejectionInformation for conversation ads. This field could be null indicating no custom information. |
rejectionReasons | Array[] | An array of reasons for rejecting ad entities. For more details, refer to the Rejection Reason list. |
Get AdsReviewInformation
Get the AdsReviewInformation. API calls with insufficient read permission receive a 403 Forbidden
response.
The request must include a header for Restli Protocol 2.0.0 as X-Restli-Protocol-Version: 2.0.0
. Restli 2.0 requires URNs in query params to be URL encoded. For example, urn:li:adLiftTest:1245678
would become urn%3Ali%3A adLiftTest t%3A1245678
.
Note
Support for BATCH_GET is forthcoming.
Request Syntax
GET https://api.linkedin.com/v2/adsReviewInformation/($params:(contentVersion:(versionTag:{adReviewVersionTag})),urn:({adEntity}:{adEntityUrn}))
Request Parameters
Field Name | Required | Description |
---|---|---|
adReviewVersionTag | Yes | Reviewed content version. Fetch this for your ad entity every time before calling this endpoint to avoid any stale information as the content version can change if the review flow is re-triggered. Fetching version tag for below entities :Ad Lift Test - Invoke the /adLiftTests GET endpoint and use the contentReviewVersion field present in the response |
adEntity | Yes | Name of the ad entity. For example, adLiftTest |
adEntityUrn | Yes | The ad entity URN. For example, urn:li:adLiftTest:123 |
Example
GET https://api.linkedin.com/v2/adsReviewInformation/$params:(contentVersion:(versionTag:1604052659511)),urn:(adLiftTest:urn%3Ali%3AadLiftTest%3A18725))
Sample Responses
Rejected Ad Entity
{
"decisionInfo":{
"decision":"REJECTED",
"decisionReason":{
"rejectionReason":{
"rejectionReasons":[
"INAPPROPRIATE_NAME"
]
}
}
},
"stateInfo":{
"state":"COMPLETED"
}
}
Ad Enitity in review
{
"stateInfo":{
"state":"IN_PROGRESS"
}
}
HTTP Error Codes
HTTP Code | Description |
---|---|
400 | Request failed validation checks |
401 | Reader doesn’t have access to this ad entity |
403 | Forbidden |
404 | ReviewInformation not found for specified entity urn, entity version tuple |
422 | Ad entity not found |
500 | Internal Server Error |