A label was applied by hand or through the API

Fired when a label is applied through the API or the inbox app. Not fired for labels applied by the AI pipeline, by an AI backfill or for Emelia campaign labels (they are applied by the worker). On POST /emails/bulk with applyLabel, it is fired for every processed email as soon as one of them actually changed.

Registration: webhook subscriptions cannot be created with an API key, and Emelia has no screen for them yet: contact support.

Header Parameters

X-Maylee-Event*string

Event name, same as event in the body.

Value in

  • "email.received"
  • "email.updated"
  • "email.deleted"
  • "draft.sent"
  • "label.applied"
  • "mailbox.sync_failed"
X-Maylee-Signature*string

t=<unix seconds>,v1=<hex HMAC-SHA256 of "<t>.<raw body>" keyed with the webhook secret>. Reject deliveries older than 300 seconds and compare in constant time.

User-Agent?string

Fixed User-Agent of the delivery client. Do not use it to authenticate a delivery: verify the signature.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

Example Requests

POST/label.applied