Pushwoosh Messages API
The Messages API from Pushwoosh — 4 operation(s) for messages.
The Messages API from Pushwoosh — 4 operation(s) for messages.
openapi: 3.1.0
info:
title: Pushwoosh Messaging Messages API
version: '1.3'
description: 'Pushwoosh is a customer engagement platform offering push notifications,
in-app messaging, email, SMS, and Live Activities for mobile and web.
The Messaging API (v1.3) exposes JSON-RPC-style endpoints for creating
and managing messages, targeted campaigns, and message details.
Authentication is performed by including the `auth` field (API access
token from the Pushwoosh Control Panel) in the JSON request body.
'
contact:
name: Pushwoosh
url: https://www.pushwoosh.com/
servers:
- url: https://api.pushwoosh.com/json/1.3
description: Pushwoosh JSON Messaging API
tags:
- name: Messages
paths:
/createMessage:
post:
tags:
- Messages
summary: Create a message (deprecated, use createTargetedMessage or Messaging API v2)
operationId: createMessage
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- request
properties:
request:
type: object
required:
- auth
- application
- notifications
properties:
auth:
type: string
description: API access token.
application:
type: string
description: Pushwoosh application code.
notifications:
type: array
items:
$ref: '#/components/schemas/Notification'
responses:
'200':
description: Standard JSON response envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/StandardResponse'
/createTargetedMessage:
post:
tags:
- Messages
summary: Create a targeted message
operationId: createTargetedMessage
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- request
properties:
request:
type: object
required:
- auth
- devices_filter
- send_date
- content
properties:
auth:
type: string
description: API access token.
devices_filter:
type: string
description: 'Targeting filter expression. Combines app selectors
(`A("APP-CODE")`) and tag predicates (`T("Tag", EQ,
"value")`) using boolean operators.
'
send_date:
type: string
description: '`now` or `YYYY-MM-DD HH:mm`.'
content:
oneOf:
- type: string
- type: object
additionalProperties:
type: string
description: Notification text or locale map of texts.
ios_title:
type: string
android_header:
type: string
page_id:
type: integer
data:
type: object
additionalProperties: true
responses:
'200':
description: Standard JSON response envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/StandardResponse'
/deleteMessage:
post:
tags:
- Messages
summary: Delete a queued message
operationId: deleteMessage
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- request
properties:
request:
type: object
required:
- auth
- message
properties:
auth:
type: string
message:
type: string
description: Message code returned by createMessage.
responses:
'200':
description: Standard JSON response envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/StandardResponse'
/getMessageDetails:
post:
tags:
- Messages
summary: Retrieve message details
operationId: getMessageDetails
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- request
properties:
request:
type: object
required:
- auth
- message
properties:
auth:
type: string
message:
type: string
description: Message code or message ID.
responses:
'200':
description: Standard JSON response envelope with message metadata.
content:
application/json:
schema:
$ref: '#/components/schemas/StandardResponse'
components:
schemas:
Notification:
type: object
description: Single notification payload inside createMessage.notifications.
additionalProperties: true
properties:
send_date:
type: string
description: '`now` or `YYYY-MM-DD HH:mm`.'
content:
oneOf:
- type: string
- type: object
additionalProperties:
type: string
devices:
type: array
maxItems: 1000
items:
type: string
users:
type: array
maxItems: 1000
items:
type: string
filter:
type: string
description: Named filter to apply.
conditions:
type: array
items:
type: array
description: '`[TagName, Operator, Value]` tuple (operators include EQ, IN, BETWEEN, NOTEQ, GTE, LTE, NOTSET, ANY).'
data:
type: object
additionalProperties: true
ios_title:
type: string
android_header:
type: string
page_id:
type: integer
StandardResponse:
type: object
description: Standard Pushwoosh response envelope.
properties:
status_code:
type: integer
description: 200 success, 210 argument error, 400 malformed, 500 internal error.
status_message:
type: string
response:
type: object
additionalProperties: true
externalDocs:
description: Pushwoosh platform API reference
url: https://docs.pushwoosh.com/platform-docs/api-reference