Texecom Event Schemas

JSON Schema Documentation

Password Reset Requested Payload

RFC-025 delivery-pipeline trigger for a forgot-password email (RFC-029). Published from identity-service apps/auth/src/domains/email-action-token/token.ts when a PASSWORD_RESET email action token is issued, via the same identity.outbox mechanism as the account.* events, but this envelope is the RFC-035 email-action-token shape, not a domain-row snapshot. Never emitted for legacy installers, whose password is managed by the monolith.

$idhttps://schemas.texecom-prod.com/v2/events/payload/service/identity/password/reset_requested/v1.0.0.json
$schemahttp://json-schema.org/draft-07/schema

Properties

NameType
versionString=1.0
idempotencyKeyString
recipientObject
dataObject

version

Description RFC-035 payload schema version, not the aggregate row version.
TypeString
Required Yes
Const 1.0

idempotencyKey

Description Unique per issuance; used by the email delivery pipeline to dedupe retries.
TypeString
Required Yes
Format uuid

recipient

Description The account holder who requested the reset.
TypeObject
Required Yes

Properties

NameType
emailString
nameString
localeString

recipient.email

TypeString
Required Yes
Format email

recipient.name

Description Optional display name for the delivery template's recipient.name (RFC-025 template data).
TypeString
Required No

recipient.locale

TypeString
Required Yes

data

TypeObject
Required Yes

Properties

NameType
resetUrlString
expiresAtString

data.resetUrl

Description One-time reset link. https://${gateway_domain}/auth/reset-password/verify?token=... (RFC-035 link format). The field name is the live RFC-025 template contract and must not change.
TypeString
Required Yes
Format uri

data.expiresAt

Description ISO 8601 timestamp the reset link stops working (RFC-035 default TTL, 15 minutes).
TypeString
Required Yes
Format date-time

Schema

{
    "$id": "https://schemas.texecom-prod.com/v2/events/payload/service/identity/password/reset_requested/v1.0.0.json",
    "$schema": "http://json-schema.org/draft-07/schema",
    "title": "Password Reset Requested Payload",
    "description": "RFC-025 delivery-pipeline trigger for a forgot-password email (RFC-029). Published from identity-service apps/auth/src/domains/email-action-token/token.ts when a PASSWORD_RESET email action token is issued, via the same identity.outbox mechanism as the account.* events, but this envelope is the RFC-035 email-action-token shape, not a domain-row snapshot. Never emitted for legacy installers, whose password is managed by the monolith.",
    "type": "object",
    "properties": {
        "version": {
            "description": "RFC-035 payload schema version, not the aggregate row version.",
            "type": "string",
            "const": "1.0"
        },
        "idempotencyKey": {
            "description": "Unique per issuance; used by the email delivery pipeline to dedupe retries.",
            "type": "string",
            "format": "uuid"
        },
        "recipient": {
            "description": "The account holder who requested the reset.",
            "type": "object",
            "properties": {
                "email": {
                    "type": "string",
                    "format": "email"
                },
                "name": {
                    "description": "Optional display name for the delivery template's recipient.name (RFC-025 template data).",
                    "type": "string"
                },
                "locale": {
                    "type": "string"
                }
            },
            "required": [
                "email",
                "locale"
            ],
            "additionalProperties": false
        },
        "data": {
            "type": "object",
            "properties": {
                "resetUrl": {
                    "description": "One-time reset link. https://${gateway_domain}/auth/reset-password/verify?token=... (RFC-035 link format). The field name is the live RFC-025 template contract and must not change.",
                    "type": "string",
                    "format": "uri"
                },
                "expiresAt": {
                    "description": "ISO 8601 timestamp the reset link stops working (RFC-035 default TTL, 15 minutes).",
                    "type": "string",
                    "format": "date-time"
                }
            },
            "required": [
                "resetUrl",
                "expiresAt"
            ],
            "additionalProperties": false
        }
    },
    "required": [
        "version",
        "idempotencyKey",
        "recipient",
        "data"
    ],
    "additionalProperties": false
}