TEGNA Campaigns API

The Campaigns API from TEGNA — 2 operation(s) for campaigns.

OpenAPI Specification

tegna-campaigns-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: TEGNA AudienceOne Audiences Campaigns API
  description: The TEGNA AudienceOne API enables advertisers to access TEGNA's first-party data targeting platform for digital advertising campaigns across TEGNA's 64 local television brands in 51 U.S. markets. The platform provides audience segment management, campaign creation, creative management, and performance reporting for display, native, pre-roll video, and programmatic advertising.
  version: 1.0.0
  contact:
    url: https://www.tegna.com/advertise/solutions/digital/
  license:
    name: Proprietary
    url: https://www.tegna.com/
servers:
- url: https://api.tegna.com/v1
  description: TEGNA AudienceOne API - Production
tags:
- name: Campaigns
paths:
  /campaigns:
    get:
      operationId: listCampaigns
      summary: List Campaigns
      description: Retrieve advertising campaigns for the authenticated advertiser.
      tags:
      - Campaigns
      parameters:
      - name: status
        in: query
        description: Filter campaigns by status.
        required: false
        schema:
          type: string
          enum:
          - active
          - paused
          - completed
          - draft
      - name: page
        in: query
        required: false
        schema:
          type: integer
          default: 1
      - name: pageSize
        in: query
        required: false
        schema:
          type: integer
          default: 25
      security:
      - bearerAuth: []
      responses:
        '200':
          description: A list of advertising campaigns.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Campaign'
    post:
      operationId: createCampaign
      summary: Create Campaign
      description: Create a new digital advertising campaign.
      tags:
      - Campaigns
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignCreate'
      responses:
        '201':
          description: Campaign created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
        '400':
          description: Invalid campaign data.
  /campaigns/{campaignId}:
    get:
      operationId: getCampaign
      summary: Get Campaign
      description: Retrieve details for a specific advertising campaign.
      tags:
      - Campaigns
      parameters:
      - name: campaignId
        in: path
        required: true
        schema:
          type: string
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Campaign details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
        '404':
          description: Campaign not found.
    put:
      operationId: updateCampaign
      summary: Update Campaign
      description: Update an existing advertising campaign.
      tags:
      - Campaigns
      parameters:
      - name: campaignId
        in: path
        required: true
        schema:
          type: string
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignCreate'
      responses:
        '200':
          description: Campaign updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
components:
  schemas:
    CampaignCreate:
      type: object
      required:
      - name
      - startDate
      - budget
      properties:
        name:
          type: string
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
        budget:
          type: number
          format: double
        dailyBudget:
          type: number
          format: double
        targetAudiences:
          type: array
          items:
            type: string
        targetMarkets:
          type: array
          items:
            type: string
        adFormats:
          type: array
          items:
            type: string
    Campaign:
      type: object
      description: A TEGNA AudienceOne digital advertising campaign.
      properties:
        campaignId:
          type: string
          description: Unique campaign identifier.
        name:
          type: string
          description: Campaign name.
        status:
          type: string
          enum:
          - active
          - paused
          - completed
          - draft
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
        budget:
          type: number
          format: double
          description: Total campaign budget in USD.
        dailyBudget:
          type: number
          format: double
          description: Daily spend cap in USD.
        targetAudiences:
          type: array
          description: Audience segment IDs targeted by the campaign.
          items:
            type: string
        targetMarkets:
          type: array
          description: TEGNA market codes targeted by the campaign.
          items:
            type: string
        adFormats:
          type: array
          description: Ad formats used in the campaign.
          items:
            type: string
            enum:
            - display
            - native
            - pre-roll
            - mid-roll
            - connected-tv
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT