# Textmagic MCP connector

The Textmagic connector brings your dedicated numbers, sender IDs, subaccounts, and team users into Claude, ChatGPT, Cursor, and any MCP client through one governed endpoint, so each person works inside their own Textmagic access with every action logged.

Source: https://elaichi.ai/connectors/textmagic/

## Facts

| | |
| --- | --- |
| Application | Textmagic |
| Category | Marketing Automation |
| AI tools | 156 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 156 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Textmagic is connected

- Which Textmagic numbers are unused this month?
- List Textmagic users added since last Monday.
- Show sender settings for our Textmagic support number.

## Connect Textmagic in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Textmagic.
2. Optionally set Share with, then press Connect.
3. Paste a Textmagic API key. One person generates a token in Textmagic and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Textmagic tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Textmagic to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Textmagic to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Textmagic to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Textmagic to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Textmagic tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Textmagic through Elaichi

### Pick a dedicated number for a campaign

Marketing. Ask which Textmagic numbers are available in a given country, choose one, and add it to the account before the campaign goes live. Retire the number afterward without opening Textmagic.

### Set up a branded sender ID

Support. Create a sender ID for the help desk so customers recognize who is texting them, and check the sender settings that apply to it.

### Open a subaccount for a new region

Operations. List the existing Textmagic subaccounts, spot which regions or brands already have one, and create a new subaccount for the team that is launching next.

### Keep team users current in one pass

IT. Review every user on the Textmagic account, update details for several people at once, and clear out old avatars when roles change.

### Check country rules before a send

Compliance. Pull the list of countries Textmagic supports and the current sender settings, so the team knows which sender types are allowed where before anything goes out.

### Review number lookups before outreach

Sales. Bring up the phone number lookups already run in Textmagic, along with timezones, so reps know which numbers are valid and when it is a reasonable hour to reach them.

## Frequently asked questions

### How do I connect Textmagic to Claude?

Connect Textmagic in Elaichi first, which asks for your Textmagic API key, and there is no client ID or secret to generate. Then open Claude, go to Customize, then Connectors, then Add, and paste the endpoint https://api.elaichi.ai/mcp. From that point Claude can work with your Textmagic numbers, sender IDs, subaccounts, and users as you, and short concrete asks tend to get the right result faster than long sentences.

### Does Textmagic work with ChatGPT and Cursor as well as Claude?

Yes. Once Textmagic is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Textmagic once and every client you sign into picks it up.

### What can an AI agent actually do with my Textmagic data?

An agent connected to Textmagic can show which dedicated numbers are available in a country, add or remove a number, create or remove a sender ID, and open or close a subaccount. It can also list the users on the account and update several of them at once, read sender settings, and check the countries, timezones, and phone number lookups already in Textmagic. Everything it does is something you could do yourself in Textmagic, phrased in plain language.

### Does connecting Textmagic give the AI access to every subaccount and user?

No. The agent works with whatever the person who signed in can already see in Textmagic, including only the subaccounts and users their own account covers. Elaichi can narrow that further for a team or a person, but it can never widen it past what Textmagic itself allows that person.

### Can my team share one Textmagic connection?

Yes. One person connects Textmagic in Elaichi and shares the connection with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log names the person who added a number or created a subaccount, not the person who connected the account.

### Can I stop an agent from deleting numbers or subaccounts in Textmagic?

Yes. Restrictions in Elaichi apply per action, so you can allow listing and creating in Textmagic while blocking deletion of numbers, sender IDs, or subaccounts. A blocked action is never shown to Claude, ChatGPT, or any other client, so no prompt can reach it.

### What happens to a Textmagic connection when someone leaves?

Offboarding a person in Elaichi ends their access to Textmagic through every client at once. If they connected a shared Textmagic account, that connection keeps working for everyone else on the team. Disconnecting Textmagic once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client together.

## All 156 Textmagic tools

