Vendasta Messages API

The Messages API from Vendasta — 1 operation(s) for messages.

Operations 3

OPTIONS /messages List valid HTTP verbs for /messages #
GET /messages List Social Messages #
POST /messages Schedule Message #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/vendasta-messages-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no email required.

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

OpenAPI Specification

vendasta-messages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Social Messages API
  version: Evergreen
  description: These APIs allow users to use Vendasta's social capabilities. All the endpoints require either the `social` or `business` scopes to be accessed.
servers:
- url: https://prod.apigateway.co/products/social
  description: Production
- url: https://demo.apigateway.co/products/social
  description: Demo
- url: http://localhost:3000/products/social
  description: Local
- description: Localhost
  url: '{local}/products/social'
security:
- OAuth2Demo:
  - business
  - social
- OAuth2Prod:
  - business
  - social
tags:
- name: Messages
paths:
  /messages:
    options:
      summary: List valid HTTP verbs for /messages
      operationId: options-messages
      description: 'Used solely for [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) the OPTIONS request returns the list of possible HTTP methods and other headers that browsers use to protect user''s security. You should not call this operation directly. '
      responses:
        '204':
          description: No Content
      tags:
      - Messages
      x-lifecycle:
        status: trustedTester
    get:
      summary: List Social Messages
      operationId: get-messages
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/messages'
                  links:
                    type: object
                    properties:
                      self:
                        type: string
                        format: uri
                      first:
                        type: string
                        format: uri
                        description: Provides a link back to the first page of results.
                      next:
                        type: string
                        format: uri
                        description: The URI at which the next page of results can be gotten from.
      description: "[Status](https://developers.vendasta.com/platform/ZG9jOjEwMTU2NTYy-versioning): `Trusted Tester`\n\n An endpoint dedicated to listing all the posts made by the business filtered by the selected parameters."
      parameters:
      - schema:
          type: string
          example: AG-12345
        in: query
        name: filter[businessLocation.id]
        description: Returns all the posts for a business.
      - schema:
          type: string
        in: query
        name: page[cursor]
        description: The cursor stores all your filters and current location in the list to allow paging over the results in smaller batches. The value will be provided in the response links.
      - schema:
          type: integer
          example: 20
          default: 25
        in: query
        name: page[limit]
        description: The maximum number of Social Posts you would like to return.
      - schema:
          type: string
          example: Jd6889Js3,PostGroup1
        in: query
        name: filter[socialProfileExternalIds]
        description: A comma-seperated list filtering messages to profiles with these external identifiers.
      - schema:
          type: string
          example: '2022-02-04T16:52:34.000Z'
        in: query
        name: filter[startAt]
        description: All the messages scheduled to be posted from the timestamp. Times used must be in ISO 8601 format, UTC time.
      - schema:
          type: string
          example: '2022-02-04T16:52:34.000Z'
        in: query
        name: filter[endAt]
        description: All the messaged scheduled to posted at the end of timestamp. Times used must be in ISO 8601 format, UTC time.
      - schema:
          type: string
          example: FBU-839,IGU-762348
        name: filter[socialProfileIds]
        in: query
        description: Comma seperated string representing all the social profile ids from which the posts are to be listed. The list of profile ids can be obtained from /socialProfiles endpoint.
      - schema:
          type: string
        in: query
        name: filter[statuses]
        description: Comma seperated string containing the statuses of the messages to be listed. The statuses can be scheduled, posted or failed.
      tags:
      - Messages
      x-lifecycle:
        status: trustedTester
    post:
      summary: Schedule Message
      operationId: post-messages
      description: Please contact Sales to learn more about the scheduling message API
      tags:
      - Messages
      responses:
        '200':
          description: OK
