# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Spend - V1 Spend Hourly API version: 1.0.0 extends: openapi/northbeam-spend-hourly-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 3 - target: $.paths['/spend_hourly'].get update: x-apievangelist-phrasing: intent: List hourly spend records effect: read questions: - What hourly ad spend have I recorded within a time window? - Can I filter hourly spend by platform account or ad set? - How do I page through hourly spend records? instructions: - text: List hourly spend from {hour_start_iso_begin} to {hour_start_iso_end}. slots: hour_start_iso_begin: query.hour_start_iso_begin hour_start_iso_end: query.hour_start_iso_end - text: Show hourly spend for ad set {adset_id} in platform account {platform_account_id}. slots: adset_id: query.adset_id platform_account_id: query.platform_account_id - text: Get hourly spend for campaign {campaign_id}, page {page} of size {page_size}. slots: campaign_id: query.campaign_id page: query.page page_size: query.page_size method: generated generated: '2026-10-01' - target: $.paths['/spend_hourly'].post update: x-apievangelist-phrasing: intent: Upsert hourly spend records effect: write questions: - How do I upload ad spend broken down by hour? - Can I overwrite hourly spend records I sent earlier? instructions: - text: 'Upsert these hourly spend records: {data}.' slots: data: requestBody.data - text: Load hour-by-hour ad spend {data} into the account. slots: data: requestBody.data method: generated generated: '2026-10-01' - target: $.paths['/spend_hourly'].delete update: x-apievangelist-phrasing: intent: Delete an hourly spend record effect: destructive questions: - How do I remove an hourly spend entry that was wrong? - Can I delete an hourly spend record I uploaded? instructions: - text: Delete the hourly spend record {data}. slots: data: requestBody.data - text: Remove the mistaken hourly spend entry {data}. slots: data: requestBody.data method: generated generated: '2026-10-01'