Every tool below is callable through https://api.elaichi.ai/mcp once Textmagic is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Textmagic pings** (List). Make a simple ping request to TextMagic to verify API connectivity. Returns: userId, ping, utcDateTime.
- **List all Textmagic timezones** (List). List all available TextMagic timezones. Returns: id, name. Pass full=1 to return full info about each timezone.
- **List all Textmagic lookups** (List). Look up carrier and formatting information for a single phone number in Textmagic. Returns: cost, country, local, type, carrier, number164, valid. Numbers must be checked one by one; you cannot check multiple numbers in one request. Required: phone.
- **List all Textmagic countries** (List). List all countries available in TextMagic. Returns: id, name.
- **List all Textmagic users** (List). Get the current TextMagic account information. Returns: id, displayTimeFormat, username, firstName, lastName, email, status, balance, phone, company, currency, country, timezone, subaccountType, emailAccepted, phoneAccepted, avatar. Max 100 per page.
- **Textmagic users bulk update** (Update). Update the current TextMagic account information. Returns: username, firstName, lastName, email, phone, company, timezone. All body fields are optional.
- **Create a Textmagic user avatar** (Create). Upload a user avatar image to TextMagic. The image must be a PNG or JPG file no larger than 10 MB. Returns an empty 201 response on success.
- **Textmagic user avatars bulk delete** (Delete). Delete the current user's avatar in TextMagic. Returns an empty 204 response on success.
- **List all Textmagic sources** (List). List available sender setting options in TextMagic usable as the 'from' parameter when sending messages. Returns: dedicated, user, shared, senderIds, userCarrierTwilio, userCarrierVonage, userCarrierSinch, uCarrierBandwidth, ucTwilioSenderId. Optional: country (2-letter ISO country ID) to filter results by country.
- **Textmagic sender settings bulk update** (Update). Update TextMagic sender settings for a specific country by setting a phone number or sender ID. Returns an empty 204 response on success. Required: value, country.
- **List all Textmagic settings normalizeds** (List). Get current Textmagic sender settings, optionally filtered by destination country. Returns: user, special, other.
- **List all Textmagic numbers availables** (List). List dedicated phone numbers available for purchase in TextMagic, filtered by country and optional number prefix. Returns: phone, country. Tollfree filtering is available for US numbers only. Required: country.
- **List all Textmagic numbers** (List). List all dedicated numbers in your TextMagic account. Returns: id, displayTimeFormat, phone, user, purchasedAt, expireAt, status, country. Filter by survey_id to find numbers ready for a specific survey.
- **Create a Textmagic number** (Create). Buy a dedicated number in TextMagic. First find an available number using the available-numbers endpoint, then purchase it here. Returns an empty 201 response on success. Required: phone, country, userId.
- **Get single Textmagic number by ID** (Get). Get details of a specific dedicated number in TextMagic by id. Returns: id, displayTimeFormat, phone, user, purchasedAt, expireAt, status, country. Required: id.
- **Delete a Textmagic number by ID** (Delete). Cancel a dedicated number subscription in TextMagic by id. Returns an empty 204 response on success. Required: id.
- **List all Textmagic senderids** (List). List all approved Sender IDs in TextMagic. Returns each Sender ID record with id, senderId, status, displayTimeFormat, and the owning user object.
- **Create a Textmagic senderid** (Create). Apply for a new Sender ID in TextMagic. Sender IDs are shared among all sub-accounts and are reviewed by the support team. Returns: id, href. Required: senderId, explanation.
- **Get single Textmagic senderid by ID** (Get). Get a specific Sender ID by id in TextMagic. Returns: id, displayTimeFormat, senderId, user, status. Required: id.
- **Delete a Textmagic senderid by ID** (Delete). Delete a Sender ID in TextMagic by id. Returns an empty 204 response on success. Required: id.
- **List all Textmagic subaccounts** (List). List Textmagic sub-accounts. Returns: id, displayTimeFormat, username, firstName, lastName, email, status, balance, phone, company, currency, country, timezone, subaccountType, emailAccepted, phoneAccepted, avatar. Max 100 per page.
- **Create a Textmagic subaccount** (Create). Invite a new Textmagic sub-account by sending an invitation email to the specified address. Returns an empty 204 response on success. Required: email, role.
- **Get single Textmagic subaccount by ID** (Get). Get a single Textmagic sub-account by id. Returns: id, displayTimeFormat, username, firstName, lastName, email, status, balance, phone, company, currency, country, timezone, subaccountType, emailAccepted, phoneAccepted, avatar. Required: id.
- **Delete a Textmagic subaccount by ID** (Delete). Close (delete) a Textmagic sub-account by id. Returns an empty 204 response on success. Required: id.
- **Create a Textmagic subaccounts token** (Create). Request a new REST API token for a TextMagic sub-account. Returns the user object, key, and app name. Required: userId, password.
- **List all Textmagic tokens lists** (List). List all TextMagic sub-accounts with their REST API tokens associated with a specified app name. Returns: id, appName. When more than one token is related to the app name, the last key is returned. Required: appName, password.
- **List all Textmagic balance bundles** (List). List available balance notification threshold options in TextMagic. Returns: balance. These are the balance values that can be set as bounds for triggering low-balance email notifications.
- **List all Textmagic notification balances** (List). Get balance notification settings in TextMagic. Returns: lowBalanceNotification, alertBalance, alertPhone, alertEmail1, alertEmail2, alertEmail3.
- **Textmagic notification balances bulk update** (Update). Update balance notification settings in TextMagic. Returns an empty 204 response on success. Required: alertBalance.
- **List all Textmagic notification inbounds** (List). Get inbound messages notification settings in Textmagic. Returns: inboundMessageNotification, forwardedCallNotification, includeSmsHistory, sendInHtmlFormat, alertEmail1, alertEmail2, alertEmail3.
- **Textmagic notification inbounds bulk update** (Update). Update inbound messages notification settings in Textmagic. Returns an empty 204 response on success. Required: inboundMessageNotification, includeSmsHistory, sendInHtmlFormat.
- **Textmagic desktop notifications bulk update** (Update). Update TextMagic chat desktop notification settings, including whether to play sounds, show notifications, display message text, and which sound to use. Returns an empty 200 response on success. Required: playSound, showNotifications.
- **List all Textmagic callback settings** (List). Fetch TextMagic callback URL settings including the delivery status callback URL, incoming SMS callback URL, and callback data format. Returns: outUrl, inUrl, format.
- **Textmagic callback settings bulk update** (Update). Update TextMagic callback URL settings for message delivery status updates and incoming SMS callbacks. Returns an empty 200 response on success. Required: outUrl, inUrl, format.
- **Textmagic contacts search** (Search). Search TextMagic contacts by various criteria including query string, list ID, tag IDs, and phone number. Returns: id, favorited, blocked, firstName, lastName, companyName, phone, email, country, customFields, customFieldValues, user, lists, owner, tags, phoneType, avatar, notes, whatsappPhone. Supports exact match and local phone number formatting.
- **List all Textmagic contacts** (List). List all TextMagic contacts ordered by id, firstName, or lastName. Returns: id, favorited, blocked, firstName, lastName, companyName, phone, email, country, customFields, customFieldValues, user, lists, owner, tags, phoneType, avatar, notes, whatsappPhone. Set shared to 1 to include shared contacts.
- **Get single Textmagic contact by ID** (Get). Get a single TextMagic contact by id. Returns the full contact object including id, firstName, lastName, phone, email, companyName, country, customFields, customFieldValues, lists, tags, notes, and phoneType. Required: id.
- **Delete a Textmagic contact by ID** (Delete). Delete a TextMagic contact by id. This permanently removes the contact from all lists including shared lists. Returns an empty 204 response on success. Required: id.
- **List all Textmagic contacts autocompletes** (List). Search TextMagic contacts (and optionally lists) by a search query for autocomplete suggestions. Returns: entityId, entityType, value, label, sharedBy, isShared, avatar, favorited, userId, countryName, qposition, rposition. Required: query.
- **Create a Textmagic contacts normalized** (Create). Create a new TextMagic contact and assign it to one or more lists. Returns: id, href. Required: phone, lists.
- **List all Textmagic contacts phones** (List). Get a TextMagic contact by phone number. Returns: id, favorited, blocked, firstName, lastName, companyName, phone, email, country, customFields, customFieldValues, user, lists, owner, tags, phoneType, avatar, notes, whatsappPhone. Required: phone.
- **Textmagic contact normalizeds bulk update** (Update). Update a TextMagic contact by id. Returns: id, href. Phone must be in E.164 format and lists is a comma-separated list ID; each contact must belong to at least one list. Required: id, phone, lists.
- **Textmagic contact alls bulk delete** (Delete). Delete all contacts in bulk from a TextMagic account. Returns an empty 204 response on success.
- **Delete a Textmagic contacts delete by ID** (Delete). Delete TextMagic contacts in bulk by ID or remove all contacts at once. Provide ids as a comma-separated string, or set all to 1 to delete every contact. Returns an empty 204 response on success.
- **List all Textmagic unsubscribers** (List). List all unsubscribed contacts in TextMagic. Returns: id, phone, unsubscribeTime, firstName, lastName.
- **Create a Textmagic unsubscriber** (Create). Manually unsubscribe a contact in TextMagic by phone number. This action cannot be reversed. Returns: id, href.
- **Get single Textmagic unsubscriber by ID** (Get). Get the details of a specific unsubscribed contact in TextMagic by id. Returns: id, phone. Required: id.
- **List all Textmagic customfields** (List). List all TextMagic custom fields with pagination. Returns each field's id, name, and createdAt.
- **Create a Textmagic customfield** (Create). Create a new TextMagic custom field. Returns: id, href. Required: name.
- **Get single Textmagic customfield by ID** (Get). Get a single TextMagic custom field by id. Returns: id, name, createdAt. Required: id.
- **Update a Textmagic customfield by ID** (Update). Update a TextMagic custom field by id. Returns: id, href. Required: id, name.
- **Delete a Textmagic customfield by ID** (Delete). Delete a TextMagic custom field by id. Deleting a custom field also removes all values stored on contacts under that field. Returns an empty 204 response on success. Required: id.
- **Textmagic customfield updates bulk update** (Update). Edit the custom field value of a specified contact in TextMagic. Returns: id, href. Required: id.
- **List all Textmagic lists** (List). List all TextMagic contact lists with optional filtering for favorites or current user ownership. Returns: id, name, description, favorited, membersCount, user, service, shared, avatar, isDefault.
- **Create a Textmagic list** (Create). Create a new TextMagic contact list. Returns: id, href. Required: name.
- **Textmagic lists search** (Search). Search TextMagic contact lists by IDs, name query, or default and ownership filters. Returns: id, name, description, favorited, membersCount, user, service, shared, avatar, isDefault.
- **Get single Textmagic list by ID** (Get). Get details of a specific TextMagic contact list by id. Returns: id, name, description, favorited, membersCount, user, service, shared, avatar, isDefault. Required: id.
- **Update a Textmagic list by ID** (Update). Update an existing TextMagic contact list by id. Returns: id, href. Required: id, name.
- **Delete a Textmagic list by ID** (Delete). Delete a TextMagic list by id. When a list is deleted, its contacts are also removed unless they were saved in another list. Returns an empty 204 response on success. Required: id.
- **List all Textmagic contact lists** (List). List all TextMagic contact lists that a given contact belongs to. Returns: id, name, description, favorited, membersCount, user, service, shared, avatar, isDefault. Required: contact_id.
- **List all Textmagic contacts favorites** (List). List favorite contacts and lists in TextMagic. Returns: entityId, entityType, primaryLabel, secondaryLabel, tertiaryLabel, avatar.
- **Delete a Textmagic lists delete by ID** (Delete). Delete one or more TextMagic lists in bulk. Provide ids as a comma-separated string of list IDs, or set all to 1 to delete every list. Returns an empty 204 response on success.
- **List all Textmagic distribution lists** (List). List TextMagic distribution lists with optional name or email search and field-based ordering. Returns: id, name, email, membersCount.
- **Create a Textmagic distribution list** (Create). Create a new TextMagic distribution list that forwards incoming emails as SMS to specified recipients. Returns: id, name, email, membersCount, includeOptions, maxLength, recipients, senderSource. Required: name, recipients, includeOptions, maxLength.
- **Get single Textmagic distribution list by ID** (Get). Get a single TextMagic distribution list by id. Returns: id, name, email, recipients. Required: id.
- **Update a Textmagic distribution list by ID** (Update). Update a TextMagic distribution list by id. This replaces the whole recipient set — submit the complete list of contactIds, groupIds, segmentIds and numbers, not just additions. Returns: id, name, email, recipients. Required: id, name, recipients, includeOptions, maxLength.
- **Delete a Textmagic distribution list by ID** (Delete). Delete a TextMagic distribution list by id. Returns an empty 204 response on success. Required: id.
- **List all Textmagic block lists** (List). List blocked contacts in Textmagic. Returns each blocked contact with id, firstName, lastName, phone, email, companyName, blocked, favorited, and nested customFields, lists, tags, user, and notes data. Results can be searched and ordered by id, firstName, or lastName.
- **List all Textmagic block phones** (List). Check if a phone number is blocked in TextMagic. Returns the blocked contact's details including id, firstName, lastName, phone, email, blocked, and favorited. Required: phone.
- **Create a Textmagic contacts block** (Create). Block a TextMagic contact from inbound and outbound communication by phone number. Returns: id, href.
- **Create a Textmagic contacts unblock** (Create). Unblock a TextMagic contact by phone number. Returns an empty 204 response on success.
- **Textmagic contacts unblocks bulk create** (Create). Unblock several TextMagic contacts by blocked contact IDs, or unblock all blocked contacts at once. Returns an empty 204 response on success. Provide ids as a comma-separated list of blocked contact IDs, or set all to 1 to unblock every blocked contact.
- **List all Textmagic contact notes** (List). List Textmagic contact notes assigned to a given contact. Returns each note with id, createdAt, note, and user. Required: contact_id.
- **Create a Textmagic contact note** (Create). Create a new Textmagic contact note for a given contact. Returns: id, href. Required: contact_id.
- **Get single Textmagic note by ID** (Get). Get a contact note in TextMagic by id. Returns: id, createdAt, note, user. Required: id.
- **Update a Textmagic note by ID** (Update). Update a contact note in TextMagic by id. Returns: id, href. Required: id, note.
- **Delete a Textmagic note by ID** (Delete). Delete a contact note in TextMagic by id. Returns an empty 204 response on success. Required: id.
- **Delete a Textmagic notes delete by ID** (Delete). Delete contact notes in bulk for a specific TextMagic contact. Returns an empty 204 response on success. Required: id.
- **Create a Textmagic contact avatar** (Create). Upload an avatar image for a TextMagic contact. Returns: id, href. The image must be a PNG or JPG file not exceeding 10 MB. Required: contact_id.
- **Textmagic contact avatars bulk delete** (Delete). Delete the avatar for a TextMagic contact. Returns an empty 204 response on success. Required: id.
- **Create a Textmagic import normalized** (Create). Import contacts into TextMagic from a CSV, XLS, or XLSX file with column mapping. Returns: id, href. The column mapping must include a phone field mapping. Required: column.
- **Get single Textmagic import progrese by ID** (Get). Get contact import session progress in Textmagic by id. Returns: status, processed. The status field is an integer enum (1=initialized, 3=processing, 4=errors, 5=completed) and processed is the count of imported contacts. Required: id.
- **List all Textmagic email lookups** (List). Look up details about an email address in Textmagic to check validity, deliverability, risk, and DNS/MX records. Returns: address, status, deliverability, reason, risk, suggestion, exchange, preference. Emails must be checked one by one. Required: email.
- **List all Textmagic contacts IDS** (List). List all contact IDs belonging to a specific TextMagic list. Returns a flat array of contact ID integers (id). Required: list_id.
- **List all Textmagic list contacts** (List). List all contacts in a Textmagic contact list. Returns: id, favorited, blocked, firstName, lastName, companyName, phone, email, country, customFields, customFieldValues, user, lists, owner, tags, phoneType, avatar, notes, whatsappPhone. Required: list_id.
- **Create a Textmagic list contact** (Create). Reset a Textmagic contact list's members to the specified contacts, replacing all existing members. Returns: id, href. Pass "all" as the contacts value to assign all contacts belonging to the current user. Required: list_id, contacts.
- **Delete a Textmagic list contact by ID** (Delete). Unassign contacts from a Textmagic contact list. Removed contacts are deleted permanently unless saved in another list first. Returns an empty 204 response on success. Required: id, contacts.
- **Textmagic list contacts bulk delete** (Delete). Bulk delete contacts from a Textmagic contact list. Returns an empty 204 response on success. Required: list_id.
- **Textmagic list contacts bulk update** (List). Assign additional contacts to a Textmagic contact list without resubmitting existing member IDs. Returns: id, href. Required: id, contacts.
- **Create a Textmagic list avatar** (Create). Upload an avatar image for a TextMagic list. Returns: id, href. The image must be a PNG or JPG file not exceeding 10 MB. Required: list_id.
- **Textmagic list avatars bulk delete** (Delete). Delete an avatar for a TextMagic list by id. Returns an empty 204 response on success. Required: id.
- **List all Textmagic templates** (List). List all TextMagic templates with pagination. Returns: id, name, content, lastModified.
- **Create a Textmagic template** (Create). Create a new TextMagic SMS template. Returns: id, href. Required: name, content.
- **Textmagic templates search** (Search). Search TextMagic templates by IDs, name, or content. Returns: id, name, content, lastModified.
- **Get single Textmagic template by ID** (Get). Get a single TextMagic template by id. Returns: id, name, content, lastModified. Required: id.
- **Update a Textmagic template by ID** (Update). Update a TextMagic template by id. Returns: id, href. Required: id, name, content.
- **Delete a Textmagic template by ID** (Delete). Delete a TextMagic template by id. Returns an empty 204 response on success. Required: id.
- **Delete a Textmagic templates delete by ID** (Delete). Delete one or more TextMagic templates by IDs, or delete all templates at once. Pass `ids` as a comma-separated list of template IDs, or set `all` to true to delete every template. Returns an empty 204 response on success.
- **List all Textmagic messages** (List). List all outbound TextMagic messages. Returns each message with id, sender, receiver, text, status, messageTime, price, charset, partsCount, and contact/session details. Use last_id to paginate by fetching all messages with IDs lesser than the specified value; when last_id is supplied, the page parameter is ignored.
- **Create a Textmagic message** (Create). Send an SMS or MMS message via Textmagic to one or more recipients specified by phone numbers, contact IDs, or list IDs. Returns: id, href, type. Supports scheduling via rrule, bulk sending for 1,000+ recipients, TTS, and MMS attachments. Required: text, phones.
- **Get single Textmagic message by ID** (Get). Get a single outgoing message in TextMagic by id. Returns: id, sender, receiver, text, status, avatar, deleted, charset, country, phone, price, session. Required: id.
- **Delete a Textmagic message by ID** (Delete). Delete a single Textmagic outbound message by id. Returns an empty 204 response on success. Required: id.
- **Textmagic messages search** (Search). Search Textmagic outbound messages by various filters including IDs, session, delivery status, or free-text query. Returns: id, sender, receiver, text, status, rejectReason, contactId, sessionId, messageTime, avatar, deleted, deliveredAt, charset, charsetLabel, firstName, lastName, country, phone, price, partsCount, fromEmail, fromNumber, senderSource, session. The 'page' parameter is ignored…
- **List all Textmagic price normalizeds** (List). Check pricing for a new outbound TextMagic message before sending. Returns: total, parts, countries. Either text or templateId must be provided.
- **List all Textmagic messages previews** (List). Preview a Textmagic message with dynamic fields merged before sending, supporting up to 100 messages per session. Returns: messages.
- **Delete a Textmagic messages delete by ID** (Delete). Delete outbound TextMagic messages in bulk by given message IDs, or delete all outbound messages when all is set to 1. Returns an empty 204 response on success.
- **Textmagic message alls bulk delete** (Delete). Delete all outbound messages in TextMagic. Returns an empty 204 response on success.
- **Create a Textmagic messages attachment** (Create). Upload a file to TextMagic to insert as a link in messages. Returns: chars, href, name, size, resource. Supports .jpg, .gif, .png, .pdf, .txt, .csv, .doc, .docx, .xls, .xlsx, .ppt, .pptx & .vcf file formats.
- **Create a Textmagic mms attachment** (Create). Upload a new file as an MMS attachment in Textmagic. Returns: chars, href, name, size, resource. Supports .jpg, .gif, .png, .pdf, .txt, .csv, .doc, .docx, .xls, .xlsx, .ppt, .pptx & .vcf file formats up to 10 MB.
- **List all Textmagic histories** (List). List outbound message history in TextMagic. Returns: id, sender, receiver, text, status, rejectReason, contactId, sessionId, messageTime, avatar, deleted, deliveredAt, charset, charsetLabel, firstName, lastName, country, phone, price, partsCount, fromEmail, fromNumber, senderSource, session. Supports filtering by search query and ordering by id, phone, sender, firstName, lastName, or messageTime.
- **List all Textmagic bulks** (List). List all TextMagic bulk sessions, which track asynchronous message sending to more than 1,000 recipients. Returns: id, status, itemsProcessed, itemsTotal, createdAt, session, text.
- **Get single Textmagic bulk by ID** (Get). Get the status of a specific bulk session in TextMagic by id. Returns: id, status, itemsProcessed, itemsTotal, createdAt, session, text. Required: id.
- **List all Textmagic sessions** (List). List all TextMagic message sending sessions, including those not sent via the API. Returns: id, startTime, text, source, referenceId, price, numbersCount, destination, initiatorId, title.
- **Get single Textmagic session by ID** (Get). Get a specific TextMagic message session by id. Returns: id, startTime, text, source, referenceId, price, numbersCount, destination, initiatorId, title. Required: id.
- **Delete a Textmagic session by ID** (Delete). Delete a TextMagic message session by id, including all nested messages. You will not be refunded for any deleted sent sessions. Returns an empty 204 response on success. Required: id.
- **List all Textmagic session stats** (List). Get statistics for a TextMagic message session, including message counts broken down by delivery status. Returns: failed, delivered, accepted, rejected, scheduled, all, sent. Required: session_id.
- **Delete a Textmagic sessions delete by ID** (Delete). Delete message sessions in bulk in TextMagic, including all nested messages. Provide ids as a comma-separated list to delete specific sessions, or set all to 1 to remove every session. Returns an empty 204 response on success.
- **List all Textmagic schedules** (List). List all scheduled messages in TextMagic. Returns each schedule with id, nextSend, rrule, type, summary, session, parameters, textParameters, completed, recipientsCount, timezone, createdAt.
- **Textmagic schedules search** (Search). Search scheduled messages in TextMagic by query string, schedule IDs, or status. Returns: id, nextSend, rrule, session, lastSent, contactName, type, summary, textParameters, firstOccurrence, lastOccurrence, recipientsCount, timezone, completed, avatar, createdAt. All parameters are optional.
- **Get single Textmagic schedule by ID** (Get). Get a single scheduled message in TextMagic by id. Returns the schedule object including id, nextSend, rrule, session, type, summary, recipientsCount, completed, and createdAt. Required: id.
- **Delete a Textmagic schedule by ID** (Delete). Delete a scheduled message in TextMagic by id. Returns an empty 204 response on success. Required: id.
- **Delete a Textmagic schedules delete by ID** (Delete). Delete scheduled messages in bulk in TextMagic by entity IDs, by status, or all at once. Returns an empty 204 response on success.
- **List all Textmagic replies** (List). List all inbound messages (replies) in TextMagic. Returns each message with id, sender, receiver, messageTime, text, and contact details (contactId, firstName, lastName, avatar, email, contactUserId, userId).
- **Textmagic replies search** (Search). Search inbound messages (replies) in TextMagic by IDs or text query, with optional contact expansion. Returns each message with id, sender, receiver, messageTime, text, and contact details (contactId, firstName, lastName, avatar, email, contactUserId, userId).
- **Get single Textmagic reply by ID** (Get). Get a single inbound message (reply) from TextMagic by id. Returns: id, sender, receiver, text, avatar, email. Required: id.
- **Delete a Textmagic reply by ID** (Delete). Delete a single inbound message (reply) from TextMagic by id. Returns an empty 204 response on success. Required: id.
- **Delete a Textmagic replies delete by ID** (Delete). Delete inbound TextMagic messages in bulk by message IDs or all at once. Returns an empty 204 response on success. Deleted messages are permanently removed from TextMagic Online, chats, and all other references.
- **List all Textmagic stats messagings** (List). List TextMagic messaging statistics grouped by day, month, year, or as an overall total for a given time interval. Returns: replyRate, deliveryRate, costs, date, messagesReceived, messagesSentDelivered, messagesSentAccepted, messagesSentBuffered, messagesSentFailed, messagesSentRejected, and messagesSentParts. All parameters are optional and default to the last 7 days with totals (by=off).
- **List all Textmagic stats spendings** (List). List spending statistics in Textmagic for a selected time period. Returns user statements including id, userId, date, balance, delta, type, value, and comment. Start defaults to 7 days prior and end defaults to today.
- **List all Textmagic invoices** (List). List TextMagic invoices and transactions for your account. Returns: id, bundle, currency, vat, paymentMethod.
- **List all Textmagic messaging data** (List). Get total contacts, sent messages, and received messages counters from TextMagic. Returns: contacts, sent, received.
- **List all Textmagic chats** (List). List all TextMagic chats with optional filtering by status, voice calls, and ordering. Returns: id, originalId, phone, contact, unsubscribedContactId, unread, updatedAt, status, mute, lastMessage, direction, replyOptionsType, from, mutedUntil, timeLeftMute, country, pinned, type, smsPrice, mmsPrice, tags, assigneeId, updatedBy, createdAt, messageTime, conversationEnded, rating.
- **Get single Textmagic chat by ID** (Get). Get a single TextMagic chat by id. Returns: id, originalId, phone, contact, unsubscribedContactId, unread, updatedAt, status, mute, lastMessage, direction, replyOptionsType, from, mutedUntil, timeLeftMute, country, pinned, type, smsPrice, mmsPrice, tags, assigneeId, updatedBy, createdAt, messageTime, conversationEnded, rating. Required: id.
- **Textmagic chats search** (Search). Search TextMagic chats by message text using a search query. Returns: id, originalId, phone, contact, unsubscribedContactId, unread, updatedAt, status, mute, lastMessage, direction, replyOptionsType, from, mutedUntil, timeLeftMute, country, pinned, type, smsPrice, mmsPrice, tags, assigneeId, updatedBy, createdAt, messageTime, conversationEnded, rating.
- **List all Textmagic chat messages** (List). List messages in a TextMagic chat, with optional search and time-range filtering. Returns: id, direction, sender, messageTime, text, receiver, status, firstName, lastName, sessionId, initiatorId, messageFileId, type, chatType, chatId, isEdited, errorCode, files, payload, avatar. Required: chat_id.
- **Delete a Textmagic chat message by ID** (Delete). Delete messages from a TextMagic chat by inbound, sent, or call message IDs, or delete all messages in the chat. Returns an empty 204 response on success. Required: chat_id.
- **List all Textmagic search IDS** (List). Find chats in bulk by their IDs in Textmagic. Returns chat objects including id, phone, contact, status, lastMessage, direction, unread, createdAt, and updatedAt. The ids query parameter accepts a comma-separated list of numeric chat IDs.
- **List all Textmagic search recipients** (List). Search TextMagic chats by recipient (contact, list name, or phone number). Returns chat records including id, phone, contact, unread, lastMessage, status, direction, messageTime, createdAt, and more.
- **List all Textmagic by phones** (List). Find a TextMagic chat by phone number. Returns: id, originalId, phone, contact, unsubscribedContactId, unread, updatedAt, status, mute, lastMessage, direction, replyOptionsType, from, mutedUntil, timeLeftMute, country, pinned, type, smsPrice, mmsPrice, tags, assigneeId, updatedBy, createdAt, messageTime, conversationEnded, rating. Set upsert=1 to create a new chat if none is…. Required: phone.
- **List all Textmagic unread counts** (List). Get the total number of unread messages in the current user's TextMagic chats. Returns: total.
- **Create a Textmagic chats status** (Create). Change the status of a TextMagic chat by its ID. Returns: id, href. Required: id, status.
- **Create a Textmagic chats pin** (Create). Pin or unpin a single chat in TextMagic. Pass a chat id and a pinned flag (1 to pin, 0 to unpin). Returns: id, href. Required: id, pinned.
- **Create a Textmagic chats mute** (Create). Mute notification sounds for a specific TextMagic chat. Returns: id, href. Required: id, mute.
- **Textmagic chats mutes bulk create** (Create). Mute notification sounds for multiple TextMagic chats at once by chat IDs, or mute all chats. Returns an empty 204 response on success.
- **Textmagic chats unmutes bulk create** (Create). Unmute several TextMagic chats in bulk by providing a comma-separated list of chat IDs, or unmute all chats at once. Pass `ids` to target specific chats or set `all` to true to unmute every chat. Returns an empty 204 response on success.
- **Textmagic chats unreads bulk create** (Create). Mark several TextMagic chats as unread by chat IDs, or mark all chats as unread. Returns an empty 204 response on success.
- **Textmagic chats reads bulk create** (Create). Mark several TextMagic chats as read by chat IDs, or mark all chats as read at once. Returns an empty 204 response on success.
- **Textmagic chats closes bulk create** (Create). Close one or more TextMagic chats in bulk by providing comma-separated chat IDs, or close all chats at once by setting all to true. Returns an empty 204 response on success.
- **Create a Textmagic close read** (Create). Close all TextMagic chats that have no unread messages. Returns an empty 204 response on success.
- **Textmagic chats reopens bulk create** (Create). Bulk reopen TextMagic chats by chat IDs or reopen all chats at once. Returns an empty 204 response on success. Supply ids as a comma-separated string of chat IDs, or set all to true to reopen every chat.
- **Delete a Textmagic chats delete by ID** (Delete). Delete one or more TextMagic chats in bulk by providing comma-separated chat IDs, or delete all chats. Returns an empty 204 response on success.
- **Create a Textmagic email campaign** (Create). Create and send an email marketing campaign in TextMagic to contacts, groups, or direct emails. Returns the campaign object including its id, status, cost, and recipient counts. At least one recipient type must be specified; the campaign is processed asynchronously and requires sufficient account balance. Required: emailSenderId, subject, message, recipients.
- **Create a Textmagic email campaigns schedule** (Create). Schedule new email campaign. Returns: campaign, cost. Required: emailSenderId, subject, message, recipients, scheduleParams.
- **List all Textmagic email campaigns email senders** (List). Get list of email senders.
- **Create a Textmagic tag** (Create). Create a new tag in TextMagic for organizing and categorizing contacts. Returns: id, title. Tag titles must be unique within your account and between 1 and 50 characters. Required: title.
- **List all Textmagic session messages** (List). List all messages belonging to a specific TextMagic message session. Returns: id, sender, receiver, text, status, rejectReason, contactId, sessionId, messageTime, avatar, deleted, deliveredAt, charset, charsetLabel, firstName, lastName, country, phone, price, partsCount, fromEmail, fromNumber, senderSource, session. Required: session_id.
