# Recipient Validation

Recipient Validation is an easy, efficient way to verify that email addresses are valid before you send. It runs addresses through a series of checks that catch many common problems, including syntax issues and non-existent mailboxes.

Learn more about the [different response fields](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#understanding-the-results) and read how to [integrate Recipient Validation](https://www.sparkpost.com/docs/recipient-validation/integration-guide/) into your forms.

### Regional Endpoints

Please use the appropriate API endpoint based on your workspace region:

* EU workspaces: <https://email.eu-west-1.api.bird.com>
* US workspaces: <https://email.us-west-1.api.bird.com>

## Email Address Validation

> Validate a single email address. The response will contain whether the address is \`valid\`, \`neutral\`, \`risky\`, \`undeliverable\` or \`typo\` along with additional metadata about the address. If the email address is undeliverable, a reason will also be provided. Use UTF-8 encoding for special characters like \`/\`.<br>

```json
{"openapi":"3.0.4","info":{"title":"Reach Email API","version":"1.0"},"tags":[{"name":"Recipient Validation","description":"Recipient Validation is an easy, efficient way to verify that email addresses are valid before you send. It runs addresses through a series of checks that catch many common problems, including syntax issues and non-existent mailboxes.\n\nLearn more about the [different response fields](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#understanding-the-results) and read how to [integrate Recipient Validation](https://www.sparkpost.com/docs/recipient-validation/integration-guide/) into your forms.\n\n## Regional Endpoints\n\nPlease use the appropriate API endpoint based on your workspace region:\n\n- EU workspaces: https://email.eu-west-1.api.bird.com\n\n- US workspaces: https://email.us-west-1.api.bird.com\n"}],"servers":[{"url":"https://email.eu-west-1.api.bird.com/api","description":"Production endpoint for EU workspaces","variables":{"protocol":{"enum":["https"],"default":"https","description":"Protocol for API communication"}}},{"url":"https://email.us-west-1.api.bird.com/api","description":"Production endpoint for US workspaces","variables":{"protocol":{"enum":["https"],"default":"https","description":"Protocol for API communication"}}}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"API key for authentication. Format: `AccessKey <token>` or `Bearer <token>`.\n"}}},"paths":{"/workspaces/{workspaceId}/reach/recipient-validation/single/{address}":{"get":{"tags":["Recipient Validation"],"summary":"Email Address Validation","description":"Validate a single email address. The response will contain whether the address is `valid`, `neutral`, `risky`, `undeliverable` or `typo` along with additional metadata about the address. If the email address is undeliverable, a reason will also be provided. Use UTF-8 encoding for special characters like `/`.\n","parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"},"description":"Workspace ID"},{"name":"address","in":"path","required":true,"schema":{"type":"string"},"description":"Email address to validate"}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"object","properties":{"valid":{"type":"boolean","description":"Whether or not the recipient domain (mx and a record check) and syntax of the email address is valid"},"result":{"type":"string","enum":["valid","neutral","risky","undeliverable","typo"],"description":"Overall status of this email address. Use this field to decide if you want to reject an email address"},"delivery_confidence":{"type":"number","description":"Number 0-100 representing Bird's confidence that the email address can be delivered to"},"reason":{"type":"string","enum":["Invalid Syntax","Invalid Domain","Invalid Recipient"],"description":"The reason the `result` value was given. If the result is not `undeliverable` then no reason is given"},"is_role":{"type":"boolean","description":"Whether the email address is [role-based](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#role-based-email-address)"},"is_disposable":{"type":"boolean","description":"Whether the email address is [disposable](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#disposable-email-address)"},"is_free":{"type":"boolean","description":"Whether the email address is from a [free email provider](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#free-email-address)"},"did_you_mean":{"type":"string","description":"The corrected email address if there is a [typo in the provided address](https://www.sparkpost.com/docs/recipient-validation/getting-started-recipient-validation/#did-you-mean)"}}}}}}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bird.com/api/email-api/recipient-validation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
