# E19xxx — Registration compliance

Error codes in the `E19xxx` range that the public Bird API returns. Each code links to its own page (the page its `doc_url` points at) with the cause and what to do. Retired codes stay listed; they are never renamed or reused.

| Code                                | Name                           | Status | Message                                                       |
| ----------------------------------- | ------------------------------ | ------ | ------------------------------------------------------------- |
| [`E19001`](/docs/api/errors/E19001) | `ComplianceCountryNotCovered`  | `422`  | This country does not have a registration form defined yet.   |
| [`E19002`](/docs/api/errors/E19002) | `ComplianceProgramNotAccepted` | `422`  | This registration programme is not accepted for this country. |
| [`E19008`](/docs/api/errors/E19008) | `CompliancePreconditionUnmet`  | `412`  | This subject no longer meets the requirements for approval.   |
| [`E19009`](/docs/api/errors/E19009) | `ComplianceSubmissionExists`   | `409`  | This registration already has a submission.                   |

## Related

- [Errors](/docs/api/errors): the full wire contract, status mapping, and all code ranges
- [Error handling](/docs/guides/errors): branching on `type` and `code`, validation details, and `vendor_code`