# Submit personal-email verification feedback

Submit verification feedback for a personal email address returned by a Forager person lookup. Required fields: `email` (lowercased and stripped before storage) and `contact_status` (one of `valid` or `invalid`). Optional: `is_correct_person` (boolean) — omit it, or send `null`, when the exchange never revealed whose address it is; an `invalid` address bounces before anyone can confirm a name. Omitted and `null` are both stored and returned as `null`, meaning "unknown", which is deliberately distinct from `false` ("this is the wrong person"). Also optional: `name` (the person's name the email belongs to, e.g. `John Doe`) and `person_id`. Every submission creates a new row with `201 Created`.

Endpoint: POST /api/{account_id}/datastorage/feedback/personal_emails/
Version: 1.0.0
Security: Api-Key

## Security:

  - `Api-Key` (unknown)
    apiKey in header X-API-KEY

## Path parameters:

  - `account_id` (integer, required)

## Request fields (application/json):

  - `is_correct_person` (boolean)

  - `name` (string)

  - `person_id` (integer)

  - `email` (string, required)

  - `contact_status` (string, required)
    * `valid` - Valid
* `invalid` - Invalid
    Enum: "valid", "invalid"

## Response 201 fields (application/json):

  - `id` (integer, required)

  - `email` (string, required)

  - `contact_status` (string, required)

  - `is_correct_person` (boolean, required)

  - `name` (string, required)

  - `person_id` (integer, required)

  - `date_created` (string, required)

## Response 400:

  - `400` (unknown)
    Validation failed. The body contained an invalid contact value (e.g. a phone number that cannot be parsed as E.164, or a malformed email address), an unrecognised `contact_status` value, or a missing required field.

## Response 403:

  - `403` (unknown)
    Authentication failed. The request was missing a valid `X-API-Key` header, the key was for a different account, or the API key user is inactive.

## Response 429:

  - `429` (unknown)
    Rate limit exceeded. Feedback endpoints share a per-account budget of 60 requests per minute.

