# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for ActiveCampaign API v3 Deals API version: 1.0.0 extends: openapi/activecampaign-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: 47 - target: $.paths['/deals'].get update: x-apievangelist-phrasing: intent: List and filter deals effect: read questions: - Which open deals are in a given pipeline stage in ActiveCampaign? - Can I find deals worth more than a certain amount or with a high deal score? - What deals were created after a specific date and who owns them? instructions: - text: List all deals in stage {stage}. slots: stage: query.filters[stage] - text: Show deals owned by user {owner} with a value above {minimum_value}. slots: owner: query.filters[owner] minimum_value: query.filters[minimum_value] - text: Search deals whose title matches {search}. slots: search: query.filters[search] method: generated generated: '2026-09-26' - target: $.paths['/deals'].post update: x-apievangelist-phrasing: intent: Create a deal effect: write questions: - How do I add a new sales deal to a pipeline? - Can I create a deal and link it to a contact in the same request? instructions: - text: 'Create a new deal from these details: {deal}.' slots: deal: requestBody.deal - text: Open a new deal for my latest prospect with the value and stage I give you. method: generated generated: '2026-09-26' - target: $.paths['/deals/{id}'].get update: x-apievangelist-phrasing: intent: Get a single deal effect: read questions: - Where can I see the full details of one specific deal by its ID? - What stage and value is deal number 42 currently at? instructions: - text: Show me deal {id}. slots: id: path.id - text: Pull up the current stage, owner and value of deal {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/deals/{id}'].put update: x-apievangelist-phrasing: intent: Update a deal effect: write questions: - Can I change the value or stage of an existing deal? - How do I mark a deal I already created as won or lost? instructions: - text: Update deal {id} with {deal}. slots: id: path.id deal: requestBody.deal - text: Mark deal {id} as won. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/deals/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a deal effect: destructive questions: - Is it possible to permanently remove a deal from my CRM? - What happens when I delete a duplicate deal? instructions: - text: Delete deal {id}. slots: id: path.id - text: Remove the duplicate deal {id} from the pipeline. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/deals/{id}/notes'].post update: x-apievangelist-phrasing: intent: Add a note to a deal effect: write questions: - How do I attach a note to a specific deal? - Can I log call notes directly on a deal record? instructions: - text: Add a note to deal {id} saying {note}. slots: id: path.id note: requestBody.note - text: Log a meeting summary as a note on deal {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/deals/{id}/notes/{noteId}'].put update: x-apievangelist-phrasing: intent: Edit a note on a deal effect: write questions: - Can I edit a note I already added to a deal? - Is there a way to fix a typo in an existing deal note? instructions: - text: Change note {noteId} on deal {id} to {note}. slots: noteId: path.noteId id: path.id note: requestBody.note - text: Rewrite deal {id}'s note {noteId}. slots: id: path.id noteId: path.noteId method: generated generated: '2026-09-26' - target: $.paths['/deals/bulkUpdate'].patch update: x-apievangelist-phrasing: intent: Reassign owners on many deals effect: write questions: - Can I reassign a batch of deals to a different sales rep at once? - How do I change the owner on several deals in one call? instructions: - text: Bulk update deal owners using {deals}. slots: deals: requestBody.deals - text: Hand all of a departing rep's deals over to a new owner in one bulk update. method: generated generated: '2026-09-26' - target: $.paths['/dealActivities'].get update: x-apievangelist-phrasing: intent: List recent deal activity effect: read questions: - What recent activity has happened on my deals? - Can I see the activity history for one particular deal? instructions: - text: Show the recent activity for deal {deal}. slots: deal: query.deal - text: List recent deal activities of data type {data_type}. slots: data_type: query.filters[data_type] method: generated generated: '2026-09-26' - target: $.paths['/dealGroups'].get update: x-apievangelist-phrasing: intent: List deal pipelines effect: read questions: - Which sales pipelines are set up in my account? - Can I list only the pipelines that already have stages? instructions: - text: List all my deal pipelines. - text: Find the pipeline titled {title}. slots: title: query.filters[title] method: generated generated: '2026-09-26' - target: $.paths['/dealGroups'].post update: x-apievangelist-phrasing: intent: Create a deal pipeline effect: write questions: - How do I set up a new sales pipeline for a separate team? - Can I create a pipeline for renewals alongside my new-business one? instructions: - text: Create a pipeline with {dealGroup}. slots: dealGroup: requestBody.dealGroup - text: Set up a new Partnerships pipeline. method: generated generated: '2026-09-26' - target: $.paths['/dealGroups/{id}'].get update: x-apievangelist-phrasing: intent: Get a deal pipeline effect: read questions: - Where do I see the settings of one specific pipeline? - What are the details of pipeline 3? instructions: - text: Show me pipeline {id}. slots: id: path.id - text: Get the configuration of pipeline {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealGroups/{id}'].put update: x-apievangelist-phrasing: intent: Update a deal pipeline effect: write questions: - Can I rename an existing pipeline or change its currency? - Is it possible to edit a pipeline's settings after creating it? instructions: - text: Update pipeline {id} with {dealGroup}. slots: id: path.id dealGroup: requestBody.dealGroup - text: Rename pipeline {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealGroups/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a deal pipeline effect: destructive questions: - How do I remove a pipeline we no longer use? - Will deleting a pipeline get rid of it for good? instructions: - text: Delete pipeline {id}. slots: id: path.id - text: Remove the unused pipeline {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealGroup/get_inaccessible_deal_groups'].get update: x-apievangelist-phrasing: intent: Find pipelines a user cannot access effect: read questions: - Which pipelines is a particular user blocked from seeing? - Can I check whether a teammate has access to the pipelines behind certain deals? instructions: - text: Show which pipelines user {userId} can't access for deals {dealIds}. slots: userId: query.userId dealIds: query.dealIds[] - text: Check pipeline access gaps for user {userId} across deals {dealIds}. slots: userId: query.userId dealIds: query.dealIds[] method: generated generated: '2026-09-26' - target: $.paths['/dealStages'].get update: x-apievangelist-phrasing: intent: List deal stages effect: read questions: - What stages does a given pipeline have? - Can I list every deal stage across all pipelines? instructions: - text: List the stages in pipeline {d_groupid}. slots: d_groupid: query.filters[d_groupid] - text: Find the deal stage titled {title}. slots: title: query.filters[title] method: generated generated: '2026-09-26' - target: $.paths['/dealStages'].post update: x-apievangelist-phrasing: intent: Add a stage to a pipeline effect: write questions: - How do I add a new stage like Negotiation to a pipeline? - Can I reorder the other stages when adding a new one? instructions: - text: Create a pipeline stage with {dealStage}. slots: dealStage: requestBody.dealStage - text: Add a Contract Sent stage and reorder the pipeline's stages ({reorder}). slots: reorder: query.reorder method: generated generated: '2026-09-26' - target: $.paths['/dealStages/{id}'].get update: x-apievangelist-phrasing: intent: Get a deal stage effect: read questions: - Where can I see the details of a single pipeline stage? - What pipeline does stage 7 belong to? instructions: - text: Show me deal stage {id}. slots: id: path.id - text: Get the title and order of stage {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealStages/{id}'].put update: x-apievangelist-phrasing: intent: Update a deal stage effect: write questions: - Can I rename a stage or change its position in the pipeline? - Is it possible to edit a stage's color or width? instructions: - text: Update deal stage {id} with {dealStage}. slots: id: path.id dealStage: requestBody.dealStage - text: Rename stage {id} and reorder its pipeline. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealStages/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a deal stage effect: destructive questions: - How do I remove a stage from a pipeline? - Can I delete a stage nobody uses anymore? instructions: - text: Delete deal stage {id}. slots: id: path.id - text: Remove the obsolete stage {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealStages/{id}/deals'].put update: x-apievangelist-phrasing: intent: Move all deals from one stage to another effect: write questions: - Can I move every deal sitting in one stage into a different stage? - How do I empty a stage by shifting its deals elsewhere before deleting it? instructions: - text: Move all deals in stage {id} to the stage in {deal}. slots: id: path.id deal: requestBody.deal - text: Shift every deal out of stage {id} into the next stage. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldMeta'].get update: x-apievangelist-phrasing: intent: List custom deal fields effect: read questions: - What custom fields have been defined for deals? - Which extra deal fields exist beyond the standard ones? instructions: - text: List all custom deal field definitions. - text: Show the first {limit} custom deal fields. slots: limit: query.limit method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldMeta'].post update: x-apievangelist-phrasing: intent: Define a custom deal field effect: write questions: - How do I add a custom field such as contract length to deals? - Can I create a dropdown-type custom field for deals? instructions: - text: Create a custom deal field with {dealCustomFieldMetum}. slots: dealCustomFieldMetum: requestBody.dealCustomFieldMetum - text: Add a Renewal Date custom field to deals. method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldMeta/{id}'].get update: x-apievangelist-phrasing: intent: Get a custom deal field definition effect: read questions: - Where do I see the definition and options of one custom deal field? - What type is custom deal field 5? instructions: - text: Show custom deal field {id}. slots: id: path.id - text: Get the settings for custom deal field {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldMeta/{id}'].put update: x-apievangelist-phrasing: intent: Update a custom deal field definition effect: write questions: - Can I rename a custom deal field or change its options? - Is it possible to edit a custom deal field's label after creating it? instructions: - text: Update custom deal field {id} with {dealCustomFieldMetum}. slots: id: path.id dealCustomFieldMetum: requestBody.dealCustomFieldMetum - text: Relabel custom deal field {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldMeta/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a custom deal field effect: destructive questions: - How do I remove a custom deal field we no longer track? - Does deleting a custom deal field definition remove it from all deals? instructions: - text: Delete custom deal field {id}. slots: id: path.id - text: Remove the unused custom deal field definition {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData'].get update: x-apievangelist-phrasing: intent: List custom field values on deals effect: read questions: - What custom field values are stored on a specific deal? - Can I see all custom field data for deals? instructions: - text: List the custom field values for deal {dealId}. slots: dealId: query.filters[dealId] - text: Show every stored custom deal field value. method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData'].post update: x-apievangelist-phrasing: intent: Set a custom field value on a deal effect: write questions: - How do I fill in a custom field on one deal? - Can I store a value for a custom field on a deal record? instructions: - text: Set a custom field value on a deal using {dealCustomFieldDatum}. slots: dealCustomFieldDatum: requestBody.dealCustomFieldDatum - text: Record the contract length custom field for one deal. method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData/bulkCreate'].post update: x-apievangelist-phrasing: intent: Set custom field values on many deals effect: write questions: - Can I set custom field values on several deals in one request? - Is there a bulk way to populate custom deal fields? instructions: - text: Bulk create custom deal field values from {array}. slots: array: requestBody.array - text: Populate the region custom field across a batch of deals at once. method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData/{id}'].get update: x-apievangelist-phrasing: intent: Get a custom field value on a deal effect: read questions: - Where do I look up one stored custom deal field value by its ID? - What value is saved in custom deal field data record 12? instructions: - text: Show custom deal field value {id}. slots: id: path.id - text: Get the stored custom field data entry {id} for a deal. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData/{id}'].put update: x-apievangelist-phrasing: intent: Change a custom field value on a deal effect: write questions: - Can I change a custom field value already saved on a deal? - How do I correct one deal's custom field entry? instructions: - text: Update custom deal field value {id} with {dealCustomFieldDatum}. slots: id: path.id dealCustomFieldDatum: requestBody.dealCustomFieldDatum - text: Correct the saved custom deal field value {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData/{id}'].delete update: x-apievangelist-phrasing: intent: Clear a custom field value on a deal effect: destructive questions: - Is it possible to erase one custom field value from a deal? - What do I call to delete a stored custom deal field entry? instructions: - text: Delete custom deal field value {id}. slots: id: path.id - text: Clear the custom field data entry {id} from its deal. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealCustomFieldData/bulkUpdate'].patch update: x-apievangelist-phrasing: intent: Update custom field values on many deals effect: write questions: - Can I change custom field values on lots of deals at once? - Is there a bulk update for existing custom deal field data? instructions: - text: Bulk update custom deal field values with {array}. slots: array: requestBody.array - text: Change the existing priority custom field on a batch of deals in one call. method: generated generated: '2026-09-26' - target: $.paths['/dealRoles'].get update: x-apievangelist-phrasing: intent: List deal roles effect: read questions: - What roles can contacts play on a deal, like decision maker? - Can I search the deal roles defined in my account? instructions: - text: List all deal roles. - text: Search deal roles for {search}. slots: search: query.search method: generated generated: '2026-09-26' - target: $.paths['/dealRoles'].post update: x-apievangelist-phrasing: intent: Create a deal role effect: write questions: - How do I add a new deal role such as Champion? - Can I define custom roles for contacts on deals? instructions: - text: Create a deal role called {title}. slots: title: requestBody.title - text: Add a Budget Holder deal role. method: generated generated: '2026-09-26' - target: $.paths['/dealRoles/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a deal role effect: destructive questions: - Can I remove a deal role we don't use? - How do I get rid of an outdated deal role? instructions: - text: Delete deal role {id}. slots: id: path.id - text: Remove the outdated deal role {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasks'].get update: x-apievangelist-phrasing: intent: List deal and contact tasks effect: read questions: - Which tasks are due this week for my deals? - Can I see the tasks assigned to a specific user? - What incomplete tasks are attached to a particular deal? instructions: - text: List tasks assigned to user {assignee_userid}. slots: assignee_userid: query.filters[assignee_userid] - text: Show tasks due after {due_after}. slots: due_after: query.filters[due_after] - text: List tasks with status {status}. slots: status: query.filters[status] method: generated generated: '2026-09-26' - target: $.paths['/dealTasks'].post update: x-apievangelist-phrasing: intent: Create a task effect: write questions: - How do I create a follow-up task on a deal or contact? - Can I schedule a call task with a due date and assignee? instructions: - text: Create a task with {dealTask}. slots: dealTask: requestBody.dealTask - text: Add a follow-up call task due tomorrow for this deal. method: generated generated: '2026-09-26' - target: $.paths['/dealTasks/{id}'].get update: x-apievangelist-phrasing: intent: Get a task effect: read questions: - Where can I see the details of a single task? - What is the due date and status of task 88? instructions: - text: Show me task {id}. slots: id: path.id - text: Get the due date and assignee of task {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasks/{id}'].put update: x-apievangelist-phrasing: intent: Update a task effect: write questions: - Can I mark a task complete or change its due date? - Is it possible to reassign an existing task? instructions: - text: Update task {id} with {dealTask}. slots: id: path.id dealTask: requestBody.dealTask - text: Mark task {id} as complete. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasks/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a task effect: destructive questions: - How do I remove a task that is no longer needed? - Can a task be deleted permanently? instructions: - text: Delete task {id}. slots: id: path.id - text: Remove the cancelled task {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes'].get update: x-apievangelist-phrasing: intent: List task types effect: read questions: - What task types like call or email are available? - Which task categories are configured in my account? instructions: - text: List all task types. - text: Show me the available task categories. method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes'].post update: x-apievangelist-phrasing: intent: Create a task type effect: write questions: - How do I add a new task type such as Demo? - Can I define my own categories for tasks? instructions: - text: Create a task type with {dealTasktype}. slots: dealTasktype: requestBody.dealTasktype - text: Add an Onsite Visit task type. method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes/{id}'].get update: x-apievangelist-phrasing: intent: Get a task type effect: read questions: - Where do I see the details of one task type? - What is task type 4 called? instructions: - text: Show task type {id}. slots: id: path.id - text: Get the name of task type {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes/{id}'].put update: x-apievangelist-phrasing: intent: Update a task type effect: write questions: - Can I rename an existing task type? - Is it possible to change a task type's settings? instructions: - text: Update task type {id} with {dealTasktype}. slots: id: path.id dealTasktype: requestBody.dealTasktype - text: Rename task type {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a task type effect: destructive questions: - How do I delete a task type we stopped using? - Can a task type be removed entirely? instructions: - text: Delete task type {id}. slots: id: path.id - text: Remove the retired task type {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/dealTasktypes/{id}/dealTasks'].put update: x-apievangelist-phrasing: intent: Move tasks to another task type effect: write questions: - Can I move all tasks of one type into a different task type? - How do I reclassify tasks before deleting their task type? instructions: - text: Move the tasks of type {id} to the type in {dealTask}. slots: id: path.id dealTask: requestBody.dealTask - text: Reclassify every task under task type {id} as Call. slots: id: path.id method: generated generated: '2026-09-26'