> ## Documentation Index
> Fetch the complete documentation index at: https://developers.criteo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# /2025-01/marketing-solutions/advertisers/{advertiser-id}/ads

> Create an Ad



## OpenAPI

````yaml https://api.criteo.com/2025-01/marketingsolutions/open-api-specifications.json post /2025-01/marketing-solutions/advertisers/{advertiser-id}/ads
openapi: 3.0.1
info:
  title: Criteo API
  description: Criteo API - MarketingSolutions
  version: 2025-01
servers:
  - url: https://api.criteo.com
security:
  - oauth: []
tags:
  - name: Advertiser
  - name: Analytics
  - name: Audience
  - name: Campaign
  - name: Creative
  - name: Gateway
paths:
  /2025-01/marketing-solutions/advertisers/{advertiser-id}/ads:
    post:
      tags:
        - Creative
      summary: /2025-01/marketing-solutions/advertisers/{advertiser-id}/ads
      description: Create an Ad
      operationId: CreateAdvertiserAd
      parameters:
        - name: advertiser-id
          in: path
          description: The advertiser identifier.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResourceInputOfAdWrite'
        required: true
        x-bodyName: request
      responses:
        '201':
          description: The created Ad is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceOutcomeOfAd'
      security:
        - oauth:
            - MarketingSolutions_Creative_Manage
components:
  schemas:
    ResourceInputOfAdWrite:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ResourceOfAdWrite'
      description: >-
        A top-level object that encapsulates a Criteo API request for a single
        entity.
    ResourceOutcomeOfAd:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ResourceOfAd'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          nullable: true
          readOnly: true
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          nullable: true
          readOnly: true
      description: >-
        A top-level object that encapsulates a Criteo API response for a single
        entity.
    ResourceOfAdWrite:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/AdWrite'
        id:
          type: string
          description: Unique identifier of this resource.
          nullable: true
        type:
          type: string
          nullable: true
      description: A class that represents a domain entity exposed by an API.
    ResourceOfAd:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/Ad'
        id:
          type: string
          description: Unique identifier of this resource.
          nullable: true
        type:
          type: string
          nullable: true
      description: A class that represents a domain entity exposed by an API.
      nullable: true
    CommonProblem:
      type: object
      properties:
        code:
          type: string
          description: A machine-readable error code, expressed as a string value.
          nullable: true
        detail:
          type: string
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem
          nullable: true
        instance:
          type: string
          description: A URI that identifies the specific occurrence of the problem.
          nullable: true
        source:
          type: object
          additionalProperties:
            type: string
          description: >-
            A machine-readable structure to reference to the exact location(s)
            causing the error(s)
          nullable: true
        stackTrace:
          type: string
          nullable: true
        title:
          type: string
          description: A short human-readable description of the problem type
          nullable: true
        traceId:
          type: string
          description: The request correlation ID this problem comes from.
          nullable: true
        traceIdentifier:
          type: string
          description: >-
            The request correlation ID this problem comes from. (deprecated, use
            traceId instead)
          nullable: true
        type:
          enum:
            - unknown
            - access-control
            - authentication
            - authorization
            - availability
            - deprecation
            - quota
            - validation
          type: string
          description: The problem's category.
          nullable: true
      description: Common problem object.
    AdWrite:
      required:
        - adSetId
        - creativeId
        - name
        - startDate
      type: object
      properties:
        adSetId:
          type: string
          description: The id of the Ad Set bound to this Ad
        creativeId:
          type: string
          description: The id of the Creative bound to this Ad
        description:
          type: string
          description: The description of the ad
          nullable: true
        endDate:
          type: string
          description: "The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever\r\nString must be in ISO8601 format"
          nullable: true
        inventoryType:
          enum:
            - Display
            - Native
          type: string
          description: >-
            The inventory the Ad to be created or updated belongs to. Possible
            values are "Display" and "Native". This is optional since this
            doesn't make sense for every creative type but will throw an error
            if not set for a dynamic creative.
          nullable: true
        name:
          type: string
          description: The name of the ad
        startDate:
          type: string
          description: "The date when the ad will be launched\r\nString must be in ISO8601 format"
      description: Entity to create or update an ad
    Ad:
      type: object
      properties:
        adSetId:
          type: string
          description: The id of the Ad Set binded to this Ad
          nullable: true
        creativeId:
          type: string
          description: The id of the Creative binded to this Ad
          nullable: true
        description:
          type: string
          description: The description of the ad
          nullable: true
        endDate:
          type: string
          description: "The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever\r\nString must be in ISO8601 format"
          nullable: true
        id:
          type: string
          description: Unique identifier (duplicate of the parent id).
          nullable: true
        inventoryType:
          enum:
            - Native
            - Display
            - Video
          type: string
          description: >-
            The inventory the Ad belongs to. Possible values are "Display" and
            "Native". This is optional since this doesn't make sense for every
            creative type but will throw an error if not set for a dynamic
            creative.
          nullable: true
        name:
          type: string
          description: The name of the ad
          nullable: true
        startDate:
          type: string
          description: "The date when the ad will be launched\r\nString must be in ISO8601 format"
          nullable: true
      description: An ad is the binding that connects a creative with an ad set
      nullable: true
  securitySchemes:
    oauth:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}
        authorizationCode:
          authorizationUrl: https://api.criteo.com/oauth2
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}

````