Flipturn Sites API

Sites, their chargers and ports, and current status.

OpenAPI Specification

flipturn-sites-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Flipturn Access IDs Sites API
  version: '1.0'
  description: 'The Flipturn API provides read and write access to the Flipturn EV charging management platform: sites, chargers and ports, charging sessions, charger health and uptime, access IDs (RFID cards and vehicles), vehicles, alerts, charger errors, raw OCPP messages, reservations, site power limits, vehicle departure times, and maintenance windows. It is a JSON REST API secured with a bearer API key, designed for integrating Flipturn charging data with ticketing platforms, data warehouses, transportation management systems, and fleet operations tooling. Flipturn also supports OCPI for roaming-partner integration (contact support to enable).'
  contact:
    name: Flipturn Support
    email: support@getflipturn.com
    url: https://api-docs.getflipturn.com/
  x-apievangelist-generated: '2026-07-19'
  x-apievangelist-method: generated
  x-apievangelist-source: https://api-docs.getflipturn.com/llms.txt
servers:
- url: https://api.getflipturn.com/api
  description: Production
security:
- bearerAuth: []
tags:
- name: Sites
  description: Sites, their chargers and ports, and current status.
paths:
  /sites:
    get:
      operationId: listSites
      tags:
      - Sites
      summary: List sites
      description: Retrieve all of an organization's sites, chargers, and ports, along with their most recent status and details about any ongoing charging sessions. Takes no parameters and returns everything each call.
      responses:
        '200':
          description: A nested list of sites, chargers, and ports.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Site'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    CurrentChargingSession:
      type: object
      nullable: true
      properties:
        id:
          type: integer
        startTime:
          type: string
          format: date-time
        socStartPercent:
          type: number
          nullable: true
        energyDeliveredKwh:
          type: number
        ocppIdTag:
          type: string
          nullable: true
        ocppTransactionId:
          type: integer
          nullable: true
        vehicle:
          $ref: '#/components/schemas/VehicleRef'
        customer:
          $ref: '#/components/schemas/Customer'
    VehicleRef:
      type: object
      nullable: true
      properties:
        id:
          type: integer
        name:
          type: string
          nullable: true
        make:
          type: string
          nullable: true
        model:
          type: string
          nullable: true
        vin:
          type: string
          nullable: true
    Organization:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
    Port:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        portNumber:
          type: integer
        maximumPowerKw:
          type: number
          nullable: true
        connectorType:
          type: string
          description: CCS1, J1772, or NACS.
        ocppStatus:
          type: object
          nullable: true
          properties:
            status:
              type: string
            timestamp:
              type: string
              format: date-time
            errorCode:
              type: string
            vendorErrorCode:
              type: string
              nullable: true
            info:
              type: string
              nullable: true
        currentChargingSession:
          $ref: '#/components/schemas/CurrentChargingSession'
    Error:
      type: object
      description: Flipturn error envelope.
      properties:
        error:
          type: string
          description: Human-readable error message.
    Charger:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        manufacturer:
          type: string
          nullable: true
        model:
          type: string
          nullable: true
        serialNumber:
          type: string
          nullable: true
        firmwareVersion:
          type: string
          nullable: true
        latitude:
          type: number
          nullable: true
        longitude:
          type: number
          nullable: true
        externalId:
          type: string
          nullable: true
        ocppId:
          type: string
          nullable: true
        type:
          type: string
          description: '"DCFC" or "Level 2".'
        networkServiceProvider:
          type: string
        chargerType:
          type: string
        numberOfPorts:
          type: integer
        powerSharing:
          type: boolean
        connectionStatus:
          type: object
          nullable: true
          properties:
            status:
              type: string
            timestamp:
              type: string
              format: date-time
        ports:
          type: array
          items:
            $ref: '#/components/schemas/Port'
    Site:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        address:
          type: string
          nullable: true
        timezone:
          type: string
          description: IANA timezone.
        organization:
          $ref: '#/components/schemas/Organization'
        chargers:
          type: array
          items:
            $ref: '#/components/schemas/Charger'
    Customer:
      type: object
      properties:
        name:
          type: string
  responses:
    RateLimited:
      description: Rate limit exceeded (200 requests per minute per API key).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Invalid API key or Authorization header.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'API key passed as a bearer token in the Authorization header: `Authorization: Bearer {api_key}`. Keys are created in the Flipturn app (Manage > API Keys) by an Owner and can be scoped to specific sites or chargers.'