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