Browse Notifications

stable · event · 0.2.0

Notification Delivery outcome

The authoritative current state of an email, FCM, APNs, LINE, or Web Push Delivery.

Capability Domain: notifications

Reference identifier: notification-delivery-outcome

Schema ID: https://minicenter.otus.tw/events/notifications.delivery.outcome.v1.schema.json

Delivery: Delivered at least once. Deduplicate by envelope id and apply only outcomes newer than the local occurrence time; reconcile uncertainty with GET /notification-deliveries/{deliveryId}.

Event schema

Event schema
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "https://minicenter.otus.tw/events/notifications.delivery.outcome.v1.schema.json",
    "title": "Notification Delivery outcome",
    "description": "The authoritative current state of an email, FCM, APNs, LINE, or Web Push Delivery.",
    "type": "object",
    "additionalProperties": false,
    "required": [
        "delivery_id",
        "channel",
        "status",
        "attempts",
        "provider_status",
        "last_error_code",
        "occurred_at"
    ],
    "properties": {
        "delivery_id": {
            "type": "string",
            "format": "uuid"
        },
        "channel": {
            "type": "string",
            "enum": [
                "email",
                "fcm",
                "apns",
                "line",
                "web_push"
            ]
        },
        "status": {
            "type": "string",
            "enum": [
                "pending",
                "retry",
                "accepted",
                "sent",
                "delivered",
                "rejected",
                "suppressed",
                "unavailable",
                "bounced",
                "complained",
                "unknown",
                "failed"
            ]
        },
        "attempts": {
            "type": "integer",
            "minimum": 0
        },
        "provider_status": {
            "type": [
                "string",
                "null"
            ]
        },
        "last_error_code": {
            "type": [
                "string",
                "null"
            ]
        },
        "occurred_at": {
            "type": "string",
            "format": "date-time"
        }
    },
    "x-documentation": true,
    "x-reference-id": "notification-delivery-outcome",
    "x-domain": "notifications",
    "x-stability": "stable",
    "x-delivery": "Delivered at least once. Deduplicate by envelope id and apply only outcomes newer than the local occurrence time; reconcile uncertainty with GET /notification-deliveries/{deliveryId}.",
    "example": {
        "delivery_id": "85000000-0000-4000-8000-000000000002",
        "channel": "fcm",
        "status": "sent",
        "attempts": 1,
        "provider_status": "accepted",
        "last_error_code": null,
        "occurred_at": "2026-09-02T02:30:00Z"
    }
}

Example

Event example
{
    "delivery_id": "85000000-0000-4000-8000-000000000002",
    "channel": "fcm",
    "status": "sent",
    "attempts": 1,
    "provider_status": "accepted",
    "last_error_code": null,
    "occurred_at": "2026-09-02T02:30:00Z"
}