# Get email notification preferences

Returns whether the caller’s primary address is subscribed to each notification topic. A topic the account has never set reports its default: `offers` is off, `system`, `invites`, and `announcements` are on. Essential authentication mail carries no topic and is sent whatever these say. Requires a browser session.

## GET `/v1/me/email-preferences`

### Authorization

`__Host-better-auth.session_token` API key · cookie required

Dashboard session cookie set at sign-in. An operation that lists only this scheme needs a person: API keys and machine credentials are refused. The same session token also works as `Authorization: Bearer`.

### Responses

#### 200 Response for status 200

- `$schema`: string<uri>  
  Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.

- `data`: object required  
  Show properties Hide properties
  - `system`: boolean required  
  - `invites`: boolean required  
  - `announcements`: boolean required  
  - `offers`: boolean required

#### default Error.
Every 4xx and 5xx response is one RFC 9457 problem document served as `application/problem+json`.

- `$schema`: string<uri>  
  Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.

- `type`: string required
- `title`: string required  
  Human-readable name of the error type. Derived from `code`.
- `status`: integer required  
  HTTP status of the response, repeated in the body.

- `detail`: string required  
  What went wrong in this request.
- `code`: string required  
  Stable snake_case error code. Match on this, not on `detail`.
- `pointer`: string  
  RFC 6901 JSON Pointer to the request field or batch entry that failed, for example `/files/37/path`. Present on validation failures.
- `details`: object  
  Machine-readable context keyed by the error code.

- `suggestions`: string[]  
  Recovery steps safe to show to a person.
- `next`: string[]  
  Commands or API requests to run next, usable as written.
- `requestId`: string required  
  ID of this request, from the `X-Request-Id` header or generated. Quote it when contacting support.

### Try it

#### Server

Base URL: https://api.spacefast.com  
Custom base URL: Overrides the selected server when set.

### Authorization

API key Remember on this device Include my values in samples

### Request

```bash
curl -X GET "https://api.spacefast.com/v1/me/email-preferences" \
  -H "Cookie: __Host-better-auth.session_token=YOUR_API_KEY"
```

```javascript
const response = await fetch("https://api.spacefast.com/v1/me/email-preferences", {
  method: "GET",
  headers: {
    "Cookie": "__Host-better-auth.session_token=YOUR_API_KEY"
  }
});
```

```python
import requests

response = requests.get(
    "https://api.spacefast.com/v1/me/email-preferences",
    headers={
        "Cookie": "__Host-better-auth.session_token=YOUR_API_KEY"
    },
)
```

### Response

#### 200 default

```json
{
  "$schema": "http://example.com",
  "data": {
    "system": true,
    "invites": true,
    "announcements": true,
    "offers": true
  }
}
```

```json
{
  "$schema": "http://example.com",
  "type": "string",
  "title": "string",
  "status": -9007199254740991,
  "detail": "string",
  "code": "string",
  "pointer": "string",
  "details": {
    "property1": null,
    "property2": null
  },
  "suggestions": [
    "string"
  ],
  "next": [
    "string"
  ],
  "requestId": "string"
}
```
