Vendasta · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for CRM Service API

7 actions 7 updates phrasing extends openapi/vendasta-crmservice-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Vendasta's API. It is a proposal applied on top of the contract, not a document Vendasta publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/v1/crm/contact/create'].post
$.paths['/v1/crm/contact/delete'].post
$.paths['/v1/crm/contact/field-options'].post
$.paths['/v1/crm/contact/get-multi'].post
$.paths['/v1/crm/contact/list'].post
$.paths['/v1/crm/contact/update'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for CRM Service API
  version: 1.0.0
extends: openapi/vendasta-crmservice-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 6
- target: $.paths['/v1/crm/contact/create'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a CRM contact
      effect: write
      questions:
      - How do I add a new contact to the CRM?
      - Can I create a contact with custom field values in one request?
      instructions:
      - text: Create contact {contact} in {namespace}.
        slots:
          contact: requestBody.crmObject
          namespace: requestBody.namespace
      - text: 'Add a new person to the CRM in {namespace} with these details: {contact}.'
        slots:
          namespace: requestBody.namespace
          contact: requestBody.crmObject
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/crm/contact/delete'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete a CRM contact
      effect: destructive
      questions:
      - Can I delete a contact from the CRM by its ID?
      - What do I need to remove a contact?
      instructions:
      - text: Delete contact {contact_id} in {namespace}.
        slots:
          contact_id: requestBody.crmObjectId
          namespace: requestBody.namespace
      - text: Remove contact {contact_id} from the CRM.
        slots:
          contact_id: requestBody.crmObjectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/crm/contact/field-options'].post
  update:
    x-apievangelist-phrasing:
      intent: List options for a contact field
      effect: read
      questions:
      - What values are allowed for a picklist field on contacts?
      - Can I search one contact field's options?
      instructions:
      - text: List options for contact field {field} in {namespace}.
        slots:
          field: requestBody.fieldId
          namespace: requestBody.namespace
      - text: Search contact field {field} options for {term}.
        slots:
          field: requestBody.fieldId
          term: requestBody.searchTerm
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/crm/contact/get-multi'].post
  update:
    x-apievangelist-phrasing:
      intent: Fetch several contacts by ID
      effect: read
      questions:
      - Can I retrieve a batch of contacts when I already have their IDs?
      - Is it possible to return only some fields when fetching contacts by ID?
      instructions:
      - text: Get contacts {ids} from {namespace}.
        slots:
          ids: requestBody.crmObjectIds
          namespace: requestBody.namespace
      - text: Fetch contacts {ids} with only fields {mask}.
        slots:
          ids: requestBody.crmObjectIds
          mask: requestBody.fieldMask
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/crm/contact/list'].post
  update:
    x-apievangelist-phrasing:
      intent: List and search CRM contacts
      effect: read
      questions:
      - Which contacts are in my CRM?
      - Can I search contacts by name and sort the results?
      instructions:
      - text: List contacts in {namespace}.
        slots:
          namespace: requestBody.namespace
      - text: Search contacts in {namespace} for {search}.
        slots:
          namespace: requestBody.namespace
          search: requestBody.search
      - text: List contacts in {namespace} sorted by {sort}.
        slots:
          namespace: requestBody.namespace
          sort: requestBody.sortBy
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/crm/contact/update'].post
  update:
    x-apievangelist-phrasing:
      intent: Update a CRM contact
      effect: write
      questions:
      - Can I change a contact's phone number or email?
      - How does the field mask limit what a contact update changes?
      instructions:
      - text: Update contact {contact} in {namespace}.
        slots:
          contact: requestBody.crmObject
          namespace: requestBody.namespace
      - text: Change only fields {mask} on contact {contact}.
        slots:
          mask: requestBody.fieldMask
          contact: requestBody.crmObject
      method: generated
      generated: '2026-10-01'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/vendasta-crmservice-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.