---
title: "Delete session"
slug: "v1sessionsid-3"
updated: 2026-04-24T06:12:25Z
published: 2026-04-24T06:12:25Z
---

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

# Delete session

Delete/v1/sessions/{id}

### Requests the deletion of a session

#### When to use this endpoint

- Use this endpoint when you need to delete a session, for example you used the session
to test your integration
- The endpoint is not available by default, contact your Solutions Engineer or Veriff Customer Support
to enable it for your integration

#### Session deletion logic

- Sessions can only be deleted when they are in one of the following states:
  - `created`: session has been created
  - `started`: the end-user has entered the session flow
  - `approved`: verification was successful
  - `declined`: verification was declined due to some reason
  - `resubmission_requested`: additional attempt needed
  - `expired`: session expired before completion
  - `abandoned`: session started but never completed
- Attempting to delete the session in other statuses will respond with the `Session is not in a completed status.` error message
- If session status is one of `created`, `started` or `resubmission_requested`, a decision webhook with `expired/abandoned` status will be sent
- After successful request, session will immediately become unavailable in Veriff Customer Portal and via public API endpoints. Data will be deleted within 12 hours

#### Rate limiting

- This endpoint is rate limited: 10 sessions per 24 hours and 5 sessions per 1 hour

#### Implementation notes

