# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Drip Charges API version: 1.0.0 extends: openapi/drippay-charges-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: 6 - target: $.paths['/v1/charges'].get update: x-apievangelist-phrasing: intent: List charges effect: read questions: - What charges have been made against a specific customer? - Can I page through my charges filtered by status? instructions: - text: List charges for customer {customerId}. slots: customerId: query.customerId - text: Show {limit} charges with status {status}, skipping the first {offset}. slots: limit: query.limit status: query.status offset: query.offset method: generated generated: '2026-09-26' - target: $.paths['/v1/charges/{id}'].get update: x-apievangelist-phrasing: intent: Get a charge effect: read questions: - What are the details of one particular charge? - Can I look up a charge by its ID in Drip? instructions: - text: Get charge {id}. slots: id: path.id - text: Show me the details of charge {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/v1/charges/export'].get update: x-apievangelist-phrasing: intent: Export all charges as JSON or CSV effect: read questions: - How do I download all my charges into a spreadsheet? - Can I export charges as CSV for my accounting software? instructions: - text: Export all my charges as {format}. slots: format: query.format - text: Download a CSV export of every charge. method: generated generated: '2026-09-26' - target: $.paths['/v1/charges/{id}/refund'].post update: x-apievangelist-phrasing: intent: Refund a charge to the customer effect: destructive questions: - How do I refund a charge that was made in error? - Which charges are eligible for a refund? - What refund reasons can I give? instructions: - text: Refund charge {id} because {reason}. slots: id: path.id reason: requestBody.reason - text: Refund charge {id} with reason {reason} and note {note}. slots: id: path.id reason: requestBody.reason note: requestBody.note method: generated generated: '2026-09-26' - target: $.paths['/v1/cost-estimate/from-usage'].post update: x-apievangelist-phrasing: intent: Estimate costs from existing usage effect: read questions: - What would last month's usage have cost under different pricing? - Can I forecast a customer's bill from their recorded usage without charging them? - Is it possible to exclude already-charged events from a cost estimate? instructions: - text: Estimate the cost of recorded usage from {periodStart} to {periodEnd}. slots: periodStart: requestBody.periodStart periodEnd: requestBody.periodEnd - text: Estimate customer {customerId}'s recorded usage cost between {periodStart} and {periodEnd}. slots: customerId: requestBody.customerId periodStart: requestBody.periodStart periodEnd: requestBody.periodEnd - text: Re-price past usage from {periodStart} to {periodEnd} with custom pricing {customPricing}. slots: periodStart: requestBody.periodStart periodEnd: requestBody.periodEnd customPricing: requestBody.customPricing method: generated generated: '2026-09-26' - target: $.paths['/v1/cost-estimate/hypothetical'].post update: x-apievangelist-phrasing: intent: Estimate costs for hypothetical usage effect: read questions: - How much would a given quantity of API calls cost before they happen? - Can I preview the price of a planned workload using my pricing plans? instructions: - text: 'Estimate what these hypothetical usage items would cost: {items}.' slots: items: requestBody.items - text: Price the planned usage {items} with a default unit price of {defaultUnitPrice}. slots: items: requestBody.items defaultUnitPrice: requestBody.defaultUnitPrice method: generated generated: '2026-09-26'