Skip to main content

API mid September 2026 improvements (1.6.8)

Sam Critchley
Co-Founder

Further API features, improvements and fixes that shipped to production in mid September 2026, on top of the earlier late August 2026 release.

  • Added the email provider webhook types ses and smtp to add-webhook and alter-webhook, configured on the email_verification_otp and email_verification_deeplink events, so a chain's email verification messages can be sent either by Spaaza's own email service or through the chain's own SMTP email provider. See sending verification emails from your own email provider.
  • Added a backup provider for the messages that verify an email address or a phone number, configured as a pair of webhooks on the same event using the new delivery_role field on add-webhook and alter-webhook. The primary sends; the standby is held back and used only when the primary fails to accept the message, so the customer still receives exactly one message. Available on the email_verification_otp, email_verification_deeplink and phone_number_verification events. The new swap-webhook-delivery-roles endpoint exchanges the two roles in one step, and conflicts return the new error webhook_delivery_role_conflict (code 562). See backup email provider.
  • Added last_purchase_date to the shopper object sent in webhook event payloads, such as the shopper.altered event. It holds the date and time of the customer's most recent purchase in UTC (for example 2026-06-27T13:33:43Z), or null for a customer with no purchases. The get-user response is unchanged.
  • Changed the type of an email verification webhook so that it names the delivery provider, ses or smtp, instead of repeating the event name. The previous values email_verification_otp and email_verification_deeplink are no longer accepted by add-webhook; the event is given in event_name as for every other webhook.
  • type can now be changed on alter-webhook, limited to switching an email verification webhook between ses and smtp.
  • Changed alter-webhook and delete-webhook so that a primary verification webhook can no longer be deactivated, deleted, moved to another event or have its delivery_role removed or changed while its standby is still active. Such requests return webhook_delivery_role_conflict (code 562). To retire a primary, first swap the roles and retire the demoted webhook, or deactivate the standby first. Deactivating or deleting a standby, or a primary without a standby, is unaffected.