Skip to content

Commit 343c284

Browse files
committed
feat(persona): complete API coverage — inquiry lifecycle, account update/redact, report listing, template discovery
1 parent 5c0b99b commit 343c284

16 files changed

Lines changed: 1131 additions & 14 deletions

apps/docs/content/docs/en/tools/persona.mdx

Lines changed: 169 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ In Sim, the Persona block lets your agents drive identity verification as part o
2626

2727
## Usage Instructions
2828

29-
Integrate Persona identity verification into the workflow. Create and decision inquiries, generate one-time verification links, manage accounts, bulk-import accounts from CSV, run watchlist and adverse media reports, review cases, and retrieve verifications and documents.
29+
Integrate Persona identity verification into the workflow. Manage the full inquiry lifecycle (create, update, approve, decline, review, resume, expire, redact), generate one-time verification links and PDF summaries, manage accounts including CSV bulk import, run watchlist and adverse media reports, review cases, retrieve verifications and documents, and discover inquiry templates.
3030

3131

3232

@@ -95,6 +95,27 @@ List identity verification inquiries, optionally filtered by status, account ID,
9595
| `inquiries` | array | Inquiries matching the filters |
9696
| `nextCursor` | string | Cursor for the next page \(pass as pageAfter\), or null on the last page |
9797

98+
### `persona_update_inquiry`
99+
100+
Update an inquiry’s note, fields, tags, or redirect URI. Only the provided values are changed.
101+
102+
#### Input
103+
104+
| Parameter | Type | Required | Description |
105+
| --------- | ---- | -------- | ----------- |
106+
| `apiKey` | string | Yes | Persona API key |
107+
| `inquiryId` | string | Yes | Inquiry ID to update \(starts with inq_\) |
108+
| `note` | string | No | Free-form note to set on the inquiry |
109+
| `fields` | json | No | JSON object of field name to field value pairs to set, as defined by the inquiry template \(e.g. \{"name-first": "Jane"\}\) |
110+
| `tags` | array | No | JSON array of tag names to set on the inquiry \(e.g. \["vip"\]\) |
111+
| `redirectUri` | string | No | URI to redirect the individual to after completing the inquiry flow |
112+
113+
#### Output
114+
115+
| Parameter | Type | Description |
116+
| --------- | ---- | ----------- |
117+
| `inquiry` | object | The updated inquiry |
118+
98119
### `persona_approve_inquiry`
99120

100121
Approve an identity verification inquiry. Approving prevents further progress on the inquiry and triggers any associated workflows and webhooks.
@@ -129,6 +150,58 @@ Decline an identity verification inquiry. Declining prevents further progress on
129150
| --------- | ---- | ----------- |
130151
| `inquiry` | object | The declined inquiry |
131152

153+
### `persona_mark_inquiry_for_review`
154+
155+
Mark an identity verification inquiry for manual review, moving it to the needs_review status.
156+
157+
#### Input
158+
159+
| Parameter | Type | Required | Description |
160+
| --------- | ---- | -------- | ----------- |
161+
| `apiKey` | string | Yes | Persona API key |
162+
| `inquiryId` | string | Yes | Inquiry ID to mark for review \(starts with inq_\) |
163+
164+
#### Output
165+
166+
| Parameter | Type | Description |
167+
| --------- | ---- | ----------- |
168+
| `inquiry` | object | The inquiry marked for review |
169+
170+
### `persona_resume_inquiry`
171+
172+
Resume a pending or expired inquiry, creating a new session so the individual can continue verification. Returns a session token.
173+
174+
#### Input
175+
176+
| Parameter | Type | Required | Description |
177+
| --------- | ---- | -------- | ----------- |
178+
| `apiKey` | string | Yes | Persona API key |
179+
| `inquiryId` | string | Yes | Inquiry ID to resume \(starts with inq_\) |
180+
181+
#### Output
182+
183+
| Parameter | Type | Description |
184+
| --------- | ---- | ----------- |
185+
| `inquiry` | object | The resumed inquiry |
186+
| `sessionToken` | string | Session token for the new inquiry session, used to continue the flow in embedded SDKs |
187+
188+
### `persona_expire_inquiry`
189+
190+
Expire an in-progress inquiry, invalidating its sessions and one-time links so the individual can no longer continue it.
191+
192+
#### Input
193+
194+
| Parameter | Type | Required | Description |
195+
| --------- | ---- | -------- | ----------- |
196+
| `apiKey` | string | Yes | Persona API key |
197+
| `inquiryId` | string | Yes | Inquiry ID to expire \(starts with inq_\) |
198+
199+
#### Output
200+
201+
| Parameter | Type | Description |
202+
| --------- | ---- | ----------- |
203+
| `inquiry` | object | The expired inquiry |
204+
132205
### `persona_generate_inquiry_link`
133206

134207
Generate a one-time link for an inquiry that the individual can open to complete their identity verification.
@@ -166,6 +239,23 @@ Download a PDF summary of an inquiry, including its collected information and ve
166239
| --------- | ---- | ----------- |
167240
| `file` | file | PDF summary of the inquiry, stored in execution files |
168241

