# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Outbrain Budgets API version: 1.0.0 extends: openapi/outbrain-budgets-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: 8 - target: $.paths['/budgets/{id}'].get update: x-apievangelist-phrasing: intent: Retrieve a budget with remaining spend details effect: read questions: - How much is left unspent on one of my Outbrain budgets? - Can I see whether a budget is shared between several campaigns? instructions: - text: Show the amount remaining and pacing for budget {id}. slots: id: path.id - text: Check if budget {id} is shared across campaigns. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/budgets/{id}'].put update: x-apievangelist-phrasing: intent: Change a budget's amount or dates effect: write questions: - How do I raise the amount on an existing budget? - Can I move a budget's start date after it has already started spending? - What is the minimum amount for a daily or monthly budget when I edit it? instructions: - text: Increase the amount of budget {id} to 5000. slots: id: path.id - text: Change the end date of budget {id} to the end of next month. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/budgets/{id}'].delete update: x-apievangelist-phrasing: intent: Delete an unused, detached budget effect: destructive questions: - Can I delete a budget that is still attached to a campaign? - How do I remove a budget that never spent anything? instructions: - text: Delete budget {id}. slots: id: path.id - text: Remove the detached, unspent budget {id} from my account. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/marketers/{id}/budgets'].get update: x-apievangelist-phrasing: intent: List a marketer's budgets, optionally detached only effect: read questions: - Which budgets aren't attached to any campaign yet? - How many budgets does my marketer account have in total? instructions: - text: List only the detached budgets for marketer {id}. slots: id: path.id - text: Count all budgets under marketer {id}, including detached ones if {detachedOnly} is false. slots: id: path.id detachedOnly: query.detachedOnly method: generated generated: '2026-09-26' - target: $.paths['/marketers/{id}/budgets'].post update: x-apievangelist-phrasing: intent: Create a budget that can run forever or end effect: write questions: - Can I create a budget with no end date so it runs forever? - Does a new budget name have to be unique for the marketer? instructions: - text: Create a monthly budget called Q1 Spend for marketer {id} starting January 15. slots: id: path.id - text: Set up an open-ended daily budget of 100 under marketer {id} with runForever on. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/marketers/{marketerId}/budgets'].get update: x-apievangelist-phrasing: intent: List all budgets belonging to a marketer effect: read questions: - What budgets belong to my marketer account? - Where do I see every budget a marketer owns in one list? instructions: - text: List all budgets for marketer {marketerId}. slots: marketerId: path.marketerId - text: Give me the names and amounts of every budget owned by marketer {marketerId}. slots: marketerId: path.marketerId method: generated generated: '2026-09-26' - target: $.paths['/marketers/{marketerId}/budgets'].post update: x-apievangelist-phrasing: intent: Create a shared budget with a currency effect: write questions: - How do I create a shared budget that several campaigns can draw from? - Can I set the currency and budget type when creating a shared budget? instructions: - text: Create a shared {type} budget named {name} of {amount} for marketer {marketerId}. slots: type: requestBody.type name: requestBody.name amount: requestBody.amount marketerId: path.marketerId - text: Make a {amount} {currency} shared budget called {name}, type {type}, from {startDate} to {endDate} for marketer {marketerId}. slots: amount: requestBody.amount currency: requestBody.currency name: requestBody.name type: requestBody.type startDate: requestBody.startDate endDate: requestBody.endDate marketerId: path.marketerId method: generated generated: '2026-09-26' - target: $.paths['/budgets/{budgetId}'].get update: x-apievangelist-phrasing: intent: Look up a budget by its budget ID effect: read questions: - How do I fetch a budget when I only have its budgetId? - What does a budget record look like when I look it up by identifier? instructions: - text: Look up budget {budgetId}. slots: budgetId: path.budgetId - text: Fetch the budget record with identifier {budgetId}. slots: budgetId: path.budgetId method: generated generated: '2026-09-26'