> ## Documentation Index
> Fetch the complete documentation index at: https://developer.plugsurfing.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List available products

> Returns the products available for ordering.



## OpenAPI

````yaml reference/openapi.json GET /emp/v1/products
openapi: 3.1.0
info:
  title: Drive API
  version: 1.0.0
  description: >-
    The Drive API provides comprehensive access to Plugsurfing's charging
    infrastructure network. It enables you to manage users, charging keys,
    search for charging locations, handle payments, and control charging
    sessions.
servers:
  - url: https://{environment}.plugsurfing.com
    variables:
      environment:
        enum:
          - drive-api-stage
        default: drive-api-stage
        description: >-
          API environment - use drive-api-stage for testing and drive-api for
          production
security: []
tags:
  - name: Geosearch
    description: >-
      Search and retrieve detailed information about charging locations and
      stations
  - name: Users
    description: >-
      Manage user accounts including creation, retrieval, updates, and deletion.
      Handles user-specific data and preferences.
  - name: Charging Keys
    description: >-
      Manage physical and virtual charging keys including creation, activation,
      updates, and status management. Essential for user access to charging
      stations.
  - name: Sessions
    description: >-
      Access and manage charging session data including history, status, and
      detailed session information
  - name: Remote Charging
    description: >-
      Control charging sessions remotely including starting and stopping
      sessions, and monitoring session status
  - name: Payment Options
    description: >-
      Manage payment methods and handle transaction processing for charging
      services
  - name: User Groups
    description: Manage user group memberships
  - name: Vouchers
    description: Redeem vouchers
  - name: Charging Key Orders
    description: Handle the ordering and fulfillment process for physical charging keys
  - name: EMP Charging Keys
    description: E-Mobility Provider specific endpoints for managing charging keys
  - name: EMP Geosearch
    description: E-Mobility Provider specific endpoints for location search and information
  - name: EMP Orders
    description: E-Mobility Provider specific endpoints for managing orders
  - name: EMP Sessions
    description: E-Mobility Provider specific endpoints for managing charging sessions
  - name: EMP Fleets
    description: E-Mobility Provider specific endpoints for managing fleets
paths:
  /emp/v1/products:
    get:
      tags:
        - EMP Orders
      summary: List available products
      description: >-
        Returns the products available. Each product may include a
        `printing.schema` field - a JSON Schema (Draft 2020-12) object that
        describes the printing payload your customers must supply when placing
        an order for that product. Use this schema to build dynamic forms,
        validate inputs client-side, or auto-generate UI components.
      operationId: getEmpProducts
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmpProductsResponse'
              example:
                products:
                  - id: Am07b6Q7JZ
                    name: Standard EV Card
                    description: Physical charging card for fleet drivers.
                    printing:
                      schema:
                        $schema: https://json-schema.org/draft/2020-12/schema
                        type: object
                        required:
                          - driverName
                          - licensePlate
                        additionalProperties: false
                        properties:
                          driverName:
                            type: string
                            description: >-
                              Full name of the card holder to be printed on the
                              card.
                            minLength: 5
                            maxLength: 50
                          licensePlate:
                            type: string
                            description: Vehicle license plate to be printed on the card.
                            minLength: 4
                            maxLength: 6
                  - id: Bx19dR2mKL
                    name: Fleet Access Card
                    description: Charging card for shared fleet access.
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: An unexpected error occurred.
      security:
        - ApiKeyAuth: []
components:
  schemas:
    EmpProductsResponse:
      type: object
      required:
        - products
      properties:
        products:
          type: array
          items:
            $ref: '#/components/schemas/EmpProduct'
          description: List of products available.
      description: Response containing the list of products available for ordering.
    ErrorResponse:
      title: ErrorResponse
      type: object
      properties:
        message:
          type: string
    EmpProduct:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: string
          example: Am07b6Q7JZ
          description: Unique identifier of the product.
        name:
          type: string
          example: Standard EV Card
          description: Human-readable name of the product.
        description:
          type: string
          example: Physical charging card for fleet drivers.
          description: Human-readable product description, when available.
        printing:
          $ref: '#/components/schemas/EmpProductPrinting'
          description: >-
            Present when the product requires printing details when placing an
            order. Omitted for products that do not require a `printing`
            payload.
      description: A product available to order.
    EmpProductPrinting:
      type: object
      description: >-
        Printing requirements for this product. Use the `schema` field to
        understand which variables must be provided in the `printing` payload
        when placing an order for this product.
      required:
        - schema
      properties:
        schema:
          type: object
          additionalProperties: true
          description: >-
            A JSON Schema (Draft 2020-12) object that describes the shape and
            validation rules of the `printing` payload expected when ordering
            this product. Use this schema to build, validate, and auto-generate
            forms for the printing data your customers must supply.
          example:
            $schema: https://json-schema.org/draft/2020-12/schema
            type: object
            required:
              - driverName
              - licensePlate
            additionalProperties: false
            properties:
              driverName:
                type: string
                description: Full name of the card holder to be printed on the card.
                minLength: 5
                maxLength: 50
              licensePlate:
                type: string
                description: Vehicle license plate to be printed on the card.
                minLength: 4
                maxLength: 6
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.