# info.description
Public website integration endpoints for ZakCodeX. Operational webhooks are private and are not part of this contract.

# externalDocs.description
ZakCodeX API versioning, deprecation, and rate-limit policy

# paths./phone-country.get.description
Returns an ISO 3166-1 alpha-2 country code inferred from the request IP. Returns GB as a resilient fallback when geolocation is unavailable.

# paths./phone-country.get.parameters[].description
ISO 3166-1 alpha-2 country code returned if geolocation providers are unavailable. Defaults to GB.

# paths./phone-country.get.responses.200.description
A country suggestion was resolved or the GB fallback was used.

# paths./contact-submissions.post.description
Creates a real project enquiry for follow-up by ZakCodeX. Do not use synthetic submissions in production. No API key is currently required.

# paths./contact-submissions.post.requestBody.description
The contact and project details to submit.

# paths./contact-submissions.post.responses.400.description
The JSON body is invalid or required fields are missing.

# paths./contact-submissions.post.responses.500.description
The contact integration is not configured.

# paths./contact-submissions.post.responses.502.description
The upstream contact service could not accept the enquiry.

# paths./contact-submissions.post.responses.429.description
The per-client request quota was exhausted.

# components.securitySchemes.bearerAuth.description
Server-issued ZakCodeX API token. Request access through the developer portal.

# components.headers.RateLimitPolicy.description
Quota policy as an HTTP Structured Field, including quota and window seconds.

# components.headers.RateLimit.description
Current quota state as an HTTP Structured Field, including remaining units and reset seconds.

# components.schemas.ContactSubmission.properties.termsAccepted.description
Whether the contact accepted applicable terms.