---
title: "Lookup"
method: POST
path: "/identity/credentials/lookup"
tags: ["Credentials"]
---

# Lookup

`POST /identity/credentials/lookup`

Retrieve full exposure history for specific email addresses, usernames, or credential hashes.

## Request body

- CredentialsLookupRequest
  - `organization_id` string
  - `subjects` string[] — Email addresses to look up (e.g., user@example.com)
  - `subjects_sha1` string[] — SHA1 hashes of email addresses for privacy-preserving lookups
  - `subjects_login` DomainLogin[] — Domain + login pairs for authorization-domain lookups
    - `login` string
    - `login_sha1` string
    - `domain` string, required
  - `filter` IdentityRequestFilter
    - `first_downloaded_gte` string, date-time — The first date when these credentials were received and indexed by Recorded Future.
    - `latest_downloaded_gte` string, date-time — Latest date when these credentials were received and indexed by Recorded Future. It is not unusual for the same credentials to be exposed multiple times, in data from different dumps and/or logs.
    - `exfiltration_date_gte` string, date-time — The date when data was exfiltrated (stolen) from the victim. Note: Only applicable for malware-based exposures.
    - `properties` PasswordProperty[] — Password property filters
    - `username_properties` UsernameProperty[]
    - `breach_properties` BreachProperties
      - `name` string
      - `date` string, date-time
    - `dump_properties` DumpProperties
      - `name` string
      - `date` string, date-time
    - `authorization_technologies` string[] — Filter results by specific authorization technologies (e.g., SAML, LDAP)
    - `authorization_protocols` string[]
    - `malware_families` string[] — Filter by malware family names
  - `limit` integer — Maximum number of results to return
  - `offset` string — Pagination token from a previous response's next_offset

## Response `200`

Success

- LookupResponse
  - `identities` LeakedIdentity[], required
    - `identity` IdentityDetails, required
      - `subjects` string[], required
    - `count` integer, required
    - `credentials` Credentials[], required
      - `subject` string, required
      - `authorization_service` AuthorizationService
        - `url` string, required
        - `domain` string, required
        - `fqdn` string, required
        - `protocols` string[], required
        - `technology` Technology[], required
          - `id` string
          - `name` string, required
          - `category` string
      - `authorization_services` AuthorizationService[], required
        - `url` string, required
        - `domain` string, required
        - `fqdn` string, required
        - `protocols` string[], required
        - `technology` Technology[], required
          - `id` string
          - `name` string, required
          - `category` string
      - `exposed_secret` SecretDetails, required
        - `type` string, required
        - `effectively_clear` boolean, required
        - `hashes` PasswordHash[], required
          - union
            - FullPasswordHash
              - …
            - PrefixPasswordHash
              - …
        - `details` CleartextPasswordDetails
          - `clear_text_value` string
          - `clear_text_hint` string
          - `properties` PasswordProperty[], required
      - `compromise` DeprecatedCompromise
        - `exfiltration_date` string, date-time, required
      - `cookies` Cookie[], required
        - `dns` string, required
        - `name` string, required
        - `http` boolean, required
        - `expiration` string, date-time, required
        - `secure` boolean, required
        - `value` string
      - `malware_family` MalwareFamily
        - `id` string, required
        - `name` string, required
      - `dumps` DumpMetadata[], required
        - `name` string, required
        - `type` string
        - `source` string, required
        - `description` string
        - `infrastructure` Infrastructure
          - `ip` string, required
        - `compromise` Compromise
          - `os` string
          - `os_username` string
          - `malware_file` string
          - `timezone` string
          - `computer_name` string
          - `uac` string
          - `antivirus` string[]
          - `exfiltration_date` string, date-time, required
        - `location` Location
          - `country` CountryCode
            - `name` string, required
            - `displayName` string, required
            - `countryCode` string, required
            - `alpha2Code` string, required
            - `alpha3Code` string, required
          - `city` string
          - `address` string
          - `address1` string
          - `address2` string
          - `state` string
          - `postal_code` string
          - `zip` string
        - `breaches` BreachMetadata[], required
          - `name` string, required
          - `domain` string, required
          - `type` string, required
          - `breached` string, date-time
          - `start` string, date-time
          - `stop` string, date-time
          - `precision` 'YEAR' | 'MONTH' | 'DAY'
          - `description` string, required
          - `site_description` string
        - `downloaded` string, date-time, required
      - `first_downloaded` string, date-time, required
      - `latest_downloaded` string, date-time, required
      - `source_type` 'MalwareLogs' | 'DatabaseDumps' | 'MalwareCombolists' | 'DatabaseCombolists'
  - `count` integer, required
  - `next_offset` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error
- `default` — Error

---

[API](https://skmtc.net/recordedfuture/apis/alert-api.md) · [All operations](https://skmtc.net/recordedfuture/apis/alert-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/recordedfuture/alert-api/revisions/c8c2f68d8b60/schema)
