Message2Give Logo
Message2Give DocsVersion 1.2.8

Getting Started

Welcome to the Message2Give API Documentation

The Message2Give API has a wide-range of functionalities that enable you to efficiently communicate with a large audience through many communication mediums, automatically, all at once.

Getting Started

There are a few things you need to know before getting started with Message2Give's APIs.

  • Most requests you make will require authentication. See the Authentication page for more info.

  • The base URL for each endpoint is https://api.app.message2give.com/2019-01-23

  • A request will fail if it does not have all required information.

  • GET requests will require you to specify some paramaters in the URL. Parameters will be enclosed in curly braces: {example}.

    • Path paramaters are a part of the endpoint URL. They are always required.

    • Query paramaters are appended to the end of the endpoint URL to specify the nature of the request. They always follow a question mark (?). Some are required. A required query parameter will be indicated with an asterisk (*).

    • For api.url/{target_id}/message?limit={limit} -> target_id is a path parameter, and limit is a query parameter.

    • The purpose of each parameter will be explained in each request.

    • The {workspace_id} parameter can be replaced with self. The request will identify your workspace automatically using the authentication details of the request.

  • POST requests will require you to specify the body content of your request.

    • The body is comprised of various properties that modify the functionality of the request.

    • Some properties are required in a request. These required properties will be indicated by an asterisk (*).

    • The functionality of each property will be explained in each request.

    • When using a request body, you will need to include content-type: application/json in the header of the request. This tells the program to interpret your body as JSON.

  • The API is directly linked with the Portal. Any modifications made in your workspace using the API (create a campaign, create a template etc.) will appear in the UI for your workspace as well.

  • "workspace" and "organisation" are interchangeable terms.

Valid Message2Give Contact

Some endpoints will ask for a "Valid Message2Give Contact". These are all the destinations that Message2Give can use in their APIs. This includes:

  • E.164 formatted phone number ("61400000000") (Phone)

  • Alpha-numeric sender ID ("Test Messenger") (Phone)

  • Email Address ("abc@example.com") (Email)

If the contact is the sender of the message, it must be registered with Message2Give before they can be used in the APIs. Learn more about registering these contacts with Message2Give on the Channels page of the Portal. Specifically, look at "Domains" and "Email" for emails, and "Sender IDs" and "Virtual Numbers" for phone contacts.

Learn more about approving your Sender IDs with an API in the Config section of the API docs.

Global Response Code Guidelines

The Message2Give API responds with standard HTTP response codes according to the status of the response.

StatusNameDescription
200OKIndicates that the request has succeeded.
201CreatedIndicates that the request has succeeded and a new resource has been created as a result.
400Bad RequestIndicates that the request has not succeeded because it was invalid. For example, required values were missing or values failed validation.
401UnauthorizedIndicates that the request has not succeeded because credentials are invalid.
403ForbiddenIndicates that the request has not succeeded because authenticated entity is not allowed to perform the request.
404Not FoundIndicates that the request has not succeeded because the requested resource does not exist.
409ConflictIndicates that the request has not succeeded because the supplied values conflicted with existing resources.
429Too Many RequestsIndicates that the request has not succeeded because the account has had too many requests.
500Internal Server ErrorIndicates that the request has not succeeded because there was an unexpected server error.
503Service UnavailableIndicates that the request has not succeeded because there has been a temporary server error.

How is this guide?

On this page