- This endpoint is not available by default, contact your Solutions Engineer or Veriff Customer Support to enable it for your integration
- This endpoint requires session-level [HMAC signature](https://devdocs.veriff.com/docs/hmac-authentication-and-endpoint-security#public-api-v1) authentication
- Always ensure that you use the correct API URL to send requests. See the [API URL section](https://devdocs.veriff.com/apidocs/veriff-public-api-guides#api-url) for more info.
- The order of parameters in the real API response can differ from the order you see in this documentation. This is expected and part of the [Backwards compatible changes](https://devdocs.veriff.com/apidocs/veriff-public-api-guides#backwards-compatible-changes) requirements.

Header parametersX-AUTH-CLIENTstringRequired

Your integration's API key (occasionally referred to as the "Token", "API public key" or "Publishable key"). Required for all API requests.

You can find your API key in the Veriff Customer Portal > Settings > API keys.

Exampleyour_api_key
X-HMAC-SIGNATUREstringRequired

Session ID signed with the shared secret key. Required to authenticate the request sender.

Examplegenerated_hmac_signature_value

Path parametersidstring (uuid) Required

Verification session ID.

Example123e4567-e89b-12d3-a456-426614174000

Responses200

Session successfully deleted.

HeadersContent-TypestringResponse content type.Exampleapplication/json
X-AUTH-CLIENTstringAPI key echoed back in response.Exampleyour_api_key
X-HMAC-SIGNATUREstringResponse body signed with the shared secret key. Required to authenticate the response sender.Examplegenerated_hmac_signature_value
<select class='api-response-data' aria-label='Media type'><option value='83247429-a76d-4f84-b1b5-b6723c92949a'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='95d63946-ae9e-4c36-8120-a0e007d26609'>successful_deletion</option>
</select>successful_deletion

Session and all associated data permanently deleted.

```json
{
  "status": "success",
  "verification": {
    "id": "123e4567-e89b-12d3-a456-426614174000"
  }
}
```

Expand Allobject  

Confirmation response after successful session deletion.

statusstring    

API request status

Examplesuccess
verificationobject  

Verification object containing deleted session ID.

idstring  (uuid)    

UUID v4 which identifies the verification session that was deleted.

Example123e4567-e89b-12d3-a456-426614174000

400

Bad request - session cannot be deleted

HeadersContent-TypestringResponse content type.Exampleapplication/json
<select class='api-response-data' aria-label='Media type'><option value='27943640-a86a-4df7-b0d7-de8a7fb10ce9'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='195ee4e8-2f88-46b5-88a6-7bf644249909'>session_not_completed</option>
<option value='b3e6eee6-c9e8-40e8-8f84-2b3ae281d0d0'>session_in_progress</option>
</select>session_not_completed

Session must be in a completed state (`approved`, `declined`, `expired`, `abandoned`) before deletion

```json
{
  "status": "fail",
  "code": "1305",
  "message": "Session is not in a completed status."
}
```

session_in_progress

Cannot delete session while end-user is actively completing verification

```json
{
  "status": "fail",
  "code": "1306",
  "message": "Session in progress."
}
```

OneOfDeleteSessionNotCompletedBadRequestErrorResponseobject (DeleteSessionNotCompletedBadRequestErrorResponse)statusstring    

API request status.

Valid values[
  "fail"
]Examplefail
codestring    

Veriff-specific error code for session not completed.

Example1305
messagestring    

Error message explaining the session must be in a final state before deletion.

ExampleSession is not in a completed status.

DeleteSessionInProgressBadRequestErrorResponseobject (DeleteSessionInProgressBadRequestErrorResponse)statusstring    

API request status.

Valid values[
  "fail"
]Examplefail
codestring    

Veriff-specific error code for session in progress.

Example1306
messagestring    

Error message indicating session is currently being completed by end-user.

ExampleSession in progress.

401

Unauthorized - authentication failed

HeadersContent-TypestringResponse content type.Exampleapplication/json
<select class='api-response-data' aria-label='Media type'><option value='7fe9f496-eddb-40af-a9ab-cb33e81f41c2'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='95beab78-6bc5-4d86-94a3-9c80e9a38407'>missing_api_key</option>
<option value='cd890053-d997-461d-8b1f-b1d99a37c9a9'>invalid_hmac</option>
</select>missing_api_key

```json
{
  "status": "fail",
  "code": "1101",
  "message": "Mandatory X-AUTH-CLIENT header containing the API key is missing from the request."
}
```

invalid_hmac

Invalid HMAC signature

```json
{
  "status": "fail",
  "code": "1812",
  "message": "Signature verification failed."
}
```

object  statusstring    Valid values[
  "fail"
]Examplefail
codestring    Example1101
messagestring    ExampleMandatory X-AUTH-CLIENT header containing the API key is missing from the request.

404

Session not found

HeadersContent-TypestringResponse content type.Exampleapplication/json
X-AUTH-CLIENTstringAPI key echoed back in response.Exampleyour_api_key
X-HMAC-SIGNATUREstringResponse body signed with the shared secret key. Required to authenticate the response sender.Examplegenerated_hmac_signature_value
<select class='api-response-data' aria-label='Media type'><option value='d14398c0-081d-42ae-b52c-bd942f90092f'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='7416a158-4daf-4f71-8335-10f5f87bcc08'>session_not_found</option>
</select>session_not_found

No session found with the provided ID or session was already deleted

```json
{
  "status": "fail",
  "code": "1101",
  "message": "Resource not found"
}
```

object  statusstring    Valid values[
  "fail"
]Examplefail
codestring    Example1101
messagestring    ExampleResource not found

429

Too many requests - rate limit exceeded

HeadersContent-TypestringResponse content type.Exampleapplication/json
X-AUTH-CLIENTstringAPI key echoed back in response.Exampleyour_api_key
X-HMAC-SIGNATUREstringResponse body signed with the shared secret key. Required to authenticate the response sender.Examplegenerated_hmac_signature_value
<select class='api-response-data' aria-label='Media type'><option value='51eeb6d0-034e-44a0-97fd-8a20efcef65e'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='b0cac856-8dc7-4728-9d02-0101128180e3'>rate_limit_exceeded</option>
</select>rate_limit_exceeded

Too many deletion requests sent in a short period

```json
{
  "status": "fail",
  "code": "1004",
  "message": "Too many requests."
}
```

object  statusstring    Valid values[
  "fail"
]Examplefail
codestring    Example1004
messagestring    ExampleToo many requests.

500

Internal server error

HeadersContent-TypestringResponse content type.Exampleapplication/json
X-AUTH-CLIENTstringAPI key echoed back in response.Exampleyour_api_key
X-HMAC-SIGNATUREstringResponse body signed with the shared secret key. Required to authenticate the response sender.Examplegenerated_hmac_signature_value
<select class='api-response-data' aria-label='Media type'><option value='67b00efa-1c1e-4a47-b86c-37832ba9d780'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='a5860391-f87c-46b5-8f18-25b46941d94f'>server_error</option>
</select>server_error

```json
{
  "status": "fail",
  "code": "1101",
  "message": "Something went wrong"
}
```

object  statusstring    Valid values[
  "fail"
]Examplefail
codestring    Example1101
messagestring    ExampleSomething went wrong

		
			

<title style="font-size:15px;">Document Versioning</title>

**Changelog**

| Date | Description |
| --- | --- |
| Apr 24, 2026 | 400 response `status` parameter updated from numeric to string |
| Apr 17, 2026 | Typo fixed |
| Apr 1, 2026 | Typo fixed |
| Mar 9, 2026 | Documentation updated: parent categories rearranged, intro section expanded, request and response examples added |
| Oct 2, 2025 | `vrf-` headers removed from response headers |
| Aug 6, 2025 | Response headers added |
| Mar 12, 2025 | Documentation published |
