Unlock

Unlock selected leaks by ID

Unlock leaks by their IDs for the authenticated account if they have enough points.

Request body

  • leak_ids array of leak IDs to unlock (max 10,000). Duplicates are ignored while preserving order.

Behavior

  • Requires an active paid subscription.
  • 1 point per leak. Points are charged up front and partially refunded if some items were already unlocked during processing.
  • Only found leaks are processed. If none are found, the request fails.
  • The response reflects the final unlocked state from the account-level index.

Visibility

  • id is included only for paid users.
  • Credentials are included only for items with unlocked=true.

Errors

  • 400 No leak IDs provided, too many leak IDs, insufficient points, or all selected data already unlocked.
  • 401 Unauthorized.
  • 403 Forbidden: subscription does not allow unlocking.
  • 404 The provided target_list_id does not exist.
  • 410 The selected data is no longer available (refresh your search).
  • 422 Validation error.
  • 500 Billing or indexation error while unlocking.
post/unlock

Request body

leak_idsstring[] required

List of leak document IDs to unlock.

target_list_idinteger nullable

Optional list id to assign to newly unlocked items.

Example request

{
  "leak_ids": [
    "3f1a9c2b7e",
    "8d4e0a1f6c"
  ],
  "target_list_id": 42
}

Response

Selected leaks successfully unlocked.

idstring nullable

Unique leak identifier. Only returned when the item is unlocked or the plan includes full access.

urlstring nullable

Source URL where the credentials were found. Redacted for locked items on non-advanced plans.

usernamestring nullable

Leaked username or email address. Masked when locked.

username_maskedstring nullable

Partially masked version of the username (e.g. j***@example.com).

passwordstring nullable

Leaked password. Only returned when the item is unlocked.

password_strengthinteger nullable

Password strength raw score (integer, 0+). Categories: too_weak (0-2), weak (3-4), medium (5-7), strong (8+).

unlockedboolean

Whether this item has been unlocked by the current account.

is_emailboolean nullable

True if the username is an email address, false if it is a plain username.

added_atstring date-time nullable

Date when this leak was added to the database.

statusstring nullable

Remediation status of the unlocked leak: new, in_progress, fixed, accepted_risk. Only present for unlocked items.

Example response

[
  {
    "added_at": "2025-01-15T10:30:00Z",
    "id": "3f1a9c2b7e",
    "is_email": true,
    "password": "P@ssw0rd123",
    "password_strength": 6,
    "status": "new",
    "unlocked": true,
    "url": "https://example.com/login",
    "username": "john.doe@example.com"
  }
]

Changes

No recorded changes to this endpoint across all 1 revision of this API.