---
title: "Cancel an iMessage sender"
method: DELETE
path: "/v1/imessage/senders/{senderId}"
tags: ["iMessage"]
---

# Cancel an iMessage sender

`DELETE /v1/imessage/senders/{senderId}`

Cancels the sender at the provider and deactivates its messaging
account. Billing stops with the current month (no proration or
refunds, matching phone numbers). A sender still being set up
(status ordering or activating) cannot be canceled; contact support
to change the order.

## Path parameters

- `senderId` string, required

## Response `200`

Sender canceled

- object
  - `success` boolean
  - `sender` ImessageSenderLifecycle — A provisioned iMessage sender order and its lifecycle. Activation is asynchronous: poll GET /v1/imessage/senders/{senderId} or subscribe to account.connected.
    - `id` string
    - `kind` 'phone' | 'email'
    - `region` 'US' | 'GB' | 'null', nullable
    - `handle` string, nullable — The sender handle once activation assigns it
    - `optInLink` string, nullable — imessage:// deep link that opens Messages on this sender with a prefilled text. Share it so contacts message you first (Apple only lets a sender reach contacts who wrote to it first); null until the handle is assigned.
    - `status` 'ordering' | 'activating' | 'active' | 'suspended' | 'canceled' | 'failed'
    - `priceCents` integer — Monthly price billed while the sender is active
    - `provider` string
    - `profileId` string
    - `displayName` string, nullable
    - `failureReason` string, nullable
    - `accountId` string, nullable — The messaging account created at activation
    - `createdAt` string, date-time

## Other responses

- `400` — Invalid request
- `401` — Unauthorized
- `404` — Sender not found
- `409` — The sender is still being set up and cannot be canceled yet (code: imessage_sender_setting_up)

## Changes

- **2026-09-25** `2c04683ce694` — 5 info
  - added the non-success response with the status `409`
  - added the optional property `details/adAccountId` to the response with the `400` status
  - added the optional property `details/createdObjects` to the response with the `400` status
  - added the optional property `details/stage` to the response with the `400` status
  - …1 more
- **2026-09-21** `339f59df69dd` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/imessage/senders/:senderId/delete.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/b2325332041a?raw)
