LinkedIn · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for LinkedIn Marketing AdAccounts Ad Campaigns API

5 actions 5 updates phrasing extends openapi/linkedin-ad-campaigns-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for LinkedIn's API. It is a proposal applied on top of the contract, not a document LinkedIn publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 5

$.info
$.paths['/rest/adAccounts/{adAccountID}/adCampaigns'].get
$.paths['/rest/adAccounts/{adAccountID}/adCampaigns'].post
$.paths['/rest/adAccounts/{adAccountID}/adCampaigns/{adCampaignID}'].get
$.paths['/rest/adAccounts/{adAccountID}/adCampaigns/{adCampaignID}'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for LinkedIn Marketing AdAccounts Ad Campaigns API
  version: 1.0.0
extends: openapi/linkedin-ad-campaigns-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 4
- target: $.paths['/rest/adAccounts/{adAccountID}/adCampaigns'].get
  update:
    x-apievangelist-phrasing:
      intent: Search campaigns in an ad account
      effect: read
      questions:
      - Which campaigns are running in my ad account?
      - Can I search campaigns for a single account?
      instructions:
      - text: Search campaigns in ad account {adAccountID}.
        slots:
          adAccountID: path.adAccountID
      - text: List campaigns under {adAccountID} with finder {q}.
        slots:
          adAccountID: path.adAccountID
          q: query.q
      method: generated
      generated: '2026-09-26'
- target: $.paths['/rest/adAccounts/{adAccountID}/adCampaigns'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an ad campaign
      effect: write
      questions:
      - Can I create a campaign with a daily budget and targeting?
      - Which cost type and locale does a new campaign need?
      - Is audience expansion something I can turn on when creating a campaign?
      instructions:
      - text: Create campaign {name} in {adAccountID} with daily budget {dailyBudget}.
        slots:
          name: requestBody.name
          adAccountID: path.adAccountID
          dailyBudget: requestBody.dailyBudget
      - text: Create a {type} campaign in {adAccountID} billed by {costType}.
        slots:
          type: requestBody.type
          adAccountID: path.adAccountID
          costType: requestBody.costType
      - text: Launch campaign {name} in {adAccountID} targeting {targetingCriteria}.
        slots:
          name: requestBody.name
          adAccountID: path.adAccountID
          targetingCriteria: requestBody.targetingCriteria
      method: generated
      generated: '2026-09-26'
- target: $.paths['/rest/adAccounts/{adAccountID}/adCampaigns/{adCampaignID}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a campaign
      effect: read
      questions:
      - What budget and targeting does one campaign use?
      - Can I retrieve a single campaign by ID?
      instructions:
      - text: Get campaign {adCampaignID} in {adAccountID}.
        slots:
          adCampaignID: path.adCampaignID
          adAccountID: path.adAccountID
      - text: Show the settings of campaign {adCampaignID} from {adAccountID}.
        slots:
          adCampaignID: path.adCampaignID
          adAccountID: path.adAccountID
      method: generated
      generated: '2026-09-26'
- target: $.paths['/rest/adAccounts/{adAccountID}/adCampaigns/{adCampaignID}'].post
  update:
    x-apievangelist-phrasing:
      intent: Partially update a campaign
      effect: write
      questions:
      - Can I change a campaign's budget without recreating it?
      - Is pausing a campaign done with a partial update?
      instructions:
      - text: Update campaign {adCampaignID} in {adAccountID}.
        slots:
          adCampaignID: path.adCampaignID
          adAccountID: path.adAccountID
      - text: Pause campaign {adCampaignID} under account {adAccountID}.
        slots:
          adCampaignID: path.adCampaignID
          adAccountID: path.adAccountID
      method: generated
      generated: '2026-09-26'