> For the complete documentation index, see [llms.txt](https://docs.visualsentinel.com/llms.txt)

# Free Tools API

Endpoints for free tools. This page lists the one endpoint in the Free Tools area of the Visual Sentinel REST API.

Base URL: `https://visualsentinel.com`. Unless an endpoint says otherwise it accepts an API key or a session cookie, see [Authentication](https://docs.visualsentinel.com/guides/authentication.md). Most error responses use the [ErrorResponse](https://docs.visualsentinel.com/reference/models/error-response.md) shape, see [Errors](https://docs.visualsentinel.com/guides/errors.md) and [Rate limits](https://docs.visualsentinel.com/guides/rate-limits.md).

## Endpoints

- [Domain expiry lookup (free, no auth)](#post-api-tools-domain-expiry): `POST /api/tools/domain-expiry`

## Domain expiry lookup (free, no auth)

`POST /api/tools/domain-expiry`

Looks up a domain registration's expiry date, registrar, registration date, and status locks via registry RDAP. Public endpoint, rate limited to 10 requests per 10 minutes per IP. Input must be a bare registrable domain (no scheme, path, or subdomain).

Authentication: no session or API key needed.

Request body (required): object.

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `domain` | string | Yes |   |

**Responses**

- `200`: Lookup result. Body: object.
- `400`: Input is not a bare registrable domain.
- `429`: Rate limit exceeded (10 per 10 minutes per IP)

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `domain` | string | No |   |
| `outcome` | string | No | One of: `ok`, `unsupported_tld`, `lookup_failed`, `not_found`. |
| `expiresAt` | string (date-time) or null (date-time) | No |   |
| `daysRemaining` | integer or null | No |   |
| `registeredAt` | string (date-time) or null (date-time) | No |   |
| `registrar` | string or null | No |   |
| `domainStatuses` | array of string | No |   |
| `checkedAt` | string (date-time) | No |   |

Generated from the OpenAPI 3.1 specification at [https://docs.visualsentinel.com/openapi.json](https://docs.visualsentinel.com/openapi.json), the same file the interactive reference reads.
