For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Help CenterOpenAPI SpecStatus
OverviewInquiriesTransactionsRelayAPI ReferenceChangelog
OverviewInquiriesTransactionsRelayAPI ReferenceChangelog
  • Getting Started
    • Introduction
    • Quickstart Tutorial
  • API Overview
    • API Keys
    • Authentication
    • Protocol
    • Response Body
    • Idempotence
    • Pagination
    • Rate Limiting
    • Downloading Files
    • API Logs
    • Request IDs
  • Versioning
    • API Changelog
    • Versioning
  • Troubleshooting
    • Error Handling
  • API Reference
    • OpenAPI Specification
    • Cases
    • Connect
    • Documents
    • Inquiries
    • List Items
    • Lists
    • OAuth
    • Reports
    • Transactions
    • Verifications
    • Workflows
  • Webhooks
      • POSTInquiry created
      • POSTInquiry started
      • POSTInquiry expired
      • POSTInquiry completed
      • POSTInquiry failed
      • POSTInquiry marked for review
      • POSTInquiry approved
      • POSTInquiry declined
      • POSTInquiry transitioned
      • POSTInquiry redacted
      • POSTInquiry reusable-persona created
      • POSTInquiry reusable-persona used
      • POSTInquiry tags updated
LogoLogo
Help CenterOpenAPI SpecStatus
WebhooksInquiry Events

Inquiry redacted

