---
title: "POST /v2beta1/accounts/{accountId}/creatives"
method: POST
path: "/v2beta1/accounts/{accountId}/creatives"
tags: ["accounts"]
---

# POST /v2beta1/accounts/{accountId}/creatives

`POST /v2beta1/accounts/{accountId}/creatives`

Creates a creative.

## Path parameters

- `accountId` string, required

## Query parameters

- `duplicateIdMode` 'NO_DUPLICATES' | 'FORCE_ENABLE_DUPLICATE_IDS'

## Request body

- Creative — A creative and its classification data.
  - `html` HtmlContent — HTML content for a creative.
    - `width` integer — The width of the HTML snippet in pixels.
    - `snippet` string — The HTML snippet that displays the ad when inserted in the web page.
    - `height` integer — The height of the HTML snippet in pixels.
  - `agencyId` string, int64 — The agency ID for this creative.
  - `apiUpdateTime` string, google-datetime — Output only. The last update timestamp of the creative through the API.
  - `dealsStatus` 'STATUS_UNSPECIFIED' | 'NOT_CHECKED' | 'CONDITIONALLY_APPROVED' | 'APPROVED' | 'DISAPPROVED' | 'PENDING_REVIEW' | 'STATUS_TYPE_UNSPECIFIED' — Output only. The top-level deals status of this creative. If disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL') in serving_restrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case, it may be preferable to read from serving_restrictions directly. Can be used to filter the response of the creatives.list method.
  - `adChoicesDestinationUrl` string — The link to AdChoices destination page.
  - `vendorIds` integer[] — All vendor IDs for the ads that may be shown from this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt for possible values.
  - `creativeId` string — The buyer-defined creative ID of this creative. Can be used to filter the response of the creatives.list method.
  - `declaredClickThroughUrls` string[] — The set of declared destination URLs for the creative.
  - `native` NativeContent — Native content for a creative.
    - `body` string — A long description of the ad.
    - `appIcon` Image — An image resource. You may provide a larger image than was requested, so long as the aspect ratio is preserved.
      - `url` string — The URL of the image.
      - `height` integer — Image height in pixels.
      - `width` integer — Image width in pixels.
    - `advertiserName` string — The name of the advertiser or sponsor, to be displayed in the ad creative.
    - `clickTrackingUrl` string — The URL to use for click tracking.
    - `videoUrl` string — The URL to fetch a native video ad.
    - `priceDisplayText` string — The price of the promoted app including currency info.
    - `storeUrl` string — The URL to the app store to purchase/download the promoted app.
    - `starRating` number, double — The app rating in the app store. Must be in the range [0-5].
    - `image` Image — An image resource. You may provide a larger image than was requested, so long as the aspect ratio is preserved.
      - `url` string — The URL of the image.
      - `height` integer — Image height in pixels.
      - `width` integer — Image width in pixels.
    - `logo` Image — An image resource. You may provide a larger image than was requested, so long as the aspect ratio is preserved.
      - `url` string — The URL of the image.
      - `height` integer — Image height in pixels.
      - `width` integer — Image width in pixels.
    - `headline` string — A short title for the ad.
    - `clickLinkUrl` string — The URL that the browser/SDK will load when the user clicks the ad.
    - `callToAction` string — A label for the button that the user is supposed to click.
  - `restrictedCategories` string[] — All restricted categories for the ads that may be shown from this creative.
  - `accountId` string — The account that this creative belongs to. Can be used to filter the response of the creatives.list method.
  - `adTechnologyProviders` AdTechnologyProviders — Detected ad technology provider information.
    - `detectedProviderIds` string[] — The detected ad technology provider IDs for this creative. See https://storage.googleapis.com/adx-rtb-dictionaries/providers.csv for mapping of provider ID to provided name, a privacy policy URL, and a list of domains which can be attributed to the provider. If the creative contains provider IDs that are outside of those listed in the `BidRequest.adslot.consented_providers_settings.consented_providers` field on the (Google bid protocol)[https://developers.google.com/authorized-buyers/rtb/downloads/realtime-bidding-proto] and the `BidRequest.user.ext.consented_providers_settings.consented_providers` field on the (OpenRTB protocol)[https://developers.google.com/authorized-buyers/rtb/downloads/openrtb-adx-proto], and a bid is submitted with that creative for an impression that will serve to an EEA user, the bid will be filtered before the auction.
    - `hasUnidentifiedProvider` boolean — Whether the creative contains an unidentified ad technology provider. If true for a given creative, any bid submitted with that creative for an impression that will serve to an EEA user will be filtered before the auction.
  - `detectedAdvertiserIds` string[] — Output only. Detected advertiser IDs, if any.
  - `detectedProductCategories` integer[] — Output only. Detected product categories, if any. See the ad-product-categories.txt file in the technical documentation for a list of IDs.
  - `openAuctionStatus` 'STATUS_UNSPECIFIED' | 'NOT_CHECKED' | 'CONDITIONALLY_APPROVED' | 'APPROVED' | 'DISAPPROVED' | 'PENDING_REVIEW' | 'STATUS_TYPE_UNSPECIFIED' — Output only. The top-level open auction status of this creative. If disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in serving_restrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case, it may be preferable to read from serving_restrictions directly. Can be used to filter the response of the creatives.list method.
  - `clickThroughUrls` string[] — The set of destination URLs for the creative.
  - `detectedSensitiveCategories` integer[] — Output only. Detected sensitive categories, if any. See the ad-sensitive-categories.txt file in the technical documentation for a list of IDs. You should use these IDs along with the excluded-sensitive-category field in the bid request to filter your bids.
  - `version` integer — Output only. The version of this creative.
  - `impressionTrackingUrls` string[] — The set of URLs to be called to record an impression.
  - `attributes` string[] — All attributes for the ads that may be shown from this creative. Can be used to filter the response of the creatives.list method.
  - `advertiserName` string — The name of the company being advertised in the creative.
  - `detectedDomains` string[] — Output only. The detected domains for this creative.
  - `detectedLanguages` string[] — Output only. The detected languages for this creative. The order is arbitrary. The codes are 2 or 5 characters and are documented at https://developers.google.com/adwords/api/docs/appendix/languagecodes.
  - `corrections` Correction[] — Output only. Shows any corrections that were applied to this creative.
    - `details` string[] — Additional details about what was corrected.
    - `contexts` ServingContext[] — The contexts for the correction.
      - `all` 'SIMPLE_CONTEXT' — Matches all contexts.
      - `location` LocationContext — Output only. The Geo criteria the restriction applies to.
        - `geoCriteriaIds` integer[] — IDs representing the geo location for this context. Refer to the [geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv) file for different geo criteria IDs.
      - `appType` AppContext — Output only. The app type the restriction applies to for mobile device.
        - `appTypes` string[] — The app types this restriction applies to.
      - `auctionType` AuctionContext — Output only. The auction type the restriction applies to.
        - `auctionTypes` string[] — The auction types this restriction applies to.
      - `securityType` SecurityContext — Output only. A security context.
        - `securities` string[] — The security types in this context.
      - `platform` PlatformContext — Output only. The type of platform the restriction applies to.
        - `platforms` string[] — The platforms this restriction applies to.
    - `type` 'CORRECTION_TYPE_UNSPECIFIED' | 'VENDOR_IDS_ADDED' | 'SSL_ATTRIBUTE_REMOVED' | 'FLASH_FREE_ATTRIBUTE_REMOVED' | 'FLASH_FREE_ATTRIBUTE_ADDED' | 'REQUIRED_ATTRIBUTE_ADDED' | 'REQUIRED_VENDOR_ADDED' | 'SSL_ATTRIBUTE_ADDED' | 'IN_BANNER_VIDEO_ATTRIBUTE_ADDED' | 'MRAID_ATTRIBUTE_ADDED' | 'FLASH_ATTRIBUTE_REMOVED' | 'VIDEO_IN_SNIPPET_ATTRIBUTE_ADDED' — The type of correction that was applied to the creative.
  - `servingRestrictions` ServingRestriction[] — Output only. The granular status of this ad in specific contexts. A context here relates to where something ultimately serves (for example, a physical location, a platform, an HTTPS versus HTTP request, or the type of auction).
    - `status` 'STATUS_UNSPECIFIED' | 'DISAPPROVAL' | 'PENDING_REVIEW' — The status of the creative in this context (for example, it has been explicitly disapproved or is pending review).
    - `disapprovalReasons` Disapproval[] — Any disapprovals bound to this restriction. Only present if status=DISAPPROVED. Can be used to filter the response of the creatives.list method. Deprecated; use disapproval field instead.
      - `reason` 'LENGTH_OF_IMAGE_ANIMATION' | 'BROKEN_URL' | 'MEDIA_NOT_FUNCTIONAL' | 'INVALID_FOURTH_PARTY_CALL' | 'INCORRECT_REMARKETING_DECLARATION' | 'LANDING_PAGE_ERROR' | 'AD_SIZE_DOES_NOT_MATCH_AD_SLOT' | 'NO_BORDER' | 'FOURTH_PARTY_BROWSER_COOKIES' | 'LSO_OBJECTS' | 'BLANK_CREATIVE' | 'DESTINATION_URLS_UNDECLARED' | 'PROBLEM_WITH_CLICK_MACRO' | 'INCORRECT_AD_TECHNOLOGY_DECLARATION' | 'INCORRECT_DESTINATION_URL_DECLARATION' | 'EXPANDABLE_INCORRECT_DIRECTION' | 'EXPANDABLE_DIRECTION_NOT_SUPPORTED' | 'EXPANDABLE_INVALID_VENDOR' | 'EXPANDABLE_FUNCTIONALITY' | 'VIDEO_INVALID_VENDOR' | 'VIDEO_UNSUPPORTED_LENGTH' | 'VIDEO_UNSUPPORTED_FORMAT' | 'VIDEO_FUNCTIONALITY' | 'LANDING_PAGE_DISABLED' | 'MALWARE_SUSPECTED' | 'ADULT_IMAGE_OR_VIDEO' | 'INACCURATE_AD_TEXT' | 'COUNTERFEIT_DESIGNER_GOODS' | 'POP_UP' | 'INVALID_RTB_PROTOCOL_USAGE' | 'RAW_IP_ADDRESS_IN_SNIPPET' | 'UNACCEPTABLE_CONTENT_SOFTWARE' | 'UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN' | 'UNDECLARED_FLASH_OBJECTS' | 'INVALID_SSL_DECLARATION' | 'DIRECT_DOWNLOAD_IN_AD' | 'MAXIMUM_DOWNLOAD_SIZE_EXCEEDED' | 'DESTINATION_URL_SITE_NOT_CRAWLABLE' | 'BAD_URL_LEGAL_DISAPPROVAL' | 'PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED' | 'DYNAMIC_DNS_AT_DESTINATION_URL' | 'POOR_IMAGE_OR_VIDEO_QUALITY' | 'UNACCEPTABLE_IMAGE_CONTENT' | 'INCORRECT_IMAGE_LAYOUT' | 'IRRELEVANT_IMAGE_OR_VIDEO' | 'DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK' | 'MISLEADING_CLAIMS_IN_AD' | 'RESTRICTED_PRODUCTS' | 'UNACCEPTABLE_CONTENT' | 'AUTOMATED_AD_CLICKING' | 'INVALID_URL_PROTOCOL' | 'UNDECLARED_RESTRICTED_CONTENT' | 'INVALID_REMARKETING_LIST_USAGE' | 'DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT' | 'CLICK_TO_DOWNLOAD_NOT_AN_APP' | 'INACCURATE_REVIEW_EXTENSION' | 'SEXUALLY_EXPLICIT_CONTENT' | 'GAINING_AN_UNFAIR_ADVANTAGE' | 'GAMING_THE_GOOGLE_NETWORK' | 'DANGEROUS_PRODUCTS_KNIVES' | 'DANGEROUS_PRODUCTS_EXPLOSIVES' | 'DANGEROUS_PRODUCTS_GUNS' | 'DANGEROUS_PRODUCTS_DRUGS' | 'DANGEROUS_PRODUCTS_TOBACCO' | 'DANGEROUS_PRODUCTS_WEAPONS' | 'UNCLEAR_OR_IRRELEVANT_AD' | 'PROFESSIONAL_STANDARDS' | 'DYSFUNCTIONAL_PROMOTION' | 'INVALID_INTEREST_BASED_AD' | 'MISUSE_OF_PERSONAL_INFORMATION' | 'OMISSION_OF_RELEVANT_INFORMATION' | 'UNAVAILABLE_PROMOTIONS' | 'MISLEADING_PROMOTIONS' | 'INAPPROPRIATE_CONTENT' | 'SENSITIVE_EVENTS' | 'SHOCKING_CONTENT' | 'ENABLING_DISHONEST_BEHAVIOR' | 'TECHNICAL_REQUIREMENTS' | 'RESTRICTED_POLITICAL_CONTENT' | 'UNSUPPORTED_CONTENT' | 'INVALID_BIDDING_METHOD' | 'VIDEO_TOO_LONG' | 'VIOLATES_JAPANESE_PHARMACY_LAW' | 'UNACCREDITED_PET_PHARMACY' | 'ABORTION' | 'CONTRACEPTIVES' | 'NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA' | 'KCDSP_REGISTRATION' | 'NOT_FAMILY_SAFE' | 'CLINICAL_TRIAL_RECRUITMENT' | 'MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED' | 'MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED' | 'PERSONAL_LOANS' | 'UNSUPPORTED_FLASH_CONTENT' | 'MISUSE_BY_OMID_SCRIPT' | 'NON_WHITELISTED_OMID_VENDOR' | 'DESTINATION_EXPERIENCE' | 'UNSUPPORTED_LANGUAGE' | 'NON_SSL_COMPLIANT' | 'TEMPORARY_PAUSE' | 'BAIL_BONDS' | 'EXPERIMENTAL_MEDICAL_TREATMENT' — The categorized reason for disapproval.
      - `details` string[] — Additional details about the reason for disapproval.
    - `contexts` ServingContext[] — The contexts for the restriction.
      - `all` 'SIMPLE_CONTEXT' — Matches all contexts.
      - `location` LocationContext — Output only. The Geo criteria the restriction applies to.
        - `geoCriteriaIds` integer[] — IDs representing the geo location for this context. Refer to the [geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv) file for different geo criteria IDs.
      - `appType` AppContext — Output only. The app type the restriction applies to for mobile device.
        - `appTypes` string[] — The app types this restriction applies to.
      - `auctionType` AuctionContext — Output only. The auction type the restriction applies to.
        - `auctionTypes` string[] — The auction types this restriction applies to.
      - `securityType` SecurityContext — Output only. A security context.
        - `securities` string[] — The security types in this context.
      - `platform` PlatformContext — Output only. The type of platform the restriction applies to.
        - `platforms` string[] — The platforms this restriction applies to.
    - `disapproval` Disapproval — Output only. The reason and details for a disapproval.
      - `reason` 'LENGTH_OF_IMAGE_ANIMATION' | 'BROKEN_URL' | 'MEDIA_NOT_FUNCTIONAL' | 'INVALID_FOURTH_PARTY_CALL' | 'INCORRECT_REMARKETING_DECLARATION' | 'LANDING_PAGE_ERROR' | 'AD_SIZE_DOES_NOT_MATCH_AD_SLOT' | 'NO_BORDER' | 'FOURTH_PARTY_BROWSER_COOKIES' | 'LSO_OBJECTS' | 'BLANK_CREATIVE' | 'DESTINATION_URLS_UNDECLARED' | 'PROBLEM_WITH_CLICK_MACRO' | 'INCORRECT_AD_TECHNOLOGY_DECLARATION' | 'INCORRECT_DESTINATION_URL_DECLARATION' | 'EXPANDABLE_INCORRECT_DIRECTION' | 'EXPANDABLE_DIRECTION_NOT_SUPPORTED' | 'EXPANDABLE_INVALID_VENDOR' | 'EXPANDABLE_FUNCTIONALITY' | 'VIDEO_INVALID_VENDOR' | 'VIDEO_UNSUPPORTED_LENGTH' | 'VIDEO_UNSUPPORTED_FORMAT' | 'VIDEO_FUNCTIONALITY' | 'LANDING_PAGE_DISABLED' | 'MALWARE_SUSPECTED' | 'ADULT_IMAGE_OR_VIDEO' | 'INACCURATE_AD_TEXT' | 'COUNTERFEIT_DESIGNER_GOODS' | 'POP_UP' | 'INVALID_RTB_PROTOCOL_USAGE' | 'RAW_IP_ADDRESS_IN_SNIPPET' | 'UNACCEPTABLE_CONTENT_SOFTWARE' | 'UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN' | 'UNDECLARED_FLASH_OBJECTS' | 'INVALID_SSL_DECLARATION' | 'DIRECT_DOWNLOAD_IN_AD' | 'MAXIMUM_DOWNLOAD_SIZE_EXCEEDED' | 'DESTINATION_URL_SITE_NOT_CRAWLABLE' | 'BAD_URL_LEGAL_DISAPPROVAL' | 'PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED' | 'DYNAMIC_DNS_AT_DESTINATION_URL' | 'POOR_IMAGE_OR_VIDEO_QUALITY' | 'UNACCEPTABLE_IMAGE_CONTENT' | 'INCORRECT_IMAGE_LAYOUT' | 'IRRELEVANT_IMAGE_OR_VIDEO' | 'DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK' | 'MISLEADING_CLAIMS_IN_AD' | 'RESTRICTED_PRODUCTS' | 'UNACCEPTABLE_CONTENT' | 'AUTOMATED_AD_CLICKING' | 'INVALID_URL_PROTOCOL' | 'UNDECLARED_RESTRICTED_CONTENT' | 'INVALID_REMARKETING_LIST_USAGE' | 'DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT' | 'CLICK_TO_DOWNLOAD_NOT_AN_APP' | 'INACCURATE_REVIEW_EXTENSION' | 'SEXUALLY_EXPLICIT_CONTENT' | 'GAINING_AN_UNFAIR_ADVANTAGE' | 'GAMING_THE_GOOGLE_NETWORK' | 'DANGEROUS_PRODUCTS_KNIVES' | 'DANGEROUS_PRODUCTS_EXPLOSIVES' | 'DANGEROUS_PRODUCTS_GUNS' | 'DANGEROUS_PRODUCTS_DRUGS' | 'DANGEROUS_PRODUCTS_TOBACCO' | 'DANGEROUS_PRODUCTS_WEAPONS' | 'UNCLEAR_OR_IRRELEVANT_AD' | 'PROFESSIONAL_STANDARDS' | 'DYSFUNCTIONAL_PROMOTION' | 'INVALID_INTEREST_BASED_AD' | 'MISUSE_OF_PERSONAL_INFORMATION' | 'OMISSION_OF_RELEVANT_INFORMATION' | 'UNAVAILABLE_PROMOTIONS' | 'MISLEADING_PROMOTIONS' | 'INAPPROPRIATE_CONTENT' | 'SENSITIVE_EVENTS' | 'SHOCKING_CONTENT' | 'ENABLING_DISHONEST_BEHAVIOR' | 'TECHNICAL_REQUIREMENTS' | 'RESTRICTED_POLITICAL_CONTENT' | 'UNSUPPORTED_CONTENT' | 'INVALID_BIDDING_METHOD' | 'VIDEO_TOO_LONG' | 'VIOLATES_JAPANESE_PHARMACY_LAW' | 'UNACCREDITED_PET_PHARMACY' | 'ABORTION' | 'CONTRACEPTIVES' | 'NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA' | 'KCDSP_REGISTRATION' | 'NOT_FAMILY_SAFE' | 'CLINICAL_TRIAL_RECRUITMENT' | 'MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED' | 'MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED' | 'PERSONAL_LOANS' | 'UNSUPPORTED_FLASH_CONTENT' | 'MISUSE_BY_OMID_SCRIPT' | 'NON_WHITELISTED_OMID_VENDOR' | 'DESTINATION_EXPERIENCE' | 'UNSUPPORTED_LANGUAGE' | 'NON_SSL_COMPLIANT' | 'TEMPORARY_PAUSE' | 'BAIL_BONDS' | 'EXPERIMENTAL_MEDICAL_TREATMENT' — The categorized reason for disapproval.
      - `details` string[] — Additional details about the reason for disapproval.
  - `video` VideoContent — Video content for a creative.
    - `videoUrl` string — The URL to fetch a video ad.
    - `videoVastXml` string — The contents of a VAST document for a video ad. This document should conform to the VAST 2.0 or 3.0 standard.

## Response `200`

Successful response

---

[API](https://skmtc.net/google/apis/adexchangebuyer2.md) · [All operations](https://skmtc.net/google/apis/adexchangebuyer2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/google/adexchangebuyer2/revisions/ec45fdc03096/schema)
