Audit status codes

Audit status codes record where an ad stands in a creative review: waiting, provisionally allowed, approved, denied, changed since review, or expired. The list is used only by the AdCOM Audit object, which hangs off the Ad object in OpenRTB 3.0 and in creative registration flows such as the IAB Tech Lab Ad Management API. OpenRTB 2.x has no standard audit field; exchanges report review status through their own APIs or extensions.

List: Audit Status Codes7 values

Values

ValueNameWhat it means
1Pending AuditThe review has not finished, and the ad should not be assumed usable unless the vendor's policy says otherwise.
2Pre-ApprovedThe review has not finished, but the ad may run in the meantime under the vendor's policy; the final result can still change that.
3ApprovedThe review is complete and the ad may run, possibly with attributes the auditor corrected.
4DeniedThe review is complete and the ad was rejected for a material problem.
5Changed; Resubmission RequestedA version of the ad that differs materially from the reviewed one was seen, so it must be resubmitted and may be rejected until then.
6ExpiredThe vendor has marked the ad as expired; what bidding on it means is agreed between the parties.
500+Vendor-specific codesVendor-specific audit states agreed between the parties.

How to use it

An audit status belongs to an ad as reviewed by a particular vendor, usually the exchange, and it changes over time. The Audit object pairs the status with human-readable feedback, timestamps for creation and last change, and an optional correction object in which the auditor proposes fixed values, for example a different category. Statuses 2, 5 and 6 depend on policies the two parties agree outside the specification, so write those rules down before relying on them.

Common mistakes

  • Treating 2 (Pre-Approved) as final. The ad can still be denied when the review completes.
  • Ignoring corrections on an approved ad. Approval can come with changed fields such as the advertiser domain or categories, and the corrected values are what the exchange will enforce.
  • Looking for an audit status field in OpenRTB 2.x. There is none in the standard objects.

Validation

On OpenRTB 2.6 snapshots, RTBlint reports a value outside this list as openrtb.value.invalid. Paste a request into the tester to check the values you send.

Related lists

All lists are on the enumerated lists index.