---
title: "Sign in again as a saved test account | Proxy Mail QA"
description: "Developer docs for Proxy Mail QA: the MCP server for coding agents, the REST API for test suites, and the Chrome extension."
url: https://proxymail.qa/docs/reference/operations/signinaccount
---

# Sign in again as a saved test account

POST

/v1/addresses/sign-in

```js
const url = 'https://api.proxymail.qa/v1/addresses/sign-in';
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: '{"site":"example","environment":"example","tags":["example"]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```sh
curl --request POST \
  --url https://api.proxymail.qa/v1/addresses/sign-in \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{ "site": "example", "environment": "example", "tags": [ "example" ] }'
```

The saved test account to sign in to the app under test with, and its password, in one call: one with a saved password and every tag given, that no test has checked out, the one used on this site first, then the one that got mail most recently. With site, an account not yet used anywhere is marked as used there. Needs a key with “Can read saved passwords”; every reveal is logged. 404 when none fits.

## Authorizations

- **[apiKey](https://proxymail.qa/docs/reference.html#apikey)**

## Request Body

Media typeapplication/json

### object

**site**

The host or page URL of the sign-in form.

string

<= 300 characters

**environment**

Only accounts for this environment (or for none).

string

<= 40 characters

**tags**

Every one of these tags.

Array<string>

<= 20 items

### Example generated

```json
{
  "site": "example",
  "environment": "example",
  "tags": [
    "example"
  ]
}
```

## Responses

### 200

The account and its password

Media typeapplication/json

### object

**address**

string

**label**

string | null

**created\_at**

string format: date-time

**expires\_at**

string format: date-time

**persona**

### object

**first\_name**

string | null

**last\_name**

string | null

**username**

string | null

**date\_of\_birth**

Present only when the address has one.

string format: date

**country**

ISO 3166-1 alpha-2 code, such as GB. Present only when the address has one.

string

**notes**

string | null

**tags**

Array<string>

**has\_password**

boolean

**password**

Only in the response to creating it with password: true.

string

**site**

Where it is used: the host of the app under test. Present only when set.

string

**environment**

Which environment it is used in, such as staging. Present only when set.

string

**email\_count**

integer

**latest**

The newest code or link, like Match.

object | null

**checked\_out\_until**

Only while someone has it checked out of the pool.

string format: date-time

**password**

string

**used\_on\_site**

Whether it had been used on this site before.

boolean

#### Example generated

```json
{
  "address": "example",
  "label": "example",
  "created_at": "2026-04-15T12:00:00Z",
  "expires_at": "2026-04-15T12:00:00Z",
  "persona": {
    "first_name": "example",
    "last_name": "example",
    "username": "example",
    "date_of_birth": "2026-04-15",
    "country": "example"
  },
  "notes": "example",
  "tags": [
    "example"
  ],
  "has_password": true,
  "password": "example",
  "site": "example",
  "environment": "example",
  "email_count": 1,
  "latest": "example",
  "checked_out_until": "2026-04-15T12:00:00Z",
  "used_on_site": true
}
```

### 400

An error

Media typeapplication/json

### object

**error**

string

**message**

string

#### Example generated

```json
{
  "error": "example",
  "message": "example"
}
```

### 403

An error

Media typeapplication/json

### object

**error**

string

**message**

string

#### Example generated

```json
{
  "error": "example",
  "message": "example"
}
```

### 404

An error

Media typeapplication/json

### object

**error**

string

**message**

string

#### Example generated

```json
{
  "error": "example",
  "message": "example"
}
```

### 429

An error

Media typeapplication/json

### object

**error**

string

**message**

string

#### Example generated

```json
{
  "error": "example",
  "message": "example"
}
```

[Previous Check out an account from the pool](https://proxymail.qa/docs/reference/operations/checkoutaccount.html) [Next Keep a checked-out account longer](https://proxymail.qa/docs/reference/operations/extendcheckout.html)
