# Knowledge Base

Documentation and guides for the Public API.

## Available Guides

- **[API Consumer Guide](/publicapi/api-consumer-guide)** - Complete guide for integrating with the Ascend Public API including authentication, HTTP requests, bulk operations, and real-time data sync
- **[Issue Reporting Guide](/publicapi/issue-reporting-guide)** - How to submit API support tickets, understand priority levels, and service level objectives
- **[Obtaining Prod Access](/publicapi/obtaining-prod-access)** - Production access requirements including testing requirements, endpoint coverage, and performance expectations
- **[RESTful API Best Practices](/publicapi/api-best-practices)** - Comprehensive guide covering versioning, casing, URLs, query parameters, pagination, and error handling
- **[Creating and Setting Up Webhooks for the StreamAPI](/publicapi/streamapi-webhooks-setup)** - How to create, register, and secure webhooks for StreamAPI real-time data change notifications delivered via AWS SNS
- **[Location-Based API Billing](/publicapi/location-filtering)** - How API usage is calculated by location and how to optimize your integration to avoid unnecessary charges
- **[Usage Report Endpoint](/publicapi/usage-report)** - How to use `/v1/usagereport` to monitor your month-to-date API call volume, and why it is scoped per `apiConsumer` (not per organization)
- **[Vendor Enablement in Dentrix Ascend](/publicapi/vendor-enablement-guide)** - How organizations turn third-party vendor integrations on or off in the product


## Topics

Additional content areas:

- API Authentication
- Rate Limiting
- Advanced Error Handling Strategies
- **[Bulk GET — Total Count Behavior](/publicapi/bulk-get-total-count)** - How `pagination.total` behaves in bulk GET endpoints — when you will see a real count, zero, or no total field at all
- **[Documents V1 — Developer Guide](/publicapi/endpoints/documents-v1)** - Document upload, bulk GET filters, owner assignment, tags, total count, and StreamAPI webhooks
- **[Patients V1 — Developer Guide](/publicapi/endpoints/patients-v1)** - Patient bulk GET, create, update, calculated fields, total count, filters, and pagination recommendations
- **[PatientProcedures V1 — Developer Guide](/publicapi/endpoints/patientprocedures-v1)** - Clinical patient procedure bulk GET, create, update, void, delete, calculated fields, mapping, graph, total count, and `lastId` recommendations
- **[TxCases V1 — Developer Guide](/publicapi/endpoints/txcases-v1)** - Treatment-case bulk GET, create, update, delete, calculated `isCompleted`, amount, total count, and `lastId` recommendations
- **[Providers V1 — Developer Guide](/publicapi/endpoints/providers-v1)** - Provider bulk list, total count, get by ID, create, and update — including `lastId` pagination, POST scenarios, PUT constraints, and StreamAPI events
- **[Missed Appointments V1 — Developer Guide](/publicapi/endpoints/missedappointments-v1)** - Missed appointment bulk GET, filters, `PUT`/`DELETE` semantics, and how `rescheduledOn` is set via appointment updates
- **[Insurance Claims V1 — Developer Guide](/publicapi/endpoints/insuranceclaims-v1)** - Insurance claim bulk GET, bulk estimate retrieval with `showEstimates`, get by ID, filters, and pagination recommendations
- **[Visits V1 — Developer Guide](/publicapi/endpoints/visits-v1)** - Visit bulk GET (`txCase.id` latest-option filter, `lastId` cursor), create, update, delete via empty procedures, completed-case rules, and side effects