openapi: 3.0.3
paths:
  /rest/v1/ping:
    get:
      operationId: PingController_ping
      parameters: []
      responses:
        '200':
          description: ''
      tags:
        - ping
  /rest/v1/sites/{id}:
    get:
      operationId: SiteController_getSiteById
      parameters:
        - name: id
          required: true
          in: path
          description: The ID of the site for which to retrieve site data
          schema:
            type: string
        - name: x-api-key
          in: header
          description: API key for authentication
          required: true
          schema:
            type: string
        - name: x-signature
          in: header
          description: HMAC signature for request authentication
          required: true
          schema:
            type: string
        - name: x-req-timestamp
          in: header
          description: Request timestamp for signature validation (Unix timestamp)
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
      tags:
        - sites
  /rest/v1/sites:
    get:
      operationId: SiteController_getSites
      parameters:
        - name: x-api-key
          in: header
          description: API key for authentication
          required: true
          schema:
            type: string
        - name: x-signature
          in: header
          description: HMAC signature for request authentication
          required: true
          schema:
            type: string
        - name: x-req-timestamp
          in: header
          description: Request timestamp for signature validation (Unix timestamp)
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
      tags:
        - sites
  /rest/v1/ocpp-logs/site/{id}:
    get:
      operationId: OCPPLogsController_getSiteOcppLogs
      parameters:
        - name: id
          required: true
          in: path
          description: The ID of the site for which to retrieve OCPP logs
          schema:
            type: string
        - name: from
          required: true
          in: query
          description: Start date/time for the log query (ISO 8601 format)
          schema:
            format: date-time
            type: string
        - name: to
          required: true
          in: query
          description: End date/time for the log query (ISO 8601 format)
          schema:
            format: date-time
            type: string
        - name: actions
          required: false
          in: query
          description: Comma-separated list of OCPP log actions to filter by
          schema:
            type: string
        - name: sort_order
          required: false
          in: query
          description: Sort order for the results
          schema:
            enum:
              - asc
              - desc
            type: string
        - name: take
          required: false
          in: query
          description: Number of records to retrieve (max 1000)
          schema:
            type: number
        - name: skip
          required: false
          in: query
          description: Number of records to skip for pagination
          schema:
            type: number
        - name: x-api-key
          in: header
          description: API key for authentication
          required: true
          schema:
            type: string
        - name: x-signature
          in: header
          description: HMAC signature for request authentication
          required: true
          schema:
            type: string
        - name: x-req-timestamp
          in: header
          description: Request timestamp for signature validation (Unix timestamp)
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
      tags:
        - ocpp-logs
  /rest/v1/charging-events/site/{id}:
    get:
      operationId: ChargingEventsController_getSiteChargingEvents
      parameters:
        - name: id
          required: true
          in: path
          description: The ID of the site for which to retrieve charging events
          schema:
            type: string
        - name: from
          required: true
          in: query
          description: Start date/time for the charging events query (ISO 8601 format)
          schema:
            format: date-time
            type: string
        - name: to
          required: true
          in: query
          description: End date/time for the charging events query (ISO 8601 format)
          schema:
            format: date-time
            type: string
        - name: search_text
          required: false
          in: query
          description: Text to search for in the charging events data
          schema:
            type: string
        - name: sort_field
          required: false
          in: query
          description: Field to sort the results by
          schema:
            enum:
              - occurrence_time
              - rfid
              - rfid_name
              - energy_consumed
              - duration
              - cost
              - optimized_cost
              - cost_savings
            type: string
        - name: sort_order
          required: false
          in: query
          description: Sort order for the results
          schema:
            enum:
              - asc
              - desc
            type: string
        - name: take
          required: false
          in: query
          description: Number of records to retrieve (max 1000)
          schema:
            type: number
        - name: skip
          required: false
          in: query
          description: Number of records to skip for pagination
          schema:
            type: number
        - name: x-api-key
          in: header
          description: API key for authentication
          required: true
          schema:
            type: string
        - name: x-signature
          in: header
          description: HMAC signature for request authentication
          required: true
          schema:
            type: string
        - name: x-req-timestamp
          in: header
          description: Request timestamp for signature validation (Unix timestamp)
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
      tags:
        - charging-events
info:
  title: ChargePilot API
  description: ''
  version: 1.1.1
  contact: {}
tags: []
servers:
  - url: https://chargepilot-api.tmh.energy
components:
  schemas: {}
