Shop
Browse bookable talent channels, hand users into the shop with a clickout link, and manage the job bookings that come out of it.
The Shop endpoints cover the reach side of Kini: what a company can book, how you get its users into the shop, and what happens to a booking once it is live. To publish a job ad through the API, follow Publish a Job Ad.
All requests require authentication. Company-scoped requests need the Company-Id header — see Authentication.
Available endpoints
POST /clickout/promote/— create a clickout link that signs the user in on the promote page of a single job. The job is refreshed from the ATS first, and created if Kini does not know it yet.POST /clickout/redirect/— create a clickout link straight to the company's job list or bookings, skipping the promote flow. Requires a partner-scoped API key.GET /products/lists the products the company can book, withid,provider_product, and the company-specific price.GET /talent_channels/lists those same products grouped under their job board, for a screen that shows one card per channel.GET /billing_details/lists the company's active billing details.POST /billing_details/creates a billing detail for the company.POST /job_bookings/creates a transaction that books one or more jobs onto products.GET /job_bookings/lists the company's job bookings, filterable bystatus, including run time, price, and click statistics.PATCH /job_bookings/{id}/unpublish/— take a live job booking offline before its run time is over.
Common use cases
- Turn a job in your own UI into a tracked click that lands the recruiter on Kini's promote page for exactly that job.
- Show a company its bookable channels and its own prices without rebuilding the catalogue on your side.
- Report on booked reach — spend, run time, and clicks — inside your product.
- Pull a booking off the job board as soon as the position is filled.
Before you start
- Clickout links are scoped to a company, single-purpose, and valid for one hour. Generate a fresh one per user request instead of caching one for reuse.
- Prices returned by
GET /products/andGET /talent_channels/are the company's own and already include any partner discount. Do not treat them as a public price list. - Channel and product descriptions in
GET /talent_channels/andGET /products/follow the request language. See Languages. TheproductinGET /job_bookings/carries no descriptions. - Unpublishing is not a refund and cannot be undone; the booking cannot be published again afterwards.
- The company must be set up for the shop before any of these calls succeed. Use Compose Company Integration to complete that setup.
A clickout creates the shop user on first use and adds them to the company. If
the email address already belongs to a different organisation, the call fails
with 403 rather than moving the user.