Skip to content

Update sender

View .md
PATCH

Authorization

  • Authorizationheaderrequired

    Bearer YOUR_API_KEY. Create a key in the dashboard.

Path parameters

  • senderIdstringrequired

Body

application/json

  • namestring
  • enableVoiceboolean

    Turn the voice channel on or off. The sender must already have a phone number provisioned for calls; enabling it otherwise returns 400 instead of storing a flag that changes nothing. Confirm with the channels array on the response.

  • enableSmsOnewayboolean

    Turn the one-way SMS channel on or off. Enabling needs no number or credential and takes effect immediately (US and Canadian destinations still need an approved 10DLC campaign); disabling removes the channel from the sender. Confirm with the channels array on the response.

  • setAsDefaultboolean
  • webhookUrlstring<uri>nullable

    HTTPS URL for webhook events. Set to null to remove webhook.

  • webhookEventsstring[]

    Events to subscribe to.

    One ofmessage.queuedmessage.sentmessage.deliveredmessage.readmessage.statusmessage.failedmessage.inboundmessage.unsupportedbroadcast.status_changedconversation.newcontact.identity_linkedtemplate.status_changedinvitation.status_changedcall.initiatedcall.answeredcall.completedcall.faileddomain.verifieddomain.failed
  • webhookActiveboolean

    Whether the webhook is active.

  • emailReceivingEnabledboolean

    Enable or disable inbound email receiving for this sender. Enabling requires a verified inbound MX record on the domain; the request is ignored otherwise, and emailReceivingEnabled comes back false on the response. Disabling always applies.

  • emailCatchAllEnabledboolean

    Enable or disable domain catch-all. When enabled (with emailReceivingEnabled true), this sender receives email for any address at its domain. Ignored (treated as false) if receiving is not enabled.

  • emailAddressstring<email>

    Attach or change the sender's email from-address (e.g. noreply@yourdomain.com). The domain must be a verified email domain in your project.

  • emailDomainIdstring

    ID of the verified email domain to attach. Optional — resolved from emailAddress's domain when omitted.

  • emailFromNamestring

    Display name shown in the recipient's inbox for the email channel.

    Limitsmax length 100
  • webhookSignatureVersionstring

    Move this webhook between signature schemes. v1 -> v2 directly returns 400; go through v1+v2 first. See https://www.zavu.dev/docs/guides/receiving-messages/signature-migration

    One ofv1v1+v2v2

Responses

200Sender updated.
  • idstringrequired
  • namestringrequired
  • phoneNumberstring

    Phone number in E.164 format. Absent on a sender that has none: an email-only sender, or one created with only enableSmsOneway.

  • channelsstring[]

    Channels this sender can actually send on right now: configured AND activated. Empty means the sender cannot send or receive anything yet: a phoneNumber alone does not enable SMS or voice, and a connected account that is not activated is left out, because every send on it is refused. Check this rather than inferring capability from phoneNumber or emailAddress, and turn a connected channel on with POST /v1/senders/{senderId}/channels/{channel}/activate.

  • isDefaultboolean

    Whether this sender is the project's default.

    Defaultfalse
  • webhookobject

    Webhook configuration for the sender.

    5 properties
    • urlstring<uri>required

      HTTPS URL that will receive webhook events.

    • eventsstring[]required

      List of events the webhook is subscribed to.

      One ofmessage.queuedmessage.sentmessage.deliveredmessage.readmessage.statusmessage.failedmessage.inboundmessage.unsupportedbroadcast.status_changedconversation.newcontact.identity_linkedtemplate.status_changedinvitation.status_changedcall.initiatedcall.answeredcall.completedcall.faileddomain.verifieddomain.failed
    • secretstring

      Webhook secret for signature verification. Only returned on create or regenerate.

    • activebooleanrequired

      Whether the webhook is active.

      Defaulttrue
    • signatureVersionstringrequired

      Which X-Zavu-Signature scheme this receiver is sent.

      • v1: v1=HMAC_SHA256(secret, body). The scheme used before this was configurable. Existing webhooks stay on it until you move them.
      • v2: v2=HMAC_SHA256(secret, "{t}.{body}"). The current scheme, and the default for new senders. It signs the timestamp together with the body.
      • v1+v2: both signatures, sharing one t. The migration setting: a receiver reading either one works, so you can deploy and confirm your new verifier before switching over.

      Moving from v1 straight to v2 returns 400. Set v1+v2 first. See https://www.zavu.dev/docs/guides/receiving-messages/signature-migration

      One ofv1v1+v2v2
  • whatsappobject

    WhatsApp Business Account information. Only present if a WABA is connected.

    3 properties
    • phoneNumberIdstring

      WhatsApp phone number ID from Meta.

    • displayPhoneNumberstring

      Display phone number.

    • paymentStatusobject

      Payment configuration status from Meta.

      3 properties
      • setupStatusstring

        Payment setup status (COMPLETE, NOT_STARTED, etc.).

      • methodStatusstring

        Payment method status (VALID, NONE, etc.).

      • canSendTemplatesboolean

        Whether template messages can be sent. Requires setupStatus=COMPLETE and methodStatus=VALID.

  • emailAddressstring

    From-address for the email channel, if configured.

  • emailReceivingEnabledboolean

    Whether inbound email receiving is enabled for this sender.

    Defaultfalse
  • emailCatchAllEnabledboolean

    Whether catch-all receiving is enabled. When true (and emailReceivingEnabled is true), this sender receives email addressed to any local part at its domain, not just its own address. The original recipient is delivered in the message.inbound webhook's data.to.

    Defaultfalse
  • createdAtstring<date-time>
  • updatedAtstring<date-time>
400Invalid update.
  • codestringrequired
  • messagestringrequired
  • detailsobject
401Unauthorized.
  • codestringrequired
  • messagestringrequired
  • detailsobject
404Sender not found.
  • codestringrequired
  • messagestringrequired
  • detailsobject