# RemakeCV API introduction

> The RemakeCV public API is a company-scoped REST interface for processing CVs, retrieving stored results and listing templates. Base URL https://app.remakecv.com/api/public/v1.

Source: https://www.remakecv.com/help/api-reference/introduction
Last updated: 2026-08-21

---
The RemakeCV public API is a REST interface scoped to your company. It has six endpoints covering CV processing, retrieval and templates. Authenticate with a bearer API key, send requests to `https://app.remakecv.com/api/public/v1`, and every response comes back in a consistent envelope with `data`, `pagination` and `error` fields.

## Base URL

```
https://app.remakecv.com/api/public/v1
```

All endpoint paths below are relative to this base URL.

> **Note:** 
The public API is disabled by default. A company administrator enables it and creates API keys in **Company Settings → Public API** — no support ticket needed. See [authentication](https://www.remakecv.com/help/api-reference/authentication.md).

> **Warning:** 
**CV storage must be enabled for your company before `POST /cvs/process` will work.** Without it, every call runs the full pipeline, spends a credit, and returns `400 storage_required`. Email support@remakecv.com to check.

## What can it do?

| Method | Path | Purpose |
|---|---|---|
| `GET` | `/health` | Check the API is reachable. No authentication |
| `POST` | `/cvs/process` | Upload and format a CV |
| `GET` | `/cvs` | List stored CVs |
| `GET` | `/cvs/{cvId}` | Get one stored CV's detail |
| `GET` | `/cvs/{cvId}/file` | Get a signed URL for the stored file |
| `GET` | `/templates` | List templates visible to a user |

## The response envelope

Every successful response uses the same shape, so a client can parse them uniformly:

```json
{
  "data": { },
  "pagination": null,
  "error": null
}
```

- **`data`** — the result. An object or an array, depending on the endpoint.
- **`pagination`** — populated on list endpoints, `null` elsewhere.
- **`error`** — always `null` on success.

Errors use a different envelope. See [errors](https://www.remakecv.com/help/api-reference/errors.md).

## Your first request

### Check connectivity

`GET /health` needs no authentication and returns `{"status":"ok"}`. If this fails, the problem is network-level rather than a credential problem.

    ```bash
    curl https://app.remakecv.com/api/public/v1/health
    ```

### Authenticate

Every other endpoint needs `Authorization: Bearer <your-api-key>`. See [authentication](https://www.remakecv.com/help/api-reference/authentication.md).

### List your templates

A good first authenticated call — it confirms the key works and shows you the template IDs you will pass when processing.

    ```bash
    curl "https://app.remakecv.com/api/public/v1/templates?acting_user_email=consultant@agency.com" \
      -H "Authorization: Bearer $REMAKECV_API_KEY"
    ```

### Process a CV

`POST /cvs/process` with the file and the acting consultant's email. See [process a CV](https://www.remakecv.com/help/api-reference/endpoints/process-a-cv.md).

## Things to know before you build

- **The API extracts and stores; it does not render.** `download_url` gives you the source CV as a PDF, not a document rendered into your template.
- **`acting_user_email` applies to two endpoints only** — `POST /cvs/process` and `GET /templates`.
- **The default rate limit is 30 requests per minute** per company, configurable. See [rate limits](https://www.remakecv.com/help/api-reference/rate-limits.md).
- **The default maximum file size is 10MB**, configurable per company.
- **Every response carries an `X-Request-Id` header**, including `/health` and errors. Log it — it is what support needs to trace a specific call.
- **One credit per CV processed**, drawn from the same pool as the web app.

## Machine-readable specification

The OpenAPI 3.1 specification is published at [`/openapi/public-api.v1.yaml`](https://www.remakecv.com/openapi/public-api.v1.yaml). Point your client generator or coding agent at it directly.

## Frequently asked questions

### How do I get access to the API?

A company administrator enables it and creates a key in Company Settings under Public API. CV storage must also be enabled for your company, which does need a word with support@remakecv.com.

### Can the API return a CV formatted into our template?

No. The public API parses and stores CVs; it does not render documents. download_url returns the source file as a PDF. Template rendering is only available in the web app.

### Is there a sandbox environment?

There is no separate sandbox. Use GET /health to verify connectivity without authentication, and process a test CV against your live key when you are ready.

### Does the API cost extra?

No separate fee. API usage draws on the same credit pool as the web app — one credit per CV processed.
