Conga · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Data Opportunity API
16 actions
16 updates
phrasing
extends
openapi/conga-opportunity-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Conga's API. It is a proposal applied on top of the contract, not a document Conga publishes.
What the actions change
x-apievangelist-phrasing
Targets 16
$.info
$.paths['/api/data/v1/Opportunity'].get
$.paths['/api/data/v1/Opportunity'].post
$.paths['/api/data/v1/Opportunity/bulk'].put
$.paths['/api/data/v1/Opportunity/bulk'].post
$.paths['/api/data/v1/Opportunity/bulk'].delete
$.paths['/api/data/v1/Opportunity/bulk'].patch
$.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].get
$.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].put
$.paths['/api/data/v1/Opportunity/by-externalId/{externalId}'].delete
$.paths['/api/data/v1/Opportunity/query'].post
$.paths['/api/data/v1/Opportunity/recordtypes'].get
$.paths['/api/data/v1/Opportunity/summary'].get
$.paths['/api/data/v1/Opportunity/{id}'].get
$.paths['/api/data/v1/Opportunity/{id}'].put
$.paths['/api/data/v1/Opportunity/{id}'].delete
OpenAPI Overlay
# 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'