Skip to main content

Showcase creative validation rules for app IDs, etag updates, resource state management, and creative details requirements

App Ids

AppIdsMustBePresent

Preconditions
callToAction is solely supported by one or more external applications which are only identifiable via an Apple application identifier
DefinitionSeverityAPISampleMode
Validate that appIds is present
VIOLATION
POST_AND_PUT
S

AppIdsMustBeResolvable

DefinitionSeverityAPISampleMode
Validate that each appIds value is resolvable to an Apple-generated application identifier
VIOLATION
POST_AND_PUT
A
Example Validation Report
{
"code": "VALIDATION__AppIdsMustBeResolvable",
"severity": "VIOLATION",
"message": "Referenced '{{appIds}}' value must exist",
"context": {
"appIds": [ "284910350", "284910352" ]
}
}

AppIdsMustBeValid

DefinitionSeverityAPISampleMode
Validate that an appIds value has valid formatting
VIOLATION
POST_AND_PUT
S

AppIdsMustNotBeEmpty

DefinitionSeverityAPISampleMode
Validate that appIds does not include an empty string
VIOLATION
POST_AND_PUT
S

AppIdMustBeResolvableToProviderOfCTA

DefinitionSeverityAPISampleMode
Validate that an appIds value is resolvable to a provider of the referenced callToAction
VIOLATION
POST_AND_PUT
A
Example Validation Report
{
"code": "VALIDATION__AppIdMustBeResolvableToProviderOfCTA",
"severity": "VIOLATION",
"message": "appIds value is not available for use with location `{{value}}`",
"context": {
"value": "9467895078742654976"
}
}

AppIdsMayListExactlyOneId

DefinitionSeverityAPISampleMode
Validate that the maximum count of items in an appIds list is exactly one (1)
VIOLATION
POST_AND_PUT
S
Example Validation Report
{
"code": "VALIDATION__AppIdsMayListExactlyOneId",
"severity": "VIOLATION",
"message": "'{{field}}' may list exactly one value",
"context": {
"field": "appIds"
}
}

AppIdsMustBeDistinct

DefinitionSeverityAPISampleMode
Validate that each appIds value is distinct
VIOLATION
POST_AND_PUT
S

Etag

EntityETagDoesNotAllowUpdate

DefinitionSeverityAPISampleMode
Validate that the provided etag matches with the current version when update is requested
VIOLATION
POST_AND_PUT
S

Resource State

CreativeMustNotReferToActiveShowcase

DefinitionSeverityAPISampleMode
Validate that a Showcase Creative is not associated with an "active" Showcase when delete is requested
VIOLATION
POST_AND_PUT
S

CreativeStateMustBeValid

DefinitionSeverityAPISampleMode
Validate that Showcase Creative resource state is not any of the following when delete is requested: APPROVED, IN_REVIEW, REJECTED or SUBMITTED
VIOLATION
POST_AND_PUT
S

EntityStateDoesNotAllowUpdate

DefinitionSeverityAPISampleMode
Validate that Showcase Creative resource state is not any of the following when an update is requested: APPROVED or DELETED
VIOLATION
POST_AND_PUT
S

ShowcaseMustHaveValidStateForDeactivation

DefinitionSeverityAPISampleMode
Validate that Showcase state is PUBLISHED when deactivate is requested
VIOLATION
POST_AND_PUT
S

Showcase Creative

ShowcaseCreativeDetailsMustBePresent

DefinitionSeverityAPISampleMode
Validate that showcaseCreativeDetails are present
VIOLATION
POST_AND_PUT
S