GatewayAPI REST API
Read the complete documentation for our REST API, Email to/from SMS, Kannel API, SMPP and HLR-lookup.
Read the complete documentation for our REST API, Email to/from SMS, Kannel API, SMPP and HLR-lookup.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/gatewayapi:gatewayapi-rest-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: GatewayAPI Rest API
version: '2026-10-27'
description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-27: 17 operation(s) read from 13 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; GatewayAPI has published no machine-readable contract that the pipeline could find. Engine: local.'
x-evidence-tiers:
code-example: 1
documentation: 16
pages-with-code: 1
pages-read: 13
x-generated-from: documentation
x-provenance: generated
x-authored-by: API Evangelist
x-generated: '2026-10-27'
x-generator: generate-contract-from-docs.py
x-engine: local
x-sources:
- https://gatewayapi.com/docs/apis/rest
- https://gatewayapi.com/docs/apis/email
- https://gatewayapi.com/docs/apis/legacy/rest
- https://gatewayapi.com/docs/apis/simple
- https://gatewayapi.com/docs/apis/keywords
- https://gatewayapi.com/docs/apis/statistics
- https://gatewayapi.com/docs/apis/legacy/simple
- https://gatewayapi.com/docs/apis/authentication
- https://gatewayapi.com/docs/apis/prices-balance
- https://gatewayapi.com/docs/apis/legacy/authentication
- https://gatewayapi.com/docs/message/overview
- https://gatewayapi.com/docs/message/migration
- https://gatewayapi.com
servers:
- url: https://messaging.gatewayapi.com
security:
- Basic: []
- Legacy_query_credentials: []
tags:
- name: Rest
paths:
/rest/email:
post:
operationId: post_rest_email
tags:
- Rest
summary: You can send emails through GatewayAPI using our email endpoint
x-source: https://gatewayapi.com/docs/apis/email
requestBody:
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestEmailRequest'
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestEmailResponse'
x-evidence:
kind: documentation
/rest/hlr:
post:
operationId: post_rest_hlr
tags:
- Rest
summary: HLR and Number lookup
x-source: https://gatewayapi.com/docs/apis/rest
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestHlrRequest'
responses:
'201':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestHlrResponse'
x-evidence:
kind: documentation
/rest/me:
get:
operationId: get_rest_me
tags:
- Rest
summary: You can use the /me endpoint to check your account balance, and what currency…
x-source: https://gatewayapi.com/docs/apis/prices-balance
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/GetRestMeResponse'
x-evidence:
kind: documentation
/rest/mtsms:
get:
operationId: get_rest_mtsms
tags:
- Rest
summary: Get SMS and SMS status
x-source: https://gatewayapi.com/docs/apis/rest
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/GetRestMtsmsResponse'
x-evidence:
kind: documentation
post:
operationId: post_rest_mtsms
tags:
- Rest
summary: Sending SMS Messages
x-source: https://gatewayapi.com/docs/apis/rest
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestMtsmsRequest'
responses:
'201':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/PostRestMtsmsResponse'
x-evidence:
kind: documentation
/rest/mtsms/{id{int}}:
delete:
operationId: delete_rest_mtsms_id_int
tags:
- Rest
summary: Delete scheduled SMS
x-source: https://gatewayapi.com/docs/apis/rest
parameters:
- name: id{int
in: path
required: true
schema:
type: string
- name: int
in: path
required: true
schema:
type: string
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteRestMtsmsIdIntResponse'
x-evidence:
kind: documentation
/rest/mtsms/{message_id{int}}:
get:
operationId: get_rest_mtsms_message_id_int
tags:
- Rest
summary: Get SMS and SMS status
x-source: https://gatewayapi.com/docs/apis/rest
parameters:
- name: message_id{int
in: path
required: true
schema:
type: string
- name: int
in: path
required: true
schema:
type: string
responses:
'200':
description: Success (status as documented)
content:
application/json:
schema:
$ref: '#/components/schemas/GetRestMtsmsMessageIdIntResponse'
x-evidence:
kind: documentation
components:
schemas:
PostRestHlrRequest:
type: object
properties:
msisdns:
type: array
description: List of numbers to look up
required:
- msisdns
PostRestMtsmsResponse:
type: object
properties:
ids:
type: array
description: List of message IDs
usage:
type: object
description: Usage information for the request
'200':
type: string
description: Returns an object with an array of message IDs and usage information on success
'400':
type: string
description: Invalid arguments
'401':
type: string
description: Invalid API key or signature
'403':
type: string
description: Unauthorized IP address
'422':
type: string
description: Invalid JSON request body
'500':
type: string
description: Internal Server Error
PostRestEmailResponse:
type: object
properties:
ids:
type: array
description: Array of message IDs
usage:
type: object
description: Object with usage information
DeleteRestMtsmsIdIntResponse:
type: object
properties:
'204':
type: string
description: Successful response
'400':
type: string
description: Invalid arguments
'401':
type: string
description: Invalid API key or signature
'403':
type: string
description: Unauthorized IP address
'404':
type: string
description: SMS not found or not yet transferred to storage
'410':
type: string
description: Message already gone
'422':
type: string
description: Invalid JSON request body
'500':
type: string
description: Internal Server Error
GetRestMtsmsResponse:
type: object
properties:
'200':
type: string
description: Returns an object that represents the SMS on success
'400':
type: string
description: Invalid arguments
'401':
type: string
description: Invalid API key or signature
'403':
type: string
description: Unauthorized IP address
'422':
type: string
description: Invalid JSON request body
'500':
type: string
description: Internal Server Error
GetRestMeResponse:
type: object
properties:
credit:
type: string
description: The remaining credit.
currency:
type: string
description: The currency of your credit.
id:
type: integer
description: The ID of your account.
PostRestHlrResponse:
type: object
properties:
currency:
type: string
description: Currency of the cost
hlr:
type: object
description: Lookup results per number
lookups:
type: integer
description: Number of lookups performed
total_cost:
type: number
description: Total cost of the request
'200':
type: string
description: Returns an object with information for each number
'400':
type: string
description: Invalid arguments
'401':
type: string
description: Invalid API key or signature
'403':
type: string
description: Unauthorized IP address or account not authorized
'422':
type: string
description: Invalid JSON request body
'500':
type: string
description: Internal Server Error
PostRestEmailRequest:
type: object
properties:
html:
type: string
description: The html content of the email
plaintext:
type: string
description: The plain text content of the email
subject:
type: string
description: The subject line of the email, tags can be used like in the message to personalize the subject
from:
type: string
description: The name and email of the sender, can be just the email if no name is specified, see below for format
reply:
type: string
description: The name and email of the sender, can be just the email if no name is specified, see below for format
callback_url:
type: string
description: Callback URL to get status reports
userref:
type: string
description: Add your own custom reference to be passed back to the provided callback URL
tags:
type: array
description: A list of string tags, which will be replaced with the tag values for each recipient, if used remember to also add tagvalues to all recipients
recipients:
type: array
description: List of email addresses to receive the email
attachments:
type: array
description: A list of base64 encoded files to be attached to the email
GetRestMtsmsMessageIdIntResponse:
type: object
properties:
'200':
type: string
description: Returns an object that represents the SMS on success
'400':
type: string
description: Invalid arguments
'401':
type: string
description: Invalid API key or signature
'403':
type: string
description: Unauthorized IP address
'422':
type: string
description: Invalid JSON request body
'500':
type: string
description: Internal Server Error
PostRestMtsmsRequest:
type: object
properties:
class:
type: string
description: Message class, default “standard”
message:
type: string
description: The content of the SMS
sender:
type: string
description: Up to 11 alphanumeric characters, or 15 digits
userref:
type: string
description: Opaque string reference
callback_url:
type: string
description: URL for status notifications
recipients:
type: array
description: Array of recipient objects
recipients[].msisdn:
type: integer
description: Full mobile phone number of the recipient
required:
- message
- recipients
- recipients[].msisdn
securitySchemes:
Basic:
type: http
scheme: basic
x-source: https://gatewayapi.com/docs/authentication/
Legacy_query_credentials:
type: apiKey
in: query
name: Authorization
x-source: https://gatewayapi.com/docs/authentication/