# Get Product Get details of a specific product Endpoint: GET /product/{productId} Version: 1.0.0 Security: bearerToken ## Path parameters: - `productId` (integer, required) ## Response 200 fields (application/json): - `id` (integer) Unique identifier for the product Example: 1 - `name` (string) Internal product name Example: "connect_basic" - `displayName` (string) Display name for the product Example: "Connect Basic" - `description` (string) Product description - `active` (boolean) Whether the product is currently active and available for purchase - `price` (integer) Price in cents Example: 2900 - `stripeProductId` (string) Stripe product ID - `stripePriceId` (string) Stripe price ID - `metadata` (object) Product metadata including type, limits, and features - `metadata.type` (string) Product type (addon or connect subscription) Enum: "addon", "connect" - `metadata.active` (string) Enum: "true", "false" - `metadata.icon` (string) Icon identifier for UI - `metadata.translation` (string) Translation key for product name - `metadata.limit` (string) Usage limit for the product - `metadata.chargerLimit` (string) Maximum number of chargers allowed (empty = unlimited) - `metadata.allowPromotion` (string) Whether promotion codes can be applied Enum: "true", "false" - `metadata.freePeriod` (string) Whether product can be used without booking (trial period) Enum: "true", "false" - `metadata.ribbon` (string) Show special offer ribbon in UI Enum: "true", "false" - `createdAt` (string) - `updatedAt` (string)