Group Subscribers
Learn how to create and update groups of subscribers, useful for targeted messaging.
Organizing subscribers into different groups enables you to easily send targeted messages to specific segments. With Mobile Text Alerts, you can add, edit, and remove groups and subscribers via the online dashboard or with the Mobile Text Alerts API, making it easy to keep your contact lists updated.

Manage Groups with the API
The Mobile Text Alerts API allows you to create a group, delete a group, update an existing group's metadata, or view all groups for your account.
Note that these actions are used to make changes to the group itself, not the subscribers that may be contained within the group. See Manage Group Members to see actions for adding/removing subscribers from your groups.
Click here to view the full API Reference for Groups.
Create a new Group
A POST call to the /groups endpoint creates a new group. See below for all additional request fields for group metadata.
Example request
Successful response: "message": "Created group Example."
Request Fields
name - required
string
The name of the group.
hidden
boolean
Indicates if the group is hidden.
description
string
Description of the group.
displayName
string
An alternate display name for this group
sortOrder
number
Override default sorting when displaying this group on the subscriber sign up page
isTemporary
boolean
When set to true, this group is marked as temporary. Temporary groups are deleted at midnight of the day following their creation.
createdAt
string
Timestamp of when the group was created. For example: "2025-05-29T19:04:14.000Z"
settings
object
This field is only used for Adaptive Groups. See Configure settings field for a group to learn more about this field.
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
POST /v3/groups HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 101
{
"name": "text",
"hidden": 1,
"displayName": "text",
"sortOrder": 1,
"description": "text",
"isTemporary": true
}{
"success": true,
"error": "text",
"message": "text",
"data": {
"id": 1,
"name": "text",
"hidden": 1,
"welcomeMessage": "text",
"description": "text",
"parentWebinarId": "text",
"displayName": "text",
"sortOrder": 1,
"type": "static",
"settings": {
"match": "AND",
"conditions": [
{
"type": "text",
"conditionAttribute": "text",
"conditionOperator": "equals",
"conditionCategory": "text",
"conditionValue": [
"text"
],
"conditionSubOperator": "equals",
"conditionSubValue": [
"text"
],
"shouldLoadDefaultValue": true
}
]
},
"isTemporary": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"memberCount": 1
}
}Delete Group
Groups can be deleted without needing to supply a request body. Simply include the {groupId} of the group to be deleted as a path parameter with your DELETE request.
Example Request
In the example below, we delete groupId: 187561.
Successful Response: {"message":"Group deleted successfully."}
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
DELETE /v3/groups/{groupId} HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"error": "text",
"message": "text",
"data": null
}Update Groups
The fields that contain group metadata can be added or updated at any time by calling the PATCH /groups/{groupId} endpoint with the identifying {groupId} of the group to be updated. See below for all optional request fields that contain group metadata.
Example Request
In the example below, we update groupId: 187561.
Successful response: "message": "Updated group New Name."
Request Fields
name - required
string
The name of the group.
hidden
boolean
Indicates if the group is hidden.
description
string
Description of the group.
displayName
string
An alternate display name for this group
sortOrder
number
Override default sorting when displaying this group on the subscriber sign up page
isTemporary
boolean
When set to true, this group is marked as temporary. Temporary groups are deleted at midnight of the day following their creation.
createdAt
string
Timestamp of when the group was created. For example: "2025-05-29T19:04:14.000Z"
settings
object
This field is only used for Adaptive Groups. See Configure settings field for a group to learn more about this field.
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
PATCH /v3/groups/{groupId} HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 101
{
"name": "text",
"hidden": 1,
"displayName": "text",
"sortOrder": 1,
"description": "text",
"isTemporary": true
}{
"success": true,
"error": "text",
"message": "text",
"data": {
"id": 1,
"name": "text",
"hidden": 1,
"welcomeMessage": "text",
"description": "text",
"parentWebinarId": "text",
"displayName": "text",
"sortOrder": 1,
"type": "static",
"settings": {
"match": "AND",
"conditions": [
{
"type": "text",
"conditionAttribute": "text",
"conditionOperator": "equals",
"conditionCategory": "text",
"conditionValue": [
"text"
],
"conditionSubOperator": "equals",
"conditionSubValue": [
"text"
],
"shouldLoadDefaultValue": true
}
]
},
"isTemporary": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"memberCount": 1
}
}List All Groups
Call the GET /groups endpoint to see the groups on your account.
This endpoint does not show adaptive groups by default, see List Adaptive Groups to learn more.
Query responses include the following data:
page- the current page of results being shownpageSize- number of groups shown per pagetotal- the total number of groups on your account
Example Request
Successful response:
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
GET /v3/groups HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"error": "text",
"message": "text",
"data": {
"rows": [
{
"id": 1,
"name": "text",
"hidden": 1,
"welcomeMessage": "text",
"description": "text",
"parentWebinarId": "text",
"displayName": "text",
"sortOrder": 1,
"type": "static",
"settings": {
"match": "AND",
"conditions": [
{
"type": "text",
"conditionAttribute": "text",
"conditionOperator": "equals",
"conditionCategory": "text",
"conditionValue": [
"text"
],
"conditionSubOperator": "equals",
"conditionSubValue": [
"text"
],
"shouldLoadDefaultValue": true
}
]
},
"isTemporary": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"memberCount": 1
}
],
"page": 1,
"pageSize": 1,
"total": 1
}
}Manage Group Members
Subscribers can be added or deleted from your groups with the API endpoints documented below.
Add Subscriber to Group
To add a subscriber to a group, you need both the subscriberId and the groupId. The subscriberId is passed in the request body, and the groupId is specified as a path parameter.
Example request:
In the example below, we add subscriberId: 108767117 to groupId: 187561.
Successful response: {"message":"Added subscriber 108767117 to group 187561."}
Required Fields: subscriberId
Note: Field addToDripCampaigns is true by default.
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
POST /v3/groups/{groupId}/subscribers HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 44
{
"subscriberId": 1,
"addToDripCampaigns": true
}{
"success": true,
"error": "text",
"message": "text",
"data": null
}Delete Group Member
Subscribers can be removed from a group by identifying them with the groupId and subscriberId in the path parameters to the DELETE /groups/{groupId}/subscribers/{subscriberId} endpoint.
Example request
In the example below, we delete subscriberId: 108767117 from groupId: 187561.
Successful Response: {"message":"Deleted subscriber 108767117 from group 187561."}
Success
BadRequestError
UnauthorizedError
ForbiddenError
InternalServerError
DELETE /v3/groups/{groupId}/subscribers/{subscriberId} HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"error": "text",
"message": "text",
"data": null
}Last updated
Was this helpful?