Vendasta Messages API

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

Business capability
Digital Marketing Management BC-400.60

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 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.

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 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: `Trusted Tester`


        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