Payload
1{
2 "data": {
3 "attributes": {
4 "created-at": "2024-09-15T00:00:00.100Z",
5 "name": "inquiry.redacted",
6 "payload": {
7 "data": {
8 "id": "inq_kT4xVnR2bPmYwL9sTgD3cExZ",
9 "attributes": {
10 "status": "approved",
11 "behaviors": {},
12 "tags": [],
13 "creator": "creator@example.com",
14 "created-at": "2024-03-15T18:30:00.000Z",
15 "updated-at": "2024-09-15T00:00:00.000Z",
16 "started-at": "2024-03-15T18:31:00.000Z",
17 "decisioned-at": "2024-03-15T18:35:00.000Z",
18 "redacted-at": "2024-09-15T00:00:00.000Z",
19 "previous-step-name": "verification_selfie",
20 "next-step-name": "success",
21 "fields": {
22 "name-first": {
23 "type": "string"
24 },
25 "name-last": {
26 "type": "string"
27 },
28 "address-street-1": {
29 "type": "string"
30 },
31 "address-city": {
32 "type": "string"
33 },
34 "address-subdivision": {
35 "type": "string"
36 },
37 "address-postal-code": {
38 "type": "string"
39 },
40 "address-country-code": {
41 "type": "string"
42 },
43 "birthdate": {
44 "type": "date"
45 },
46 "email-address": {
47 "type": "string"
48 },
49 "phone-number": {
50 "type": "string"
51 },
52 "identification-number": {
53 "type": "string"
54 }
55 }
56 },
57 "relationships": {
58 "account": {
59 "data": {
60 "id": "act_fJ8mQpDLrYvNcBzWk5HsAxRy",
61 "type": "account"
62 }
63 },
64 "documents": {
65 "data": []
66 },
67 "template": {},
68 "inquiry-template": {
69 "data": {
70 "id": "itmpl_AbN9KvR4LmT2WqYxPdHsZgFc",
71 "type": "inquiry-template"
72 }
73 },
74 "inquiry-template-version": {
75 "data": {
76 "id": "itmplv_LqX3jYwK7HnRpZmCvBdF8RtA",
77 "type": "inquiry-template-version"
78 }
79 },
80 "reports": {
81 "data": []
82 },
83 "transaction": {},
84 "reviewer": {
85 "data": {
86 "id": "wfr_M7vXNqRpL3kBzW4tYcHdJgFs",
87 "type": "workflow-run"
88 }
89 },
90 "selfies": {
91 "data": []
92 },
93 "sessions": {
94 "data": []
95 },
96 "verifications": {
97 "data": [
98 {
99 "id": "ver_X3kHmRqV9YpZ2nBwL5tGdJcE",
100 "type": "verification/government-id"
101 }
102 ]
103 }
104 },
105 "type": "inquiry"
106 },
107 "included": [
108 {
109 "type": "inquiry-template",
110 "attributes": {
111 "name": "Example KYC Template",
112 "status": "active"
113 },
114 "id": "itmpl_AbN9KvR4LmT2WqYxPdHsZgFc",
115 "relationships": {
116 "latest-published-version": {
117 "data": {
118 "type": "inquiry-template-version",
119 "id": "itmplv_LqX3jYwK7HnRpZmCvBdF8RtA"
120 }
121 }
122 }
123 },
124 {
125 "type": "inquiry-template-version",
126 "attributes": {
127 "name-display": "Example KYC Flow",
128 "status": "published"
129 },
130 "id": "itmplv_LqX3jYwK7HnRpZmCvBdF8RtA",
131 "relationships": {
132 "inquiry-template": {
133 "data": {
134 "type": "inquiry-template",
135 "id": "itmpl_AbN9KvR4LmT2WqYxPdHsZgFc"
136 }
137 }
138 }
139 }
140 ]
141 }
142 },
143 "id": "evt_jKlMnOpQrStUvWxYzAbCdEfG",
144 "type": "event"
145 }
146}
Webhook for the `inquiry.redacted` event. An Inquiry can be redacted directly (via the dashboard or API) or as part of cascading redaction triggered by an Account redaction or an automated retention policy. A redacted Inquiry preserves its **current** `status` — which may be any value, including `created`, `pending`, or `needs_review` for inquiries redacted before finalization, in addition to the terminal states (`approved`, `declined`, `completed`, `failed`, `expired`). Operational timestamps (`created-at`, `started-at`, `decisioned-at`, etc.) are preserved. The distinguishing signal is `redacted-at`, which is non-null on this event. **Do not detect redaction from `status`** — there is no `redacted` enum value. On the redacted payload, PII attributes are nulled out regardless of the redaction path: the deprecated top-level identity attributes (`name-first`, `name-middle`, `name-last`, `address-*`, `birthdate`, `email-address`, `phone-number`, `identification-number`, `social-security-number`) and the corresponding entries inside `fields`, plus `note`. `tags` is emptied via cascading on inquiry tags. `reference-id` is `null` **only when the parent Account is also redacted** (the cascading case). On a direct Inquiry redaction that leaves the parent Account intact, `reference-id` can remain populated. For more info see [Webhooks Overview](https://docs.withpersona.com/webhooks).
Was this page helpful?
Previous

Inquiry reusable-persona created

Next
Built with

Webhook for the inquiry.redacted event. An Inquiry can be redacted directly (via the dashboard or API) or as part of cascading redaction triggered by an Account redaction or an automated retention policy.

A redacted Inquiry preserves its current status — which may be any value, including created, pending, or needs_review for inquiries redacted before finalization, in addition to the terminal states (approved, declined, completed, failed, expired). Operational timestamps (created-at, started-at, decisioned-at, etc.) are preserved. The distinguishing signal is redacted-at, which is non-null on this event. Do not detect redaction from status — there is no redacted enum value.

On the redacted payload, PII attributes are nulled out regardless of the redaction path: the deprecated top-level identity attributes (name-first, name-middle, name-last, address-*, birthdate, email-address, phone-number, identification-number, social-security-number) and the corresponding entries inside fields, plus note. tags is emptied via cascading on inquiry tags.

reference-id is null only when the parent Account is also redacted (the cascading case). On a direct Inquiry redaction that leaves the parent Account intact, reference-id can remain populated. For more info see Webhooks Overview.

Headers

Persona-SignaturestringOptional

Header. An HMAC that you should use to check that requests are authentic. Compare this value with your own digest, computed from the request body and your webhook secret. For more info see Webhook Best Practices.

Persona-Webhook-Attempts-MadeintegerOptional
The number of times that Persona has attempted to deliver this webhook. This value is incremented each time Persona attempts to deliver the webhook, regardless of whether the delivery was successful.
Persona-Webhook-Attempts-LeftintegerOptional
The number of times that Persona will attempt to deliver this webhook. This value is decremented each time Persona attempts to deliver the webhook.
Persona-Webhook-First-Attempted-AtintegerOptional
The time at which Persona first attempted to deliver this webhook. This value is a Unix timestamp in seconds.

Payload

The payload of this webhook request is an object.
dataobjectOptional

Response

200

Return a 2xx status code to indicate that the data was received successfully. Any other status will trigger retries. For more info see Retry Logic.