components:
  schemas:
    messages:
      title: Messages
      type: object
      description: '[Status](https://developers.vendasta.com/platform/ZG9jOjEwMTU2NTYy-versioning): `Trusted Tester`


        A data structure that describes a message you wish to schedule to be posted on a social network.'
      examples: []
      x-tags:
      - Messages
      properties:
        id:
          type: string
          description: A unique identifier assigned to this message. We will automatically assign the Message one on creation.
        type:
          type: string
          default: messages
        attributes:
          type: object
          properties:
            messageText:
              type: string
              description: 'The text of the message you’re making. This text is subject to limitations depending on what service you are posting to, such as Tweet length for Twitter. '
            status:
              type: string
              enum:
              - scheduled
              - posted
              - failed
              description: 'The status of the message will be automatically set to one of the following by the system:


                scheduled: The message has been approved and is scheduled to be sent at the time indicated in `scheduledAt`


                posted: The message was successfully sent to the social profile


                failed: An error occurred when sending the message. You can view the details in the `error` attribute.'
              example: scheduled
              readOnly: true
            media:
              type: array
              description: An array containing the media attached to the post.
              items:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - image
                    - video
                    - gif
                    example: image
                    readOnly: true
                  url:
                    type: string
                    example: https://www.example.com/image.jpg
            postedAt:
              type: string
              format: date-time
              description: 'A string representing the timestamp at which the post was posted.


                Times used must be in ISO 8601 format, UTC time.'
              example: '2022-02-04T16:52:34.000Z'
            scheduledAt:
              type: string
              format: date-time
              description: 'A string representing the timestamp at which the post is scheduled.


                Defaults to 5 minutes after the Message is made, and must be at least 5 minutes after the Message is created.


                Times used must be in ISO 8601 format, UTC time.'
              example: '2022-02-04T16:52:34.000Z'
            errors:
              type: array
              description: An array of error objects.
              readOnly: true
              items:
                type: object
                properties:
                  details:
                    type: string
                    description: The description of the error.
                    example: The post is not valid.
            GMBPostCustomization:
              type: object
              description: "A special data structure that can be passed in to allow for special attached events for messages posted on Google My Business. \n\nYou can add an Event, a Call to Action, or both. If you want an Event, the `title`, `eventStartAt`, and `eventEndAt` fields must all be filled out. If you want a Call To Action, the `CTAType` and `linkUrl` fields must be filled out. `linkUrl` is optional if the CTAType is `callNow`."
              properties:
                title:
                  type: string
                  description: A title for the attached event.
                eventStartAt:
                  type: string
                  description: The time at which the attached event will start.
                eventEndAt:
                  type: string
                  description: The time at which the attached event will end.
                CTAType:
                  type: string
                  enum:
                  - book
                  - order
                  - learnMore
                  - signup
                  - shop
                  - callNow
                  description: An enum for which Call to Action you wish to use.
                linkURL:
                  type: string
                  description: A Url for a link you want to associate with your Call to Action.
          required:
          - messageText
        relationships:
          type: object
          properties:
            socialProfiles:
              type: object
              description: The Social Profiles we’re posting this message under.
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        default: socialProfiles
                        readOnly: true
                      id:
                        type: string
                    required:
                    - type
                    - id
            businessLocation:
              type: object
              description: The location that owns the social profiles that posts will be sent from.
              required:
              - data
              properties:
                data:
                  type: object
                  required:
                  - type
                  - id
                  properties:
                    type:
                      type: string
                      default: businessLocations
                    id:
                      type: string
          required:
          - socialProfiles
          - businessLocation
      required:
      - type
  securitySchemes:
    JWT:
      type: http
      scheme: bearer
      bearerFormat: JWT
    OAuth2Demo:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://sso-api-demo.apigateway.co/oauth2/auth
          tokenUrl: https://sso-api-demo.apigateway.co/oauth2/token
          scopes:
            business: Read-write access to business details
            social: Read-write access to Social AI APIs
    OAuth2Prod:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://sso-api-prod.apigateway.co/oauth2/auth
          tokenUrl: https://sso-api-prod.apigateway.co/oauth2/token
          scopes:
            business: Read-write access to business details
            social: Read-write access to Social AI APIs