242+
### `persona_redact_inquiry`
243+
244+
Permanently delete all personally identifiable information collected by an inquiry, for example to honor a data deletion request. This cannot be undone.
245+
246+
#### Input
247+
248+
| Parameter | Type | Required | Description |
249+
| --------- | ---- | -------- | ----------- |
250+
| `apiKey` | string | Yes | Persona API key |
251+
| `inquiryId` | string | Yes | Inquiry ID to redact \(starts with inq_\) |
252+
253+
#### Output
254+
255+
| Parameter | Type | Description |
256+
| --------- | ---- | ----------- |
257+
| `inquiry` | object | The redacted inquiry \(PII fields are removed\) |
258+
169259
### `persona_create_account`
170260

171261
Create an account that represents an individual in Persona. Accounts consolidate inquiries, verifications, and reports for the same person.
@@ -224,6 +314,27 @@ List accounts in your Persona organization, optionally filtered by reference ID.
224314
| `accounts` | array | Accounts matching the filters |
225315
| `nextCursor` | string | Cursor for the next page \(pass as pageAfter\), or null on the last page |
226316

317+
### `persona_update_account`
318+
319+
Update an account’s reference ID, country code, fields, or tags. Only the provided values are changed.
320+
321+
#### Input
322+
323+
| Parameter | Type | Required | Description |
324+
| --------- | ---- | -------- | ----------- |
325+
| `apiKey` | string | Yes | Persona API key |
326+
| `accountId` | string | Yes | Account ID to update \(starts with act_\) |
327+
| `referenceId` | string | No | Reference ID that refers to an entity in your user model |
328+
| `countryCode` | string | No | ISO 3166-1 alpha-2 country code \(e.g. US\) |
329+
| `fields` | json | No | JSON object of field name to field value pairs to set, as defined by the account type \(e.g. \{"name-first": "Jane"\}\) |
330+
| `tags` | array | No | JSON array of tag names to set on the account \(e.g. \["vip"\]\) |
331+
332+
#### Output
333+
334+
| Parameter | Type | Description |
335+
| --------- | ---- | ----------- |
336+
| `account` | object | The updated account |
337+
227338
### `persona_import_accounts`
228339

229340
Bulk-import accounts into Persona from a CSV file. Returns an importer whose status can be polled until processing completes.
@@ -241,6 +352,23 @@ Bulk-import accounts into Persona from a CSV file. Returns an importer whose sta
241352
| --------- | ---- | ----------- |
242353
| `importer` | object | The created account importer |
243354

355+
### `persona_redact_account`
356+
357+
Permanently delete all personally identifiable information stored on an account, for example to honor a data deletion request. This cannot be undone.
358+
359+
#### Input
360+
361+
| Parameter | Type | Required | Description |
362+
| --------- | ---- | -------- | ----------- |
363+
| `apiKey` | string | Yes | Persona API key |
364+
| `accountId` | string | Yes | Account ID to redact \(starts with act_\) |
365+
366+
#### Output
367+
368+
| Parameter | Type | Description |
369+
| --------- | ---- | ----------- |
370+
| `account` | object | The redacted account \(PII fields are removed\) |
371+
244372
### `persona_list_cases`
245373

246374
List manual review cases, optionally filtered by status, account ID, or reference ID. Results are cursor-paginated.
@@ -322,6 +450,27 @@ Retrieve a single screening report by ID, including its status, match results, a
322450
| --------- | ---- | ----------- |
323451
| `report` | object | The retrieved report |
324452

453+
### `persona_list_reports`
454+
455+
List screening reports, optionally filtered by account ID or reference ID. Results are cursor-paginated.
456+
457+
#### Input
458+
459+
| Parameter | Type | Required | Description |
460+
| --------- | ---- | -------- | ----------- |
461+
| `apiKey` | string | Yes | Persona API key |
462+
| `accountId` | string | No | Filter by account ID \(starts with act_\) |
463+
| `referenceId` | string | No | Filter by reference ID |
464+
| `pageSize` | number | No | Number of reports to return per page \(1-100, default 10\) |
465+
| `pageAfter` | string | No | Pagination cursor: return reports after this report ID |
466+
467+
#### Output
468+
469+
| Parameter | Type | Description |
470+
| --------- | ---- | ----------- |
471+
| `reports` | array | Reports matching the filters |
472+
| `nextCursor` | string | Cursor for the next page \(pass as pageAfter\), or null on the last page |
473+
325474
### `persona_get_verification`
326475

327476
Retrieve a single verification by ID (government ID, selfie, document, database, and more), including its status and the checks that ran.
@@ -356,4 +505,23 @@ Retrieve a single document by ID (government ID, generic document, and more), in
356505
| --------- | ---- | ----------- |
357506
| `document` | object | The retrieved document |
358507

508+
### `persona_list_inquiry_templates`
509+
510+
List the inquiry templates in your Persona organization, to discover template IDs for creating inquiries. Results are cursor-paginated.
511+
512+
#### Input
513+
514+
| Parameter | Type | Required | Description |
515+
| --------- | ---- | -------- | ----------- |
516+
| `apiKey` | string | Yes | Persona API key |
517+
| `pageSize` | number | No | Number of templates to return per page \(1-100, default 10\) |
518+
| `pageAfter` | string | No | Pagination cursor: return templates after this template ID |
519+
520+
#### Output
521+
522+
| Parameter | Type | Description |
523+
| --------- | ---- | ----------- |
524+
| `inquiryTemplates` | array | Inquiry templates in the organization |
525+
| `nextCursor` | string | Cursor for the next page \(pass as pageAfter\), or null on the last page |
526+
359527

0 commit comments

Comments
 (0)