Flip Energy API
  1. Sessions
Flip Energy API
  • Overview
  • Important concepts
  • Authentication
  • Enrollment process
  • End-user app design
  • Monitoring / Telemetry
  • Control
  • Change log
  • Mobile App API
    • Devices
      • Create Device
      • Read Devices
      • Read Device
      • Update Device
      • Delete Device
    • Enrollments
      • Create Enrollment
      • Read Enrollments
      • Read Enrollment
      • Delete Enrollment
    • Events
      • Read Events
      • Read Event
      • Update Event Participation
    • Programs
      • Read Programs
      • Read Program
    • Sites
      • Read Site
      • Update Site
  • Cloud API
    • Sites
      • Get Site Token
      • Get Sites
    • Commissioning
      • Commission Site And Devices
    • Sessions
      • Sessions
        POST
    • Commands
      • Command Created
      • Update Command Status
    • Programs
      • Read Programs
    • Telemetry
      • Report Battery Telemetry
    • Webhooks
      • Overview
      • List of events
      • Webhook headers
      • Schemas
        • Command
        • Enrollment
        • Event
  1. Sessions

Sessions

Cloud Mock
https://mock.apidog.com/m1/479670-0-default
Cloud Mock
https://mock.apidog.com/m1/479670-0-default
POST
/v1/sessions
commission
Create a session for the provided site. If the site does not exist in Flip's system, it will be commissioned, otherwise it will be reused.
If a site already exists, it is possible to only provide site.id in the body, otherwise the schema is as described below.
Session tokens can only be used once.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json
site
object 
required
id
string 
Id
required
The ID of the site in your system.
Example:
abc-789
first_name
string  | null 
optional
Example:
John
last_name
string  | null 
optional
Example:
Doe
company_name
string  | null 
optional
Ony if the customer is a company
Example:
ABC Co.
email
string <email> | null 
optional
state_code
enum<string>  | enum<null> 
State code
optional
Two-character code representing a US state or territory.
Allowed values:
AKALARAZCACOCTDEFLGAHIIAIDILINKSKYLAMAMDMEMIMNMOMSMTNCNDNENHNJNMNVNYOHOKORPAPRRISCSDTNTXUTVAVTWAWIWVWY
city
string  | null 
City
optional
Example:
San Francisco
zip_code
string  | null 
Zip Code
optional
In the sandbox, use zip codes 88800, 88801 or 88802 to match with test programs.
Examples:
888008880188802
street_address
string  | null 
Street Address
optional
Example:
123 Main St
street_address2
string  | null 
Street Address2
optional
devices
array[object (DeviceCreateIn) {9}] 
required
id
string 
Id
required
Example:
xyz-123
site_id
string 
required
Example:
abc-789
manufacturer_name
string 
Manufacturer Name
required
Example:
DeviceMaker
product_name
string 
Product Name
required
Example:
Model 1
serial_number
string 
Serial Number
required
Example:
123456789
type
enum<string> 
required
Allowed values:
BATTERYEV_CHARGER
attributes
object (DeviceBatteryAttributes) 
required
Structure depends on type. They are not user-adjustable and should be configured during installation / commissioning.
configuration
object (DeviceBatteryConfig) 
deprecated
Deprecated. Values will be accepted but ignored.
install_date
string <date-time>
required
The date the device was installed at the customer's site, or the date it received permission to operate from the utility, if different.
Example:
2022-02-22
Example
{
  "site": {
    "id": "abc-789",
    "first_name": "John",
    "last_name": "Doe",
    "company_name": "ABC Co.",
    "email": "[email protected]",
    "state_code": "AK",
    "city": "San Francisco",
    "zip_code": "88800",
    "street_address": "123 Main St",
    "street_address2": "string"
  },
  "devices": [
    {
      "id": "xyz-123",
      "site_id": "abc-789",
      "manufacturer_name": "DeviceMaker",
      "product_name": "Model 1",
      "serial_number": "123456789",
      "type": "BATTERY",
      "attributes": {
        "battery_capacity_wh": 15000,
        "battery_power_input_w": 6000,
        "battery_power_output_w": 7500
      },
      "configuration": {
        "reserve_percentage": 20
      },
      "install_date": "2022-02-22"
    }
  ]
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://mock.apidog.com/m1/479670-0-default/v1/sessions' \
--header 'Content-Type: application/json' \
--data-raw '{
    "site": {
        "id": "abc-789",
        "first_name": "John",
        "last_name": "Doe",
        "company_name": "ABC Co.",
        "email": "[email protected]",
        "state_code": "AK",
        "city": "San Francisco",
        "zip_code": "88800",
        "street_address": "123 Main St",
        "street_address2": "string"
    },
    "devices": [
        {
            "id": "xyz-123",
            "site_id": "abc-789",
            "manufacturer_name": "DeviceMaker",
            "product_name": "Model 1",
            "serial_number": "123456789",
            "type": "BATTERY",
            "attributes": {
                "battery_capacity_wh": 15000,
                "battery_power_input_w": 6000,
                "battery_power_output_w": 7500
            },
            "configuration": {
                "reserve_percentage": 20
            },
            "install_date": "2022-02-22"
        }
    ]
}'

Responses

🟢200OK
application/json
Body
token
string 
required
Example:
xyz-abc
Example
{
  "token": "xyz-abc"
}
🟠400Invalid input
Previous
Commission Site And Devices
Next
Command Created
Built with