# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Data Opportunity API version: 1.0.0 extends: openapi/conga-opportunity-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: 15 - target: $.paths['/api/data/v1/Opportunity'].get update: x-apievangelist-phrasing: intent: List opportunity records effect: read questions: - Which opportunities do we have? - Can I filter opportunities by criteria? instructions: - text: List all opportunity records. - text: List opportunities matching {criteria}. slots: criteria: query.criteria method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity'].post update: x-apievangelist-phrasing: intent: Create an opportunity effect: write questions: - How do I add a new sales opportunity? - What stage can a new opportunity start in? instructions: - text: Create opportunity {name} for account {account}. slots: name: requestBody.Name account: requestBody.Account - text: Add opportunity {name} in stage {stage}. slots: name: requestBody.Name stage: requestBody.StageName method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/bulk'].put update: x-apievangelist-phrasing: intent: Update multiple opportunities effect: write questions: - Can I update many opportunities at once? - How do I bulk-update opportunities matched by a field? instructions: - text: Bulk update opportunities matched by {field}. slots: field: query.UpdateByField - text: Set stage {stage} on multiple opportunities. slots: stage: requestBody.StageName method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/bulk'].post update: x-apievangelist-phrasing: intent: Create multiple opportunities effect: write questions: - Can I insert several opportunities in one request? - How do I bulk-load opportunities? instructions: - text: Bulk insert opportunity records. - text: Bulk create opportunities for account {account}. slots: account: requestBody.Account method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/bulk'].delete update: x-apievangelist-phrasing: intent: Delete multiple opportunities effect: destructive questions: - Can I delete many opportunities at once? - How do I bulk-delete opportunities by a field? instructions: - text: Bulk delete opportunities matched by {field}. slots: field: query.DeleteByField - text: Delete multiple opportunity records. method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/bulk'].patch update: x-apievangelist-phrasing: intent: Upsert multiple opportunities effect: write questions: - Can I insert-or-update opportunities in one call? - How do I upsert opportunities by a matching field? instructions: - text: Upsert opportunity records. - text: Upsert opportunities matched on {field}. slots: field: query.UpdateByField method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].get update: x-apievangelist-phrasing: intent: Get an opportunity by external ID effect: read questions: - Can I look up an opportunity using our external system ID? - How do I find an opportunity by externalId? instructions: - text: Get the opportunity with external ID {ext}. slots: ext: path.externalId - text: Find opportunity by external identifier {ext}. slots: ext: path.externalId method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].put update: x-apievangelist-phrasing: intent: Update an opportunity by external ID effect: write questions: - Can I update an opportunity using its external ID? - How do I change an opportunity's stage by externalId? instructions: - text: Update the opportunity with external ID {ext}. slots: ext: path.externalId - text: Set stage {stage} on opportunity with external ID {ext}. slots: stage: requestBody.StageName ext: path.externalId method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].delete update: x-apievangelist-phrasing: intent: Delete an opportunity by external ID effect: destructive questions: - Can I delete an opportunity using its external ID? - How do I remove an opportunity identified by externalId? instructions: - text: Delete the opportunity with external ID {ext}. slots: ext: path.externalId - text: Remove opportunity by external identifier {ext}. slots: ext: path.externalId method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/query'].post update: x-apievangelist-phrasing: intent: Query opportunities effect: read questions: - Can I run a custom query against opportunities? - How do I select specific fields from opportunities with criteria? instructions: - text: Query opportunities where {criteria}. slots: criteria: requestBody.Criteria - text: Query opportunity fields {fields} limited to {limit}. slots: fields: requestBody.Select limit: requestBody.Limit method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/recordtypes'].get update: x-apievangelist-phrasing: intent: List opportunity record types effect: read questions: - What record types are defined for opportunities? - Which opportunity record types can I choose? instructions: - text: List opportunity record types. - text: Show all record types for opportunities. method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/summary'].get update: x-apievangelist-phrasing: intent: Get opportunity count and storage size effect: read questions: - How many opportunity records are there? - How much disk space do opportunities use? instructions: - text: Show the opportunity record count and size. - text: Summarize opportunity storage. method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/{id}'].get update: x-apievangelist-phrasing: intent: Get an opportunity effect: read questions: - Where can I see one opportunity's details? - What stage is a specific opportunity in? instructions: - text: Get opportunity {id}. slots: id: path.id - text: Show opportunity record {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/{id}'].put update: x-apievangelist-phrasing: intent: Update an opportunity effect: write questions: - How do I change an opportunity's stage? - Can I update an opportunity's forecast category? instructions: - text: Update opportunity {id} to stage {stage}. slots: id: path.id stage: requestBody.StageName - text: Set forecast category {cat} on opportunity {id}. slots: cat: requestBody.ForecastCategory id: path.id method: generated generated: '2026-10-01' - target: $.paths['/api/data/v1/Opportunity/{id}'].delete update: x-apievangelist-phrasing: intent: Delete an opportunity effect: destructive questions: - Can I delete an opportunity record? - Does deleting an opportunity send it to the recycle bin? instructions: - text: Delete opportunity {id}. slots: id: path.id - text: Remove opportunity record {id}. slots: id: path.id method: generated generated: '2026-10-01'