# pozyskajpacjenta.pl API

The pozyskajpacjenta.pl API gives your frontend the data a clinic's own site is rendered from: pages and blocks, treatments, the team, case studies, posts, the theme and the clinic profile. It books appointments in the clinic's calendar and sends enquiries to its CRM.

- Base URL: `https://app.pozyskajpacjenta.pl/api/v1`
- Auth: `Authorization: Bearer <the clinic's key>` (pp_live_…, from the clinic's panel)
- Rate limit: 120 requests per minute per key
- API version: 1.18.0; OpenAPI document: https://app.pozyskajpacjenta.pl/api/v1/openapi.json

## Pages

- [Quickstart](https://pozyskajpacjenta.pl/docs/quickstart): Get a key, fetch the clinic's site, render a page with the SDK and send a test lead.
- [API keys](https://pozyskajpacjenta.pl/docs/concepts/api-keys): The clinic's secret key: where it comes from, how to send it, and what rotation does.
- [Content model](https://pozyskajpacjenta.pl/docs/concepts/content-model): Site, pages told apart by kind, blocks, entities, theme tokens and media.
- [Booking modes](https://pozyskajpacjenta.pl/docs/concepts/booking-modes): Online booking, a request for a time, an external widget or the phone: what each clinic uses and what your frontend does.
- [Leads](https://pozyskajpacjenta.pl/docs/concepts/leads): Send enquiries from your own forms to the clinic's CRM: field aliases, warnings, strict mode.
- [Privacy](https://pozyskajpacjenta.pl/docs/concepts/privacy): The information clause under every form, its version, and the optional marketing consent.
- [Versioning](https://pozyskajpacjenta.pl/docs/concepts/versioning): How v1 changes: additive only, and every tightening labelled as a behaviour change.
- [Webhooks](https://pozyskajpacjenta.pl/docs/webhooks): Receive lead.created, verify the HMAC signature, and handle retries.
- [Conversations](https://pozyskajpacjenta.pl/docs/conversations): Read the clinic's conversations with patients and reply on their channels, by the rules of the clinic's inbox.
- [API reference](https://pozyskajpacjenta.pl/docs/reference): Every endpoint of API v1, grouped in seven tags, with samples and recorded responses.
- [Content](https://pozyskajpacjenta.pl/docs/reference/content): The clinic's site as data: a page with its site, the site alone, the privacy policy and every published path.
- [Get a page and its site](https://pozyskajpacjenta.pl/docs/reference/content/get-content): GET /api/v1/content
- [Get the site](https://pozyskajpacjenta.pl/docs/reference/content/get-site): GET /api/v1/site
- [List locations](https://pozyskajpacjenta.pl/docs/reference/content/list-locations): GET /api/v1/locations
- [Get the privacy policy](https://pozyskajpacjenta.pl/docs/reference/content/get-privacy): GET /api/v1/privacy
- [List published pages](https://pozyskajpacjenta.pl/docs/reference/content/list-pages): GET /api/v1/pages
- [Entities](https://pozyskajpacjenta.pl/docs/reference/entities): Treatments, team members, case studies and posts, each with a list and a detail endpoint.
- [List treatments](https://pozyskajpacjenta.pl/docs/reference/entities/list-services): GET /api/v1/services
- [Get a treatment](https://pozyskajpacjenta.pl/docs/reference/entities/get-service): GET /api/v1/services/{slug}
- [List team members](https://pozyskajpacjenta.pl/docs/reference/entities/list-doctors): GET /api/v1/doctors
- [Get a team member](https://pozyskajpacjenta.pl/docs/reference/entities/get-doctor): GET /api/v1/doctors/{slug}
- [List case studies](https://pozyskajpacjenta.pl/docs/reference/entities/list-case-studies): GET /api/v1/case-studies
- [Get a case study](https://pozyskajpacjenta.pl/docs/reference/entities/get-case-study): GET /api/v1/case-studies/{slug}
- [List posts](https://pozyskajpacjenta.pl/docs/reference/entities/list-posts): GET /api/v1/posts
- [Get a post](https://pozyskajpacjenta.pl/docs/reference/entities/get-post): GET /api/v1/posts/{slug}
- [Booking](https://pozyskajpacjenta.pl/docs/reference/booking): Bookable services and specialists, free slots, booking an appointment and the clinic's appointment list.
- [Get the booking catalog](https://pozyskajpacjenta.pl/docs/reference/booking/get-booking-catalog): GET /api/v1/booking/catalog
- [List free slots](https://pozyskajpacjenta.pl/docs/reference/booking/get-slots): GET /api/v1/booking/slots
- [List appointments](https://pozyskajpacjenta.pl/docs/reference/booking/list-appointments): GET /api/v1/booking/appointments
- [Book an appointment](https://pozyskajpacjenta.pl/docs/reference/booking/create-appointment): POST /api/v1/booking/appointments
- [Leads](https://pozyskajpacjenta.pl/docs/reference/leads): Patient enquiries from your own forms, stored in the clinic's CRM with the same e-mail to reception as an enquiry from the clinic's site.
- [Create a lead](https://pozyskajpacjenta.pl/docs/reference/leads/create-lead): POST /api/v1/leads
- [Media](https://pozyskajpacjenta.pl/docs/reference/media): The clinic's media library: list the files and upload images.
- [Upload an image](https://pozyskajpacjenta.pl/docs/reference/media/upload-media): POST /api/v1/media
- [List media](https://pozyskajpacjenta.pl/docs/reference/media/list-media): GET /api/v1/media
- [Feedback](https://pozyskajpacjenta.pl/docs/reference/feedback): Remarks about the clinic's site or about the API, sent to the platform team. Never patient data.
- [Send feedback](https://pozyskajpacjenta.pl/docs/reference/feedback/send-feedback): POST /api/v1/feedback
- [Conversations](https://pozyskajpacjenta.pl/docs/reference/conversations): The clinic's conversations with patients on every channel: read them, read their messages and reply, by the rules the clinic's inbox applies. Needs the key scopes conversations:read and conversations:write.
- [List conversations](https://pozyskajpacjenta.pl/docs/reference/conversations/list-conversations): GET /api/v1/conversations
- [Get a conversation](https://pozyskajpacjenta.pl/docs/reference/conversations/get-conversation): GET /api/v1/conversations/{id}
- [List messages of a conversation](https://pozyskajpacjenta.pl/docs/reference/conversations/list-messages): GET /api/v1/conversations/{id}/messages
- [Send a message](https://pozyskajpacjenta.pl/docs/reference/conversations/send-message): POST /api/v1/conversations/{id}/messages
- [Errors](https://pozyskajpacjenta.pl/docs/errors): HTTP statuses, error codes and what to do about each.
- [Rate limits](https://pozyskajpacjenta.pl/docs/rate-limits): 120 requests per minute per key, the RateLimit headers and how to back off.
- [TypeScript SDK](https://pozyskajpacjenta.pl/docs/sdk): Install @pozyskajpacjenta/sdk, create a client, and handle typed errors.
- [Changelog](https://pozyskajpacjenta.pl/docs/changelog): Every version of API v1 and of the SDK.
- [Po polsku](https://pozyskajpacjenta.pl/docs/pl): API w skrócie po polsku: dla agencji i właścicieli placówek.
- [Skrzynka](https://pozyskajpacjenta.pl/docs/skrzynka): Przewodnik dla placówki: zapytania z formularzy i wiadomości pacjentów w jednym miejscu.
- [Kanały w Skrzynce](https://pozyskajpacjenta.pl/docs/kanaly): Jak podłączyć WhatsApp, Instagram, Messenger, numery SMS placówek, formularze z reklam Meta i czat na stronie; co widzi pacjent, wypisy i kilka adresów jednego pacjenta.
- [AI w Skrzynce](https://pozyskajpacjenta.pl/docs/ai-w-skrzynce): Co asystent AI robi w Skrzynce placówki, skąd bierze dane, czego nigdy nie robi i jak sprawdzamy jego pracę.
- [Asystent AI odpowiada pacjentom](https://pozyskajpacjenta.pl/docs/asystent-ai): Co asystent AI robi w czacie i komunikatorach placówki, kiedy przekazuje rozmowę recepcji, jak ją przejąć i czego nigdy nie zrobi.
- [Własny asystent AI w Skrzynce](https://pozyskajpacjenta.pl/docs/mcp): Jak podłączyć własnego asystenta AI do Skrzynki placówki kluczem API, co asystent może, czego nigdy nie robi i o czym pamiętać przy danych pacjentów.
