# OptimalDial ## Docs - [Contacts (Enterprise)](https://docs.optimaldial.com/api-reference/contacts.md): Submit one phone number for OptimalDial Status classification. Designed for per-row enrichment integrations. - [Uploads](https://docs.optimaldial.com/api-reference/uploads.md): Endpoints for creating, listing, cancelling, and downloading phone-number uploads. - [Webhooks](https://docs.optimaldial.com/api-reference/webhooks.md): Endpoints for managing webhook endpoints and inspecting deliveries. - [Authentication](https://docs.optimaldial.com/authentication.md): How to authenticate API requests with an OptimalDial API key. - [Changelog](https://docs.optimaldial.com/changelog.md): Notable changes to the OptimalDial public API. - [Cancel a queued contact (Enterprise)](https://docs.optimaldial.com/endpoints/contacts/cancel-a-queued-contact-enterprise.md): Cancels a contact only if it is still in `queued` status. Refunds the 1 credit. Once we've materialized the contact into an upload, cancellation is no longer possible. - [Create a contact (Enterprise)](https://docs.optimaldial.com/endpoints/contacts/create-a-contact-enterprise.md): Submits one phone number for processing. Charges 1 credit and stores the contact in `queued` status. Returns `403` with `error: "feature_not_enabled"` until your organization has the `single_contact_api_enabled` feature flag turned on — contact support@optimaldial.com to enable Enterprise access. - [List contacts (Enterprise)](https://docs.optimaldial.com/endpoints/contacts/list-contacts-enterprise.md) - [Retrieve a contact (Enterprise)](https://docs.optimaldial.com/endpoints/contacts/retrieve-a-contact-enterprise.md) - [Cancel an upload](https://docs.optimaldial.com/endpoints/uploads/cancel-an-upload.md): Cancels an upload that hasn't begun processing. Refunds any credits that were charged at submission. No-op if processing has started. - [Create an upload](https://docs.optimaldial.com/endpoints/uploads/create-an-upload.md): Submit a list of phone numbers. Use `multipart/form-data` to upload a CSV file (max 100 MB), or `application/json` to send phone numbers directly. Either way, the upload requires at least 100 valid US/CA phone numbers and at most 250,000. - [Get a signed download URL for the "likely answer only" filtered file](https://docs.optimaldial.com/endpoints/uploads/get-a-signed-download-url-for-the-"likely-answer-only"-filtered-file.md): Available once `status == "completed"`. - [Get a signed download URL for the original submitted file](https://docs.optimaldial.com/endpoints/uploads/get-a-signed-download-url-for-the-original-submitted-file.md) - [Get a signed download URL for the processed file](https://docs.optimaldial.com/endpoints/uploads/get-a-signed-download-url-for-the-processed-file.md): Available once `status == "completed"`. - [List uploads](https://docs.optimaldial.com/endpoints/uploads/list-uploads.md) - [Retrieve an upload](https://docs.optimaldial.com/endpoints/uploads/retrieve-an-upload.md) - [Create a webhook endpoint](https://docs.optimaldial.com/endpoints/webhooks/create-a-webhook-endpoint.md): Registers an HTTPS URL to receive event deliveries. The URL is ping-verified synchronously; creation fails with `400` if the receiver does not respond `2xx` within 5 seconds. - [Delete a webhook endpoint](https://docs.optimaldial.com/endpoints/webhooks/delete-a-webhook-endpoint.md) - [List recent deliveries for a webhook endpoint](https://docs.optimaldial.com/endpoints/webhooks/list-recent-deliveries-for-a-webhook-endpoint.md) - [List webhook endpoints](https://docs.optimaldial.com/endpoints/webhooks/list-webhook-endpoints.md) - [Retrieve a webhook endpoint](https://docs.optimaldial.com/endpoints/webhooks/retrieve-a-webhook-endpoint.md) - [Update a webhook endpoint](https://docs.optimaldial.com/endpoints/webhooks/update-a-webhook-endpoint.md) - [Getting started](https://docs.optimaldial.com/getting-started.md): Make your first OptimalDial API call in five minutes. - [Errors and rate limits](https://docs.optimaldial.com/guides/errors-and-rate-limits.md): Standardised error envelope, status codes, and the rate limits that protect both your account and the platform. - [Receiving webhooks](https://docs.optimaldial.com/guides/webhooks.md): Build a production-grade receiver for OptimalDial webhooks — payload shape, signature verification, retry behaviour, and best practices. - [Introduction](https://docs.optimaldial.com/index.md): The OptimalDial REST API — upload phone lists, get them processed, receive webhooks. - [OpenAPI specification](https://docs.optimaldial.com/openapi.md): Machine-readable OpenAPI 3.1 description of every public OptimalDial endpoint. ## OpenAPI Specs - [spec](https://api.optimaldial.com/openapi/v1/spec.yaml) - [openapi](https://docs.optimaldial.com/api-reference/openapi.json)