# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Hubspot Basic API version: 1.0.0 extends: openapi/hubspot-basic-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-24' generator: build-phrasing.py label: Generated by API Evangelist operations: 483 - target: $.paths['/account-info/2026-09/activity/audit-logs'].get update: x-apievangelist-phrasing: intent: Review account audit logs of user actions effect: read questions: - Who changed what in my HubSpot account last week? - Can I filter the account audit trail to actions taken by one specific user? - Is there a way to see user activity logs between two dates for a compliance review? instructions: - text: Show me the account audit log for user actions since {occurredAfter}. slots: occurredAfter: query.occurredAfter - text: Pull audit log entries for actions taken by user {actingUserId}. slots: actingUserId: query.actingUserId - text: List account audit events that happened before {occurredBefore}. slots: occurredBefore: query.occurredBefore method: generated generated: '2026-09-24' - target: $.paths['/account-info/2026-09/activity/login'].get update: x-apievangelist-phrasing: intent: See user login history for the account effect: read questions: - When did each person last log in to our portal? - Can I see the login history for a single user? instructions: - text: List recent logins to the account. - text: Show the login history for user {userId}. slots: userId: query.userId method: generated generated: '2026-09-24' - target: $.paths['/account-info/2026-09/activity/security'].get update: x-apievangelist-phrasing: intent: Review security activity in the account effect: read questions: - What security events have happened in my account recently? - Can I check security activity for one user over a date range? instructions: - text: Show security activity for user {userId}. slots: userId: query.userId - text: List security events between {fromTimestamp} and {toTimestamp}. slots: fromTimestamp: query.fromTimestamp toTimestamp: query.toTimestamp method: generated generated: '2026-09-24' - target: $.paths['/account-info/2026-09/api-usage/daily/private-apps'].get update: x-apievangelist-phrasing: intent: Check daily API usage for private apps effect: read questions: - How many API calls have my private apps made today? - Am I close to the daily API limit with my private apps? instructions: - text: Show today's API call usage for our private apps. - text: Report the daily private app API consumption for the account. method: generated generated: '2026-09-24' - target: $.paths['/account-info/2026-09/details'].get update: x-apievangelist-phrasing: intent: Get account details like time zone and currency effect: read questions: - What time zone and currency is my HubSpot account set to? - Where is my account's data hosted? instructions: - text: Show my account's details, including account type and data hosting location. - text: Look up the portal's configured time zone and company currency. method: generated generated: '2026-09-24' - target: $.paths['/automation/email-templates/2026-09'].get update: x-apievangelist-phrasing: intent: List sequence email templates effect: read questions: - Which email templates do I have for automated sequences? - Can I page through all my sequence email templates? instructions: - text: List my sequence email templates. - text: Show the first {limit} automation email templates. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/automation/email-templates/2026-09'].post update: x-apievangelist-phrasing: intent: Create a sequence email template effect: write questions: - Can I create a new email template for sequences through the API? - What do I need to supply to add an automation email template? instructions: - text: Create an email template named {name} with body {body}. slots: name: requestBody.name body: requestBody.body - text: Add a sequence email template {name} with subject line {subject} and body {body}. slots: name: requestBody.name subject: requestBody.subject body: requestBody.body method: generated generated: '2026-09-24' - target: $.paths['/automation/email-templates/2026-09/folders'].get update: x-apievangelist-phrasing: intent: List email template folders effect: read questions: - What folders are my sequence email templates organized into? - Can I see the list of template folders for automation emails? instructions: - text: List the folders that hold my automation email templates. - text: Show {limit} email template folders at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/automation/email-templates/2026-09/{templateId}'].get update: x-apievangelist-phrasing: intent: Get a sequence email template effect: read questions: - Can I pull the subject and body of one specific sequence template? - What does email template 123 contain? instructions: - text: Show me email template {templateId}. slots: templateId: path.templateId - text: Fetch the subject and body of automation template {templateId}. slots: templateId: path.templateId method: generated generated: '2026-09-24' - target: $.paths['/automation/email-templates/2026-09/{templateId}'].patch update: x-apievangelist-phrasing: intent: Update a sequence email template effect: write questions: - Can I change the subject line of an existing sequence template? - How do I move a sequence email template into another folder? instructions: - text: Update template {templateId} with subject {subject}, body {body}, name {name} and folder {folderId}. slots: templateId: path.templateId subject: requestBody.subject body: requestBody.body name: requestBody.name folderId: requestBody.folderId - text: Rename email template {templateId} to {name} keeping body {body}, subject {subject} and folder {folderId}. slots: templateId: path.templateId name: requestBody.name body: requestBody.body subject: requestBody.subject folderId: requestBody.folderId method: generated generated: '2026-09-24' - target: $.paths['/automation/sequences/2026-03'].get update: x-apievangelist-phrasing: intent: List a user's sales sequences effect: read questions: - Which sales sequences does a given user have access to? - Can I search a user's sequences by name? instructions: - text: List the sequences available to user {userId}. slots: userId: query.userId - text: Find sequences named {name} for user {userId}. slots: name: query.name userId: query.userId method: generated generated: '2026-09-24' - target: $.paths['/automation/sequences/2026-03/enrollments'].post update: x-apievangelist-phrasing: intent: Enroll a contact in a sales sequence effect: write questions: - How do I enroll a contact into a sales sequence via the API? - Can I choose which sender email a sequence enrollment goes out from? instructions: - text: Enroll contact {contactId} in sequence {sequenceId} sending from {senderEmail} as user {userId}. slots: contactId: requestBody.contactId sequenceId: requestBody.sequenceId senderEmail: requestBody.senderEmail userId: query.userId - text: Put contact {contactId} into sequence {sequenceId}, sent by {senderEmail} via alias {senderAliasAddress}, on behalf of user {userId}. slots: contactId: requestBody.contactId sequenceId: requestBody.sequenceId senderEmail: requestBody.senderEmail senderAliasAddress: requestBody.senderAliasAddress userId: query.userId method: generated generated: '2026-09-24' - target: $.paths['/automation/sequences/2026-03/enrollments/contact/{contactId}'].get update: x-apievangelist-phrasing: intent: Check a contact's sequence enrollment status effect: read questions: - Is this contact currently enrolled in a sequence? - What sequence enrollment state is a particular contact in? instructions: - text: Check the sequence enrollment status of contact {contactId}. slots: contactId: path.contactId - text: Tell me whether contact {contactId} is enrolled in any sequence. slots: contactId: path.contactId method: generated generated: '2026-09-24' - target: $.paths['/automation/sequences/2026-03/{sequenceId}'].get update: x-apievangelist-phrasing: intent: Get details of one sales sequence effect: read questions: - What steps are in a specific sales sequence? - Can I look up a single sequence's details for a user? instructions: - text: Show details for sequence {sequenceId} as user {userId}. slots: sequenceId: path.sequenceId userId: query.userId - text: Get the steps and settings of sequence {sequenceId} for user {userId}. slots: sequenceId: path.sequenceId userId: query.userId method: generated generated: '2026-09-24' - target: $.paths['/business-units/public/2026-09/business-units/user/{userId}'].get update: x-apievangelist-phrasing: intent: List brands a user is associated with effect: read questions: - Which brands or business units is a given user assigned to? - Can I check a user's business units by name? instructions: - text: List the brands associated with user {userId}. slots: userId: path.userId - text: Show business units for user {userId} named {name}. slots: userId: path.userId name: query.name method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors'].get update: x-apievangelist-phrasing: intent: List blog authors effect: read questions: - Who are all the authors on my blogs? - Can I list blog authors created after a certain date? instructions: - text: List all blog authors. - text: Show blog authors created after {createdAfter}. slots: createdAfter: query.createdAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors'].post update: x-apievangelist-phrasing: intent: Create a blog author effect: write questions: - How do I add a new author profile to my blog? - Can I set an author's bio, avatar and social links when creating them? instructions: - text: Create blog author {fullName} with email {email}, bio {bio}, slug {slug} and display name {displayName}. slots: fullName: requestBody.fullName email: requestBody.email bio: requestBody.bio slug: requestBody.slug displayName: requestBody.displayName - text: Add a new blog author named {name} whose website is {website}. slots: name: requestBody.name website: requestBody.website method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a blog author effect: read questions: - Can I pull one blog author's profile by ID? - What bio and social links does a particular blog author have? instructions: - text: Show blog author {objectId}. slots: objectId: path.objectId - text: Fetch the profile of blog author {objectId}, including archived ones. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors/{objectId}'].delete update: x-apievangelist-phrasing: intent: Delete a blog author effect: destructive questions: - Can I remove an author from my blog? - What happens when I delete a blog author profile? instructions: - text: Delete blog author {objectId}. slots: objectId: path.objectId - text: Remove author {objectId} from the blog. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors/{objectId}'].patch update: x-apievangelist-phrasing: intent: Update a blog author effect: write questions: - Can I change an existing blog author's bio or avatar? - How do I update the LinkedIn link on an author profile? instructions: - text: Update blog author {objectId} to have bio {bio}. slots: objectId: path.objectId bio: requestBody.bio - text: Change the LinkedIn URL for author {objectId} to {linkedin}. slots: objectId: path.objectId linkedin: requestBody.linkedin method: generated generated: '2026-09-24' - target: $.paths['/cms/blog-settings/2026-09/settings'].get update: x-apievangelist-phrasing: intent: List all blogs in the account effect: read questions: - What blogs exist in my CMS? - Can I list the blogs updated since a certain date? instructions: - text: List every blog in my account with its settings. - text: Show blogs updated after {updatedAfter}. slots: updatedAfter: query.updatedAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/blog-settings/2026-09/settings/{blogId}'].get update: x-apievangelist-phrasing: intent: Get one blog's settings effect: read questions: - What are the settings for a specific blog? - Can I look up one blog by its ID? instructions: - text: Show the settings for blog {blogId}. slots: blogId: path.blogId - text: Get blog {blogId} configuration. slots: blogId: path.blogId method: generated generated: '2026-09-24' - target: $.paths['/cms/audit-logs/2026-09'].get update: x-apievangelist-phrasing: intent: Review CMS content change audit logs effect: read questions: - Who edited or published content on my website recently? - Can I filter CMS audit logs by event type or object type? instructions: - text: Show CMS audit log entries for object {objectId}. slots: objectId: query.objectId - text: List CMS content changes made by user {userId}. slots: userId: query.userId - text: Find CMS audit events of type {eventType}. slots: eventType: query.eventType method: generated generated: '2026-09-24' - target: $.paths['/cms/domains/2026-09'].get update: x-apievangelist-phrasing: intent: List website domains connected to the CMS effect: read questions: - Which domains are connected to my website? - Can I list the archived domains too? instructions: - text: List all domains connected to my CMS. - text: Show CMS domains created after {createdAfter}. slots: createdAfter: query.createdAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/domains/2026-09/{domainId}'].get update: x-apievangelist-phrasing: intent: Get one connected domain effect: read questions: - Can I look up the setup of one specific domain? - Is a particular domain configured correctly for my site? instructions: - text: Show details for domain {domainId}. slots: domainId: path.domainId - text: Get the configuration of connected domain {domainId}. slots: domainId: path.domainId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}'].get update: x-apievangelist-phrasing: intent: List properties of a media bridge object type effect: read questions: - What properties exist on my media bridge app's video objects? - Can I include archived properties when listing a media object type's fields? instructions: - text: List properties for media object type {objectType} in app {appId}. slots: objectType: path.objectType appId: path.appId - text: Show archived media bridge properties on {objectType} for app {appId}. slots: objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}'].post update: x-apievangelist-phrasing: intent: Create a media bridge property effect: write questions: - Can I add a custom field to a media bridge object type? - What's required to define a new property on my app's media objects? instructions: - text: Create property {name} labelled {label} of type {type} and field type {fieldType} in group {groupName} on {objectType} for app {appId}. slots: name: requestBody.name label: requestBody.label type: requestBody.type fieldType: requestBody.fieldType groupName: requestBody.groupName objectType: path.objectType appId: path.appId - text: Add a media property {name} ({label}, {type}/{fieldType}) to group {groupName} of {objectType} in app {appId}. slots: name: requestBody.name label: requestBody.label type: requestBody.type fieldType: requestBody.fieldType groupName: requestBody.groupName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/groups'].get update: x-apievangelist-phrasing: intent: List property groups for a media object type effect: read questions: - Which property groups exist on my media bridge object type? - How are my media object properties grouped? instructions: - text: List property groups on {objectType} for app {appId}. slots: objectType: path.objectType appId: path.appId - text: Show the media bridge property groups of app {appId} for {objectType}. slots: appId: path.appId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/groups'].post update: x-apievangelist-phrasing: intent: Create a media bridge property group effect: write questions: - Can I create a new group to organize media object properties? - What do I need to add a property group to a media object type? instructions: - text: Create property group {name} labelled {label} on {objectType} for app {appId}. slots: name: requestBody.name label: requestBody.label objectType: path.objectType appId: path.appId - text: Add a group {name} with label {label} at display order {displayOrder} to {objectType} in app {appId}. slots: name: requestBody.name label: requestBody.label displayOrder: requestBody.displayOrder objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get a media bridge property group effect: read questions: - Can I look up one property group on a media object type? - What label and order does a specific media property group have? instructions: - text: Show property group {groupName} on {objectType} in app {appId}. slots: groupName: path.groupName objectType: path.objectType appId: path.appId - text: Get media group {groupName} details for object type {objectType}, app {appId}. slots: groupName: path.groupName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/groups/{groupName}'].delete update: x-apievangelist-phrasing: intent: Delete a media bridge property group effect: destructive questions: - Can I remove a property group from a media object type? - What happens to a media property group once I delete it? instructions: - text: Delete property group {groupName} from {objectType} in app {appId}. slots: groupName: path.groupName objectType: path.objectType appId: path.appId - text: Remove the media group {groupName} on {objectType} for app {appId}. slots: groupName: path.groupName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/groups/{groupName}'].patch update: x-apievangelist-phrasing: intent: Update a media bridge property group effect: write questions: - Can I relabel an existing media property group? - Is it possible to change a property group's display order? instructions: - text: Relabel property group {groupName} on {objectType} in app {appId} to {label}. slots: groupName: path.groupName objectType: path.objectType appId: path.appId label: requestBody.label - text: Set display order {displayOrder} on media group {groupName} of {objectType} for app {appId}. slots: displayOrder: requestBody.displayOrder groupName: path.groupName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/{propertyName}'].get update: x-apievangelist-phrasing: intent: Get a media bridge property effect: read questions: - What type and options does one media object property have? - Can I fetch a single property definition from my media bridge app? instructions: - text: Show property {propertyName} on {objectType} in app {appId}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId - text: Get the definition of media property {propertyName} for {objectType}, app {appId}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/{propertyName}'].delete update: x-apievangelist-phrasing: intent: Delete a media bridge property effect: destructive questions: - Can I remove a custom property from a media object type? - Does deleting a media bridge property remove it from the object type? instructions: - text: Delete property {propertyName} from {objectType} in app {appId}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId - text: Remove media property {propertyName} on object type {objectType} for app {appId}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/properties/{objectType}/{propertyName}'].patch update: x-apievangelist-phrasing: intent: Update a media bridge property effect: write questions: - Can I change the label or options of an existing media property? - How do I hide a media bridge property from forms? instructions: - text: Relabel media property {propertyName} on {objectType} in app {appId} to {label}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId label: requestBody.label - text: Move property {propertyName} of {objectType} in app {appId} into group {groupName}. slots: propertyName: path.propertyName objectType: path.objectType appId: path.appId groupName: requestBody.groupName method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/schemas'].get update: x-apievangelist-phrasing: intent: List media bridge object schemas effect: read questions: - Which media object schemas has my app defined? - Can I see archived media bridge schemas as well? instructions: - text: List the object schemas defined by app {appId}. slots: appId: path.appId - text: Show all media bridge schemas for app {appId}, including archived. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/schemas/{objectType}'].get update: x-apievangelist-phrasing: intent: Get one media bridge object schema effect: read questions: - What does the schema for my app's video object type look like? - Can I retrieve one media object schema with its properties? instructions: - text: Show the schema for {objectType} in app {appId}. slots: objectType: path.objectType appId: path.appId - text: Get media object schema {objectType} defined by app {appId}. slots: objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/schemas/{objectType}'].patch update: x-apievangelist-phrasing: intent: Update a media bridge object schema effect: write questions: - Can I change which properties are searchable on a media object schema? - How do I set the primary display property on my media schema? instructions: - text: Set the primary display property of {objectType} in app {appId} to {primaryDisplayProperty}. slots: objectType: path.objectType appId: path.appId primaryDisplayProperty: requestBody.primaryDisplayProperty - text: Update schema {objectType} for app {appId} with description {description}. slots: objectType: path.objectType appId: path.appId description: requestBody.description method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/schemas/{objectType}/associations/{associationId}'].delete update: x-apievangelist-phrasing: intent: Remove an association from a media schema effect: destructive questions: - Can I delete an association definition from a media object schema? - How do I unlink a media object type from another object type? instructions: - text: Delete association {associationId} from schema {objectType} in app {appId}. slots: associationId: path.associationId objectType: path.objectType appId: path.appId - text: Remove media schema association {associationId} on {objectType} for app {appId}. slots: associationId: path.associationId objectType: path.objectType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings'].put update: x-apievangelist-phrasing: intent: Update media bridge provider settings effect: write questions: - Can I rename my media bridge provider? - Is it possible to allow imports when the media connection is disconnected? instructions: - text: Rename media bridge provider for app {appId} to {name}, stamped {updatedAt}. slots: appId: path.appId name: requestBody.name updatedAt: requestBody.updatedAt - text: Allow import on disconnect ({allowImportOnDisconnect}) for app {appId} at {updatedAt}. slots: allowImportOnDisconnect: requestBody.allowImportOnDisconnect appId: path.appId updatedAt: requestBody.updatedAt method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/event-visibility'].get update: x-apievangelist-phrasing: intent: Get media event visibility settings effect: read questions: - Where do my media bridge events show up, timeline or reporting? - Can I check which media events are visible in workflows? instructions: - text: Show the event visibility settings for app {appId}. slots: appId: path.appId - text: Check whether media events from app {appId} appear on the timeline. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/event-visibility'].patch update: x-apievangelist-phrasing: intent: Change media event visibility effect: write questions: - Can I hide a media event type from the contact timeline? - How do I make media events available in workflows? instructions: - text: Show {eventType} events in the timeline ({showInTimeline}) for app {appId}, updated {updatedAt}. slots: eventType: requestBody.eventType showInTimeline: requestBody.showInTimeline appId: path.appId updatedAt: requestBody.updatedAt - text: Set workflow visibility of {eventType} events to {showInWorkflows} for app {appId} at {updatedAt}. slots: eventType: requestBody.eventType showInWorkflows: requestBody.showInWorkflows appId: path.appId updatedAt: requestBody.updatedAt method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/object-definitions/{mediaType}'].get update: x-apievangelist-phrasing: intent: Get object definitions for a media type effect: read questions: - What does the object definition for VIDEO media look like in my app? - Can I get the full object definition for audio or document media types? instructions: - text: Show the object definition for media type {mediaType} in app {appId}. slots: mediaType: path.mediaType appId: path.appId - text: Get the full {mediaType} object definition for app {appId}. slots: mediaType: path.mediaType appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/oembed-domains'].get update: x-apievangelist-phrasing: intent: List allowed oEmbed domains effect: read questions: - Which domains are allowed to embed media for my app? - Can I list the oEmbed domains registered for one portal? instructions: - text: List oEmbed domains for app {appId}. slots: appId: path.appId - text: Show oEmbed domains for app {appId} in portal {domainPortalId}. slots: appId: path.appId domainPortalId: query.domainPortalId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/oembed-domains'].post update: x-apievangelist-phrasing: intent: Register an oEmbed domain effect: write questions: - How do I register a new oEmbed domain so its media can be embedded? - Can I scope an oEmbed domain to a single portal? instructions: - text: Add an oEmbed domain with endpoints {endpoints} for app {appId}. slots: endpoints: requestBody.endpoints appId: path.appId - text: Register oEmbed endpoints {endpoints} for portal {portalId} on app {appId}. slots: endpoints: requestBody.endpoints portalId: requestBody.portalId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/oembed-domains'].delete update: x-apievangelist-phrasing: intent: Delete oEmbed domains for an app effect: destructive questions: - Can I remove oEmbed domains I no longer trust? - Is there a way to delete all oEmbed domains for one portal at once? instructions: - text: Delete oEmbed domain {id} from app {appId}. slots: id: query.id appId: path.appId - text: Remove every oEmbed domain for portal {domainPortalId} on app {appId}. slots: domainPortalId: query.domainPortalId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/oembed-domains/{oEmbedDomainId}'].get update: x-apievangelist-phrasing: intent: Get one oEmbed domain effect: read questions: - What endpoints are configured on a specific oEmbed domain? - Can I look up a single oEmbed domain by ID? instructions: - text: Show oEmbed domain {oEmbedDomainId} for app {appId}. slots: oEmbedDomainId: path.oEmbedDomainId appId: path.appId - text: Get endpoint details of oEmbed domain {oEmbedDomainId} in app {appId}. slots: oEmbedDomainId: path.oEmbedDomainId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/media-bridge/2026-09/{appId}/settings/oembed-domains/{oEmbedDomainId}'].patch update: x-apievangelist-phrasing: intent: Update an oEmbed domain effect: write questions: - Can I change the endpoints on an existing oEmbed domain? - How do I edit an oEmbed domain I already registered? instructions: - text: Replace the endpoints of oEmbed domain {oEmbedDomainId} in app {appId} with {endpoints}. slots: oEmbedDomainId: path.oEmbedDomainId appId: path.appId endpoints: requestBody.endpoints - text: Update existing oEmbed domain {oEmbedDomainId} for app {appId} to endpoints {endpoints} and portal {portalId}. slots: oEmbedDomainId: path.oEmbedDomainId appId: path.appId endpoints: requestBody.endpoints portalId: requestBody.portalId method: generated generated: '2026-09-24' - target: $.paths['/cms/pages/2026-09/site-pages/{objectId}/draft/reset'].post update: x-apievangelist-phrasing: intent: Discard unpublished edits to a website page effect: destructive questions: - Can I throw away my draft changes on a website page and go back to the live version? - What happens to website page draft edits when I reset them? instructions: - text: Reset the draft of website page {objectId} to match what's live. slots: objectId: path.objectId - text: Discard unpublished edits on site page {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/pages/2026-09/site-pages/{objectId}/revisions'].get update: x-apievangelist-phrasing: intent: List previous versions of a website page effect: read questions: - Can I see the revision history of a website page? - How far back does a site page's version history go? instructions: - text: List the revisions of website page {objectId}. slots: objectId: path.objectId - text: Show the last {limit} saved versions of site page {objectId}. slots: limit: query.limit objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/pages/2026-09/site-pages/{objectId}/revisions/{revisionId}'].get update: x-apievangelist-phrasing: intent: Get one past version of a website page effect: read questions: - What did my website page look like at a specific revision? - Can I open a single old version of a site page? instructions: - text: Show revision {revisionId} of website page {objectId}. slots: revisionId: path.revisionId objectId: path.objectId - text: Fetch the content of site page {objectId} as of version {revisionId}. slots: objectId: path.objectId revisionId: path.revisionId method: generated generated: '2026-09-24' - target: $.paths['/cms/pages/2026-09/site-pages/{objectId}/revisions/{revisionId}/restore-to-draft'].post update: x-apievangelist-phrasing: intent: Restore an old website page version to draft effect: write questions: - Can I roll a website page back to an earlier version without publishing it? - How do I bring back an older revision of a site page as the draft? instructions: - text: Restore revision {revisionId} of website page {objectId} into the draft. slots: revisionId: path.revisionId objectId: path.objectId - text: Copy old version {revisionId} of site page {objectId} back into its draft. slots: revisionId: path.revisionId objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors/cursor'].get update: x-apievangelist-phrasing: intent: Page through blog authors with a cursor effect: read questions: - Is there a cursor-based endpoint for paging through all blog authors? - Can I resume listing blog authors from a paging cursor? instructions: - text: Page through blog authors using the cursor endpoint, starting after {after}. slots: after: query.after - text: Walk the blog author cursor feed {limit} at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/authors/cursor/query'].get update: x-apievangelist-phrasing: intent: Query blog authors via the cursor query endpoint effect: read questions: - Can I query blog authors by update date through the cursor query endpoint? - Which endpoint lets me filter blog authors while paging by cursor? instructions: - text: Query blog authors updated after {updatedAfter} through the cursor query endpoint. slots: updatedAfter: query.updatedAfter - text: Run a cursor query for blog authors sorted by {sort}. slots: sort: query.sort method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts'].get update: x-apievangelist-phrasing: intent: List blog posts effect: read questions: - What posts are on my blog? - Can I list blog posts published or updated after a date? instructions: - text: List all my blog posts. - text: Show blog posts updated after {updatedAfter}. slots: updatedAfter: query.updatedAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts'].post update: x-apievangelist-phrasing: intent: Create a blog post effect: write questions: - How do I create a new blog post via the API? - Can I set the author, featured image and meta description when creating a post? instructions: - text: Create a blog post named {name} in blog {contentGroupId} by author {blogAuthorId} with body {postBody}. slots: name: requestBody.name contentGroupId: requestBody.contentGroupId blogAuthorId: requestBody.blogAuthorId postBody: requestBody.postBody - text: Write a new post titled {htmlTitle} with slug {slug} and meta description {metaDescription}. slots: htmlTitle: requestBody.htmlTitle slug: requestBody.slug metaDescription: requestBody.metaDescription method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/clone'].post update: x-apievangelist-phrasing: intent: Clone a blog post effect: write questions: - Can I duplicate an existing blog post as a starting point? - Is it possible to give the copy of a post its own name? instructions: - text: Clone blog post {id}. slots: id: requestBody.id - text: Duplicate post {id} and call the copy {cloneName}. slots: id: requestBody.id cloneName: requestBody.cloneName method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/cursor'].get update: x-apievangelist-phrasing: intent: Page through blog posts with a cursor effect: read questions: - Is there a cursor-paged endpoint for walking every blog post? - Can I continue listing blog posts from a saved cursor? instructions: - text: Page through blog posts using the cursor endpoint after {after}. slots: after: query.after - text: Walk the blog post cursor feed {limit} posts at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/cursor/query'].get update: x-apievangelist-phrasing: intent: Query blog posts via the cursor query endpoint effect: read questions: - Which endpoint lets me filter blog posts by creation date while cursor paging? - Can I query posts through the cursor query endpoint sorted a certain way? instructions: - text: Query blog posts created after {createdAfter} through the cursor query endpoint. slots: createdAfter: query.createdAfter - text: Run a cursor query over blog posts sorted by {sort}. slots: sort: query.sort method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/schedule'].post update: x-apievangelist-phrasing: intent: Schedule a blog post to publish later effect: write questions: - Can I schedule a blog post to go live at a specific time? - How do I set a future publish date for a post? instructions: - text: Schedule blog post {id} to publish at {publishDate}. slots: id: requestBody.id publishDate: requestBody.publishDate - text: Set post {id} to go live on {publishDate}. slots: id: requestBody.id publishDate: requestBody.publishDate method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a blog post effect: read questions: - Can I pull the full content of one blog post? - What's the live state of a particular post? instructions: - text: Show blog post {objectId}. slots: objectId: path.objectId - text: Fetch the published version of post {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}'].delete update: x-apievangelist-phrasing: intent: Delete a blog post effect: destructive questions: - Can I delete a blog post permanently? - What's the way to remove an archived post from my blog? instructions: - text: Delete blog post {objectId}. slots: objectId: path.objectId - text: Remove post {objectId} from the blog. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}'].patch update: x-apievangelist-phrasing: intent: Update a live blog post effect: write questions: - Can I change a published blog post's title or body directly? - How do I update the meta description of an existing post? instructions: - text: Update blog post {objectId} to have meta description {metaDescription}. slots: objectId: path.objectId metaDescription: requestBody.metaDescription - text: Change the featured image on post {objectId} to {featuredImage}. slots: objectId: path.objectId featuredImage: requestBody.featuredImage method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}/draft'].get update: x-apievangelist-phrasing: intent: Get the draft version of a blog post effect: read questions: - Can I see the unpublished draft of a blog post? - What edits are pending in a post's draft? instructions: - text: Show the draft of blog post {objectId}. slots: objectId: path.objectId - text: Fetch the unpublished changes on post {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}/draft'].patch update: x-apievangelist-phrasing: intent: Edit the draft of a blog post effect: write questions: - Can I edit a post's draft without changing the live version? - How do I stage new body text on a blog post before publishing? instructions: - text: Update the draft of post {objectId} with body {postBody}. slots: objectId: path.objectId postBody: requestBody.postBody - text: Stage a new title {htmlTitle} on the draft of blog post {objectId}. slots: htmlTitle: requestBody.htmlTitle objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}/draft/push-live'].post update: x-apievangelist-phrasing: intent: Publish a blog post draft effect: write questions: - How do I push a blog post's draft live? - Can I publish pending draft edits on a post immediately? instructions: - text: Publish the draft of blog post {objectId}. slots: objectId: path.objectId - text: Push post {objectId}'s draft changes live now. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/posts/{objectId}/draft/reset'].post update: x-apievangelist-phrasing: intent: Reset a blog post draft to live effect: destructive questions: - Can I discard draft edits on a blog post? - Is there a way to revert a post's draft back to the published version? instructions: - text: Reset the draft of blog post {objectId} to the live version. slots: objectId: path.objectId - text: Throw away unpublished edits on post {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags/cursor'].get update: x-apievangelist-phrasing: intent: Page through blog tags with a cursor effect: read questions: - Is there a cursor-paged endpoint for all blog tags? - Can I resume listing blog tags from a cursor token? instructions: - text: Page through blog tags using the cursor endpoint after {after}. slots: after: query.after - text: Walk the blog tag cursor feed {limit} at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags/cursor/query'].get update: x-apievangelist-phrasing: intent: Query blog tags via the cursor query endpoint effect: read questions: - Which endpoint filters blog tags by date while cursor paging? - Can I run a cursor query over archived blog tags? instructions: - text: Query blog tags created before {createdBefore} through the cursor query endpoint. slots: createdBefore: query.createdBefore - text: Run a cursor query over blog tags including archived ones ({archived}). slots: archived: query.archived method: generated generated: '2026-09-24' - target: $.paths['/cms/site-search/2026-09/indexed-data/{contentId}'].get update: x-apievangelist-phrasing: intent: See what site search indexed for a page effect: read questions: - Why isn't a page showing up in my site search results? - What data has site search indexed for a specific blog post or HubDB table? instructions: - text: Show the indexed site search data for content {contentId}. slots: contentId: path.contentId - text: Get indexed properties of content {contentId} of type {type}. slots: contentId: path.contentId type: query.type method: generated generated: '2026-09-24' - target: $.paths['/cms/source-code/2026-09/{environment}/content/{path}'].get update: x-apievangelist-phrasing: intent: Download a design manager file effect: read questions: - Can I download a theme or template file from my CMS source code? - How do I grab the raw contents of a file in the published environment? instructions: - text: Download file {path} from the {environment} environment. slots: path: path.path environment: path.environment - text: Get the raw bytes of source file {path} in {environment}. slots: path: path.path environment: path.environment method: generated generated: '2026-09-24' - target: $.paths['/cms/source-code/2026-09/{environment}/content/{path}'].delete update: x-apievangelist-phrasing: intent: Delete a design manager file effect: destructive questions: - Can I delete a template file from my CMS source code? - What happens if I remove a file from the draft environment? instructions: - text: Delete file {path} from the {environment} environment. slots: path: path.path environment: path.environment - text: Remove source code file {path} in {environment}. slots: path: path.path environment: path.environment method: generated generated: '2026-09-24' - target: $.paths['/cms/source-code/2026-09/{environment}/metadata/{path}'].get update: x-apievangelist-phrasing: intent: Get metadata for a design manager file effect: read questions: - When was a CMS source file last modified? - Can I check a source file's metadata without downloading it? instructions: - text: Show metadata for file {path} in {environment}. slots: path: path.path environment: path.environment - text: Check the size and modified date of source file {path} in the {environment} environment. slots: path: path.path environment: path.environment method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags'].get update: x-apievangelist-phrasing: intent: List blog tags effect: read questions: - What tags are used on my blog? - Can I list blog tags created within a date range? instructions: - text: List all blog tags. - text: Show blog tags created after {createdAfter}. slots: createdAfter: query.createdAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags'].post update: x-apievangelist-phrasing: intent: Create a blog tag effect: write questions: - How do I add a new tag to my blog? - Can I set a tag's language when I create it? instructions: - text: Create a blog tag named {name}. slots: name: requestBody.name - text: Add blog tag {name} with slug {slug} in language {language}. slots: name: requestBody.name slug: requestBody.slug language: requestBody.language method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a blog tag effect: read questions: - Can I look up one blog tag by ID? - What slug and language does a particular tag have? instructions: - text: Show blog tag {objectId}. slots: objectId: path.objectId - text: Fetch details of tag {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags/{objectId}'].delete update: x-apievangelist-phrasing: intent: Delete a blog tag effect: destructive questions: - Can I delete a tag I no longer use on my blog? - What happens to posts when I remove a blog tag? instructions: - text: Delete blog tag {objectId}. slots: objectId: path.objectId - text: Remove tag {objectId} from the blog. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/cms/blogs/2026-09/tags/{objectId}'].patch update: x-apievangelist-phrasing: intent: Rename or update a blog tag effect: write questions: - Can I rename an existing blog tag? - How do I change a tag's slug? instructions: - text: Rename blog tag {objectId} to {name}. slots: objectId: path.objectId name: requestBody.name - text: Change the slug of tag {objectId} to {slug}. slots: objectId: path.objectId slug: requestBody.slug method: generated generated: '2026-09-24' - target: $.paths['/url-mappings/2026-09/url-mappings'].get update: x-apievangelist-phrasing: intent: List URL mappings (legacy endpoint) effect: read questions: - Where can I see all the URL mappings in my account on the older URL mappings endpoint? - Which URL mapping rules are configured under the url-mappings API? instructions: - text: List every URL mapping from the legacy url-mappings endpoint. - text: Show all URL mapping configurations in my account. method: generated generated: '2026-09-24' - target: $.paths['/url-mappings/2026-09/url-mappings'].post update: x-apievangelist-phrasing: intent: Create a URL mapping (legacy endpoint) effect: write questions: - Can I still create URL mappings through the older url-mappings API? - What does the legacy URL mapping create call need? instructions: - text: Create a legacy URL mapping from {routePrefix} to {destination}. slots: routePrefix: requestBody.routePrefix destination: requestBody.destination - text: Add a URL mapping named {name} sending {routePrefix} to {destination} with style {redirectStyle}. slots: name: requestBody.name routePrefix: requestBody.routePrefix destination: requestBody.destination redirectStyle: requestBody.redirectStyle method: generated generated: '2026-09-24' - target: $.paths['/url-mappings/2026-09/url-mappings/{id}'].get update: x-apievangelist-phrasing: intent: Get a URL mapping (legacy endpoint) effect: read questions: - Can I look up a single URL mapping on the older url-mappings API? - What does one legacy URL mapping point to? instructions: - text: Show legacy URL mapping {id}. slots: id: path.id - text: Get the destination of URL mapping {id} from the url-mappings endpoint. slots: id: path.id method: generated generated: '2026-09-24' - target: $.paths['/url-mappings/2026-09/url-mappings/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a URL mapping (legacy endpoint) effect: destructive questions: - Can I delete a URL mapping using the older url-mappings API? - How do I remove one legacy URL mapping? instructions: - text: Delete legacy URL mapping {id}. slots: id: path.id - text: Remove URL mapping {id} via the url-mappings endpoint. slots: id: path.id method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09'].get update: x-apievangelist-phrasing: intent: List URL redirects effect: read questions: - Which URL redirects are set up on my website? - Can I list redirects created after a certain date? instructions: - text: List all URL redirects on my site. - text: Show URL redirects updated after {updatedAfter}. slots: updatedAfter: query.updatedAfter method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09'].post update: x-apievangelist-phrasing: intent: Create a URL redirect effect: write questions: - How do I set up a 301 redirect from an old URL to a new one? - Can I make a redirect that only applies when the page isn't found? instructions: - text: Redirect {routePrefix} to {destination} with a {redirectStyle} redirect. slots: routePrefix: requestBody.routePrefix destination: requestBody.destination redirectStyle: requestBody.redirectStyle - text: Create a {redirectStyle} redirect from {routePrefix} to {destination} only after a 404 ({isOnlyAfterNotFound}). slots: redirectStyle: requestBody.redirectStyle routePrefix: requestBody.routePrefix destination: requestBody.destination isOnlyAfterNotFound: requestBody.isOnlyAfterNotFound method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/url-mappings'].get update: x-apievangelist-phrasing: intent: List URL mappings under URL redirects effect: read questions: - Can I list URL mappings through the URL redirects API rather than the old mappings endpoint? - Which redirect-style URL mappings exist under url-redirects? instructions: - text: List URL mappings from the url-redirects API. - text: Show every mapping under url-redirects/url-mappings. method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/url-mappings'].post update: x-apievangelist-phrasing: intent: Create a URL mapping under URL redirects effect: write questions: - Can I create a URL mapping through the URL redirects API? - What fields does a url-redirects mapping require? instructions: - text: Create a url-redirects mapping from {routePrefix} to {destination} as {redirectStyle} at precedence {precedence}. slots: routePrefix: requestBody.routePrefix destination: requestBody.destination redirectStyle: requestBody.redirectStyle precedence: requestBody.precedence - text: Add a mapping under url-redirects sending {routePrefix} to {destination}. slots: routePrefix: requestBody.routePrefix destination: requestBody.destination method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/url-mappings/{id}'].get update: x-apievangelist-phrasing: intent: Get a URL mapping under URL redirects effect: read questions: - Can I fetch one mapping from the url-redirects mappings collection? - What precedence does a specific url-redirects mapping have? instructions: - text: Show url-redirects mapping {id}. slots: id: path.id - text: Fetch mapping {id} from url-redirects/url-mappings. slots: id: path.id method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/url-mappings/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a URL mapping under URL redirects effect: destructive questions: - Can I remove a mapping from the url-redirects mappings collection? - Is deleting a url-redirects mapping permanent? instructions: - text: Delete url-redirects mapping {id}. slots: id: path.id - text: Remove mapping {id} from url-redirects/url-mappings. slots: id: path.id method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/{urlRedirectId}'].get update: x-apievangelist-phrasing: intent: Get a URL redirect effect: read questions: - Where does a particular redirect on my site send visitors? - Can I check the settings of one URL redirect? instructions: - text: Show URL redirect {urlRedirectId}. slots: urlRedirectId: path.urlRedirectId - text: Get the destination and style of redirect {urlRedirectId}. slots: urlRedirectId: path.urlRedirectId method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/{urlRedirectId}'].delete update: x-apievangelist-phrasing: intent: Delete a URL redirect effect: destructive questions: - Can I delete a redirect I no longer need? - What happens to traffic when I remove a URL redirect? instructions: - text: Delete URL redirect {urlRedirectId}. slots: urlRedirectId: path.urlRedirectId - text: Remove redirect {urlRedirectId} from my site. slots: urlRedirectId: path.urlRedirectId method: generated generated: '2026-09-24' - target: $.paths['/cms/url-redirects/2026-09/{urlRedirectId}'].patch update: x-apievangelist-phrasing: intent: Update a URL redirect effect: write questions: - Can I point an existing redirect at a new destination? - How do I change a redirect from temporary to permanent? instructions: - text: Point redirect {urlRedirectId} at {destination}. slots: urlRedirectId: path.urlRedirectId destination: requestBody.destination - text: Change redirect {urlRedirectId} to style {redirectStyle}. slots: urlRedirectId: path.urlRedirectId redirectStyle: requestBody.redirectStyle method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-links/2026-09/payment-links'].get update: x-apievangelist-phrasing: intent: List payment links effect: read questions: - What payment links have I created? - Can I list payment links created in the last month? instructions: - text: List all my payment links. - text: Show payment links created after {createdAfter}. slots: createdAfter: query.createdAfter method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-links/2026-09/payment-links'].post update: x-apievangelist-phrasing: intent: Create a payment link effect: write questions: - How do I create a payment link to collect money for line items? - Can a payment link be single-use and collect a shipping address? instructions: - text: Create a payment link named {paymentLinkName} in {currencyCode} for line items {lineItems}. slots: paymentLinkName: requestBody.paymentLinkName currencyCode: requestBody.currencyCode lineItems: requestBody.lineItems - text: Make a one-time-use ({isOneTimeUseEnabled}) payment link {paymentLinkName} accepting {acceptedPaymentMethods}. slots: isOneTimeUseEnabled: requestBody.isOneTimeUseEnabled paymentLinkName: requestBody.paymentLinkName acceptedPaymentMethods: requestBody.acceptedPaymentMethods method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-links/2026-09/payment-links/{paymentLinkId}'].get update: x-apievangelist-phrasing: intent: Get a payment link effect: read questions: - Can I look up the details of one payment link? - What line items and currency are on a particular payment link? instructions: - text: Show payment link {paymentLinkId}. slots: paymentLinkId: path.paymentLinkId - text: Get the line items on payment link {paymentLinkId}. slots: paymentLinkId: path.paymentLinkId method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-links/2026-09/payment-links/{paymentLinkId}'].delete update: x-apievangelist-phrasing: intent: Delete a payment link effect: destructive questions: - Can I delete a payment link so nobody can pay through it? - Is removing a payment link permanent? instructions: - text: Delete payment link {paymentLinkId}. slots: paymentLinkId: path.paymentLinkId - text: Remove payment link {paymentLinkId} for good. slots: paymentLinkId: path.paymentLinkId method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-links/2026-09/payment-links/{paymentLinkId}'].patch update: x-apievangelist-phrasing: intent: Update a payment link effect: write questions: - Can I change the success redirect URL on an existing payment link? - How do I rename a payment link I already shared? instructions: - text: Rename payment link {paymentLinkId} to {paymentLinkName}. slots: paymentLinkId: path.paymentLinkId paymentLinkName: requestBody.paymentLinkName - text: Set the success URL of payment link {paymentLinkId} to {successUrl}. slots: paymentLinkId: path.paymentLinkId successUrl: requestBody.successUrl method: generated generated: '2026-09-24' - target: $.paths['/commerce/payment-accounts/2026-09/status'].get update: x-apievangelist-phrasing: intent: Check the payments account status effect: read questions: - Is my portal's payments account set up and active? - What status is our HubSpot payments account in? instructions: - text: Show the status of my portal's payments account. - text: Check whether payments are enabled on this account. method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books'].post update: x-apievangelist-phrasing: intent: Create a price book effect: write questions: - Can I create a price book for a set of currencies? - What does a new price book need? instructions: - text: Create a price book named {name} supporting {supportedCurrencies}. slots: name: requestBody.name supportedCurrencies: requestBody.supportedCurrencies - text: Add price book {name} described as {description} with custom properties {customProperties}. slots: name: requestBody.name description: requestBody.description customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}'].get update: x-apievangelist-phrasing: intent: Get a price book effect: read questions: - Can I look up one price book and its currencies? - What's in a particular price book? instructions: - text: Show price book {priceBookId}. slots: priceBookId: path.priceBookId - text: Get the supported currencies of price book {priceBookId}. slots: priceBookId: path.priceBookId method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}'].delete update: x-apievangelist-phrasing: intent: Delete a price book effect: destructive questions: - Can I delete a price book I don't use? - Is deleting a price book reversible? instructions: - text: Delete price book {priceBookId}. slots: priceBookId: path.priceBookId - text: Remove price book {priceBookId} permanently. slots: priceBookId: path.priceBookId method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}'].patch update: x-apievangelist-phrasing: intent: Update a price book effect: write questions: - Can I rename a price book or change its description? - How do I add a currency to an existing price book? instructions: - text: Rename price book {priceBookId} to {name} with description {description} and properties {customProperties}. slots: priceBookId: path.priceBookId name: requestBody.name description: requestBody.description customProperties: requestBody.customProperties - text: Set supported currencies on price book {priceBookId} to {supportedCurrencies}, keeping name {name}, description {description}, properties {customProperties}. slots: priceBookId: path.priceBookId supportedCurrencies: requestBody.supportedCurrencies name: requestBody.name description: requestBody.description customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}/activate'].post update: x-apievangelist-phrasing: intent: Activate a price book effect: write questions: - How do I turn a price book on so it's used for pricing? - Can I activate a price book through the API? instructions: - text: Activate price book {priceBookId}. slots: priceBookId: path.priceBookId - text: Switch price book {priceBookId} to active. slots: priceBookId: path.priceBookId method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}/deactivate'].post update: x-apievangelist-phrasing: intent: Deactivate a price book effect: destructive questions: - Can I switch off a price book without deleting it? - What's the way to stop a price book from being used? instructions: - text: Deactivate price book {priceBookId}. slots: priceBookId: path.priceBookId - text: Turn off price book {priceBookId} but keep it. slots: priceBookId: path.priceBookId method: generated generated: '2026-09-24' - target: $.paths['/commerce/price-books/2026-09/price-books/{priceBookId}/validate'].post update: x-apievangelist-phrasing: intent: Validate a price book effect: read questions: - Is my price book valid before I activate it? - Can I check a price book for errors? instructions: - text: Validate price book {priceBookId}. slots: priceBookId: path.priceBookId - text: Run validation checks on price book {priceBookId}. slots: priceBookId: path.priceBookId method: generated generated: '2026-09-24' - target: $.paths['/conversations/conversations/v3/threads/{threadId}/assignee'].put update: x-apievangelist-phrasing: intent: Assign a conversation thread to someone effect: write questions: - How do I assign an inbox conversation to a specific agent? - Can I reassign a conversation thread through the API? instructions: - text: Assign thread {threadId} to {actorId}. slots: threadId: path.threadId actorId: requestBody.actorId - text: Reassign conversation {threadId} to agent {actorId}. slots: threadId: path.threadId actorId: requestBody.actorId method: generated generated: '2026-09-24' - target: $.paths['/conversations/conversations/v3/threads/{threadId}/assignee'].delete update: x-apievangelist-phrasing: intent: Unassign a conversation thread effect: destructive questions: - Can I remove the assignee from a conversation thread? - How do I put a conversation back to unassigned? instructions: - text: Unassign conversation thread {threadId}. slots: threadId: path.threadId - text: Clear the assignee on thread {threadId}. slots: threadId: path.threadId method: generated generated: '2026-09-24' - target: $.paths['/conversations/custom-channels/2026-09'].get update: x-apievangelist-phrasing: intent: List custom conversation channels effect: read questions: - Which custom channels have I registered for the conversations inbox? - Can I page through my custom messaging channels? instructions: - text: List my custom conversation channels. - text: Show {limit} custom channels at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/conversations/custom-channels/2026-09'].post update: x-apievangelist-phrasing: intent: Register a custom conversation channel effect: write questions: - How do I connect my own messaging channel to the conversations inbox? - Can a custom channel send messages to a webhook URL? instructions: - text: Create a custom channel called {name} with capabilities {capabilities}. slots: name: requestBody.name capabilities: requestBody.capabilities - text: Register custom channel {name} with capabilities {capabilities} delivering to webhook {webhookUrl}. slots: name: requestBody.name capabilities: requestBody.capabilities webhookUrl: requestBody.webhookUrl method: generated generated: '2026-09-24' - target: $.paths['/visitor-identification/2026-09/tokens/create'].post update: x-apievangelist-phrasing: intent: Identify a logged-in visitor to chat effect: write questions: - How do I make the chat widget recognize visitors who are already logged in to my site? - Can I pass a visitor's name along with their email to chat? instructions: - text: Generate a visitor identification token for {email}. slots: email: requestBody.email - text: Create a chat identity token for {email} named {firstName} {lastName}. slots: email: requestBody.email firstName: requestBody.firstName lastName: requestBody.lastName method: generated generated: '2026-09-24' - target: $.paths['/appinstalls/2026-09/external-install'].delete update: x-apievangelist-phrasing: intent: Uninstall my app from a customer account effect: destructive questions: - Can my app uninstall itself from a customer's HubSpot account? - Will the customer be notified when I uninstall my app? instructions: - text: Uninstall my app from this customer's account. - text: Remove our app installation from the connected portal. method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}'].get update: x-apievangelist-phrasing: intent: List records of any CRM object type effect: read questions: - Can I list records for any object type, including custom objects, from one endpoint? - How do I page through records of a given CRM object type? instructions: - text: List records of object type {objectType}. slots: objectType: path.objectType - text: Show {limit} {objectType} records with properties {properties}. slots: limit: query.limit objectType: path.objectType properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}'].post update: x-apievangelist-phrasing: intent: Create a record of any CRM object type effect: write questions: - Can I create a custom object record through the generic objects endpoint? - What's needed to create a record for an arbitrary object type? instructions: - text: Create a {objectType} record with properties {properties}. slots: objectType: path.objectType properties: requestBody.properties - text: Add a new {objectType} record with {properties} and associations {associations}. slots: objectType: path.objectType properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a record of any CRM object type effect: read questions: - Can I fetch one record of any object type by its ID? - Is it possible to look up a custom object record by a unique property instead of ID? instructions: - text: Show {objectType} record {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: Look up {objectType} record {objectId} using unique property {idProperty}. slots: objectType: path.objectType objectId: path.objectId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}'].delete update: x-apievangelist-phrasing: intent: Archive a record of any CRM object type effect: destructive questions: - Can I archive a custom object record through the generic endpoint? - How do I delete a record when I only know its object type and ID? instructions: - text: Archive {objectType} record {objectId}. slots: objectType: path.objectType objectId: path.objectId - text: Delete record {objectId} of object type {objectType}. slots: objectId: path.objectId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}'].patch update: x-apievangelist-phrasing: intent: Update a record of any CRM object type effect: write questions: - Can I update properties on a custom object record by ID? - How do I edit a record of an arbitrary object type? instructions: - text: Update {objectType} record {objectId} with {properties}. slots: objectType: path.objectType objectId: path.objectId properties: requestBody.properties - text: Set properties {properties} on {objectType} {objectId}, matched by {idProperty}. slots: properties: requestBody.properties objectType: path.objectType objectId: path.objectId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}/associations/{toObjectType}'].get update: x-apievangelist-phrasing: intent: List a record's associations to another type effect: read questions: - Which contacts are associated with this deal? - Can I list everything of one type linked to a given record? instructions: - text: List {toObjectType} associated with {objectType} record {objectId}. slots: toObjectType: path.toObjectType objectType: path.objectType objectId: path.objectId - text: Show which {toObjectType} records are linked to {objectType} {objectId}. slots: toObjectType: path.toObjectType objectType: path.objectType objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}'].put update: x-apievangelist-phrasing: intent: Associate two CRM records effect: write questions: - How do I link a contact to a company record? - Can I associate any two CRM records by ID? instructions: - text: Associate {objectType} {objectId} with {toObjectType} {toObjectId}. slots: objectType: path.objectType objectId: path.objectId toObjectType: path.toObjectType toObjectId: path.toObjectId - text: Link {objectType} record {objectId} to {toObjectType} record {toObjectId}. slots: objectType: path.objectType objectId: path.objectId toObjectType: path.toObjectType toObjectId: path.toObjectId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}'].delete update: x-apievangelist-phrasing: intent: Remove an association between two records effect: destructive questions: - Can I unlink a contact from a deal? - How do I remove the association between two CRM records? instructions: - text: Remove the association between {objectType} {objectId} and {toObjectType} {toObjectId}. slots: objectType: path.objectType objectId: path.objectId toObjectType: path.toObjectType toObjectId: path.toObjectId - text: Unlink {toObjectType} {toObjectId} from {objectType} {objectId}. slots: toObjectType: path.toObjectType toObjectId: path.toObjectId objectType: path.objectType objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/crm/associations/2026-03/usage/high-usage-report/{userId}'].post update: x-apievangelist-phrasing: intent: Request a high association usage report effect: write questions: - Which records in my portal are close to their association limits? - Can I get a report of objects with heavy association usage? instructions: - text: Request a high association usage report for user {userId}. slots: userId: path.userId - text: Send user {userId} a report of records with high association usage. slots: userId: path.userId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings'].get update: x-apievangelist-phrasing: intent: Get calling extension settings for an app effect: read questions: - What calling extension settings does my app have? - Is my calling app marked as ready? instructions: - text: Show the calling extension settings for app {appId}. slots: appId: path.appId - text: Check the calling widget URL and size for app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings'].post update: x-apievangelist-phrasing: intent: Set up calling extension settings for an app effect: write questions: - How do I register my app as a calling provider? - Can my calling extension support inbound calls? instructions: - text: Create calling settings for app {appId} named {name} at {url}, {width}x{height}. slots: appId: path.appId name: requestBody.name url: requestBody.url width: requestBody.width height: requestBody.height - text: Register app {appId} as calling provider {name} with inbound calling {supportsInboundCalling}. slots: appId: path.appId name: requestBody.name supportsInboundCalling: requestBody.supportsInboundCalling method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings'].delete update: x-apievangelist-phrasing: intent: Delete calling extension settings for an app effect: destructive questions: - Can I remove my app's calling extension? - What happens when I delete calling settings for an app? instructions: - text: Delete the calling extension settings for app {appId}. slots: appId: path.appId - text: Remove app {appId} as a calling provider. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings'].patch update: x-apievangelist-phrasing: intent: Update calling extension settings for an app effect: write questions: - Can I change my calling widget's URL or dimensions? - How do I mark my calling extension as ready? instructions: - text: Set the calling widget URL for app {appId} to {url}. slots: appId: path.appId url: requestBody.url - text: Mark the calling extension of app {appId} as ready ({isReady}). slots: appId: path.appId isReady: requestBody.isReady method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/channel-connection'].get update: x-apievangelist-phrasing: intent: Get calling channel connection settings effect: read questions: - What channel connection settings are set for my calling app? - Is the calling channel connection ready for my app? instructions: - text: Show the calling channel connection settings for app {appId}. slots: appId: path.appId - text: Check the channel connection URL for calling app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/channel-connection'].post update: x-apievangelist-phrasing: intent: Create calling channel connection settings effect: write questions: - How do I set up a channel connection for my calling app? - Can I register the URL used for my calling channel connection? instructions: - text: Create a calling channel connection for app {appId} at {url}, ready {isReady}. slots: appId: path.appId url: requestBody.url isReady: requestBody.isReady - text: Set up channel connection settings for calling app {appId} pointing to {url} with ready flag {isReady}. slots: appId: path.appId url: requestBody.url isReady: requestBody.isReady method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/channel-connection'].delete update: x-apievangelist-phrasing: intent: Remove calling channel connection settings effect: destructive questions: - Can I delete the channel connection from my calling app? - How do I disconnect the calling channel connection settings? instructions: - text: Remove the calling channel connection settings for app {appId}. slots: appId: path.appId - text: Delete app {appId}'s calling channel connection. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/channel-connection'].patch update: x-apievangelist-phrasing: intent: Update calling channel connection settings effect: write questions: - Can I change the URL of my calling channel connection? - How do I flip a calling channel connection to ready? instructions: - text: Change the calling channel connection URL for app {appId} to {url}. slots: appId: path.appId url: requestBody.url - text: Mark app {appId}'s calling channel connection ready ({isReady}). slots: appId: path.appId isReady: requestBody.isReady method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/recording'].get update: x-apievangelist-phrasing: intent: Get call recording settings for an app effect: read questions: - Where does my calling app serve authenticated recordings from? - Can I see the recording settings for a calling app? instructions: - text: Show the call recording settings for app {appId}. slots: appId: path.appId - text: Get the recording retrieval URL configured for app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/recording'].post update: x-apievangelist-phrasing: intent: Create call recording settings for an app effect: write questions: - How do I let calls logged by my app play recordings? - What URL does call recording setup require? instructions: - text: Set up call recordings for app {appId} using {urlToRetrieveAuthedRecording}. slots: appId: path.appId urlToRetrieveAuthedRecording: requestBody.urlToRetrieveAuthedRecording - text: Create recording settings for calling app {appId} that fetch recordings from {urlToRetrieveAuthedRecording}. slots: appId: path.appId urlToRetrieveAuthedRecording: requestBody.urlToRetrieveAuthedRecording method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-03/{appId}/settings/recording'].patch update: x-apievangelist-phrasing: intent: Update call recording settings for an app effect: write questions: - Can I change where my calling app serves recordings from? - How do I update the authenticated recording URL for my app? instructions: - text: Change the recording URL for calling app {appId} to {urlToRetrieveAuthedRecording}. slots: appId: path.appId urlToRetrieveAuthedRecording: requestBody.urlToRetrieveAuthedRecording - text: Point app {appId}'s existing recording settings at a new URL {urlToRetrieveAuthedRecording}. slots: appId: path.appId urlToRetrieveAuthedRecording: requestBody.urlToRetrieveAuthedRecording method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/calls'].get update: x-apievangelist-phrasing: intent: List logged calls effect: read questions: - Which calls have been logged in my CRM? - Can I list call records along with their associated contacts? instructions: - text: List logged call records. - text: Show {limit} calls with properties {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/calls'].post update: x-apievangelist-phrasing: intent: Log a call in the CRM effect: write questions: - How do I log a phone call against a contact? - Can I create a call record and associate it with a deal at the same time? instructions: - text: Log a call with properties {properties}. slots: properties: requestBody.properties - text: Create a call record {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/calls/{callId}'].get update: x-apievangelist-phrasing: intent: Get a logged call effect: read questions: - Can I pull the details and notes of one logged call? - What was the outcome of a particular call? instructions: - text: Show call {callId}. slots: callId: path.callId - text: Get the duration and outcome of call record {callId}. slots: callId: path.callId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/calls/{callId}'].delete update: x-apievangelist-phrasing: intent: Archive a logged call effect: destructive questions: - Can I delete a call I logged by mistake? - Does archiving a call remove it from the timeline? instructions: - text: Archive call {callId}. slots: callId: path.callId - text: Delete the logged call {callId}. slots: callId: path.callId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/calls/{callId}'].patch update: x-apievangelist-phrasing: intent: Update a logged call effect: write questions: - Can I change the notes or outcome on a logged call? - How do I edit an existing call record? instructions: - text: Update call {callId} with {properties}. slots: callId: path.callId properties: requestBody.properties - text: Set the outcome properties {properties} on logged call {callId}. slots: properties: requestBody.properties callId: path.callId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/carts'].get update: x-apievangelist-phrasing: intent: List shopping carts effect: read questions: - What carts exist in my commerce data? - Can I list carts along with their associated line items? instructions: - text: List all carts. - text: Show carts with associations to {associations}. slots: associations: query.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/carts'].post update: x-apievangelist-phrasing: intent: Create a shopping cart effect: write questions: - Can I create a cart record from my store's checkout data? - How do I add a cart and link it to a contact? instructions: - text: Create a cart with properties {properties}. slots: properties: requestBody.properties - text: Add a cart {properties} associated to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/carts/{cartId}'].get update: x-apievangelist-phrasing: intent: Get a shopping cart effect: read questions: - What's in a particular cart? - Can I look up a cart by an external ID property? instructions: - text: Show cart {cartId}. slots: cartId: path.cartId - text: Find cart {cartId} using unique property {idProperty}. slots: cartId: path.cartId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/carts/{cartId}'].delete update: x-apievangelist-phrasing: intent: Delete a shopping cart effect: destructive questions: - Can I remove an abandoned cart record? - Is deleting a cart permanent? instructions: - text: Delete cart {cartId}. slots: cartId: path.cartId - text: Remove the cart record {cartId}. slots: cartId: path.cartId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/carts/{cartId}'].patch update: x-apievangelist-phrasing: intent: Update a shopping cart effect: write questions: - Can I change a cart's status or total? - How do I edit properties on an existing cart? instructions: - text: Update cart {cartId} with {properties}. slots: cartId: path.cartId properties: requestBody.properties - text: Set properties {properties} on shopping cart {cartId}. slots: properties: requestBody.properties cartId: path.cartId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/commerce_payments'].get update: x-apievangelist-phrasing: intent: List commerce payments effect: read questions: - What payments have been recorded in my commerce hub? - Can I list payments with their properties? instructions: - text: List commerce payments. - text: Show {limit} payments with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/commerce_payments'].post update: x-apievangelist-phrasing: intent: Record a commerce payment effect: write questions: - Can I record a payment that happened outside the CRM? - How do I create a payment and associate it with an invoice? instructions: - text: Record a commerce payment with {properties}. slots: properties: requestBody.properties - text: Create a payment {properties} associated to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/commerce_payments/{commercePaymentId}'].get update: x-apievangelist-phrasing: intent: Get a commerce payment effect: read questions: - Can I see a single recorded payment's details? - What amount and status does a specific payment have? instructions: - text: Show commerce payment {commercePaymentId}. slots: commercePaymentId: path.commercePaymentId - text: Get the amount and status of payment {commercePaymentId}. slots: commercePaymentId: path.commercePaymentId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/commerce_payments/{commercePaymentId}'].delete update: x-apievangelist-phrasing: intent: Archive a commerce payment effect: destructive questions: - Can I archive a payment record I entered by mistake? - What happens when a commerce payment is archived? instructions: - text: Archive commerce payment {commercePaymentId}. slots: commercePaymentId: path.commercePaymentId - text: Remove payment record {commercePaymentId}. slots: commercePaymentId: path.commercePaymentId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/commerce_payments/{commercePaymentId}'].patch update: x-apievangelist-phrasing: intent: Update a commerce payment effect: write questions: - Can I correct properties on a recorded payment? - How do I edit an existing commerce payment? instructions: - text: Update commerce payment {commercePaymentId} with {properties}. slots: commercePaymentId: path.commercePaymentId properties: requestBody.properties - text: Correct payment {commercePaymentId} by setting {properties}. slots: commercePaymentId: path.commercePaymentId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/communications'].get update: x-apievangelist-phrasing: intent: List logged messaging communications effect: read questions: - Which SMS, WhatsApp or LinkedIn messages have been logged in the CRM? - Can I list communication records with their associated contacts? instructions: - text: List logged communications. - text: Show communications with associations {associations}. slots: associations: query.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/communications'].post update: x-apievangelist-phrasing: intent: Log a messaging communication effect: write questions: - How do I log a text message conversation against a contact? - Can I create a communication record and link it to a company? instructions: - text: Log a communication with properties {properties}. slots: properties: requestBody.properties - text: Create a communication {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/communications/{communicationId}'].get update: x-apievangelist-phrasing: intent: Get a logged communication effect: read questions: - Can I pull one logged message record? - What channel and body does a specific communication have? instructions: - text: Show communication {communicationId}. slots: communicationId: path.communicationId - text: Get the channel and text of communication {communicationId}. slots: communicationId: path.communicationId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/communications/{communicationId}'].delete update: x-apievangelist-phrasing: intent: Archive a logged communication effect: destructive questions: - Can I delete a logged message from a contact's record? - Is archiving a communication permanent? instructions: - text: Archive communication {communicationId}. slots: communicationId: path.communicationId - text: Delete logged message record {communicationId}. slots: communicationId: path.communicationId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/communications/{communicationId}'].patch update: x-apievangelist-phrasing: intent: Update a logged communication effect: write questions: - Can I edit the body of a logged communication? - How do I change properties on a message record? instructions: - text: Update communication {communicationId} with {properties}. slots: communicationId: path.communicationId properties: requestBody.properties - text: Change message record {communicationId} to have {properties}. slots: communicationId: path.communicationId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/companies'].get update: x-apievangelist-phrasing: intent: List companies effect: read questions: - What companies are in my CRM? - Can I list companies with their domain and industry properties? instructions: - text: List my companies. - text: Show {limit} companies with properties {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/companies'].post update: x-apievangelist-phrasing: intent: Create a company effect: write questions: - How do I add a new company record? - Can I create a company and associate contacts to it in one call? instructions: - text: Create a company with {properties}. slots: properties: requestBody.properties - text: Add a company {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/companies/{companyId}'].get update: x-apievangelist-phrasing: intent: Get a company effect: read questions: - Can I look up a company by its domain instead of its ID? - What property history does a particular company have? instructions: - text: Show company {companyId}. slots: companyId: path.companyId - text: Look up company {companyId} by unique property {idProperty}. slots: companyId: path.companyId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/companies/{companyId}'].delete update: x-apievangelist-phrasing: intent: Archive a company effect: destructive questions: - Can I delete a company from my CRM? - What happens to a company record when it's archived? instructions: - text: Archive company {companyId}. slots: companyId: path.companyId - text: Delete company record {companyId}. slots: companyId: path.companyId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/companies/{companyId}'].patch update: x-apievangelist-phrasing: intent: Update a company effect: write questions: - Can I change a company's industry or annual revenue? - How do I update a company matched by its domain? instructions: - text: Update company {companyId} with {properties}. slots: companyId: path.companyId properties: requestBody.properties - text: Set {properties} on company {companyId} matched by {idProperty}. slots: properties: requestBody.properties companyId: path.companyId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contacts'].get update: x-apievangelist-phrasing: intent: List contacts effect: read questions: - Who are the contacts in my CRM? - Can I list contacts with their email and lifecycle stage? instructions: - text: List my contacts. - text: Show {limit} contacts with properties {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contacts'].post update: x-apievangelist-phrasing: intent: Create a contact effect: write questions: - How do I add a new contact to HubSpot? - Can I create a contact and link it to a company right away? instructions: - text: Create a contact with {properties}. slots: properties: requestBody.properties - text: Add a new contact {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contacts/{contactId}'].get update: x-apievangelist-phrasing: intent: Get a contact effect: read questions: - Can I look up a contact by email rather than ID? - What's the history of a contact's lifecycle stage? instructions: - text: Show contact {contactId}. slots: contactId: path.contactId - text: Find contact {contactId} using {idProperty} as the identifier. slots: contactId: path.contactId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contacts/{contactId}'].delete update: x-apievangelist-phrasing: intent: Archive a contact effect: destructive questions: - Can I delete a contact from the CRM? - Is an archived contact recoverable? instructions: - text: Archive contact {contactId}. slots: contactId: path.contactId - text: Delete contact record {contactId}. slots: contactId: path.contactId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contacts/{contactId}'].patch update: x-apievangelist-phrasing: intent: Update a contact effect: write questions: - Can I change a contact's phone number or lifecycle stage? - How do I update a contact when I only have their email? instructions: - text: Update contact {contactId} with {properties}. slots: contactId: path.contactId properties: requestBody.properties - text: Set {properties} on contact {contactId} identified by {idProperty}. slots: properties: requestBody.properties contactId: path.contactId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contracts'].get update: x-apievangelist-phrasing: intent: List contracts effect: read questions: - What contracts are stored in my CRM? - Can I list contracts along with associated deals? instructions: - text: List contracts. - text: Show contracts with properties {properties}. slots: properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/contracts/{contractId}'].get update: x-apievangelist-phrasing: intent: Get a contract effect: read questions: - Can I look up one contract record? - What terms and dates are on a particular contract? instructions: - text: Show contract {contractId}. slots: contractId: path.contractId - text: Get the properties of contract {contractId}. slots: contractId: path.contractId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-410'].get update: x-apievangelist-phrasing: intent: List courses effect: read questions: - What courses are stored as CRM records? - Can I list course records with selected properties? instructions: - text: List courses. - text: Show {limit} courses with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-410'].post update: x-apievangelist-phrasing: intent: Create a course effect: write questions: - Can I add a course record to the CRM? - How do I create a course and associate it with contacts? instructions: - text: Create a course with {properties}. slots: properties: requestBody.properties - text: Add a course {properties} linked to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-410/{courseId}'].get update: x-apievangelist-phrasing: intent: Get a course effect: read questions: - Can I look up one course record? - Who is associated with a specific course? instructions: - text: Show course {courseId}. slots: courseId: path.courseId - text: Get course {courseId} with its associations {associations}. slots: courseId: path.courseId associations: query.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-410/{courseId}'].delete update: x-apievangelist-phrasing: intent: Archive a course effect: destructive questions: - Can I delete a course record? - What happens when a course is archived? instructions: - text: Archive course {courseId}. slots: courseId: path.courseId - text: Delete course record {courseId}. slots: courseId: path.courseId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-410/{courseId}'].patch update: x-apievangelist-phrasing: intent: Update a course effect: write questions: - Can I change a course's details? - How do I edit properties on a course record? instructions: - text: Update course {courseId} with {properties}. slots: courseId: path.courseId properties: requestBody.properties - text: Set {properties} on course record {courseId}. slots: properties: requestBody.properties courseId: path.courseId method: generated generated: '2026-09-24' - target: $.paths['/crm/owners/2026-09'].get update: x-apievangelist-phrasing: intent: List CRM owners effect: read questions: - Who can own records in my CRM? - Can I find the owner that matches a specific email address? instructions: - text: List all CRM owners. - text: Find the owner with email {email}. slots: email: query.email method: generated generated: '2026-09-24' - target: $.paths['/crm/owners/2026-09/{ownerId}'].get update: x-apievangelist-phrasing: intent: Get a CRM owner effect: read questions: - Can I look up one record owner by ID? - Which user is behind a particular owner ID? instructions: - text: Show owner {ownerId}. slots: ownerId: path.ownerId - text: Look up owner {ownerId} by {idProperty}. slots: ownerId: path.ownerId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3'].get update: x-apievangelist-phrasing: intent: List deals effect: read questions: - What deals are in my pipeline? - Can I list deals with their amount and stage? instructions: - text: List my deals. - text: Show {limit} deals with properties {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3'].post update: x-apievangelist-phrasing: intent: Create a deal effect: write questions: - How do I create a new deal? - Can I create a deal and associate it with a contact and company? instructions: - text: Create a deal with {properties}. slots: properties: requestBody.properties - text: Open a new deal {properties} associated to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3/merge'].post update: x-apievangelist-phrasing: intent: Merge two deals effect: destructive questions: - Can I merge duplicate deals into one? - Which deal survives when two deals are merged? instructions: - text: Merge deal {objectIdToMerge} into deal {primaryObjectId}. slots: objectIdToMerge: requestBody.objectIdToMerge primaryObjectId: requestBody.primaryObjectId - text: Combine duplicate deal {objectIdToMerge} with primary deal {primaryObjectId}. slots: objectIdToMerge: requestBody.objectIdToMerge primaryObjectId: requestBody.primaryObjectId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3/{dealId}'].get update: x-apievangelist-phrasing: intent: Get a deal effect: read questions: - Can I pull the amount and stage of a single deal? - What's the stage history of a particular deal? instructions: - text: Show deal {dealId}. slots: dealId: path.dealId - text: Get deal {dealId} with property history for {propertiesWithHistory}. slots: dealId: path.dealId propertiesWithHistory: query.propertiesWithHistory method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3/{dealId}'].delete update: x-apievangelist-phrasing: intent: Archive a deal effect: destructive questions: - Can I delete a deal from my pipeline? - What happens when a deal is archived? instructions: - text: Archive deal {dealId}. slots: dealId: path.dealId - text: Delete deal record {dealId}. slots: dealId: path.dealId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-3/{dealId}'].patch update: x-apievangelist-phrasing: intent: Update a deal effect: write questions: - How do I move a deal to a different stage? - Can I update a deal's amount or close date? instructions: - text: Update deal {dealId} with {properties}. slots: dealId: path.dealId properties: requestBody.properties - text: Move deal {dealId} forward by setting {properties}. slots: dealId: path.dealId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/discounts'].get update: x-apievangelist-phrasing: intent: List discounts effect: read questions: - What discounts are defined for quotes and invoices? - Can I list discount records with their values? instructions: - text: List discounts. - text: Show {limit} discounts with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/discounts'].post update: x-apievangelist-phrasing: intent: Create a discount effect: write questions: - Can I create a discount to apply on a quote? - How do I add a percentage discount record? instructions: - text: Create a discount with {properties}. slots: properties: requestBody.properties - text: Add a discount {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/discounts/{discountId}'].get update: x-apievangelist-phrasing: intent: Get a discount effect: read questions: - Can I look up one discount record? - What value does a particular discount have? instructions: - text: Show discount {discountId}. slots: discountId: path.discountId - text: Get the value and type of discount {discountId}. slots: discountId: path.discountId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/discounts/{discountId}'].delete update: x-apievangelist-phrasing: intent: Archive a discount effect: destructive questions: - Can I delete a discount I no longer offer? - What happens when a discount record is archived? instructions: - text: Archive discount {discountId}. slots: discountId: path.discountId - text: Delete discount record {discountId}. slots: discountId: path.discountId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/discounts/{discountId}'].patch update: x-apievangelist-phrasing: intent: Update a discount effect: write questions: - Can I change a discount's amount? - How do I edit an existing discount record? instructions: - text: Update discount {discountId} with {properties}. slots: discountId: path.discountId properties: requestBody.properties - text: Change discount {discountId} to {properties}. slots: discountId: path.discountId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/emails'].get update: x-apievangelist-phrasing: intent: List logged email engagements effect: read questions: - Which emails have been logged on CRM records? - Can I list email engagements with their subject lines? instructions: - text: List logged email engagements. - text: Show {limit} email engagements with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/emails'].post update: x-apievangelist-phrasing: intent: Log an email engagement effect: write questions: - How do I log an email I sent outside HubSpot on a contact's timeline? - Can I create an email engagement associated with a deal? instructions: - text: Log an email engagement with {properties}. slots: properties: requestBody.properties - text: Create an email record {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/emails/{emailId}'].get update: x-apievangelist-phrasing: intent: Get a logged email engagement effect: read questions: - Can I pull the subject and body of one logged email? - Who was a particular logged email sent to? instructions: - text: Show email engagement {emailId}. slots: emailId: path.emailId - text: Get the subject and recipients of logged email {emailId}. slots: emailId: path.emailId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/emails/{emailId}'].delete update: x-apievangelist-phrasing: intent: Archive a logged email engagement effect: destructive questions: - Can I delete a logged email from a contact's timeline? - Is archiving an email engagement permanent? instructions: - text: Archive email engagement {emailId}. slots: emailId: path.emailId - text: Delete the logged email {emailId}. slots: emailId: path.emailId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/emails/{emailId}'].patch update: x-apievangelist-phrasing: intent: Update a logged email engagement effect: write questions: - Can I edit the details of a logged email? - How do I change properties on an email engagement? instructions: - text: Update email engagement {emailId} with {properties}. slots: emailId: path.emailId properties: requestBody.properties - text: Correct logged email {emailId} by setting {properties}. slots: emailId: path.emailId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/exports/2026-09/export/{exportId}'].get update: x-apievangelist-phrasing: intent: Check the status of a CRM export effect: read questions: - Is my CRM export finished yet? - Can I check the state of an export by its ID? instructions: - text: Show export {exportId}. slots: exportId: path.exportId - text: Check whether CRM export {exportId} is complete. slots: exportId: path.exportId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/feedback_submissions'].get update: x-apievangelist-phrasing: intent: List feedback survey submissions effect: read questions: - What feedback survey responses have come in? - Can I list NPS and CSAT submissions with their answers? instructions: - text: List feedback submissions. - text: Show {limit} survey submissions with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/feedback_submissions/{feedbackSubmissionId}'].get update: x-apievangelist-phrasing: intent: Get a feedback survey submission effect: read questions: - Can I pull one customer's survey response? - What score did a particular feedback submission give? instructions: - text: Show feedback submission {feedbackSubmissionId}. slots: feedbackSubmissionId: path.feedbackSubmissionId - text: Get the answers in survey response {feedbackSubmissionId}. slots: feedbackSubmissionId: path.feedbackSubmissionId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/fees'].get update: x-apievangelist-phrasing: intent: List fees effect: read questions: - What fees are defined for quotes and invoices? - Can I list fee records with their amounts? instructions: - text: List fees. - text: Show {limit} fees with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/fees'].post update: x-apievangelist-phrasing: intent: Create a fee effect: write questions: - Can I add a fee like a shipping charge to use on quotes? - How do I create a fee record? instructions: - text: Create a fee with {properties}. slots: properties: requestBody.properties - text: Add a fee {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/fees/{feeId}'].get update: x-apievangelist-phrasing: intent: Get a fee effect: read questions: - Can I look up one fee record? - What amount does a particular fee charge? instructions: - text: Show fee {feeId}. slots: feeId: path.feeId - text: Get the amount of fee {feeId}. slots: feeId: path.feeId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/fees/{feeId}'].delete update: x-apievangelist-phrasing: intent: Archive a fee effect: destructive questions: - Can I delete a fee I no longer charge? - What happens when a fee record is archived? instructions: - text: Archive fee {feeId}. slots: feeId: path.feeId - text: Delete fee record {feeId}. slots: feeId: path.feeId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/fees/{feeId}'].patch update: x-apievangelist-phrasing: intent: Update a fee effect: write questions: - Can I change the amount of an existing fee? - How do I edit a fee record? instructions: - text: Update fee {feeId} with {properties}. slots: feeId: path.feeId properties: requestBody.properties - text: Change fee {feeId} to {properties}. slots: feeId: path.feeId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/forecast-submissions/2026-09/events'].get update: x-apievangelist-phrasing: intent: List forecast submission events effect: read questions: - When did my reps submit their sales forecasts? - Can I see forecast submission events within a date range? instructions: - text: List forecast submission events. - text: Show forecast submissions that occurred after {occurredAfter}. slots: occurredAfter: query.occurredAfter method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/goal_targets'].get update: x-apievangelist-phrasing: intent: List goal targets effect: read questions: - What sales goals are set for my team? - Can I list goal targets with their values? instructions: - text: List goal targets. - text: Show {limit} goal targets with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/goal_targets'].post update: x-apievangelist-phrasing: intent: Create a goal target effect: write questions: - Can I set a new goal target for a rep? - How do I create a goal via the API? instructions: - text: Create a goal target with {properties}. slots: properties: requestBody.properties - text: Add a goal target {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/goal_targets/{goalTargetId}'].get update: x-apievangelist-phrasing: intent: Get a goal target effect: read questions: - Can I look up one goal target? - How far along is a specific goal? instructions: - text: Show goal target {goalTargetId}. slots: goalTargetId: path.goalTargetId - text: Get the target value of goal {goalTargetId}. slots: goalTargetId: path.goalTargetId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/goal_targets/{goalTargetId}'].delete update: x-apievangelist-phrasing: intent: Delete a goal target effect: destructive questions: - Can I remove a goal I set by mistake? - Is deleting a goal target reversible? instructions: - text: Delete goal target {goalTargetId}. slots: goalTargetId: path.goalTargetId - text: Remove goal {goalTargetId}. slots: goalTargetId: path.goalTargetId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/goal_targets/{goalTargetId}'].patch update: x-apievangelist-phrasing: intent: Update a goal target effect: write questions: - Can I change the value of an existing goal? - How do I edit a goal target's properties? instructions: - text: Update goal target {goalTargetId} with {properties}. slots: goalTargetId: path.goalTargetId properties: requestBody.properties - text: Raise goal {goalTargetId} by setting {properties}. slots: goalTargetId: path.goalTargetId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/imports/2026-09'].get update: x-apievangelist-phrasing: intent: List CRM imports effect: read questions: - What data imports have run in my account? - Can I see my recent CRM imports? instructions: - text: List CRM imports. - text: Show the last {limit} imports. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/crm/imports/2026-09/{importId}'].get update: x-apievangelist-phrasing: intent: Get a CRM import effect: read questions: - Did my CSV import finish successfully? - Can I check the state of one import? instructions: - text: Show import {importId}. slots: importId: path.importId - text: Check the status of import {importId}. slots: importId: path.importId method: generated generated: '2026-09-24' - target: $.paths['/crm/imports/2026-09/{importId}/errors'].get update: x-apievangelist-phrasing: intent: List errors from a CRM import effect: read questions: - Why did some rows fail in my import? - Can I see the original row data for failed import rows? instructions: - text: List errors for import {importId}. slots: importId: path.importId - text: Show import {importId} errors with row data ({includeRowData}). slots: importId: path.importId includeRowData: query.includeRowData method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/invoices'].get update: x-apievangelist-phrasing: intent: List invoices effect: read questions: - What invoices are in my CRM? - Can I list invoices with their amount and status? instructions: - text: List invoices. - text: Show {limit} invoices with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/invoices'].post update: x-apievangelist-phrasing: intent: Create an invoice effect: write questions: - How do I create an invoice record? - Can I create an invoice associated with a contact and line items? instructions: - text: Create an invoice with {properties}. slots: properties: requestBody.properties - text: Draft an invoice {properties} associated to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/invoices/{invoiceId}'].get update: x-apievangelist-phrasing: intent: Get an invoice effect: read questions: - Can I look up a single invoice? - Has a particular invoice been paid? instructions: - text: Show invoice {invoiceId}. slots: invoiceId: path.invoiceId - text: Get the status and balance of invoice {invoiceId}. slots: invoiceId: path.invoiceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/invoices/{invoiceId}'].delete update: x-apievangelist-phrasing: intent: Archive an invoice effect: destructive questions: - Can I delete an invoice record? - What happens when an invoice is archived? instructions: - text: Archive invoice {invoiceId}. slots: invoiceId: path.invoiceId - text: Delete invoice record {invoiceId}. slots: invoiceId: path.invoiceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/invoices/{invoiceId}'].patch update: x-apievangelist-phrasing: intent: Update an invoice effect: write questions: - Can I change an invoice's due date? - How do I edit an existing invoice? instructions: - text: Update invoice {invoiceId} with {properties}. slots: invoiceId: path.invoiceId properties: requestBody.properties - text: Set the due date and other fields {properties} on invoice {invoiceId}. slots: properties: requestBody.properties invoiceId: path.invoiceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/leads'].get update: x-apievangelist-phrasing: intent: List leads effect: read questions: - What leads are in my prospecting workspace? - Can I list leads with their stage? instructions: - text: List leads. - text: Show {limit} leads with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/leads'].post update: x-apievangelist-phrasing: intent: Create a lead effect: write questions: - How do I create a lead for a contact? - Can I create a lead and associate it with an existing contact? instructions: - text: Create a lead with {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations - text: Add a new lead record {properties}. slots: properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/leads/{leadsId}'].get update: x-apievangelist-phrasing: intent: Get a lead effect: read questions: - Can I look up one lead record? - What stage is a particular lead in? instructions: - text: Show lead {leadsId}. slots: leadsId: path.leadsId - text: Get the stage of lead {leadsId}. slots: leadsId: path.leadsId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/leads/{leadsId}'].delete update: x-apievangelist-phrasing: intent: Archive a lead effect: destructive questions: - Can I delete a lead? - What happens when a lead record is archived? instructions: - text: Archive lead {leadsId}. slots: leadsId: path.leadsId - text: Delete lead record {leadsId}. slots: leadsId: path.leadsId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/leads/{leadsId}'].patch update: x-apievangelist-phrasing: intent: Update a lead effect: write questions: - Can I move a lead to a new stage? - How do I edit an existing lead? instructions: - text: Update lead {leadsId} with {properties}. slots: leadsId: path.leadsId properties: requestBody.properties - text: Advance lead {leadsId} by setting {properties}. slots: leadsId: path.leadsId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/associations/labels'].get update: x-apievangelist-phrasing: intent: Check custom association label limits effect: read questions: - How many custom association labels can I still create? - Can I check association label usage between two object types? instructions: - text: Show association label limits and usage. - text: Check label limits between {fromObjectTypeId} and {toObjectTypeId}. slots: fromObjectTypeId: query.fromObjectTypeId toObjectTypeId: query.toObjectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/associations/records/from'].get update: x-apievangelist-phrasing: intent: Find records near association limits effect: read questions: - Which object types have records approaching their association limit? - Are any records maxed out on associations? instructions: - text: Show object types with records near their association limits. - text: List where records are at or close to the association cap. method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/associations/records/{fromObjectTypeId}/to'].get update: x-apievangelist-phrasing: intent: Check association limits from one object type effect: read questions: - Are contacts close to their association limits with other objects? - Can I see record association limits starting from one object type? instructions: - text: Show record association limits from object type {fromObjectTypeId}. slots: fromObjectTypeId: path.fromObjectTypeId - text: Check which targets of {fromObjectTypeId} records are near limits. slots: fromObjectTypeId: path.fromObjectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/associations/records/{fromObjectTypeId}/{toObjectTypeId}'].get update: x-apievangelist-phrasing: intent: Check association limits between two object types effect: read questions: - How close are deal-to-contact associations to their limit? - Can I check the record association limit for one pair of object types? instructions: - text: Show record association limits between {fromObjectTypeId} and {toObjectTypeId}. slots: fromObjectTypeId: path.fromObjectTypeId toObjectTypeId: path.toObjectTypeId - text: Check the association cap from {fromObjectTypeId} records to {toObjectTypeId}. slots: fromObjectTypeId: path.fromObjectTypeId toObjectTypeId: path.toObjectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/calculated-properties'].get update: x-apievangelist-phrasing: intent: Check calculated property limits effect: read questions: - How many calculation properties have I used out of my limit? - Am I near the cap on calculated properties? instructions: - text: Show calculated property limits and usage. - text: Check how many calculation properties remain. method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/custom-object-types'].get update: x-apievangelist-phrasing: intent: Check custom object type limits effect: read questions: - How many custom object types can I still create? - Am I near my custom object limit? instructions: - text: Show custom object type limits. - text: Check custom object usage against the cap. method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/custom-properties'].get update: x-apievangelist-phrasing: intent: Check custom property limits effect: read questions: - How many custom properties can each object still have? - Which objects are close to the custom property limit? instructions: - text: Show custom property limits per object. - text: Check custom property usage against limits. method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/pipelines'].get update: x-apievangelist-phrasing: intent: Check pipeline limits effect: read questions: - How many more pipelines can I create? - Am I at my pipeline limit for deals or tickets? instructions: - text: Show pipeline limits and usage. - text: Check how many pipelines remain per object. method: generated generated: '2026-09-24' - target: $.paths['/crm/limits/2026-09/records'].get update: x-apievangelist-phrasing: intent: Check record count limits effect: read questions: - How many records can I store per object type? - Am I close to the record limit on any object? instructions: - text: Show record limits by object type. - text: Check record storage usage against limits. method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/line_items'].get update: x-apievangelist-phrasing: intent: List line items effect: read questions: - What line items exist across my deals and quotes? - Can I list line items with price and quantity? instructions: - text: List line items. - text: Show {limit} line items with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/line_items'].post update: x-apievangelist-phrasing: intent: Create a line item effect: write questions: - How do I add a line item to a deal? - Can I create a line item with a price and quantity? instructions: - text: Create a line item with {properties}. slots: properties: requestBody.properties - text: Add line item {properties} to {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/line_items/{lineItemId}'].get update: x-apievangelist-phrasing: intent: Get a line item effect: read questions: - Can I look up one line item? - What price and quantity are on a specific line item? instructions: - text: Show line item {lineItemId}. slots: lineItemId: path.lineItemId - text: Get price and quantity for line item {lineItemId}. slots: lineItemId: path.lineItemId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/line_items/{lineItemId}'].delete update: x-apievangelist-phrasing: intent: Archive a line item effect: destructive questions: - Can I remove a line item from a deal? - What happens when a line item is archived? instructions: - text: Archive line item {lineItemId}. slots: lineItemId: path.lineItemId - text: Delete line item record {lineItemId}. slots: lineItemId: path.lineItemId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/line_items/{lineItemId}'].patch update: x-apievangelist-phrasing: intent: Update a line item effect: write questions: - Can I change the quantity on a line item? - How do I edit a line item's price? instructions: - text: Update line item {lineItemId} with {properties}. slots: lineItemId: path.lineItemId properties: requestBody.properties - text: Change quantity or price on line item {lineItemId} to {properties}. slots: lineItemId: path.lineItemId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-420'].get update: x-apievangelist-phrasing: intent: List property listings effect: read questions: - What real estate listings are stored in my CRM? - Can I list listing records with their addresses? instructions: - text: List property listings. - text: Show {limit} listings with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-420'].post update: x-apievangelist-phrasing: intent: Create a property listing effect: write questions: - Can I add a real estate listing record? - How do I create a listing associated with a contact? instructions: - text: Create a listing with {properties}. slots: properties: requestBody.properties - text: Add a listing {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-420/{listingId}'].get update: x-apievangelist-phrasing: intent: Get a property listing effect: read questions: - Can I look up one listing record? - What price and address does a specific listing have? instructions: - text: Show listing {listingId}. slots: listingId: path.listingId - text: Get the address and price of listing {listingId}. slots: listingId: path.listingId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-420/{listingId}'].delete update: x-apievangelist-phrasing: intent: Archive a property listing effect: destructive questions: - Can I delete a listing that's been sold? - What happens when a listing is archived? instructions: - text: Archive listing {listingId}. slots: listingId: path.listingId - text: Delete listing record {listingId}. slots: listingId: path.listingId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-420/{listingId}'].patch update: x-apievangelist-phrasing: intent: Update a property listing effect: write questions: - Can I change a listing's price? - How do I edit a listing record? instructions: - text: Update listing {listingId} with {properties}. slots: listingId: path.listingId properties: requestBody.properties - text: Change the price and details of listing {listingId} to {properties}. slots: listingId: path.listingId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03'].get update: x-apievangelist-phrasing: intent: Fetch several CRM lists by ID effect: read questions: - Can I fetch multiple segment lists at once by their IDs? - Is it possible to include each list's filter definitions? instructions: - text: Get lists {listIds}. slots: listIds: query.listIds - text: Fetch lists {listIds} with their filters ({includeFilters}). slots: listIds: query.listIds includeFilters: query.includeFilters method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03'].post update: x-apievangelist-phrasing: intent: Create a CRM list effect: write questions: - How do I create a static or active list of contacts? - Can I create a list inside a specific folder? instructions: - text: Create a {processingType} list named {name} for object type {objectTypeId}. slots: processingType: requestBody.processingType name: requestBody.name objectTypeId: requestBody.objectTypeId - text: Make a dynamic list {name} of {objectTypeId} using filters {filterBranch} ({processingType}). slots: name: requestBody.name objectTypeId: requestBody.objectTypeId filterBranch: requestBody.filterBranch processingType: requestBody.processingType method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders'].get update: x-apievangelist-phrasing: intent: Get a list folder and its subfolders effect: read questions: - What lists and subfolders are inside a list folder? - Can I view my list folder tree? instructions: - text: Show list folder {folderId} with its children. slots: folderId: query.folderId - text: Display the root list folder tree. method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders'].post update: x-apievangelist-phrasing: intent: Create a list folder effect: write questions: - Can I create folders to organize my lists? - How do I make a subfolder inside an existing list folder? instructions: - text: Create a list folder named {name}. slots: name: requestBody.name - text: Create folder {name} inside list folder {parentFolderId}. slots: name: requestBody.name parentFolderId: requestBody.parentFolderId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders/move-list'].put update: x-apievangelist-phrasing: intent: Move a list into a folder effect: write questions: - How do I move a list into a different folder? - Can I file a list under another folder? instructions: - text: Move list {listId} into folder {newFolderId}. slots: listId: requestBody.listId newFolderId: requestBody.newFolderId - text: File list {listId} under folder {newFolderId}. slots: listId: requestBody.listId newFolderId: requestBody.newFolderId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders/{folderId}'].delete update: x-apievangelist-phrasing: intent: Delete a list folder effect: destructive questions: - Can I delete a list folder? - What happens to the lists inside a folder I delete? instructions: - text: Delete list folder {folderId}. slots: folderId: path.folderId - text: Remove folder {folderId} from my lists. slots: folderId: path.folderId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders/{folderId}/move/{newParentFolderId}'].put update: x-apievangelist-phrasing: intent: Move a list folder under another folder effect: write questions: - Can I nest one list folder inside another? - How do I reorganize my list folder hierarchy? instructions: - text: Move list folder {folderId} under folder {newParentFolderId}. slots: folderId: path.folderId newParentFolderId: path.newParentFolderId - text: Nest folder {folderId} inside {newParentFolderId}. slots: folderId: path.folderId newParentFolderId: path.newParentFolderId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/folders/{folderId}/rename'].put update: x-apievangelist-phrasing: intent: Rename a list folder effect: write questions: - Can I rename a list folder? - How do I change a list folder's name? instructions: - text: Rename list folder {folderId} to {newFolderName}. slots: folderId: path.folderId newFolderName: query.newFolderName - text: Give folder {folderId} the new name {newFolderName}. slots: folderId: path.folderId newFolderName: query.newFolderName method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/idmapping'].get update: x-apievangelist-phrasing: intent: Translate a legacy list ID to a new list ID effect: read questions: - What's the new ID for my old legacy list ID? - Can I map one legacy list ID to its current ID? instructions: - text: Translate legacy list ID {legacyListId} to the new list ID. slots: legacyListId: query.legacyListId - text: Look up the modern ID for old list {legacyListId}. slots: legacyListId: query.legacyListId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/idmapping'].post update: x-apievangelist-phrasing: intent: Translate legacy list IDs in bulk effect: read questions: - Can I convert thousands of legacy list IDs to new IDs at once? - What's the maximum number of legacy list IDs I can translate in one batch? instructions: - text: Translate a batch of legacy list IDs to modern list IDs. - text: Map up to 10,000 old list IDs to their new IDs in one go. method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/object-type-id/{objectTypeId}/name/{listName}'].get update: x-apievangelist-phrasing: intent: Find a list by name effect: read questions: - Can I look up a list by its name instead of its ID? - Which list is called a given name for contacts? instructions: - text: Find the {objectTypeId} list named {listName}. slots: objectTypeId: path.objectTypeId listName: path.listName - text: Fetch list {listName} for object type {objectTypeId} with filters ({includeFilters}). slots: listName: path.listName objectTypeId: path.objectTypeId includeFilters: query.includeFilters method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/records/{objectTypeId}/{recordId}/memberships'].get update: x-apievangelist-phrasing: intent: See which lists a record belongs to effect: read questions: - Which lists is this contact a member of? - Can I see every list a given record appears in? instructions: - text: Show the lists that {objectTypeId} record {recordId} is in. slots: objectTypeId: path.objectTypeId recordId: path.recordId - text: Which lists contain record {recordId} of type {objectTypeId}. slots: recordId: path.recordId objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}'].get update: x-apievangelist-phrasing: intent: Get a list by ID effect: read questions: - Can I look up one list's settings and size? - What filters define a particular list? instructions: - text: Show list {listId}. slots: listId: path.listId - text: Fetch list {listId} including its filters ({includeFilters}). slots: listId: path.listId includeFilters: query.includeFilters method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}'].delete update: x-apievangelist-phrasing: intent: Delete a list effect: destructive questions: - Can I delete a list I no longer use? - Is a deleted list recoverable? instructions: - text: Delete list {listId}. slots: listId: path.listId - text: Remove list {listId} from the account. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships'].get update: x-apievangelist-phrasing: intent: List the members of a list effect: read questions: - Who is in a particular list? - Can I page through a list's members in ID order? instructions: - text: Show the members of list {listId}. slots: listId: path.listId - text: Page through {limit} members of list {listId} after {after}. slots: limit: query.limit listId: path.listId after: query.after method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships'].delete update: x-apievangelist-phrasing: intent: Remove all records from a list effect: destructive questions: - Can I empty a list without deleting it? - How do I clear every member from a static list? instructions: - text: Remove all records from list {listId}. slots: listId: path.listId - text: Empty list {listId} but keep the list. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships/add'].put update: x-apievangelist-phrasing: intent: Add records to a static list effect: write questions: - How do I add contacts to a manual list? - Can I add records to an active list, or only static ones? instructions: - text: Add records to list {listId}. slots: listId: path.listId - text: Put the given records into manual list {listId}. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships/add-and-remove'].put update: x-apievangelist-phrasing: intent: Add and remove list members in one call effect: write questions: - Can I add some records to a list and remove others at the same time? - Is there a single call to swap members in a static list? instructions: - text: In list {listId}, add {recordIdsToAdd} and remove {recordIdsToRemove}. slots: listId: path.listId recordIdsToAdd: requestBody.recordIdsToAdd recordIdsToRemove: requestBody.recordIdsToRemove - text: 'Swap members of list {listId}: add {recordIdsToAdd}, drop {recordIdsToRemove}.' slots: listId: path.listId recordIdsToAdd: requestBody.recordIdsToAdd recordIdsToRemove: requestBody.recordIdsToRemove method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships/add-from/{sourceListId}'].put update: x-apievangelist-phrasing: intent: Copy all members from one list into another effect: write questions: - Can I copy every record from one list into another list? - How do I merge the members of two lists into one? instructions: - text: Add all records from list {sourceListId} to list {listId}. slots: sourceListId: path.sourceListId listId: path.listId - text: Copy the members of source list {sourceListId} into destination list {listId}. slots: sourceListId: path.sourceListId listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships/join-order'].get update: x-apievangelist-phrasing: intent: List members in the order they joined effect: read questions: - Who was added to a list most recently? - Can I see list members ordered by the date they joined? instructions: - text: Show members of list {listId} in the order they were added. slots: listId: path.listId - text: Page through list {listId} members by join date, {limit} at a time. slots: listId: path.listId limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/memberships/remove'].put update: x-apievangelist-phrasing: intent: Remove specific records from a list effect: destructive questions: - How do I take a few contacts out of a static list? - Can I remove selected records from a list without emptying it? instructions: - text: Remove the given records from list {listId}. slots: listId: path.listId - text: Take the selected records out of manual list {listId}. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/restore'].put update: x-apievangelist-phrasing: intent: Restore a deleted list effect: write questions: - Can I bring back a list I deleted? - Is there a way to undo deleting a list? instructions: - text: Restore deleted list {listId}. slots: listId: path.listId - text: Undelete list {listId}. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/schedule-conversion'].get update: x-apievangelist-phrasing: intent: Check a list's scheduled static conversion effect: read questions: - Is my active list scheduled to convert to a static list? - When was a list converted from active to static? instructions: - text: Show the conversion schedule for list {listId}. slots: listId: path.listId - text: Check when list {listId} converts or converted to static. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/schedule-conversion'].put update: x-apievangelist-phrasing: intent: Schedule an active list to become static effect: write questions: - Can I schedule an active list to freeze into a static list on a date? - How do I change when a list will convert to static? instructions: - text: Schedule list {listId} to convert to a static list. slots: listId: path.listId - text: Update the static conversion schedule of list {listId}. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/schedule-conversion'].delete update: x-apievangelist-phrasing: intent: Cancel a list's scheduled conversion effect: destructive questions: - Can I stop an active list from converting to static? - How do I cancel a scheduled list conversion? instructions: - text: Cancel the scheduled conversion of list {listId}. slots: listId: path.listId - text: Keep list {listId} active by cancelling its conversion. slots: listId: path.listId method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/size-and-edits-history/between'].get update: x-apievangelist-phrasing: intent: See a list's size and edit history over time effect: read questions: - How has the size of my list changed over the past month? - Can I see when a list's membership was edited between two dates? instructions: - text: Show size and edit history of list {listId} between {startDate} and {endDate}. slots: listId: path.listId startDate: query.startDate endDate: query.endDate - text: Chart how list {listId} grew since {startDate}. slots: listId: path.listId startDate: query.startDate method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/update-list-filters'].put update: x-apievangelist-phrasing: intent: Change the filters of an active list effect: write questions: - Can I change the criteria of a dynamic list? - Will updating a list's filters re-evaluate who is in it? instructions: - text: Update the filters of list {listId} to {filterBranch}. slots: listId: path.listId filterBranch: requestBody.filterBranch - text: Replace list {listId}'s filter definition with {filterBranch} and enroll in workflows ({enrollObjectsInWorkflows}). slots: listId: path.listId filterBranch: requestBody.filterBranch enrollObjectsInWorkflows: query.enrollObjectsInWorkflows method: generated generated: '2026-09-24' - target: $.paths['/crm/lists/2026-03/{listId}/update-list-name'].put update: x-apievangelist-phrasing: intent: Rename a list effect: write questions: - Can I rename an existing list? - How do I change a list's name via the API? instructions: - text: Rename list {listId} to {listName}. slots: listId: path.listId listName: query.listName - text: Change the name of list {listId} to {listName}. slots: listId: path.listId listName: query.listName method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/meetings'].get update: x-apievangelist-phrasing: intent: List meetings effect: read questions: - What meetings have been logged in the CRM? - Can I list meetings with their start times and attendees? instructions: - text: List logged meetings. - text: Show {limit} meetings with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/meetings'].post update: x-apievangelist-phrasing: intent: Log a meeting effect: write questions: - How do I log a meeting against a contact or deal? - Can I create a meeting record with a start and end time? instructions: - text: Log a meeting with {properties}. slots: properties: requestBody.properties - text: Create a meeting {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/meetings/{meetingId}'].get update: x-apievangelist-phrasing: intent: Get a meeting effect: read questions: - Can I pull the details of one logged meeting? - What was the outcome of a specific meeting? instructions: - text: Show meeting {meetingId}. slots: meetingId: path.meetingId - text: Get the time and outcome of meeting {meetingId}. slots: meetingId: path.meetingId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/meetings/{meetingId}'].delete update: x-apievangelist-phrasing: intent: Archive a meeting effect: destructive questions: - Can I delete a meeting from a contact's timeline? - What happens when a meeting is archived? instructions: - text: Archive meeting {meetingId}. slots: meetingId: path.meetingId - text: Delete meeting record {meetingId}. slots: meetingId: path.meetingId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/meetings/{meetingId}'].patch update: x-apievangelist-phrasing: intent: Update a meeting effect: write questions: - Can I change the outcome or notes on a logged meeting? - How do I reschedule a meeting record? instructions: - text: Update meeting {meetingId} with {properties}. slots: meetingId: path.meetingId properties: requestBody.properties - text: Record the outcome {properties} on meeting {meetingId}. slots: properties: requestBody.properties meetingId: path.meetingId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/notes'].get update: x-apievangelist-phrasing: intent: List notes effect: read questions: - What notes have been added to CRM records? - Can I list notes with their associated records? instructions: - text: List notes. - text: Show {limit} notes with associations {associations}. slots: limit: query.limit associations: query.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/notes'].post update: x-apievangelist-phrasing: intent: Add a note to a record effect: write questions: - How do I add a note to a contact? - Can I create a note and attach it to a deal and company at once? instructions: - text: Create a note with {properties}. slots: properties: requestBody.properties - text: Add a note {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/notes/{noteId}'].get update: x-apievangelist-phrasing: intent: Get a note effect: read questions: - Can I read the text of one note? - Which records is a particular note attached to? instructions: - text: Show note {noteId}. slots: noteId: path.noteId - text: Get note {noteId} with associations {associations}. slots: noteId: path.noteId associations: query.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/notes/{noteId}'].delete update: x-apievangelist-phrasing: intent: Archive a note effect: destructive questions: - Can I delete a note from a record? - What happens when a note is archived? instructions: - text: Archive note {noteId}. slots: noteId: path.noteId - text: Delete note record {noteId}. slots: noteId: path.noteId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/notes/{noteId}'].patch update: x-apievangelist-phrasing: intent: Edit a note effect: write questions: - Can I edit the text of an existing note? - How do I update properties on a note? instructions: - text: Update note {noteId} with {properties}. slots: noteId: path.noteId properties: requestBody.properties - text: Change the body of note {noteId} to {properties}. slots: noteId: path.noteId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/notetaker/2026-09/conversation/recap/{objectTypeId}/{objectId}'].get update: x-apievangelist-phrasing: intent: Get an AI recap of a recorded conversation effect: read questions: - Can I get a summary and action items from a recorded call? - What questions were asked in a recorded meeting, and who took part? instructions: - text: Get the conversation recap for {objectTypeId} {objectId}. slots: objectTypeId: path.objectTypeId objectId: path.objectId - text: Summarize action items from the recorded conversation on {objectTypeId} record {objectId}. slots: objectTypeId: path.objectTypeId objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/crm/object-library/2026-09/enablement'].get update: x-apievangelist-phrasing: intent: See which object types are activated effect: read questions: - Which optional CRM object types are enabled in my account? - Are objects like projects or services turned on? instructions: - text: Show activation status for all object types in the object library. - text: List which library object types are enabled or disabled. method: generated generated: '2026-09-24' - target: $.paths['/crm/object-library/2026-09/enablement/{objectTypeId}'].get update: x-apievangelist-phrasing: intent: Check whether one object type is activated effect: read questions: - Is a specific object type enabled in my account? - Can I check the activation status of one library object? instructions: - text: Check whether object type {objectTypeId} is enabled. slots: objectTypeId: path.objectTypeId - text: Show activation status for object {objectTypeId}. slots: objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}'].get update: x-apievangelist-phrasing: intent: List record tags for an object type effect: read questions: - What tags are set up for deals? - Can I list the CRM record tags for an object type? instructions: - text: List object tags for {objectTypeId}. slots: objectTypeId: path.objectTypeId - text: Show the record tags defined on object type {objectTypeId}. slots: objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}'].post update: x-apievangelist-phrasing: intent: Create a record tag effect: write questions: - How do I create a colored tag that labels records matching a filter? - Can a record tag apply only to certain pipelines? instructions: - text: Create tag {name} in {color} on {objectTypeId} with filter {filterBranch} for pipelines {filterPipelineIds} at order {displayOrder}. slots: name: requestBody.name color: requestBody.color objectTypeId: path.objectTypeId filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds displayOrder: requestBody.displayOrder - text: Add a {color} record tag {name} for {objectTypeId} matching {filterBranch} in {filterPipelineIds}, order {displayOrder}. slots: color: requestBody.color name: requestBody.name objectTypeId: path.objectTypeId filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}/{tagId}'].get update: x-apievangelist-phrasing: intent: Get a record tag effect: read questions: - Can I look up one record tag's filter and color? - What criteria does a specific object tag use? instructions: - text: Show tag {tagId} on {objectTypeId}. slots: tagId: path.tagId objectTypeId: path.objectTypeId - text: Get the filter of object tag {tagId} for {objectTypeId}. slots: tagId: path.tagId objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}/{tagId}'].put update: x-apievangelist-phrasing: intent: Replace a record tag effect: write questions: - Can I fully replace a tag's definition? - How do I overwrite a record tag with a new filter and color? instructions: - text: Replace tag {tagId} on {objectTypeId} with name {name}, color {color}, filter {filterBranch}, pipelines {filterPipelineIds}. slots: tagId: path.tagId objectTypeId: path.objectTypeId name: requestBody.name color: requestBody.color filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds - text: 'Overwrite object tag {tagId} of {objectTypeId} entirely: {name}, {color}, {filterBranch}, {filterPipelineIds}.' slots: tagId: path.tagId objectTypeId: path.objectTypeId name: requestBody.name color: requestBody.color filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}/{tagId}'].delete update: x-apievangelist-phrasing: intent: Delete a record tag effect: destructive questions: - Can I delete a record tag? - What happens to records when their tag is deleted? instructions: - text: Delete tag {tagId} from {objectTypeId}. slots: tagId: path.tagId objectTypeId: path.objectTypeId - text: Remove object tag {tagId} on {objectTypeId}. slots: tagId: path.tagId objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/object-tags/2026-09/{objectTypeId}/{tagId}'].patch update: x-apievangelist-phrasing: intent: Partially update a record tag effect: write questions: - Can I change just the color of a record tag? - How do I tweak a tag's description without replacing it? instructions: - text: 'Patch tag {tagId} on {objectTypeId}: color {color}, description {description}, name {name}, filter {filterBranch}, pipelines {filterPipelineIds}.' slots: tagId: path.tagId objectTypeId: path.objectTypeId color: requestBody.color description: requestBody.description name: requestBody.name filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds - text: Recolor object tag {tagId} of {objectTypeId} to {color}, keeping {name}, {description}, {filterBranch}, {filterPipelineIds}. slots: tagId: path.tagId objectTypeId: path.objectTypeId color: requestBody.color name: requestBody.name description: requestBody.description filterBranch: requestBody.filterBranch filterPipelineIds: requestBody.filterPipelineIds method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/orders'].get update: x-apievangelist-phrasing: intent: List orders effect: read questions: - What ecommerce orders are in my CRM? - Can I list orders with their totals? instructions: - text: List orders. - text: Show {limit} orders with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/orders'].post update: x-apievangelist-phrasing: intent: Create an order effect: write questions: - How do I sync a store order into the CRM? - Can I create an order associated with a contact? instructions: - text: Create an order with {properties}. slots: properties: requestBody.properties - text: Add an order {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/orders/{orderId}'].get update: x-apievangelist-phrasing: intent: Get an order effect: read questions: - Can I look up one order? - What's the fulfillment status of a particular order? instructions: - text: Show order {orderId}. slots: orderId: path.orderId - text: Find order {orderId} by unique property {idProperty}. slots: orderId: path.orderId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/orders/{orderId}'].delete update: x-apievangelist-phrasing: intent: Archive an order effect: destructive questions: - Can I delete an order record? - What happens when an order is archived? instructions: - text: Archive order {orderId}. slots: orderId: path.orderId - text: Delete order record {orderId}. slots: orderId: path.orderId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/orders/{orderId}'].patch update: x-apievangelist-phrasing: intent: Update an order effect: write questions: - Can I change an order's status? - How do I edit an existing order? instructions: - text: Update order {orderId} with {properties}. slots: orderId: path.orderId properties: requestBody.properties - text: Mark order {orderId} with new status fields {properties}. slots: orderId: path.orderId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_clients'].get update: x-apievangelist-phrasing: intent: List partner clients effect: read questions: - Which clients are managed through my partner account? - Can I list partner clients with selected properties? instructions: - text: List partner clients. - text: Show {limit} partner clients with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_clients/{partnerClientId}'].get update: x-apievangelist-phrasing: intent: Get a partner client effect: read questions: - Can I look up one partner client's details? - What properties does a specific partner client have? instructions: - text: Show partner client {partnerClientId}. slots: partnerClientId: path.partnerClientId - text: Get properties {properties} of partner client {partnerClientId}. slots: properties: query.properties partnerClientId: path.partnerClientId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_clients/{partnerClientId}'].patch update: x-apievangelist-phrasing: intent: Update a partner client effect: write questions: - Can I update properties on a partner client? - How do I edit a partner client record? instructions: - text: Update partner client {partnerClientId} with {properties}. slots: partnerClientId: path.partnerClientId properties: requestBody.properties - text: Set {properties} on partner client {partnerClientId}. slots: properties: requestBody.properties partnerClientId: path.partnerClientId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_clients/{partnerClientId}/associations/{toObjectType}'].get update: x-apievangelist-phrasing: intent: List a partner client's associations effect: read questions: - Which deals are linked to a partner client? - Can I list a partner client's associated records of one type? instructions: - text: List {toObjectType} associated with partner client {partnerClientId}. slots: toObjectType: path.toObjectType partnerClientId: path.partnerClientId - text: Show partner client {partnerClientId}'s linked {toObjectType}. slots: partnerClientId: path.partnerClientId toObjectType: path.toObjectType method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_services'].get update: x-apievangelist-phrasing: intent: List partner services effect: read questions: - What services have partners delivered through my account? - Can I list partner service records? instructions: - text: List partner services. - text: Show {limit} partner services with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_services/{partnerServiceId}'].get update: x-apievangelist-phrasing: intent: Get a partner service effect: read questions: - Can I look up one partner service? - What are the details of a specific partner service? instructions: - text: Show partner service {partnerServiceId}. slots: partnerServiceId: path.partnerServiceId - text: Get the properties of partner service {partnerServiceId}. slots: partnerServiceId: path.partnerServiceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/partner_services/{partnerServiceId}'].patch update: x-apievangelist-phrasing: intent: Update a partner service effect: write questions: - Can I update a partner service record? - How do I change a partner service's properties? instructions: - text: Update partner service {partnerServiceId} with {properties}. slots: partnerServiceId: path.partnerServiceId properties: requestBody.properties - text: Set {properties} on partner service {partnerServiceId}. slots: properties: requestBody.properties partnerServiceId: path.partnerServiceId method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}'].get update: x-apievangelist-phrasing: intent: Get governance rules for a pipeline effect: read questions: - What validation and approval rules apply to a pipeline? - Does my deal pipeline require approval at any stage? instructions: - text: Show the rules for pipeline {pipelineId} on {objectTypeId}. slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId - text: Get approval and validation rules of {objectTypeId} pipeline {pipelineId}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}'].put update: x-apievangelist-phrasing: intent: Replace governance rules for a pipeline effect: write questions: - Can I overwrite all validation rules on a pipeline at once? - How do I set a full set of governance rules for a pipeline? instructions: - text: Replace the rules on {objectTypeId} pipeline {pipelineId} with {governanceValidationRules}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId governanceValidationRules: requestBody.governanceValidationRules - text: 'Overwrite pipeline {pipelineId} ({objectTypeId}) rules: {governanceValidationRules}, approval stage {approvalStage}.' slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId governanceValidationRules: requestBody.governanceValidationRules approvalStage: requestBody.approvalStage method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}'].delete update: x-apievangelist-phrasing: intent: Delete governance rules for a pipeline effect: destructive questions: - Can I remove all rules from a pipeline? - What happens when pipeline rules are deleted? instructions: - text: Delete the rules on pipeline {pipelineId} for {objectTypeId}. slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId - text: Clear governance rules from {objectTypeId} pipeline {pipelineId}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}'].patch update: x-apievangelist-phrasing: intent: Adjust individual pipeline rules effect: write questions: - Can I stop reps from skipping stages in a pipeline? - How do I block deals from moving backwards through stages? instructions: - text: Stop stage skipping on {objectTypeId} pipeline {pipelineId} with rule {noSkippingStagesRule}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId noSkippingStagesRule: requestBody.noSkippingStagesRule - text: Block backward stage movement in pipeline {pipelineId} ({objectTypeId}) via {noBackwardsMovementRule}. slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId noBackwardsMovementRule: requestBody.noBackwardsMovementRule method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}/approvals/{objectId}'].get update: x-apievangelist-phrasing: intent: Check a record's approval status in a pipeline effect: read questions: - Has this deal been approved to move forward in the pipeline? - Can I check the approval state of one record? instructions: - text: Show approval status of {objectTypeId} record {objectId} in pipeline {pipelineId}. slots: objectTypeId: path.objectTypeId objectId: path.objectId pipelineId: path.pipelineId - text: Is record {objectId} approved in {objectTypeId} pipeline {pipelineId}. slots: objectId: path.objectId objectTypeId: path.objectTypeId pipelineId: path.pipelineId method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}/stage-edit-permissions'].get update: x-apievangelist-phrasing: intent: See who can edit pipeline stages effect: read questions: - Who is allowed to edit the stages of a pipeline? - Can I review stage edit permissions for my deal pipeline? instructions: - text: Show stage edit permissions on pipeline {pipelineId} for {objectTypeId}. slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId - text: List who can change stages in {objectTypeId} pipeline {pipelineId}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines-rules/2026-09/{objectTypeId}/{pipelineId}/stage-edit-permissions'].put update: x-apievangelist-phrasing: intent: Set who can edit pipeline stages effect: write questions: - Can I restrict stage editing to certain users or teams? - How do I change stage edit permissions on a pipeline? instructions: - text: Set stage edit permissions on {objectTypeId} pipeline {pipelineId} to {stages}. slots: objectTypeId: path.objectTypeId pipelineId: path.pipelineId stages: requestBody.stages - text: Restrict editing of pipeline {pipelineId} ({objectTypeId}) stages as {stages}. slots: pipelineId: path.pipelineId objectTypeId: path.objectTypeId stages: requestBody.stages method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}'].get update: x-apievangelist-phrasing: intent: List pipelines for an object type effect: read questions: - What deal pipelines do I have? - Can I list all ticket pipelines and their stages? instructions: - text: List all pipelines for {objectType}. slots: objectType: path.objectType - text: Show every {objectType} pipeline in the account. slots: objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}'].post update: x-apievangelist-phrasing: intent: Create a pipeline effect: write questions: - How do I create a new deal pipeline with stages? - Can I set a pipeline's display order when creating it? instructions: - text: Create a {objectType} pipeline {label} with stages {stages} at order {displayOrder}. slots: objectType: path.objectType label: requestBody.label stages: requestBody.stages displayOrder: requestBody.displayOrder - text: Add pipeline {label} for {objectType} using stages {stages}, position {displayOrder}. slots: label: requestBody.label objectType: path.objectType stages: requestBody.stages displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}'].get update: x-apievangelist-phrasing: intent: Get a pipeline effect: read questions: - Can I look up one pipeline and its stages? - What stages are in a particular pipeline? instructions: - text: Show {objectType} pipeline {pipelineId}. slots: objectType: path.objectType pipelineId: path.pipelineId - text: Get pipeline {pipelineId} of {objectType} with its stages. slots: pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}'].put update: x-apievangelist-phrasing: intent: Replace a pipeline effect: write questions: - Can I overwrite a pipeline with a completely new set of stages? - What checks run before stages are removed when I replace a pipeline? instructions: - text: Replace {objectType} pipeline {pipelineId} with label {label}, stages {stages}, order {displayOrder}. slots: objectType: path.objectType pipelineId: path.pipelineId label: requestBody.label stages: requestBody.stages displayOrder: requestBody.displayOrder - text: Overwrite pipeline {pipelineId} ({objectType}) as {label} with {stages} at {displayOrder}, validating references first. slots: pipelineId: path.pipelineId objectType: path.objectType label: requestBody.label stages: requestBody.stages displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}'].delete update: x-apievangelist-phrasing: intent: Delete a pipeline effect: destructive questions: - Can I delete a pipeline that still has deals in it? - How do I remove a pipeline I no longer use? instructions: - text: Delete {objectType} pipeline {pipelineId}. slots: objectType: path.objectType pipelineId: path.pipelineId - text: Remove pipeline {pipelineId} for {objectType}, checking deal stage usage first ({validateDealStageUsagesBeforeDelete}). slots: pipelineId: path.pipelineId objectType: path.objectType validateDealStageUsagesBeforeDelete: query.validateDealStageUsagesBeforeDelete method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}'].patch update: x-apievangelist-phrasing: intent: Rename or reorder a pipeline effect: write questions: - Can I rename a pipeline without touching its stages? - How do I archive or reorder a pipeline? instructions: - text: Rename {objectType} pipeline {pipelineId} to {label}. slots: objectType: path.objectType pipelineId: path.pipelineId label: requestBody.label - text: Move pipeline {pipelineId} of {objectType} to display order {displayOrder}. slots: pipelineId: path.pipelineId objectType: path.objectType displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/audit'].get update: x-apievangelist-phrasing: intent: See the change history of a pipeline effect: read questions: - Who changed my pipeline and when? - Can I audit all edits made to a pipeline? instructions: - text: Show the audit of changes to {objectType} pipeline {pipelineId}. slots: objectType: path.objectType pipelineId: path.pipelineId - text: List every change made to pipeline {pipelineId} ({objectType}). slots: pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages'].get update: x-apievangelist-phrasing: intent: List the stages of a pipeline effect: read questions: - What stages does my sales pipeline have? - Can I get only the stages of one pipeline? instructions: - text: List stages of {objectType} pipeline {pipelineId}. slots: objectType: path.objectType pipelineId: path.pipelineId - text: Show the stage list for pipeline {pipelineId} on {objectType}. slots: pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages'].post update: x-apievangelist-phrasing: intent: Add a stage to a pipeline effect: write questions: - How do I add a new stage to a deal pipeline? - Can I set win probability metadata on a new stage? instructions: - text: Add stage {label} to {objectType} pipeline {pipelineId} at order {displayOrder} with metadata {metadata}. slots: label: requestBody.label objectType: path.objectType pipelineId: path.pipelineId displayOrder: requestBody.displayOrder metadata: requestBody.metadata - text: Create a pipeline stage {label} in {pipelineId} ({objectType}), position {displayOrder}, metadata {metadata}. slots: label: requestBody.label pipelineId: path.pipelineId objectType: path.objectType displayOrder: requestBody.displayOrder metadata: requestBody.metadata method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages/{stageId}'].get update: x-apievangelist-phrasing: intent: Get a pipeline stage effect: read questions: - Can I look up one stage of a pipeline? - What metadata does a particular stage have? instructions: - text: Show stage {stageId} of {objectType} pipeline {pipelineId}. slots: stageId: path.stageId objectType: path.objectType pipelineId: path.pipelineId - text: Get the metadata of pipeline stage {stageId} in {pipelineId} ({objectType}). slots: stageId: path.stageId pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages/{stageId}'].put update: x-apievangelist-phrasing: intent: Replace a pipeline stage effect: write questions: - Can I fully overwrite a pipeline stage definition? - How do I replace a stage's label, order and metadata together? instructions: - text: Replace stage {stageId} in {objectType} pipeline {pipelineId} with {label}, order {displayOrder}, metadata {metadata}. slots: stageId: path.stageId objectType: path.objectType pipelineId: path.pipelineId label: requestBody.label displayOrder: requestBody.displayOrder metadata: requestBody.metadata - text: Overwrite pipeline stage {stageId} of {pipelineId} ({objectType}) as {label}/{displayOrder}/{metadata}. slots: stageId: path.stageId pipelineId: path.pipelineId objectType: path.objectType label: requestBody.label displayOrder: requestBody.displayOrder metadata: requestBody.metadata method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages/{stageId}'].delete update: x-apievangelist-phrasing: intent: Delete a pipeline stage effect: destructive questions: - Can I delete a stage that records are still in? - How do I remove a stage from a pipeline? instructions: - text: Delete stage {stageId} from {objectType} pipeline {pipelineId}. slots: stageId: path.stageId objectType: path.objectType pipelineId: path.pipelineId - text: Remove pipeline stage {stageId} of {pipelineId} ({objectType}) after checking references ({validateReferencesBeforeDelete}). slots: stageId: path.stageId pipelineId: path.pipelineId objectType: path.objectType validateReferencesBeforeDelete: query.validateReferencesBeforeDelete method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages/{stageId}'].patch update: x-apievangelist-phrasing: intent: Rename or reorder a pipeline stage effect: write questions: - Can I rename a single pipeline stage? - How do I update a stage's probability metadata? instructions: - text: Rename stage {stageId} in {objectType} pipeline {pipelineId} to {label} with metadata {metadata}. slots: stageId: path.stageId objectType: path.objectType pipelineId: path.pipelineId label: requestBody.label metadata: requestBody.metadata - text: Set metadata {metadata} on stage {stageId} of pipeline {pipelineId} ({objectType}). slots: metadata: requestBody.metadata stageId: path.stageId pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/pipelines/2026-03/{objectType}/{pipelineId}/stages/{stageId}/audit'].get update: x-apievangelist-phrasing: intent: See the change history of a pipeline stage effect: read questions: - Who changed a particular pipeline stage? - Can I audit edits to one stage in reverse chronological order? instructions: - text: Show the audit history of stage {stageId} in {objectType} pipeline {pipelineId}. slots: stageId: path.stageId objectType: path.objectType pipelineId: path.pipelineId - text: List changes made to pipeline stage {stageId} of {pipelineId} ({objectType}). slots: stageId: path.stageId pipelineId: path.pipelineId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/postal_mail'].get update: x-apievangelist-phrasing: intent: List postal mail records effect: read questions: - What postal mail has been logged in the CRM? - Can I list postal mail activities with their associations? instructions: - text: List postal mail records. - text: Show {limit} postal mail activities with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/postal_mail'].post update: x-apievangelist-phrasing: intent: Log postal mail effect: write questions: - How do I log a letter I mailed to a contact? - Can I create a postal mail record linked to a company? instructions: - text: Log postal mail with {properties}. slots: properties: requestBody.properties - text: Create a postal mail record {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/postal_mail/{postalMailId}'].get update: x-apievangelist-phrasing: intent: Get a postal mail record effect: read questions: - Can I look up one logged piece of postal mail? - What was sent in a particular postal mail activity? instructions: - text: Show postal mail {postalMailId}. slots: postalMailId: path.postalMailId - text: Get details of postal mail record {postalMailId}. slots: postalMailId: path.postalMailId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/postal_mail/{postalMailId}'].delete update: x-apievangelist-phrasing: intent: Archive a postal mail record effect: destructive questions: - Can I delete a logged postal mail activity? - What happens when a postal mail record is archived? instructions: - text: Archive postal mail {postalMailId}. slots: postalMailId: path.postalMailId - text: Delete postal mail record {postalMailId}. slots: postalMailId: path.postalMailId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/postal_mail/{postalMailId}'].patch update: x-apievangelist-phrasing: intent: Update a postal mail record effect: write questions: - Can I edit a logged postal mail activity? - How do I change properties on a postal mail record? instructions: - text: Update postal mail {postalMailId} with {properties}. slots: postalMailId: path.postalMailId properties: requestBody.properties - text: Correct postal mail record {postalMailId} by setting {properties}. slots: postalMailId: path.postalMailId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-09/{objectType}'].get update: x-apievangelist-phrasing: intent: List price book items effect: read questions: - What items are in my price books? - Can I page through price book item records? instructions: - text: List price book items of object type {objectType}. slots: objectType: path.objectType - text: Show {limit} price book items ({objectType}) with {properties}. slots: limit: query.limit objectType: path.objectType properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-09/{objectType}/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a price book item effect: read questions: - Can I look up one price book item and its price? - What does a specific price book entry contain? instructions: - text: Show price book item {objectId} of type {objectType}. slots: objectId: path.objectId objectType: path.objectType - text: Get the price on price book entry {objectId} ({objectType}). slots: objectId: path.objectId objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/products'].get update: x-apievangelist-phrasing: intent: List products effect: read questions: - What products are in my product library? - Can I list products with their prices and SKUs? instructions: - text: List products. - text: Show {limit} products with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/products'].post update: x-apievangelist-phrasing: intent: Create a product effect: write questions: - How do I add a product to the product library? - Can I create a product with a price and SKU? instructions: - text: Create a product with {properties}. slots: properties: requestBody.properties - text: Add product {properties} to the library with associations {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/products/{productId}'].get update: x-apievangelist-phrasing: intent: Get a product effect: read questions: - Can I look up a product by SKU? - What price is a specific product listed at? instructions: - text: Show product {productId}. slots: productId: path.productId - text: Look up product {productId} using {idProperty}. slots: productId: path.productId idProperty: query.idProperty method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/products/{productId}'].delete update: x-apievangelist-phrasing: intent: Archive a product effect: destructive questions: - Can I remove a product from the library? - What happens to deals when a product is archived? instructions: - text: Archive product {productId}. slots: productId: path.productId - text: Delete product {productId} from the library. slots: productId: path.productId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/products/{productId}'].patch update: x-apievangelist-phrasing: intent: Update a product effect: write questions: - Can I change a product's price? - How do I edit a product's description or SKU? instructions: - text: Update product {productId} with {properties}. slots: productId: path.productId properties: requestBody.properties - text: Change price and details of product {productId} to {properties}. slots: productId: path.productId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/projects'].get update: x-apievangelist-phrasing: intent: List projects effect: read questions: - What projects are tracked in my CRM? - Can I list project records with their status? instructions: - text: List projects. - text: Show {limit} projects with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/projects'].post update: x-apievangelist-phrasing: intent: Create a project effect: write questions: - How do I create a project record? - Can I create a project linked to a deal? instructions: - text: Create a project with {properties}. slots: properties: requestBody.properties - text: Start a project {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/projects/{projectId}'].get update: x-apievangelist-phrasing: intent: Get a project effect: read questions: - Can I look up one project? - What's the status of a specific project? instructions: - text: Show project {projectId}. slots: projectId: path.projectId - text: Get the status fields of project {projectId}. slots: projectId: path.projectId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/projects/{projectId}'].delete update: x-apievangelist-phrasing: intent: Archive a project effect: destructive questions: - Can I delete a project record? - What happens when a project is archived? instructions: - text: Archive project {projectId}. slots: projectId: path.projectId - text: Delete project record {projectId}. slots: projectId: path.projectId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/projects/{projectId}'].patch update: x-apievangelist-phrasing: intent: Update a project effect: write questions: - Can I change a project's status or dates? - How do I edit a project record? instructions: - text: Update project {projectId} with {properties}. slots: projectId: path.projectId properties: requestBody.properties - text: Mark project {projectId} progress with {properties}. slots: projectId: path.projectId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}'].get update: x-apievangelist-phrasing: intent: List CRM properties for an object type effect: read questions: - What fields exist on contacts? - Can I list only properties flagged as sensitive data? instructions: - text: List all properties on {objectType}. slots: objectType: path.objectType - text: Show {objectType} properties with data sensitivity {dataSensitivity}. slots: objectType: path.objectType dataSensitivity: query.dataSensitivity method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}'].post update: x-apievangelist-phrasing: intent: Create a custom CRM property effect: write questions: - How do I add a custom field to contacts? - Can I create a dropdown property with fixed options? instructions: - text: Create property {name} labelled {label}, type {type}, field {fieldType}, in group {groupName} on {objectType}. slots: name: requestBody.name label: requestBody.label type: requestBody.type fieldType: requestBody.fieldType groupName: requestBody.groupName objectType: path.objectType - text: Add a {type}/{fieldType} field {name} ({label}) with options {options} to group {groupName} of {objectType}. slots: type: requestBody.type fieldType: requestBody.fieldType name: requestBody.name label: requestBody.label options: requestBody.options groupName: requestBody.groupName objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/groups'].get update: x-apievangelist-phrasing: intent: List CRM property groups effect: read questions: - How are the properties on deals grouped? - Can I list property groups for companies? instructions: - text: List property groups for {objectType}. slots: objectType: path.objectType - text: Show the CRM property groups on {objectType} in locale {locale}. slots: objectType: path.objectType locale: query.locale method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/groups'].post update: x-apievangelist-phrasing: intent: Create a CRM property group effect: write questions: - Can I create a new group to organize contact properties? - How do I add a property group to deals? instructions: - text: Create property group {name} labelled {label} on {objectType}. slots: name: requestBody.name label: requestBody.label objectType: path.objectType - text: Add a CRM property group {name} ({label}) to {objectType} at order {displayOrder}. slots: name: requestBody.name label: requestBody.label objectType: path.objectType displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get a CRM property group effect: read questions: - Can I look up one property group on an object? - What label does a specific property group use? instructions: - text: Show property group {groupName} on {objectType}. slots: groupName: path.groupName objectType: path.objectType - text: Get CRM group {groupName} for {objectType} in locale {locale}. slots: groupName: path.groupName objectType: path.objectType locale: query.locale method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/groups/{groupName}'].delete update: x-apievangelist-phrasing: intent: Archive a CRM property group effect: destructive questions: - Can I delete a property group from contacts? - What happens to properties when their group is archived? instructions: - text: Archive property group {groupName} on {objectType}. slots: groupName: path.groupName objectType: path.objectType - text: Delete CRM group {groupName} from {objectType}. slots: groupName: path.groupName objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/groups/{groupName}'].patch update: x-apievangelist-phrasing: intent: Rename or reorder a CRM property group effect: write questions: - Can I relabel a property group on deals? - How do I change the display order of a property group? instructions: - text: Relabel property group {groupName} on {objectType} to {label}. slots: groupName: path.groupName objectType: path.objectType label: requestBody.label - text: Move CRM group {groupName} of {objectType} to position {displayOrder}. slots: groupName: path.groupName objectType: path.objectType displayOrder: requestBody.displayOrder method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/{propertyName}'].get update: x-apievangelist-phrasing: intent: Get a CRM property definition effect: read questions: - What type and options does a particular contact property have? - Can I look up one property's definition by its internal name? instructions: - text: Show property {propertyName} on {objectType}. slots: propertyName: path.propertyName objectType: path.objectType - text: Get the options of {objectType} property {propertyName}. slots: objectType: path.objectType propertyName: path.propertyName method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/{propertyName}'].delete update: x-apievangelist-phrasing: intent: Archive a CRM property effect: destructive questions: - Can I delete a custom property I don't use anymore? - What happens to data stored in a property when it's archived? instructions: - text: Archive property {propertyName} on {objectType}. slots: propertyName: path.propertyName objectType: path.objectType - text: Delete custom field {propertyName} from {objectType}. slots: propertyName: path.propertyName objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/properties/2026-09/{objectType}/{propertyName}'].patch update: x-apievangelist-phrasing: intent: Update a CRM property definition effect: write questions: - Can I add options to an existing dropdown property? - How do I relabel or hide a contact property? instructions: - text: Relabel {objectType} property {propertyName} to {label}. slots: objectType: path.objectType propertyName: path.propertyName label: requestBody.label - text: Set the options on property {propertyName} of {objectType} to {options}. slots: propertyName: path.propertyName objectType: path.objectType options: requestBody.options method: generated generated: '2026-09-24' - target: $.paths['/crm/property-validations/2026-09/{objectTypeId}'].get update: x-apievangelist-phrasing: intent: List property validation rules for an object effect: read questions: - What validation rules are set on contact properties? - Can I see all property validations for one object type? instructions: - text: List property validation rules for {objectTypeId}. slots: objectTypeId: path.objectTypeId - text: Show every field validation configured on {objectTypeId}. slots: objectTypeId: path.objectTypeId method: generated generated: '2026-09-24' - target: $.paths['/crm/property-validations/2026-09/{objectTypeId}/{propertyName}'].get update: x-apievangelist-phrasing: intent: Get validation rules for one property effect: read questions: - What validation applies to a specific property? - Can I check the rules on a phone number field? instructions: - text: Show validation rules for property {propertyName} on {objectTypeId}. slots: propertyName: path.propertyName objectTypeId: path.objectTypeId - text: Get validations applied to {objectTypeId} field {propertyName}. slots: objectTypeId: path.objectTypeId propertyName: path.propertyName method: generated generated: '2026-09-24' - target: $.paths['/crm/property-validations/2026-09/{objectTypeId}/{propertyName}/rule-type/{ruleType}'].get update: x-apievangelist-phrasing: intent: Get one validation rule type for a property effect: read questions: - What are the arguments of a specific rule type on a property? - Can I look up a single validation rule by its rule type? instructions: - text: Show the {ruleType} rule on property {propertyName} of {objectTypeId}. slots: ruleType: path.ruleType propertyName: path.propertyName objectTypeId: path.objectTypeId - text: Get validation rule type {ruleType} for {objectTypeId} field {propertyName}. slots: ruleType: path.ruleType objectTypeId: path.objectTypeId propertyName: path.propertyName method: generated generated: '2026-09-24' - target: $.paths['/crm/property-validations/2026-09/{objectTypeId}/{propertyName}/rule-type/{ruleType}'].put update: x-apievangelist-phrasing: intent: Set a validation rule on a property effect: write questions: - Can I require a property to match a format or length? - How do I turn on normalization for a validated field? instructions: - text: Set the {ruleType} rule on {objectTypeId} property {propertyName} with arguments {ruleArguments}. slots: ruleType: path.ruleType objectTypeId: path.objectTypeId propertyName: path.propertyName ruleArguments: requestBody.ruleArguments - text: Apply rule {ruleType} to field {propertyName} of {objectTypeId} using {ruleArguments}, normalizing ({shouldApplyNormalization}). slots: ruleType: path.ruleType propertyName: path.propertyName objectTypeId: path.objectTypeId ruleArguments: requestBody.ruleArguments shouldApplyNormalization: requestBody.shouldApplyNormalization method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/sample-response'].get update: x-apievangelist-phrasing: intent: Get a sample CRM card response effect: read questions: - What should my app return when a CRM card fetches data? - Is there an example payload for a card detail response? instructions: - text: Show a sample CRM card detail response. - text: Give me the example payload an app sends back for a card fetch. method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/{appId}'].get update: x-apievangelist-phrasing: intent: List an app's CRM cards effect: read questions: - What CRM cards has my app defined? - Can I list all cards for one app? instructions: - text: List CRM cards for app {appId}. slots: appId: path.appId - text: Show every card defined by app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/{appId}'].post update: x-apievangelist-phrasing: intent: Create a CRM card for an app effect: write questions: - How do I add a custom card to the CRM record sidebar from my app? - What does a new app card need, like its data fetch URL? instructions: - text: Create a card titled {title} for app {appId} with fetch {fetch}, display {display} and actions {actions}. slots: title: requestBody.title appId: path.appId fetch: requestBody.fetch display: requestBody.display actions: requestBody.actions - text: 'Define app {appId} sidebar card {title}: fetch config {fetch}, display {display}, actions {actions}.' slots: appId: path.appId title: requestBody.title fetch: requestBody.fetch display: requestBody.display actions: requestBody.actions method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/{appId}/{cardId}'].get update: x-apievangelist-phrasing: intent: Get a CRM card effect: read questions: - Can I look up one card my app defines? - What fetch settings does a specific CRM card use? instructions: - text: Show card {cardId} for app {appId}. slots: cardId: path.cardId appId: path.appId - text: Get the definition of CRM card {cardId} in app {appId}. slots: cardId: path.cardId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/{appId}/{cardId}'].delete update: x-apievangelist-phrasing: intent: Delete a CRM card effect: destructive questions: - Can I remove a card from my app? - What happens to installs when I delete a CRM card? instructions: - text: Delete card {cardId} from app {appId}. slots: cardId: path.cardId appId: path.appId - text: Remove CRM card {cardId} of app {appId}. slots: cardId: path.cardId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/cards-dev/2026-09/{appId}/{cardId}'].patch update: x-apievangelist-phrasing: intent: Update a CRM card effect: write questions: - Can I change a card's title or fetch URL? - How do I edit an existing CRM card? instructions: - text: Retitle card {cardId} in app {appId} to {title}. slots: cardId: path.cardId appId: path.appId title: requestBody.title - text: Change the fetch settings of card {cardId} for app {appId} to {fetch}. slots: cardId: path.cardId appId: path.appId fetch: requestBody.fetch method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/all'].get update: x-apievangelist-phrasing: intent: List all of an app's feature flags effect: read questions: - Which feature flags has my app defined? - Can I see every flag for one app at once? instructions: - text: List all feature flags for app {appId}. slots: appId: path.appId - text: Show every flag defined by app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}'].get update: x-apievangelist-phrasing: intent: Get one app feature flag effect: read questions: - What's the default state of a specific feature flag? - Is a given flag on for my app? instructions: - text: Show feature flag {flagName} for app {appId}. slots: flagName: path.flagName appId: path.appId - text: Check the state of flag {flagName} in app {appId}. slots: flagName: path.flagName appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}'].put update: x-apievangelist-phrasing: intent: Set an app feature flag effect: write questions: - How do I turn a feature flag on for my app by default? - Can I override a flag's state for everyone? instructions: - text: Set flag {flagName} on app {appId} to default {defaultState}. slots: flagName: path.flagName appId: path.appId defaultState: requestBody.defaultState - text: Set app {appId} flag {flagName} default {defaultState} with override {overrideState}. slots: appId: path.appId flagName: path.flagName defaultState: requestBody.defaultState overrideState: requestBody.overrideState method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}'].delete update: x-apievangelist-phrasing: intent: Delete an app feature flag effect: destructive questions: - Can I delete a feature flag from my app? - What happens to account-level states when a flag is deleted? instructions: - text: Delete feature flag {flagName} from app {appId}. slots: flagName: path.flagName appId: path.appId - text: Remove flag {flagName} in app {appId}. slots: flagName: path.flagName appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}/portals'].get update: x-apievangelist-phrasing: intent: List accounts with a flag state set effect: read questions: - Which customer accounts have a specific flag set? - Can I page through portals with an account-level flag state? instructions: - text: List accounts with a state set for flag {flagName} in app {appId}. slots: flagName: path.flagName appId: path.appId - text: Show portals with flag {flagName} set for app {appId}, starting at {startPortalId}. slots: flagName: path.flagName appId: path.appId startPortalId: query.startPortalId method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}/portals/{portalId}'].get update: x-apievangelist-phrasing: intent: Get a flag's state for one account effect: read questions: - Is a feature flag on for one particular customer account? - Can I check a single portal's flag state? instructions: - text: Show flag {flagName} state for portal {portalId} in app {appId}. slots: flagName: path.flagName portalId: path.portalId appId: path.appId - text: Check whether account {portalId} has flag {flagName} on for app {appId}. slots: portalId: path.portalId flagName: path.flagName appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}/portals/{portalId}'].put update: x-apievangelist-phrasing: intent: Set a flag's state for one account effect: write questions: - Can I turn a feature on for just one customer account? - How do I set a per-portal flag state? instructions: - text: Set flag {flagName} to {flagState} for portal {portalId} in app {appId}. slots: flagName: path.flagName flagState: requestBody.flagState portalId: path.portalId appId: path.appId - text: Enable feature {flagName} for account {portalId} of app {appId} with state {flagState}. slots: flagName: path.flagName portalId: path.portalId appId: path.appId flagState: requestBody.flagState method: generated generated: '2026-09-24' - target: $.paths['/feature-flags/2026-09/{appId}/flags/{flagName}/portals/{portalId}'].delete update: x-apievangelist-phrasing: intent: Clear a flag's state for one account effect: destructive questions: - Can I remove a per-account flag override? - How do I reset one portal back to the default flag state? instructions: - text: Delete the flag {flagName} state for portal {portalId} in app {appId}. slots: flagName: path.flagName portalId: path.portalId appId: path.appId - text: Reset account {portalId} to the default for flag {flagName} in app {appId}. slots: portalId: path.portalId flagName: path.flagName appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/quotes'].get update: x-apievangelist-phrasing: intent: List quotes effect: read questions: - What quotes have been created? - Can I list quotes with their amounts and expiration dates? instructions: - text: List quotes. - text: Show {limit} quotes with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/quotes'].post update: x-apievangelist-phrasing: intent: Create a quote effect: write questions: - How do I create a quote for a deal? - Can I create a quote associated with line items? instructions: - text: Create a quote with {properties}. slots: properties: requestBody.properties - text: Build a quote {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/quotes/{quoteId}'].get update: x-apievangelist-phrasing: intent: Get a quote effect: read questions: - Can I look up one quote? - Has a particular quote been signed or expired? instructions: - text: Show quote {quoteId}. slots: quoteId: path.quoteId - text: Get the status and expiry of quote {quoteId}. slots: quoteId: path.quoteId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/quotes/{quoteId}'].delete update: x-apievangelist-phrasing: intent: Archive a quote effect: destructive questions: - Can I delete a quote? - What happens when a quote is archived? instructions: - text: Archive quote {quoteId}. slots: quoteId: path.quoteId - text: Delete quote record {quoteId}. slots: quoteId: path.quoteId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/quotes/{quoteId}'].patch update: x-apievangelist-phrasing: intent: Update a quote effect: write questions: - Can I change a quote's expiration date? - How do I edit an existing quote? instructions: - text: Update quote {quoteId} with {properties}. slots: quoteId: path.quoteId properties: requestBody.properties - text: Extend or edit quote {quoteId} by setting {properties}. slots: quoteId: path.quoteId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas'].get update: x-apievangelist-phrasing: intent: List custom object schemas effect: read questions: - What custom objects have been defined in my account? - Can I include property and association definitions when listing custom object schemas? instructions: - text: List all custom object schemas. - text: Show custom object schemas with property definitions ({includePropertyDefinitions}). slots: includePropertyDefinitions: query.includePropertyDefinitions method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas'].post update: x-apievangelist-phrasing: intent: Define a new custom object effect: write questions: - How do I create a custom object type in the CRM? - What do I need to specify when defining a custom object schema? instructions: - text: Create custom object {name} with labels {labels}, properties {properties}, required {requiredProperties}, associated to {associatedObjects}. slots: name: requestBody.name labels: requestBody.labels properties: requestBody.properties requiredProperties: requestBody.requiredProperties associatedObjects: requestBody.associatedObjects - text: Define custom object schema {name} ({labels}) searchable by {searchableProperties} with properties {properties}. slots: name: requestBody.name labels: requestBody.labels searchableProperties: requestBody.searchableProperties properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas/{objectType}'].get update: x-apievangelist-phrasing: intent: Get a custom object schema effect: read questions: - What properties does my custom object have? - Can I see one custom object's schema with its associations? instructions: - text: Show the schema for custom object {objectType}. slots: objectType: path.objectType - text: Get custom object {objectType} schema with association definitions ({includeAssociationDefinitions}). slots: objectType: path.objectType includeAssociationDefinitions: query.includeAssociationDefinitions method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas/{objectType}'].delete update: x-apievangelist-phrasing: intent: Delete a custom object schema effect: destructive questions: - Can I delete a custom object type entirely? - Do I need to archive a custom object schema before deleting it? instructions: - text: Delete custom object schema {objectType}. slots: objectType: path.objectType - text: Permanently remove archived custom object {objectType} ({archived}). slots: objectType: path.objectType archived: query.archived method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas/{objectType}'].patch update: x-apievangelist-phrasing: intent: Update a custom object schema effect: write questions: - Can I change a custom object's labels or display property? - How do I make more properties searchable on my custom object? instructions: - text: Update custom object {objectType} labels to {labels}. slots: objectType: path.objectType labels: requestBody.labels - text: Make {searchableProperties} searchable on custom object {objectType}. slots: searchableProperties: requestBody.searchableProperties objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm-object-schemas/2026-09/schemas/{objectType}/associations/{associationIdentifier}'].delete update: x-apievangelist-phrasing: intent: Remove an association from a custom object schema effect: destructive questions: - Can I delete an association definition from my custom object? - How do I unlink a custom object type from another object? instructions: - text: Delete association {associationIdentifier} from custom object {objectType}. slots: associationIdentifier: path.associationIdentifier objectType: path.objectType - text: Remove the {associationIdentifier} association definition on schema {objectType}. slots: associationIdentifier: path.associationIdentifier objectType: path.objectType method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-162'].get update: x-apievangelist-phrasing: intent: List services effect: read questions: - What service records are in my CRM? - Can I list services with their properties? instructions: - text: List services. - text: Show {limit} services with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-162'].post update: x-apievangelist-phrasing: intent: Create a service record effect: write questions: - How do I create a service record? - Can I create a service linked to a company? instructions: - text: Create a service with {properties}. slots: properties: requestBody.properties - text: Add a service {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-162/{serviceId}'].get update: x-apievangelist-phrasing: intent: Get a service record effect: read questions: - Can I look up one service record? - What properties does a specific service have? instructions: - text: Show service {serviceId}. slots: serviceId: path.serviceId - text: Get the details of service record {serviceId}. slots: serviceId: path.serviceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-162/{serviceId}'].delete update: x-apievangelist-phrasing: intent: Archive a service record effect: destructive questions: - Can I delete a service record? - What happens when a service is archived? instructions: - text: Archive service {serviceId}. slots: serviceId: path.serviceId - text: Delete service record {serviceId}. slots: serviceId: path.serviceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/0-162/{serviceId}'].patch update: x-apievangelist-phrasing: intent: Update a service record effect: write questions: - Can I change a service's properties? - How do I edit an existing service record? instructions: - text: Update service {serviceId} with {properties}. slots: serviceId: path.serviceId properties: requestBody.properties - text: Set {properties} on service record {serviceId}. slots: properties: requestBody.properties serviceId: path.serviceId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tasks'].get update: x-apievangelist-phrasing: intent: List tasks effect: read questions: - What tasks are open for my team? - Can I list tasks with their due dates and owners? instructions: - text: List tasks. - text: Show {limit} tasks with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tasks'].post update: x-apievangelist-phrasing: intent: Create a task effect: write questions: - How do I create a follow-up task for a contact? - Can I create a task and associate it with a deal? instructions: - text: Create a task with {properties}. slots: properties: requestBody.properties - text: Add a to-do {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tasks/{taskId}'].get update: x-apievangelist-phrasing: intent: Get a task effect: read questions: - Can I look up one task? - When is a specific task due, and who owns it? instructions: - text: Show task {taskId}. slots: taskId: path.taskId - text: Get the due date and owner of task {taskId}. slots: taskId: path.taskId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tasks/{taskId}'].delete update: x-apievangelist-phrasing: intent: Archive a task effect: destructive questions: - Can I delete a task? - What happens when a task is archived? instructions: - text: Archive task {taskId}. slots: taskId: path.taskId - text: Delete task record {taskId}. slots: taskId: path.taskId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tasks/{taskId}'].patch update: x-apievangelist-phrasing: intent: Update a task effect: write questions: - How do I mark a task as completed? - Can I change a task's due date or owner? instructions: - text: Update task {taskId} with {properties}. slots: taskId: path.taskId properties: requestBody.properties - text: Mark task {taskId} done by setting {properties}. slots: taskId: path.taskId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/task-series/2026-09/{taskId}'].get update: x-apievangelist-phrasing: intent: Get a recurring task series effect: read questions: - How is a recurring task set to repeat? - Can I see the schedule of a repeating task series? instructions: - text: Show the task series for task {taskId}. slots: taskId: path.taskId - text: Get recurrence settings and {properties} of task series {taskId}. slots: properties: query.properties taskId: path.taskId method: generated generated: '2026-09-24' - target: $.paths['/crm/task-series/2026-09/{taskId}'].delete update: x-apievangelist-phrasing: intent: Delete a recurring task series effect: destructive questions: - Can I stop a task from recurring altogether? - What happens when I delete a task series? instructions: - text: Delete the task series {taskId}. slots: taskId: path.taskId - text: Stop recurring task {taskId} by removing its series. slots: taskId: path.taskId method: generated generated: '2026-09-24' - target: $.paths['/crm/task-series/2026-09/{taskId}'].patch update: x-apievangelist-phrasing: intent: Change a recurring task series effect: write questions: - Can I change how often a recurring task repeats? - How do I update the properties of a whole task series? instructions: - text: Change the repeat schedule of task series {taskId} to {series}. slots: taskId: path.taskId series: requestBody.series - text: Update task series {taskId} with properties {properties}. slots: taskId: path.taskId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/taxes'].get update: x-apievangelist-phrasing: intent: List tax records effect: read questions: - What tax records are defined for quotes and invoices? - Can I list taxes with their rates? instructions: - text: List taxes. - text: Show {limit} tax records with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/taxes'].post update: x-apievangelist-phrasing: intent: Create a tax record effect: write questions: - Can I add a tax to apply on quotes? - How do I create a tax record? instructions: - text: Create a tax with {properties}. slots: properties: requestBody.properties - text: Add a tax record {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/taxes/{taxId}'].get update: x-apievangelist-phrasing: intent: Get a tax record effect: read questions: - Can I look up one tax record? - What rate does a specific tax record apply? instructions: - text: Show tax {taxId}. slots: taxId: path.taxId - text: Get the rate on tax record {taxId}. slots: taxId: path.taxId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/taxes/{taxId}'].delete update: x-apievangelist-phrasing: intent: Archive a tax record effect: destructive questions: - Can I delete a tax I no longer charge? - What happens when a tax record is archived? instructions: - text: Archive tax {taxId}. slots: taxId: path.taxId - text: Delete tax record {taxId}. slots: taxId: path.taxId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/taxes/{taxId}'].patch update: x-apievangelist-phrasing: intent: Update a tax record effect: write questions: - Can I change the rate on a tax record? - How do I edit an existing tax? instructions: - text: Update tax {taxId} with {properties}. slots: taxId: path.taxId properties: requestBody.properties - text: Change the rate on tax record {taxId} to {properties}. slots: taxId: path.taxId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tickets'].get update: x-apievangelist-phrasing: intent: List support tickets effect: read questions: - What support tickets are open? - Can I list tickets with their priority and status? instructions: - text: List tickets. - text: Show {limit} tickets with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tickets'].post update: x-apievangelist-phrasing: intent: Create a support ticket effect: write questions: - How do I open a support ticket for a customer? - Can I create a ticket linked to a contact and company? instructions: - text: Create a ticket with {properties}. slots: properties: requestBody.properties - text: Open a support ticket {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tickets/{ticketId}'].get update: x-apievangelist-phrasing: intent: Get a support ticket effect: read questions: - Can I look up one ticket? - What status and priority does a specific ticket have? instructions: - text: Show ticket {ticketId}. slots: ticketId: path.ticketId - text: Get the status of support ticket {ticketId}. slots: ticketId: path.ticketId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tickets/{ticketId}'].delete update: x-apievangelist-phrasing: intent: Archive a support ticket effect: destructive questions: - Can I delete a ticket? - What happens when a ticket is archived? instructions: - text: Archive ticket {ticketId}. slots: ticketId: path.ticketId - text: Delete support ticket {ticketId}. slots: ticketId: path.ticketId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/tickets/{ticketId}'].patch update: x-apievangelist-phrasing: intent: Update a support ticket effect: write questions: - How do I close or reprioritize a ticket? - Can I move a ticket to another pipeline stage? instructions: - text: Update ticket {ticketId} with {properties}. slots: ticketId: path.ticketId properties: requestBody.properties - text: Close or reprioritize ticket {ticketId} by setting {properties}. slots: ticketId: path.ticketId properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-09/transcripts/{transcriptId}'].get update: x-apievangelist-phrasing: intent: Get a call transcript effect: read questions: - Can I pull the transcript of a recorded call? - What was said on a specific call? instructions: - text: Show call transcript {transcriptId}. slots: transcriptId: path.transcriptId - text: Get the text of transcript {transcriptId}. slots: transcriptId: path.transcriptId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/calling/2026-09/transcripts/{transcriptId}'].delete update: x-apievangelist-phrasing: intent: Delete a call transcript effect: destructive questions: - Can I delete a call transcript? - How do I remove a transcript my calling app uploaded? instructions: - text: Delete call transcript {transcriptId}. slots: transcriptId: path.transcriptId - text: Remove transcript {transcriptId}. slots: transcriptId: path.transcriptId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/users'].get update: x-apievangelist-phrasing: intent: List user records effect: read questions: - What user records exist in the CRM users object? - Can I list CRM user records with their properties? instructions: - text: List CRM user records. - text: Show {limit} user records with {properties}. slots: limit: query.limit properties: query.properties method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/users'].post update: x-apievangelist-phrasing: intent: Create a user record effect: write questions: - Can I create a record in the CRM users object? - How do I add a user record with custom properties? instructions: - text: Create a CRM user record with {properties}. slots: properties: requestBody.properties - text: Add a user object record {properties} associated with {associations}. slots: properties: requestBody.properties associations: requestBody.associations method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/users/{userId}'].get update: x-apievangelist-phrasing: intent: Get a user record effect: read questions: - Can I look up one record in the CRM users object? - What properties does a specific user record hold? instructions: - text: Show CRM user record {userId}. slots: userId: path.userId - text: Get properties of user object {userId}. slots: userId: path.userId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/users/{userId}'].delete update: x-apievangelist-phrasing: intent: Archive a user record effect: destructive questions: - Can I archive a record in the CRM users object? - What happens when a user record is archived? instructions: - text: Archive CRM user record {userId}. slots: userId: path.userId - text: Delete user object record {userId}. slots: userId: path.userId method: generated generated: '2026-09-24' - target: $.paths['/crm/objects/2026-03/users/{userId}'].patch update: x-apievangelist-phrasing: intent: Update a user record effect: write questions: - Can I update properties on a CRM user record? - How do I edit a record in the users object? instructions: - text: Update CRM user record {userId} with {properties}. slots: userId: path.userId properties: requestBody.properties - text: Set {properties} on user object record {userId}. slots: properties: requestBody.properties userId: path.userId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/videoconferencing/2026-09/settings/{appId}'].get update: x-apievangelist-phrasing: intent: Get video conferencing extension settings effect: read questions: - What video conferencing URLs has my app registered? - Is my app set up as a video conferencing extension? instructions: - text: Show video conferencing settings for app {appId}. slots: appId: path.appId - text: Get the meeting create and delete URLs registered by app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/videoconferencing/2026-09/settings/{appId}'].put update: x-apievangelist-phrasing: intent: Set up video conferencing extension settings effect: write questions: - How do I make my app add video meeting links to scheduled meetings? - Can I register a URL for verifying users in my video conferencing app? instructions: - text: Set video conferencing settings for app {appId} with create URL {createMeetingUrl}. slots: appId: path.appId createMeetingUrl: requestBody.createMeetingUrl - text: Configure app {appId} to create meetings at {createMeetingUrl} and verify users at {userVerifyUrl}. slots: appId: path.appId createMeetingUrl: requestBody.createMeetingUrl userVerifyUrl: requestBody.userVerifyUrl method: generated generated: '2026-09-24' - target: $.paths['/crm/extensions/videoconferencing/2026-09/settings/{appId}'].delete update: x-apievangelist-phrasing: intent: Delete video conferencing extension settings effect: destructive questions: - Can I remove my app's video conferencing integration? - What happens when video conference settings are deleted? instructions: - text: Delete video conferencing settings for app {appId}. slots: appId: path.appId - text: Remove app {appId} as a video conferencing provider. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09'].post update: x-apievangelist-phrasing: intent: Upload a file as a Data Studio data source effect: write questions: - Can I upload a CSV or spreadsheet to create a data source for reporting? - Which file formats can I use to create a Data Studio data source? instructions: - text: Create a file data source from {file} using request {request}. slots: file: requestBody.file request: requestBody.request - text: Upload {file} as a new Data Studio data source. slots: file: requestBody.file method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09/{datasourceId}'].get update: x-apievangelist-phrasing: intent: Get a Data Studio data source effect: read questions: - Can I look up one data source I created in Data Studio? - What columns does a specific data source have? instructions: - text: Show data source {datasourceId}. slots: datasourceId: path.datasourceId - text: Get the schema of Data Studio source {datasourceId}. slots: datasourceId: path.datasourceId method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09/{datasourceId}'].put update: x-apievangelist-phrasing: intent: Replace a file data source effect: write questions: - Can I upload a new file to refresh an existing data source? - How do I replace the data in a file-based data source? instructions: - text: Replace data source {datasourceId} with file {file}. slots: datasourceId: path.datasourceId file: requestBody.file - text: Refresh file source {datasourceId} using {file} and request {request}. slots: datasourceId: path.datasourceId file: requestBody.file request: requestBody.request method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09/{datasourceId}'].delete update: x-apievangelist-phrasing: intent: Delete a Data Studio data source effect: destructive questions: - Can I delete a data source I no longer report on? - What happens to reports when a data source is deleted? instructions: - text: Delete data source {datasourceId}. slots: datasourceId: path.datasourceId - text: Remove Data Studio source {datasourceId}. slots: datasourceId: path.datasourceId method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09/{datasourceId}'].patch update: x-apievangelist-phrasing: intent: Rename a Data Studio data source effect: write questions: - Can I rename a data source? - How do I change a data source's display name? instructions: - text: Rename data source {datasourceId} to {datasourceName}. slots: datasourceId: path.datasourceId datasourceName: requestBody.datasourceName - text: Change the display name of source {datasourceId} to {datasourceName}. slots: datasourceId: path.datasourceId datasourceName: requestBody.datasourceName method: generated generated: '2026-09-24' - target: $.paths['/data-studio/data-source/2026-09/{datasourceId}/json'].put update: x-apievangelist-phrasing: intent: Replace a JSON data source effect: write questions: - Can I fully replace a JSON data source's schema and data? - How do I update a JSON-based data source? instructions: - text: Replace JSON data source {datasourceId} with config {config}. slots: datasourceId: path.datasourceId config: requestBody.config - text: Update JSON source {datasourceId} named {datasourceName} using {config}. slots: datasourceId: path.datasourceId datasourceName: requestBody.datasourceName config: requestBody.config method: generated generated: '2026-09-24' - target: $.paths['/events/event-occurrences/2026-09'].get update: x-apievangelist-phrasing: intent: Query event occurrences effect: read questions: - Which behavioral events has a contact triggered? - Can I pull event occurrences of one type within a date range? instructions: - text: Show event occurrences of type {eventType} for {objectType} {objectId}. slots: eventType: query.eventType objectType: query.objectType objectId: query.objectId - text: List events that occurred between {occurredAfter} and {occurredBefore}. slots: occurredAfter: query.occurredAfter occurredBefore: query.occurredBefore method: generated generated: '2026-09-24' - target: $.paths['/events/event-occurrences/2026-09/event-types'].get update: x-apievangelist-phrasing: intent: List event type names effect: read questions: - What event types can I query occurrences for? - Which event type names are available in my account? instructions: - text: List the available event types. - text: Show every event type name I can query. method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions'].get update: x-apievangelist-phrasing: intent: List custom event definitions effect: read questions: - What custom behavioral events have been defined? - Can I search custom event definitions by name? instructions: - text: List custom event definitions. - text: Search event definitions for {searchString}. slots: searchString: query.searchString method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions'].post update: x-apievangelist-phrasing: intent: Define a custom behavioral event effect: write questions: - How do I create a custom event to track actions in my product? - Can a custom event include default properties? instructions: - text: Create custom event {label} with properties {propertyDefinitions}, default properties {includeDefaultProperties}. slots: label: requestBody.label propertyDefinitions: requestBody.propertyDefinitions includeDefaultProperties: requestBody.includeDefaultProperties - text: Define event {label} on object {primaryObject} with fields {propertyDefinitions} ({includeDefaultProperties}). slots: label: requestBody.label primaryObject: requestBody.primaryObject propertyDefinitions: requestBody.propertyDefinitions includeDefaultProperties: requestBody.includeDefaultProperties method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions/{eventName}'].get update: x-apievangelist-phrasing: intent: Get a custom event definition effect: read questions: - What properties does a custom event definition include? - Can I look up one custom event by its name? instructions: - text: Show event definition {eventName}. slots: eventName: path.eventName - text: Get the properties defined on custom event {eventName}. slots: eventName: path.eventName method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions/{eventName}'].delete update: x-apievangelist-phrasing: intent: Delete a custom event definition effect: destructive questions: - Can I delete a custom event I no longer track? - What happens to past occurrences when an event definition is deleted? instructions: - text: Delete event definition {eventName}. slots: eventName: path.eventName - text: Remove custom event {eventName}. slots: eventName: path.eventName method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions/{eventName}'].patch update: x-apievangelist-phrasing: intent: Update a custom event definition effect: write questions: - Can I relabel a custom event or change its timeline template? - How do I reorder a custom event's properties? instructions: - text: Set property order on event {eventName} to {propertyOrder}. slots: eventName: path.eventName propertyOrder: requestBody.propertyOrder - text: Relabel custom event {eventName} as {label} with property order {propertyOrder}. slots: eventName: path.eventName label: requestBody.label propertyOrder: requestBody.propertyOrder method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions/{eventName}/property/{propertyName}'].delete update: x-apievangelist-phrasing: intent: Remove a property from a custom event effect: destructive questions: - Can I delete one property from a custom event definition? - How do I drop a field my custom event no longer sends? instructions: - text: Delete property {propertyName} from event {eventName}. slots: propertyName: path.propertyName eventName: path.eventName - text: Drop field {propertyName} from custom event {eventName}. slots: propertyName: path.propertyName eventName: path.eventName method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/event-definitions/{eventName}/property/{propertyName}'].patch update: x-apievangelist-phrasing: intent: Update a custom event property effect: write questions: - Can I relabel or hide a property on a custom event? - How do I change the options of a custom event field? instructions: - text: Relabel property {propertyName} on event {eventName} to {label}. slots: propertyName: path.propertyName eventName: path.eventName label: requestBody.label - text: Hide field {propertyName} of custom event {eventName} ({hidden}). slots: propertyName: path.propertyName eventName: path.eventName hidden: requestBody.hidden method: generated generated: '2026-09-24' - target: $.paths['/events/v3/2026-09/send'].post update: x-apievangelist-phrasing: intent: Record a custom event occurrence effect: write questions: - How do I send a custom event when a user does something in my app? - Can I attribute a custom event to a contact by email? instructions: - text: Send event {eventName} with properties {properties} for {email}. slots: eventName: requestBody.eventName properties: requestBody.properties email: requestBody.email - text: Record an occurrence of {eventName} for object {objectId} at {occurredAt} with {properties}. slots: eventName: requestBody.eventName objectId: requestBody.objectId occurredAt: requestBody.occurredAt properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/marketing/campaigns/2026-03'].get update: x-apievangelist-phrasing: intent: List marketing campaigns effect: read questions: - What marketing campaigns are running? - Can I find a campaign by its name? instructions: - text: List marketing campaigns. - text: Find campaigns named {name}. slots: name: query.name method: generated generated: '2026-09-24' - target: $.paths['/marketing/campaigns/2026-03'].post update: x-apievangelist-phrasing: intent: Create a marketing campaign effect: write questions: - How do I create a new marketing campaign? - Can I set a campaign's dates and budget when creating it? instructions: - text: Create a campaign with {properties}. slots: properties: requestBody.properties - text: Launch a new marketing campaign with properties {properties}. slots: properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/marketing/campaigns/2026-03/{campaignGuid}'].get update: x-apievangelist-phrasing: intent: Get a marketing campaign effect: read questions: - Can I look up one campaign and its details? - How did a campaign perform over a date range? instructions: - text: Show campaign {campaignGuid}. slots: campaignGuid: path.campaignGuid - text: Get campaign {campaignGuid} between {startDate} and {endDate}. slots: campaignGuid: path.campaignGuid startDate: query.startDate endDate: query.endDate method: generated generated: '2026-09-24' - target: $.paths['/marketing/campaigns/2026-03/{campaignGuid}'].delete update: x-apievangelist-phrasing: intent: Delete a marketing campaign effect: destructive questions: - Can I delete a campaign? - What happens to assets when a campaign is deleted? instructions: - text: Delete campaign {campaignGuid}. slots: campaignGuid: path.campaignGuid - text: Remove marketing campaign {campaignGuid}. slots: campaignGuid: path.campaignGuid method: generated generated: '2026-09-24' - target: $.paths['/marketing/campaigns/2026-03/{campaignGuid}'].patch update: x-apievangelist-phrasing: intent: Update a marketing campaign effect: write questions: - Can I change a campaign's name or end date? - How do I edit an existing campaign? instructions: - text: Update campaign {campaignGuid} with {properties}. slots: campaignGuid: path.campaignGuid properties: requestBody.properties - text: Change marketing campaign {campaignGuid} to {properties}. slots: campaignGuid: path.campaignGuid properties: requestBody.properties method: generated generated: '2026-09-24' - target: $.paths['/marketing/emails/2026-09'].get update: x-apievangelist-phrasing: intent: List marketing emails effect: read questions: - What marketing emails have I built? - Can I list only published emails with their stats? instructions: - text: List my marketing emails. - text: Show published marketing emails ({isPublished}) with stats ({includeStats}). slots: isPublished: query.isPublished includeStats: query.includeStats - text: List marketing emails in campaign {campaign}. slots: campaign: query.campaign method: generated generated: '2026-09-24' - target: $.paths['/marketing/emails/2026-09'].post update: x-apievangelist-phrasing: intent: Create a marketing email effect: write questions: - How do I create a marketing email draft? - Can I set the subject and sender when creating a marketing email? instructions: - text: Create a marketing email named {name} with subject {subject}. slots: name: requestBody.name subject: requestBody.subject - text: Draft marketing email {name} from {from} to {to}. slots: name: requestBody.name from: requestBody.from to: requestBody.to method: generated generated: '2026-09-24' - target: $.paths['/marketing/emails/2026-09/statistics/histogram'].get update: x-apievangelist-phrasing: intent: Get marketing email stats over time effect: read questions: - How did my email opens and clicks trend day by day? - Can I get marketing email stats broken into intervals? instructions: - text: Show email statistics in {interval} intervals from {startTimestamp} to {endTimestamp}. slots: interval: query.interval startTimestamp: query.startTimestamp endTimestamp: query.endTimestamp - text: Chart stats for emails {emailIds} by {interval}. slots: emailIds: query.emailIds interval: query.interval method: generated generated: '2026-09-24' - target: $.paths['/marketing/emails/2026-09/statistics/list'].get update: x-apievangelist-phrasing: intent: Get total marketing email stats for a period effect: read questions: - What were my total email opens and clicks last month? - Which emails were sent during a given time span? instructions: - text: Show aggregated email statistics from {startTimestamp} to {endTimestamp}. slots: startTimestamp: query.startTimestamp endTimestamp: query.endTimestamp - text: Get combined stats for emails {emailIds}. slots: emailIds: query.emailIds method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09'].get update: x-apievangelist-phrasing: intent: List marketing events effect: read questions: - What marketing events like webinars are in my account? - Can I page through all marketing events? instructions: - text: List marketing events. - text: Show {limit} marketing events. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/events'].post update: x-apievangelist-phrasing: intent: Create a marketing event effect: write questions: - How do I add a webinar from my event platform as a marketing event? - Can I set a start and end time on a marketing event? instructions: - text: Create marketing event {eventName} by {eventOrganizer} with external ID {externalEventId} in account {externalAccountId}, properties {customProperties}. slots: eventName: requestBody.eventName eventOrganizer: requestBody.eventOrganizer externalEventId: requestBody.externalEventId externalAccountId: requestBody.externalAccountId customProperties: requestBody.customProperties - text: Add event {eventName} ({externalEventId}/{externalAccountId}) by {eventOrganizer} starting {startDateTime}, props {customProperties}. slots: eventName: requestBody.eventName externalEventId: requestBody.externalEventId externalAccountId: requestBody.externalAccountId eventOrganizer: requestBody.eventOrganizer startDateTime: requestBody.startDateTime customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/events/{externalEventId}'].get update: x-apievangelist-phrasing: intent: Get a marketing event by external IDs effect: read questions: - Can I look up a marketing event using my own platform's event ID? - Why can't my app see events created by another app? instructions: - text: Show marketing event {externalEventId} in external account {externalAccountId}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId - text: Find the event with external ID {externalEventId} for account {externalAccountId}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/events/{externalEventId}'].put update: x-apievangelist-phrasing: intent: Upsert a marketing event by external ID effect: write questions: - Can I create or update a marketing event in one call using its external ID? - What happens if the external event already exists when I upsert? instructions: - text: Upsert event {externalEventId} as {eventName} by {eventOrganizer} for account {externalAccountId} with {customProperties}. slots: externalEventId: path.externalEventId eventName: requestBody.eventName eventOrganizer: requestBody.eventOrganizer externalAccountId: requestBody.externalAccountId customProperties: requestBody.customProperties - text: Create or update external event {externalEventId} ({eventName}, {eventOrganizer}, {externalAccountId}, {customProperties}). slots: externalEventId: path.externalEventId eventName: requestBody.eventName eventOrganizer: requestBody.eventOrganizer externalAccountId: requestBody.externalAccountId customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/events/{externalEventId}'].delete update: x-apievangelist-phrasing: intent: Delete a marketing event by external IDs effect: destructive questions: - Can I delete a marketing event using my platform's event ID? - How do I remove an event my app synced? instructions: - text: Delete marketing event {externalEventId} in account {externalAccountId}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId - text: Remove the synced event {externalEventId} from external account {externalAccountId}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/events/{externalEventId}'].patch update: x-apievangelist-phrasing: intent: Update a marketing event by external IDs effect: write questions: - Can I mark a synced event as cancelled using its external ID? - How do I change the time of a marketing event my app created? instructions: - text: Mark event {externalEventId} in account {externalAccountId} cancelled ({eventCancelled}) with props {customProperties}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId eventCancelled: requestBody.eventCancelled customProperties: requestBody.customProperties - text: Move external event {externalEventId} ({externalAccountId}) to start {startDateTime}, props {customProperties}. slots: externalEventId: path.externalEventId externalAccountId: query.externalAccountId startDateTime: requestBody.startDateTime customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/{objectId}'].get update: x-apievangelist-phrasing: intent: Get a marketing event by record ID effect: read questions: - Can I look up a marketing event by its CRM record ID? - What details does a specific marketing event record hold? instructions: - text: Show marketing event record {objectId}. slots: objectId: path.objectId - text: Get event details for marketing event object {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/{objectId}'].delete update: x-apievangelist-phrasing: intent: Delete a marketing event by record ID effect: destructive questions: - Can I delete a marketing event using its CRM record ID? - Is removing a marketing event record permanent? instructions: - text: Delete marketing event record {objectId}. slots: objectId: path.objectId - text: Remove marketing event object {objectId}. slots: objectId: path.objectId method: generated generated: '2026-09-24' - target: $.paths['/marketing/marketing-events/2026-09/{objectId}'].patch update: x-apievangelist-phrasing: intent: Update a marketing event by record ID effect: write questions: - Can I update a marketing event when I only have its CRM record ID? - How do I change an event's description by record ID? instructions: - text: Update marketing event record {objectId} with properties {customProperties}. slots: objectId: path.objectId customProperties: requestBody.customProperties - text: Set description {eventDescription} on event object {objectId} with {customProperties}. slots: eventDescription: requestBody.eventDescription objectId: path.objectId customProperties: requestBody.customProperties method: generated generated: '2026-09-24' - target: $.paths['/meta/network-origins/2026-09/ip-ranges'].get update: x-apievangelist-phrasing: intent: Get HubSpot network IP ranges effect: read questions: - Which IP ranges should I allowlist for HubSpot traffic? - Can I filter network origin ranges by service or direction? instructions: - text: List HubSpot IP ranges for service {service}. slots: service: query.service - text: Show network origin IP ranges in direction {direction}. slots: direction: query.direction method: generated generated: '2026-09-24' - target: $.paths['/meta/network-origins/2026-09/ip-ranges/simple'].get update: x-apievangelist-phrasing: intent: Get a plain list of network IP ranges effect: read questions: - Is there a simple plain list of IP ranges I can drop into a firewall? - Can I get just the CIDR blocks without extra metadata? instructions: - text: Give me the simple list of IP ranges for {service}. slots: service: query.service - text: Show the plain CIDR list for direction {direction}. slots: direction: query.direction method: generated generated: '2026-09-24' - target: $.paths['/meta/network-origins/2026-09/ip-ranges/webhook-subscriptions/{appId}'].get update: x-apievangelist-phrasing: intent: List webhook IP range subscriptions effect: read questions: - Is my app subscribed to IP range change notifications? - Where does my app get notified when network ranges change? instructions: - text: List IP range change subscriptions for app {appId}. slots: appId: path.appId - text: Show webhook subscriptions for network range updates on app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/meta/network-origins/2026-09/ip-ranges/webhook-subscriptions/{appId}'].post update: x-apievangelist-phrasing: intent: Subscribe to IP range change notifications effect: write questions: - Can I get a webhook when HubSpot's IP ranges change? - How do I register a URL for network origin updates? instructions: - text: Subscribe app {appId} to IP range changes at {webhookUrl}. slots: appId: path.appId webhookUrl: requestBody.webhookUrl - text: Notify {webhookUrl} when network ranges change for app {appId}. slots: webhookUrl: requestBody.webhookUrl appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/meta/network-origins/2026-09/ip-ranges/webhook-subscriptions/{appId}/{subscription-id}'].delete update: x-apievangelist-phrasing: intent: Unsubscribe from IP range change notifications effect: destructive questions: - Can I stop IP range change webhooks for my app? - How do I remove a network origin subscription? instructions: - text: Delete IP range subscription {subscriptionId} for app {appId}. slots: subscriptionId: path.subscription-id appId: path.appId - text: Stop network range notifications {subscriptionId} on app {appId}. slots: subscriptionId: path.subscription-id appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/scheduler/2026-03/meetings/meeting-links'].get update: x-apievangelist-phrasing: intent: List meeting scheduling links effect: read questions: - What meeting booking links do we have? - Can I list meeting links owned by one organizer? instructions: - text: List meeting scheduling links. - text: Show meeting links organized by user {organizerUserId}. slots: organizerUserId: query.organizerUserId method: generated generated: '2026-09-24' - target: $.paths['/scheduler/2026-03/meetings/meeting-links/book/availability-page/{slug}'].get update: x-apievangelist-phrasing: intent: Check open slots on a meeting link effect: read questions: - When is someone free to book on their meeting link? - Can I see next month's availability for a booking page? instructions: - text: Show availability for meeting link {slug} in {timezone}. slots: slug: path.slug timezone: query.timezone - text: Check open times on {slug} ({timezone}) {monthOffset} months ahead. slots: slug: path.slug timezone: query.timezone monthOffset: query.monthOffset method: generated generated: '2026-09-24' - target: $.paths['/scheduler/2026-03/meetings/meeting-links/book/{slug}'].get update: x-apievangelist-phrasing: intent: Get booking info for a meeting link effect: read questions: - What settings apply when someone books through a meeting link? - Can I get a booking page's details for a given timezone? instructions: - text: Get booking info for meeting link {slug} in {timezone}. slots: slug: path.slug timezone: query.timezone - text: Show the booking setup of {slug} for timezone {timezone}. slots: slug: path.slug timezone: query.timezone method: generated generated: '2026-09-24' - target: $.paths['/settings/currencies/2026-09/codes'].get update: x-apievangelist-phrasing: intent: List supported currency codes effect: read questions: - Which currency codes can I use in my account? - Is a given currency supported? instructions: - text: List all supported currency codes. - text: Show every currency code available for the account. method: generated generated: '2026-09-24' - target: $.paths['/settings/currencies/2026-09/company-currency'].get update: x-apievangelist-phrasing: intent: Get the company currency effect: read questions: - What's my account's company currency? - Which currency are my deal amounts reported in by default? instructions: - text: Show the company currency. - text: Tell me the account's default currency. method: generated generated: '2026-09-24' - target: $.paths['/settings/currencies/2026-09/company-currency'].put update: x-apievangelist-phrasing: intent: Set the company currency effect: write questions: - Can I change my account's company currency? - How do I set the default currency for reporting? instructions: - text: Set the company currency to {currencyCode}. slots: currencyCode: requestBody.currencyCode - text: Change our default company currency to {currencyCode}. slots: currencyCode: requestBody.currencyCode method: generated generated: '2026-09-24' - target: $.paths['/tax-rates/2026-09/tax-rates'].get update: x-apievangelist-phrasing: intent: List tax rates effect: read questions: - What tax rates are configured in my account? - Can I list only active tax rates? instructions: - text: List all tax rates. - text: Show active tax rates ({active}). slots: active: query.active method: generated generated: '2026-09-24' - target: $.paths['/tax-rates/2026-09/tax-rates/{taxRateGroupId}'].get update: x-apievangelist-phrasing: intent: Get a tax rate group effect: read questions: - Can I look up one tax rate group? - What percentage does a specific tax rate apply? instructions: - text: Show tax rate group {taxRateGroupId}. slots: taxRateGroupId: path.taxRateGroupId - text: Get the percentage of tax rate {taxRateGroupId}. slots: taxRateGroupId: path.taxRateGroupId method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09'].get update: x-apievangelist-phrasing: intent: List teams effect: read questions: - What teams are set up in my account? - Can I page through all user teams? instructions: - text: List all teams. - text: Show {limit} teams at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09'].post update: x-apievangelist-phrasing: intent: Create a team effect: write questions: - How do I create a new team of users? - Can I nest a new team under a parent team? instructions: - text: Create team {name} with members {members}. slots: name: requestBody.name members: requestBody.members - text: Create child team {name} under {parentTeamId} with members {members}. slots: name: requestBody.name parentTeamId: requestBody.parentTeamId members: requestBody.members method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}'].get update: x-apievangelist-phrasing: intent: Get a team effect: read questions: - Can I look up one team and its details? - Which parent team does a specific team belong to? instructions: - text: Show team {teamId}. slots: teamId: path.teamId - text: Get the details of team {teamId}. slots: teamId: path.teamId method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}'].delete update: x-apievangelist-phrasing: intent: Delete a team effect: destructive questions: - Can I delete a team? - What happens to members when their team is deleted? instructions: - text: Delete team {teamId}. slots: teamId: path.teamId - text: Remove team {teamId} from the account. slots: teamId: path.teamId method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}'].patch update: x-apievangelist-phrasing: intent: Rename or move a team effect: write questions: - Can I rename a team? - How do I move a team under a different parent team? instructions: - text: Rename team {teamId} to {name} under parent {parentTeamId}. slots: teamId: path.teamId name: requestBody.name parentTeamId: requestBody.parentTeamId - text: Move team {teamId} ({name}) beneath parent team {parentTeamId}. slots: teamId: path.teamId name: requestBody.name parentTeamId: requestBody.parentTeamId method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}/members'].get update: x-apievangelist-phrasing: intent: List a team's members effect: read questions: - Who is on a particular team? - Can I page through the members of a team? instructions: - text: List members of team {teamId}. slots: teamId: path.teamId - text: Show {limit} members of team {teamId}. slots: limit: query.limit teamId: path.teamId method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}/members'].post update: x-apievangelist-phrasing: intent: Add a user to a team effect: write questions: - How do I add a user to a team? - Can I add someone as a secondary team member? instructions: - text: Add user {userId} to team {teamId} as {type}. slots: userId: requestBody.userId teamId: path.teamId type: requestBody.type - text: Put {userId} on team {teamId} with membership type {type}. slots: userId: requestBody.userId teamId: path.teamId type: requestBody.type method: generated generated: '2026-09-24' - target: $.paths['/settings/teams/2026-09/{teamId}/members/{userId}'].delete update: x-apievangelist-phrasing: intent: Remove a user from a team effect: destructive questions: - Can I take a user off a team? - How do I remove a secondary team membership? instructions: - text: Remove user {userId} from team {teamId}. slots: userId: path.userId teamId: path.teamId - text: Drop {userId} from team {teamId} as a {type} member. slots: userId: path.userId teamId: path.teamId type: query.type method: generated generated: '2026-09-24' - target: $.paths['/settings/users/2026-03'].get update: x-apievangelist-phrasing: intent: List account users effect: read questions: - Who has a login to our HubSpot account? - Can I page through all users in the account? instructions: - text: List all users in the account. - text: Show {limit} account users at a time. slots: limit: query.limit method: generated generated: '2026-09-24' - target: $.paths['/settings/users/2026-03'].post update: x-apievangelist-phrasing: intent: Invite a new user to the account effect: write questions: - How do I add a new user to our account? - Can I assign a role and team when inviting someone? instructions: - text: Add user {email} and send a welcome email ({sendWelcomeEmail}). slots: email: requestBody.email sendWelcomeEmail: requestBody.sendWelcomeEmail - text: Invite {email} with role {roleId} on team {primaryTeamId}, welcome email {sendWelcomeEmail}. slots: email: requestBody.email roleId: requestBody.roleId primaryTeamId: requestBody.primaryTeamId sendWelcomeEmail: requestBody.sendWelcomeEmail method: generated generated: '2026-09-24' - target: $.paths['/public/api/versioning/test/2026-09-beta/widgets'].get update: x-apievangelist-phrasing: intent: List widgets in the versioning test service effect: read questions: - What widgets does the API versioning test service return? - Can I list the sample widgets on the 2026-09 beta test endpoint? instructions: - text: List widgets from the versioning test service. - text: Show the beta test widgets. method: generated generated: '2026-09-24' - target: $.paths['/public/api/versioning/test/2026-09-beta/widgets/{widgetId}'].put update: x-apievangelist-phrasing: intent: Update a widget in the versioning test service effect: write questions: - Can I update a test widget on the beta versioning endpoint? - How do I modify a sample widget by its ID? instructions: - text: Update test widget {widgetId}. slots: widgetId: path.widgetId - text: Modify beta versioning widget {widgetId}. slots: widgetId: path.widgetId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/settings'].get update: x-apievangelist-phrasing: intent: Get an app's webhook settings effect: read questions: - Where does my app receive webhook events? - What throttling is set on my app's webhooks? instructions: - text: Show webhook settings for app {appId}. slots: appId: path.appId - text: Get the webhook target URL for app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/settings'].put update: x-apievangelist-phrasing: intent: Configure an app's webhook target effect: write questions: - How do I set the URL my app's webhooks are delivered to? - Can I limit how many webhook requests are sent at once? instructions: - text: Send app {appId} webhooks to {targetUrl} with throttling {throttling}. slots: appId: path.appId targetUrl: requestBody.targetUrl throttling: requestBody.throttling - text: Set webhook target {targetUrl} and concurrency {throttling} for app {appId}. slots: targetUrl: requestBody.targetUrl throttling: requestBody.throttling appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/settings'].delete update: x-apievangelist-phrasing: intent: Delete an app's webhook settings effect: destructive questions: - Can I stop all webhook delivery for my app? - What happens to subscriptions when webhook settings are deleted? instructions: - text: Delete webhook settings for app {appId}. slots: appId: path.appId - text: Clear the webhook target of app {appId}. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/subscriptions'].get update: x-apievangelist-phrasing: intent: List an app's webhook event subscriptions effect: read questions: - Which events is my app subscribed to? - Can I see all webhook subscriptions for my app? instructions: - text: List event subscriptions for app {appId}. slots: appId: path.appId - text: Show which webhook events app {appId} listens to. slots: appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/subscriptions'].post update: x-apievangelist-phrasing: intent: Subscribe an app to a webhook event effect: write questions: - How do I get a webhook when a contact property changes? - Can I subscribe my app to deal creation events? instructions: - text: Subscribe app {appId} to {eventType} events, active {active}. slots: appId: path.appId eventType: requestBody.eventType active: requestBody.active - text: Watch changes to {propertyName} via {eventType} for app {appId}, active {active}. slots: propertyName: requestBody.propertyName eventType: requestBody.eventType appId: path.appId active: requestBody.active method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/subscriptions/{subscriptionId}'].get update: x-apievangelist-phrasing: intent: Get one webhook event subscription effect: read questions: - Can I look up one of my app's event subscriptions? - Is a particular webhook subscription active? instructions: - text: Show subscription {subscriptionId} for app {appId}. slots: subscriptionId: path.subscriptionId appId: path.appId - text: Check whether event subscription {subscriptionId} on app {appId} is active. slots: subscriptionId: path.subscriptionId appId: path.appId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/subscriptions/{subscriptionId}'].delete update: x-apievangelist-phrasing: intent: Delete a webhook event subscription effect: destructive questions: - Can I unsubscribe my app from an event? - How do I delete one webhook subscription? instructions: - text: Delete subscription {subscriptionId} from app {appId}. slots: subscriptionId: path.subscriptionId appId: path.appId - text: Unsubscribe app {appId} from event subscription {subscriptionId}. slots: appId: path.appId subscriptionId: path.subscriptionId method: generated generated: '2026-09-24' - target: $.paths['/app-webhooks/2026-09/{appId}/subscriptions/{subscriptionId}'].patch update: x-apievangelist-phrasing: intent: Pause or resume a webhook event subscription effect: write questions: - Can I pause a webhook subscription without deleting it? - How do I reactivate a subscription I paused? instructions: - text: Set subscription {subscriptionId} on app {appId} active to {active}. slots: subscriptionId: path.subscriptionId appId: path.appId active: requestBody.active - text: Pause event subscription {subscriptionId} of app {appId} by setting active {active}. slots: subscriptionId: path.subscriptionId appId: path.appId active: requestBody.active method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal-local/2026-09/earliest'].get update: x-apievangelist-phrasing: intent: Get the oldest entry in the local webhook journal effect: read questions: - Where does the local webhook journal start for a portal? - Can I read the earliest local journal entry for one installed account? instructions: - text: Get the earliest local webhook journal entry. - text: Fetch the oldest local journal record for portal {installPortalId}. slots: installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal-local/2026-09/latest'].get update: x-apievangelist-phrasing: intent: Get the newest entries in the local webhook journal effect: read questions: - What are the latest events in the local webhook journal? - Can I read the newest local journal entries for one portal? instructions: - text: Get the latest local webhook journal entries. - text: Fetch the newest local journal records for portal {installPortalId}. slots: installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal-local/2026-09/offset/{offset}/next'].get update: x-apievangelist-phrasing: intent: Read the next batch of the local webhook journal effect: read questions: - How do I page forward through the local webhook journal from an offset? - Can I continue reading local journal entries after a given offset? instructions: - text: Read the next local journal batch after offset {offset}. slots: offset: path.offset - text: Continue the local webhook journal from {offset} for portal {installPortalId}. slots: offset: path.offset installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal-local/2026-09/status/{statusId}'].get update: x-apievangelist-phrasing: intent: Check a local webhook journal status effect: read questions: - Has a local webhook journal job finished processing? - Can I check a local journal status by its ID? instructions: - text: Check local journal status {statusId}. slots: statusId: path.statusId - text: Show progress of local webhook journal job {statusId}. slots: statusId: path.statusId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal/2026-09/earliest'].get update: x-apievangelist-phrasing: intent: Get the oldest entry in the webhook journal effect: read questions: - Where does the main webhook journal begin? - Can I read the earliest entry of the shared webhook journal? instructions: - text: Get the earliest entry in the main webhook journal. - text: Fetch the oldest main journal record for portal {installPortalId}. slots: installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal/2026-09/latest'].get update: x-apievangelist-phrasing: intent: Get the newest entries in the webhook journal effect: read questions: - What just arrived in the main webhook journal? - Can I pull the most recent main journal entries for a portal? instructions: - text: Get the latest entries in the main webhook journal. - text: Fetch the newest main journal records for portal {installPortalId}. slots: installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal/2026-09/offset/{offset}/next'].get update: x-apievangelist-phrasing: intent: Read the next batch of the webhook journal effect: read questions: - How do I page through the main webhook journal from an offset? - Can I resume reading main journal entries after an offset? instructions: - text: Read the next main journal batch after offset {offset}. slots: offset: path.offset - text: Continue the main webhook journal from {offset} for portal {installPortalId}. slots: offset: path.offset installPortalId: query.installPortalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/journal/2026-09/status/{statusId}'].get update: x-apievangelist-phrasing: intent: Check a webhook journal status effect: read questions: - Has a main webhook journal job completed? - Can I look up a main journal status ID? instructions: - text: Check main journal status {statusId}. slots: statusId: path.statusId - text: Show progress of main webhook journal job {statusId}. slots: statusId: path.statusId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09'].get update: x-apievangelist-phrasing: intent: List webhook journal subscriptions effect: read questions: - What webhook journal subscriptions does my app have? - Which events is my app journaling? instructions: - text: List my app's webhook journal subscriptions. - text: Show existing journal subscriptions for this app. method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09'].post update: x-apievangelist-phrasing: intent: Create or update a webhook journal subscription effect: write questions: - How do I choose which events get written to my webhook journal? - Can I upsert a journal subscription instead of creating a new one? instructions: - text: Upsert a webhook journal subscription for the events I need. - text: Create or update my app's journal subscription. method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/filters/subscription/{subscriptionId}'].get update: x-apievangelist-phrasing: intent: List filters on a journal subscription effect: read questions: - What filters are applied to a webhook journal subscription? - Can I see all filters for one subscription? instructions: - text: List filters for journal subscription {subscriptionId}. slots: subscriptionId: path.subscriptionId - text: Show which filters narrow subscription {subscriptionId}. slots: subscriptionId: path.subscriptionId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/filters/{filterId}'].get update: x-apievangelist-phrasing: intent: Get a journal subscription filter effect: read questions: - Can I look up one webhook journal filter? - What conditions does a specific filter use? instructions: - text: Show journal filter {filterId}. slots: filterId: path.filterId - text: Get the conditions of webhook filter {filterId}. slots: filterId: path.filterId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/filters/{filterId}'].delete update: x-apievangelist-phrasing: intent: Delete a journal subscription filter effect: destructive questions: - Can I remove a filter from a journal subscription? - What happens when a webhook journal filter is deleted? instructions: - text: Delete journal filter {filterId}. slots: filterId: path.filterId - text: Remove webhook filter {filterId}. slots: filterId: path.filterId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/portals/{portalId}'].delete update: x-apievangelist-phrasing: intent: Delete a portal's journal subscription effect: destructive questions: - Can I stop journaling webhooks for one customer portal? - How do I delete the journal subscription tied to a portal? instructions: - text: Delete the webhook journal subscription for portal {portalId}. slots: portalId: path.portalId - text: Stop journaling events for account {portalId}. slots: portalId: path.portalId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/{subscriptionId}'].get update: x-apievangelist-phrasing: intent: Get a webhook journal subscription effect: read questions: - Can I look up one webhook journal subscription? - What events does a specific journal subscription cover? instructions: - text: Show journal subscription {subscriptionId}. slots: subscriptionId: path.subscriptionId - text: Get the event types in webhook journal subscription {subscriptionId}. slots: subscriptionId: path.subscriptionId method: generated generated: '2026-09-24' - target: $.paths['/webhooks-journal/subscriptions/2026-09/{subscriptionId}'].delete update: x-apievangelist-phrasing: intent: Delete a webhook journal subscription effect: destructive questions: - Can I delete a journal subscription by its ID? - Is removing a webhook journal subscription permanent? instructions: - text: Delete journal subscription {subscriptionId}. slots: subscriptionId: path.subscriptionId - text: Remove webhook journal subscription {subscriptionId} by ID. slots: subscriptionId: path.subscriptionId method: generated generated: '2026-09-24'