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

# Get creative

> Returns a single creative by ID, including its visual formats and, optionally, the
individual ads running it.

The transcript is deliberately **not** included — fetch it separately from
`/v1/creatives/{creative_id}/transcript`.




## OpenAPI

````yaml GET /v1/creatives/{creative_id}
openapi: 3.1.0
info:
  title: Adspo API
  version: 1.0.0
  description: >
    The Adspo API gives you programmatic access to ad creative data across
    brands.


    ## Authentication


    All endpoints require an API key passed in the `x-api-key` header.


    ```

    x-api-key: YOUR_API_KEY

    ```


    ## Rate limits


    - **120 requests per minute** per key. Exceeding this returns `429`.

    - **Credits per billing period** vary by plan. Each request costs 1 credit.
    Exceeding your quota returns `429` with `resets_at` indicating when it
    resets
servers:
  - url: https://api.adspo.co
    description: Production
security:
  - apiKey: []
paths:
  /v1/creatives/{creative_id}:
    get:
      summary: Get creative
      description: >
        Returns a single creative by ID, including its visual formats and,
        optionally, the

        individual ads running it.


        The transcript is deliberately **not** included — fetch it separately
        from

        `/v1/creatives/{creative_id}/transcript`.
      operationId: getCreative
      parameters:
        - name: creative_id
          in: path
          required: true
          description: The creative ID.
          schema:
            type: string
        - name: include_ads
          in: query
          description: Include the individual ads running this creative.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: The creative.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Creative'
              example:
                creative_id: f930d886d0fb9e86b9dd6c1200dab7ef
                brand_id: '857986847394146'
                brand_name: DRMTLGY
                format: IMAGE
                hd_url: >-
                  https://r2.adspo.co/creatives/images/original/f930d886d0fb9e86b9dd6c1200dab7ef.jpg
                sd_url: >-
                  https://r2.adspo.co/creatives/images/resized/f930d886d0fb9e86b9dd6c1200dab7ef.jpg
                is_active: false
                start_date: '2026-03-16T07:00:00Z'
                end_date: '2026-04-24T07:00:00Z'
                runtime_days: 39
                ad_count: 10
                landing_pages:
                  - https://www.example.com
                countries:
                  - AU
                  - GB
                  - NZ
                  - US
                languages:
                  - en
                impression_order: 11
                variants: []
                hook: null
                visual_formats:
                  - High Production
                  - Demo
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Creative not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit or quota exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Creative:
      type: object
      properties:
        creative_id:
          type: string
          description: Unique identifier for this creative.
        brand_id:
          type: string
          description: Facebook Ad Library page ID of the brand running this creative.
        brand_name:
          type: string
          nullable: true
          description: >-
            Display name of the brand. null only when the brand record is
            missing.
        format:
          type: string
          enum:
            - IMAGE
            - VIDEO
          description: Whether the creative uses a static image or video.
        hd_url:
          type: string
          description: >-
            High-resolution media URL. For videos the HD stream, for images the
            original.
        sd_url:
          type: string
          description: >-
            Lower-resolution media URL. For videos the SD stream, for images the
            resized version.
        is_active:
          type: boolean
          description: Whether the creative is currently running as an active ad.
        start_date:
          type: string
          format: date-time
          description: Date the creative was first observed in the Ad Library.
        end_date:
          type: string
          format: date-time
          nullable: true
          description: >-
            Date the creative was last observed. null if the creative is still
            active.
        runtime_days:
          type: integer
          description: >-
            Number of days between first_seen and last_seen (or today if still
            active).
        ad_count:
          type: integer
          description: Number of individual ad variants using this creative.
        landing_pages:
          type: array
          description: Destination URLs this creative links to.
          items:
            type: string
        countries:
          type: array
          description: Country codes where this creative has been shown.
          items:
            type: string
        languages:
          type: array
          description: Languages this creative has been served in.
          items:
            type: string
        impression_order:
          type: integer
          nullable: true
          description: >-
            Estimated impression rank among active ads for this brand (lower =
            more impressions).
        variants:
          type: array
          description: Alternate copies of this creative.
          items:
            type: object
            properties:
              creative_id:
                type: string
              hd_url:
                type: string
              sd_url:
                type: string
        hook:
          type: string
          nullable: true
          description: >-
            Opening line of the video transcript. null if unavailable or not a
            video creative.
        visual_formats:
          type: array
          description: >-
            Visual styles detected in this creative, such as "Customer
            Testimonial", "Demo", "High Production" or "Model / Try-on". Empty
            when the creative has not been classified.
          items:
            type: string
        ads:
          type: array
          description: >-
            Individual ad variants for this creative. Only present when
            include_ads=true.
          items:
            $ref: '#/components/schemas/Ad'
    Error:
      type: object
      properties:
        error:
          type: string
    Ad:
      type: object
      properties:
        ad_archive_id:
          type: string
          description: Unique ID for this ad in the Facebook Ad Library.
        brand_id:
          type: string
          description: Facebook Ad Library page ID of the brand running this ad.
        creative_id:
          type: string
          description: ID of the parent creative this ad belongs to.
        ad_format:
          type: string
          enum:
            - IMAGE
            - VIDEO
            - DCO
          description: The format of the ad.
        is_active:
          type: boolean
          description: Whether this ad is currently running.
        start_date:
          type: string
          format: date-time
          description: Date this ad started running.
        end_date:
          type: string
          format: date-time
          nullable: true
          description: Date this ad stopped running. null if still active.
        title_text:
          type: string
          nullable: true
          description: Headline or title text of the ad.
        body_text:
          type: string
          nullable: true
          description: Main body copy of the ad.
        cta_text:
          type: string
          nullable: true
          description: Call-to-action button label.
        link_text:
          type: string
          nullable: true
          description: Display text shown on the destination link.
        link_url:
          type: string
          nullable: true
          description: Destination URL the ad links to.
        language:
          type: string
          description: Language this ad variant is served in.
        countries:
          type: array
          description: Country codes where this ad is running.
          items:
            type: string
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: Your Adspo API key.

````