POST /v3/creative/query/advertiser → Advertiser.creatives
Overview
| Property |
Value |
| REST endpoint |
POST /v3/creative/query/advertiser |
| GraphQL query |
Advertiser.creatives |
| Return type |
AdvertiserCreativesConnection |
Request and filter field mapping
| REST field |
GraphQL argument |
GraphQL type |
Required |
Notes |
AdvertiserId |
Parent key—attaches as Advertiser.creatives |
ID! |
Required |
Resolve Advertiser by ID, then query creatives. |
PageStartIndex |
after |
String |
Optional |
N/A |
PageSize |
first |
Int |
Optional |
N/A |
SearchTerms |
where.search.like |
String |
Optional |
REST requires all terms to match across ID, name, and description. where.search uses CreativeSearchFilterInput and matches ID, ad server creative ID, name, and description. |
SearchTerms |
where.searchText.like |
String |
Optional |
Alternative filter on name and description only via StringSearchFilterInput; different semantics from where.search. |
SortFields |
creatives(order:) |
[AdvertiserCreativeSortInput!] |
Optional |
REST multi-field sort maps to order array. Default REST sort is Name ascending → order: [{ name: ASC }]. |
SortFields[].FieldId |
order[].name, order[].description |
SortEnumType |
Optional |
REST Name → name; REST Description → description. |
SortFields[].Ascending |
order[].* value |
SortEnumType |
Optional |
true → ASC; false → DESC. |
CreativeTypes |
where.type.in |
CreativeTypeOperationFilterInput |
Optional |
REST creative-type enum values map to GraphQL CreativeType enum members (e.g. Image → HOSTED_DISPLAY). |
CreativeAuditStatusFilter |
where.supplyVendorAudits |
ListSupplyVendorCreativeAuditFilterInput |
Optional |
See nested CreativeAuditStatusFilter table. |
Availabilities |
where.isArchived |
CreativeArchivedOperationFilterInput |
Optional |
REST defaults to Available only. Available → isArchived: { eq: false }; Archived → isArchived: { eq: true }. |
Response field mapping
| REST response field |
GraphQL field |
GraphQL type |
Nullable |
Notes |
Result |
nodes |
[Creative!] |
Nullable |
N/A |
ResultCount |
N/A |
N/A |
N/A |
N/A |
TotalFilteredCount |
totalCount |
Int! |
Not nullable |
N/A |
TotalUnfilteredCount |
N/A |
N/A |
N/A |
N/A |
| Result[].* (Creative fields) |
nodes[].* |
N/A |
N/A |
Each Result[] item is a full REST Creative model. Field mapping is identical to GET /v3/creative/{creativeId}—prefix GraphQL paths with nodes[].. See that endpoint doc for the complete field table. |
Endpoint-specific nested types and enums
CreativeAuditStatusFilter
| REST field |
GraphQL field |
GraphQL type |
Nullable |
Notes |
CreativeAuditor |
where.supplyVendorAudits.some.supplyVendorId |
IdOperationFilterInput |
Nullable |
REST auditor name (e.g. Google, AppNexus) maps to the corresponding supply-vendor ID filter. |
AuditStatuses |
where.supplyVendorAudits.some.auditStatus.in |
CreativeAuditStatusOperationFilterInput |
Nullable |
REST lowercase strings map to CreativeAuditStatusInput enum (e.g. approved → APPROVED, pending → PENDING, not audited → NOT_AUDITED, rejected → REJECTED, unauditable → UNAUDITABLE). |
CreativeSortingField (enum)
REST values: Name, Description. GraphQL sort members on AdvertiserCreativeSortInput: name, description (plus additional sort keys not exposed in REST).
CreativeType (enum)
REST CreativeType values map to GraphQL CreativeType members—for example Image → HOSTED_DISPLAY, HostedVideo → HOSTED_VIDEO, ThirdPartyTag → THIRD_PARTY_DISPLAY, Html5 → HOSTED_HTML5, HostedNative → HOSTED_NATIVE, HostedAudio → HOSTED_AUDIO, ThirdPartyVideo → THIRD_PARTY_VIDEO, ThirdPartyAudio → THIRD_PARTY_AUDIO.
Code examples
REST example
POST /v3/creative/query/advertiser HTTP/1.1
Content-Type: application/json
TTD-Auth: AUTH_TOKEN_PLACEHOLDER
{
"AdvertiserId": "<advertiser-id>",
"Availabilities": ["Available"],
"PageStartIndex": 0,
"PageSize": 25
}
GraphQL example
POST /graphql HTTP/1.1
Content-Type: application/json
TTD-Auth: AUTH_TOKEN_PLACEHOLDER
query GetCreativesByAdvertiser($advertiserId: ID!) {
advertiser(id: $advertiserId) {
id
creatives(
first: 25
where: { isArchived: { eq: false } }
order: [{ name: ASC }]
) {
totalCount
nodes {
id
name
description
flightStart
flightEnd
type
isArchived
}
pageInfo {
hasNextPage
endCursor
}
}
}
}