SettleMint
Events

identity.registration.provisional

An identity was joined to an identity registry; the linkage is provisional until the indexer reaches the configured reorg depth.

An identity was joined to an identity registry; the linkage is provisional until the indexer reaches the configured reorg depth.

Delivery contract

FieldValue
Event typeidentity.registration.provisional
Version1
Lifecycle stateprovisional
Counter-signed receipt requiredfalse
SDK typeWebhook.IdentityRegistrationProvisionalV1

Related references:

  • idxr_account
  • idxr_identity

Payload schema

{
  "type": "object",
  "properties": {
    "accountAddress": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$"
    },
    "blockNumber": {
      "type": "string"
    },
    "chainId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "country": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "identityAddress": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$"
    },
    "registryAddress": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$"
    },
    "status": {
      "type": "string"
    },
    "transactionHash": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{64}$"
    }
  },
  "required": [
    "accountAddress",
    "blockNumber",
    "chainId",
    "country",
    "identityAddress",
    "registryAddress",
    "status",
    "transactionHash"
  ],
  "additionalProperties": false
}

TypeScript SDK example

import { verifyWebhook, type Webhook } from "@settlemint/dalp-sdk";

const result = verifyWebhook({
  rawBody,
  headers,
  secret: process.env.DALP_WEBHOOK_SECRET!,
});

if (!result.ok) {
  throw new Error(`Webhook verification failed: ${result.code}`);
}

if (result.event.type === "identity.registration.provisional") {
  const event: Webhook.Event<"identity.registration.provisional"> = result.event;
  console.log(event.payload);
}

curl example

curl -X POST https://consumer.example.com/dalp/webhooks \
  -H "content-type: application/json" \
  -H "webhook-id: evt_docs_identity_registration_provisional_001" \
  -H "webhook-timestamp: 1778112000" \
  -H "webhook-signature: v1,docs-example-signature" \
  --data '{"evt_id":"evt_docs_identity_registration_provisional_001","type":"identity.registration.provisional","version":1,"lifecycle_state":"provisional","request":{"idempotency_key":"idem_01JZP7R5W8M9N0P1Q2R3S4T5"},"related":{"idxr_account":"idxr_account_example","idxr_identity":"idxr_identity_example"},"payload":{"accountAddress":"0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","blockNumber":"18445201","chainId":537001,"country":56,"identityAddress":"0xcccccccccccccccccccccccccccccccccccccccc","registryAddress":"0xdddddddddddddddddddddddddddddddddddddddd","status":"ACTIVE","transactionHash":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"}}'

Version history

  • v1: Initial registry entry for identity.registration.provisional.

Deprecation

This event type is not deprecated.

Manifest

The machine-readable AsyncAPI entry is published in the DALP events manifest.

On this page