Scope and base paths
Workshop API uses `/api/ws` as the primary base path, with one core-shared endpoint under `/api/core` as part of the workshop flow.
Overview
Docs HomeWorkshop StartCarOwner StartWorkshop Onboarding
Get Started01 API key setup02 API key in requests03 Auth testing04 Bearer token callsCollections
Platform API Collection (Soft Launch)Soft Launch All EndpointsSoft Launch InteractiveFundamentalsCanonical SpecAPI Reference
API RootWorkshop IndexWorkshop InteractiveWorkshop Auth InteractiveAll Workshop EndpointsCarOwner IndexCarOwner InteractiveCarOwner Auth InteractiveAll CarOwner EndpointsCore/Common IndexCore InteractiveAll Core EndpointsWorkshop Namespaces
AuthUserProfileWorkshopCoreWorkshopOwnershipRequestContactsAddressesOpeningHoursServicesManagersCertificatesSocialMediaBookingsRatingsServiceHistoryEmailVerificationNotificationsMessagesBrregLookupBookingStatusesCategoriesReportsServiceRecordsUsersAccessV2RealtimePresenceSupportCarOwner Namespaces
AuthBookingBookingStatusCarBrandsCarOwnerPaymentsCarOwnerServiceRecordsCategoriesFavoritesMarketplaceMarketplaceCompatMarketplaceFiltersMessagesNotificationsPresenceProfileRatingsRealtimeServiceLogSettingsVehiclesCore Namespaces
CoreVehicleServiceHistoryWorkshopCommonCarOwnerCommonPage Introduction
Fundamentals defines baseline API behavior, canonical route usage, lifecycle order, and ownership/auth constraints.
Documentation
The core principles below are extracted from `WORKSHOP-API-CANONICAL.md` and govern the Workshop documentation model.
Workshop API uses `/api/ws` as the primary base path, with one core-shared endpoint under `/api/core` as part of the workshop flow.
Only canonical routes should be used for new integrations. Alias/legacy routes are temporary fallback for backward compatibility.
Ownership flow is defined as `/shop/add` -> `/shop/add/confirm` -> `/shop/add/confirm-ownership` with explicit validation and TTL rules.
Primary auth is bearer token. `sign-up` and `sign-in` additionally require `x-api-key` based on canonical rules.
Status engine uses 6 statuses with allowed transitions and terminal immutability: `COMPLETED`, `DECLINED`, `CANCELLED`.
A workshop must always keep at least one primary category. Removal is blocked when a category is used by services.
Default records window is 60 days, with `load_more=true` in +30 day increments and export in `csv`/`xlsx`.
Follow canonical sequence: Auth -> Ownership -> Categories -> Workshop data -> Services/Media/Certificates -> Bookings/Ratings -> Records/Core -> Realtime.