Brevo · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Sales CRM Deals API
12 actions
12 updates
phrasing
extends
openapi/brevo-deals-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Brevo's API. It is a proposal applied on top of the contract, not a document Brevo publishes.
What the actions change
x-apievangelist-phrasing
Targets 12
$.info
$.paths['/crm/pipeline/details'].get
$.paths['/crm/pipeline/details/{pipelineID}'].get
$.paths['/crm/pipeline/details/all'].get
$.paths['/crm/attributes/deals'].get
$.paths['/crm/deals'].get
$.paths['/crm/deals'].post
$.paths['/crm/deals/{id}'].get
$.paths['/crm/deals/{id}'].delete
$.paths['/crm/deals/{id}'].patch
$.paths['/crm/deals/link-unlink/{id}'].patch
$.paths['/crm/deals/import'].post
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 Sales CRM Deals API
version: 1.0.0
extends: openapi/brevo-deals-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: 11
- target: $.paths['/crm/pipeline/details'].get
update:
x-apievangelist-phrasing:
intent: Get pipeline stages (deprecated)
effect: read
questions:
- Is there an older endpoint that returns the default pipeline's stages?
- Which deal stages exist in my default sales pipeline?
instructions:
- text: Show the stages of my default pipeline using the deprecated endpoint.
- text: Get legacy pipeline stages for the account with API key {api_key}.
slots:
api_key: header.api-key
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/pipeline/details/{pipelineID}'].get
update:
x-apievangelist-phrasing:
intent: Get a deal pipeline
effect: read
questions:
- What stages and order does a specific sales pipeline have?
- Where do I find the stage IDs needed to place a deal in a pipeline?
instructions:
- text: Show pipeline {pipelineID}.
slots:
pipelineID: path.pipelineID
- text: Get the stages of pipeline {pipelineID}.
slots:
pipelineID: path.pipelineID
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/pipeline/details/all'].get
update:
x-apievangelist-phrasing:
intent: List all deal pipelines
effect: read
questions:
- What sales pipelines are configured in my CRM?
- Is a default pipeline created if I don't have any?
instructions:
- text: List all my deal pipelines.
- text: Show every pipeline for the account with API key {api_key}.
slots:
api_key: header.api-key
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/attributes/deals'].get
update:
x-apievangelist-phrasing:
intent: List deal attributes
effect: read
questions:
- Which fields can I set on a deal?
- What custom deal attributes are required or have options?
instructions:
- text: List all deal attributes.
- text: Show deal fields for the account with API key {api_key}.
slots:
api_key: header.api-key
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals'].get
update:
x-apievangelist-phrasing:
intent: List and filter deals
effect: read
questions:
- Can I find deals owned by a specific person or in a given stage?
- Which deals are linked to a particular company or contact?
instructions:
- text: List all my deals.
- text: Show deals in stage {stage}.
slots:
stage: query.filters[attributes.deal_stage]
- text: Find deals linked to company {companyId}.
slots:
companyId: query.filters[linkedCompaniesIds]
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals'].post
update:
x-apievangelist-phrasing:
intent: Create a deal
effect: write
questions:
- How do I add a new deal to my CRM pipeline?
- Can I link contacts and companies when I create a deal?
instructions:
- text: Create a deal named {name}.
slots:
name: requestBody.name
- text: Create deal {name} linked to contacts {contactIds}.
slots:
name: requestBody.name
contactIds: requestBody.linkedContactsIds
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a deal
effect: read
questions:
- What stage is a particular deal in?
- Which contacts and companies are linked to one deal?
instructions:
- text: Show deal {id}.
slots:
id: path.id
- text: Get the details and linked records of deal {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a deal
effect: destructive
questions:
- Who is allowed to delete a deal?
- Can I permanently remove a deal from the CRM?
instructions:
- text: Delete deal {id}.
slots:
id: path.id
- text: Permanently remove deal {id} from my CRM.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a deal
effect: write
questions:
- How do I change a deal's name or attributes?
- Does updating a deal's linked contacts replace the existing links?
instructions:
- text: Rename deal {id} to {name}.
slots:
id: path.id
name: requestBody.name
- text: Update deal {id} attributes to {attributes}.
slots:
id: path.id
attributes: requestBody.attributes
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals/link-unlink/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Link or unlink contacts and companies on a deal
effect: write
questions:
- Can I add a contact to a deal without replacing its other links?
- How can I detach a company from a deal?
instructions:
- text: Link contacts {linkContactIds} to deal {id}.
slots:
linkContactIds: requestBody.linkContactIds
id: path.id
- text: Unlink companies {unlinkCompanyIds} from deal {id}.
slots:
unlinkCompanyIds: requestBody.unlinkCompanyIds
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/crm/deals/import'].post
update:
x-apievangelist-phrasing:
intent: Import deals from CSV
effect: write
questions:
- Can I bulk create or update deals from a CSV file?
- How are CSV columns mapped to deal fields on import?
instructions:
- text: Import deals from {file}.
slots:
file: requestBody.file
- text: Import deals from {file} with column mapping {mapping}.
slots:
file: requestBody.file
mapping: requestBody.mapping
method: generated
generated: '2026-09-26'