---
title: "Session Model"
slug: "session-model"
updated: 2025-06-27T20:11:28Z
published: 2025-06-27T20:11:28Z
canonical: "docs.onespan.com/session-model"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.onespan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Session Model

The OneSpan Identity Verification Session model defines data that is necessary for rendering and executing the current step in the e-agreement workflow. The session identifies the current signer, the language preference, session time-out information, presentation details, and other information.

## Session properties

The session resource contains context information that is necessary for executing the interactive part of the e-agreement process by a user (participant). From the perspective of transaction metadata, session data is transient.

[Session properties](/docs/session-model#tab_Session_model_properties) lists the session properties in OneSpan Identity Verification.

- Path: .../properties/transaction/properties/session
- Type: object

| **Session properties** |
| --- |
| Property | Type | Description |
| created | String | The date/time when the session was created in UTC. - Maximum length: 30 - Minimum length:20 - Format: date-time |
| currentStep | Integer | The step number for the progress indicator. Default value: 0 |
| id | String | The session UUID. - Maximum length: 64 - Minimum length: 36 - Pattern: ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fAF0-9]{4}-[a-fA-F0-9]{12}$ |
| last_request | String | The timestamp of the last request that was received in the context of this session. - Maximum length: 30 - Minimum length: 20 - Format: date-time |
| role | String | The role associated with the session. - Maximum length: 32 - Minimum length: 1 Default value: unknown |
| totalSteps | Integer | The total number of steps for the progress indicator. Default value: 0 |
| user_agent | String | User agent from the request header. |
| verifications | Array | The list of verification workflows as defined for this tenant. Schema: ../common/common.schema.3.0.verification.json |
| version | Integer | The version of the session record. Read-only property. Default value: 0 |
| view_state | Object | This element carries information that defines the view that is displayed in the current workflow step. For the list of view_state properties, see [view_state properties](/docs/session-model#Tab_viewStateProperties). |

<editor360-custom-block data-preprocessing="true" data-sanitizationtags="a"><div data-type="table-content"> <table width="100%" class=" fr-alternate-rows editor360-table" borderstyle="Solid"> <colgroup style="display:none;"> <col style="width:195px;"> <col style="width:122px;"> <col style="width:250px;"> </colgroup> <tbody> <tr> <td colspan="3" rowspan="1" colwidth="195,122" style="vertical-align:middle;text-align:left;"> <p data-block-id="a46d48f4-e8e6-4bdd-aa5f-84263ea75afc"><a name="Tab_viewStateProperties" display="false"></a><span class="vdsCodeBasic" type="spanMark"><strong>view_state</strong></span><strong> properties</strong></p> </td> </tr> <tr> <th colspan="1" rowspan="1" colwidth="195" class="TableStyle-Global-HeadE-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="f130c760-8e36-40ec-9a81-9975fd2fa4b8">Property</p> </th> <th colspan="1" rowspan="1" colwidth="122" class="TableStyle-Global-HeadE-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="7033be7f-613c-4107-b88d-e3bc52635515">Type</p> </th> <th colspan="1" rowspan="1" class="TableStyle-Global-HeadD-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="a0a41b8e-8cdc-4a0e-ac14-bb841db70f7a">Description</p> </th> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="514ceec8-6a31-441b-b096-8e43c8bfe751"><span class="vdsCodeBasic" type="spanMark">error</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="2ef92620-67c2-4267-8db9-2f9d67666cce"> </p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="404c03ec-0ac1-45ca-b607-8c0a605f1a26">Schema: <span class="vdsFilename" type="spanMark">transaction.schema.3.0.ux-component-config.json</span></p> </td> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="7592d285-8e0c-4a3f-a10b-1ab027be1606"><span class="vdsCodeBasic" type="spanMark">footer</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="f40bb725-5657-4fa9-8b41-3445d511944e"> </p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="aa76d79d-77d9-453a-b246-cd73d2171130">Schema: <span class="vdsFilename" type="spanMark">transaction.schema.3.0.ux-component-config.json</span></p> </td> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="80083b04-d988-4a3d-8b68-793244aafa70"><span class="vdsCodeBasic" type="spanMark">header</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="df3133fc-5ae3-4b1c-b40a-9a05df18754f"> </p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="52a0c377-d050-442a-b89e-4f3789840844">Schema: <span class="vdsFilename" type="spanMark">transaction.schema.3.0.ux-component-config.json</span></p> </td> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="cdef71b8-4135-4250-b9e6-2f2d76438d49"><span class="vdsCodeBasic" type="spanMark">page</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="98f49319-4d56-4413-b107-c786c2f9b952"> </p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="8b4237e0-63ad-43f5-91b8-7176fe0923f5">Schema: <span class="vdsFilename" type="spanMark">transaction.schema.3.0.ux-component-config.json</span></p> </td> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="f66b143b-234c-409d-97ca-055819a9a2e8"><span class="vdsCodeBasic" type="spanMark">session_management</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="b809aff3-bb76-40de-a6d9-6d2a42745877">Object</p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="69d07535-965b-4b48-acc2-29ea7640eaf1">This is a free JSON form that carries all configuration data required by the page (workflow element) of a given type.</p> <p data-block-id="2981b7e5-309e-449c-8f2a-a0c222cf4761">The configuration data is retrieved from the configuration service and passed as is to <span class="vdsCodeBasic" type="spanMark">CWF UX</span>. This accepts anything, provided it is valid JSON format.</p> <p data-block-id="ca983c4f-bfa1-434b-93db-174462d14a00">For the list of <span class="vdsCodeBasic" type="spanMark">session_management</span> properties, see <a href="/docs/session-model#Tab_sessionManagementProperties" class="MCXref_0" rel="noopener">session_management properties</a>.</p> </td> </tr> <tr> <td colspan="1" rowspan="1" colwidth="195" style="vertical-align:middle;text-align:left;"> <p data-block-id="18cc790d-c031-4e35-8d93-ee2e9eb9e061"><span class="vdsCodeBasic" type="spanMark">wait</span></p> </td> <td colspan="1" rowspan="1" colwidth="122" style="vertical-align:middle;text-align:left;"> <p data-block-id="1b49c29d-e467-4024-ba70-a208e07ca881"> </p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="41f0846a-4900-4c06-ab5f-f07a46dcc409">Schema: <span class="vdsFilename" type="spanMark">transaction.schema.3.0.ux-component-config.json</span></p> </td> </tr> </tbody> </table></div></editor360-custom-block><editor360-custom-block data-preprocessing="true" data-sanitizationtags="a"><div data-type="table-content"> <table width="100%" class=" fr-alternate-rows editor360-table" borderstyle="Solid"> <colgroup style="display:none;"> <col> <col style="width:196px;"> <col style="width:250px;"> </colgroup> <tbody> <tr> <td colspan="3" rowspan="1" colwidth="0,196" style="vertical-align:middle;text-align:left;"> <p data-block-id="64cb9109-a769-45ee-8181-8c2026a2abb1"><a name="Tab_sessionManagementProperties" display="false"></a><span class="vdsCodeBasic" type="spanMark"><strong>session_management</strong></span><strong> properties</strong></p> </td> </tr> <tr> <th colspan="1" rowspan="1" class="TableStyle-Global-HeadE-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="2113f870-d58d-48d3-8db3-e03952b35861">Property</p> </th> <th colspan="1" rowspan="1" colwidth="196" class="TableStyle-Global-HeadE-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="a39d0d0b-2a11-4805-87ad-3947f0ce1148">Type</p> </th> <th colspan="1" rowspan="1" class="TableStyle-Global-HeadD-Column-MainHeader" style="vertical-align:middle;text-align:left;"> <p data-block-id="0d350664-e0e9-4293-a14f-e1a65e6a9c37">Description</p> </th> </tr> <tr> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="35674c67-f903-4344-86e7-84f9c74ed659"><span class="vdsCodeBasic" type="spanMark">active</span></p> </td> <td colspan="1" rowspan="1" colwidth="196" style="vertical-align:middle;text-align:left;"> <p data-block-id="669c8cb8-c1d7-4b78-97d1-d3edeb59de56">Boolean</p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="23bddca4-00b0-4d23-b3a7-beef0606ecee">Timestamp. Flag that indicates the active session.</p> </td> </tr> <tr> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="c36b9190-9864-403e-8f3e-ddb5f4003624"><span class="vdsCodeBasic" type="spanMark">end</span></p> </td> <td colspan="1" rowspan="1" colwidth="196" style="vertical-align:middle;text-align:left;"> <p data-block-id="9c596f11-9584-4ab3-99e0-d9eba268477d">Integer</p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="f2013148-0a3c-45b8-9d0a-d7453e52aceb">Timestamp. The time-out for this session.</p> </td> </tr> <tr> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="d5d392c0-2b2e-4e70-8189-0669bbf960cf"><span class="vdsCodeBasic" type="spanMark">warning</span></p> </td> <td colspan="1" rowspan="1" colwidth="196" style="vertical-align:middle;text-align:left;"> <p data-block-id="bb242a5f-94a9-4257-91b1-cbe310b8c295">Integer</p> </td> <td colspan="1" rowspan="1" style="vertical-align:middle;text-align:left;"> <p data-block-id="1fb45a91-277c-4c17-aec4-e067bc3818f1">Timestamp. Warning when the session ends.</p> </td> </tr> </tbody> </table></div></editor360-custom-block>

## Example session

1. {
2. "created": 1552498394341,
3. "id": "66e326gb-92ea-482b-8375-75f01e72d26a",
4. "verifications": [],
5. "last request": 1552498394362,
6. "role": "Role",
7. "currentStep": 0,
8. "totalSteps": 0,
9. "user_agent":"Mozilla/5.0",
10. "version": 1,
11. "view_state": {,
12. "header": {,
13. "type": "simple_header",
14. "config": {,
15. "logo": "logo.png",
16. "text": "OneSpan"
17. "text_url": "https://www.onespan.com",
18. },
19. "...": "..."
20. }
21. "footer" {
22. "type": "simple_footer"
23. "config": {
24. "links": [{
25. "text": "OneSpan"
26. "url": "https://www.onespan.com"
27. }
28. ],
29. "copyright": "All rights reserved"
30. },
31. "...": "...":
32. },
33. "page": {
34. "type": "introduction:A",
35. "config": {
36. "...": "..."
37. },
38. "error": {
39. "type": "simple_error",
40. "...": "..."
41. },
42. "wait": {
43. "type": "simple_wait",
44. "...": "..."
45. },
46. "session_management": {
47. "warning": 240,
48. "end": 360,
49. "active": true
50. }
51. }
52. }
