POST
/
subscriptions
Create a subscription
curl --request POST \
  --url https://api.nomos.energy/subscriptions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "plan": "pln_hq3q12f4ftsxtrm3doe7fedu",
  "customer": {
    "type": "person",
    "first_name": "John",
    "last_name": "Doe",
    "email": "john.doe@example.com"
  },
  "address": {
    "street": "Torstraße",
    "house_number": "119",
    "zip": "10115",
    "city": "Berlin"
  },
  "meter": {
    "number": "1APA0195124010",
    "type": "smart",
    "estimated_usage": 2500
  },
  "payment_method": {
    "type": "sepa_debit",
    "sepa_debit": {
      "iban": "DE68500105178297336485",
      "account_holder": "John Doe"
    }
  },
  "previous_supplier": "mp_quxok4kc0rlkjv4cqsdjv09c",
  "next_possible_start": true,
  "intended_start_date": "2024-01-01",
  "lead": "lead_ffsql6afxonqgnplczjnegq9",
  "product_orders": [
    {
      "type": "smart-meter"
    },
    {
      "type": "14a_enwg",
      "14a_enwg": {
        "module_1": true
      }
    }
  ],
  "metadata": {
    "utm_source": "google",
    "utm_campaign": "campaign_name",
    "user_id": "1234567890"
  }
}'
{
  "object": "subscription",
  "id": "sub_rocbrf1u5e48mm0reeqoag90",
  "plan": "pln_ctj3tjzc7dywznuw1dy80lb3",
  "customer": "cus_a8n8ol7yd4h0wohx824f0bui",
  "address": "adr_a7gurqkul8lzzsy1pf9p9388",
  "meter": "mtr_azk4zue2ijx4ff1dbjt14m5h",
  "payment_method": "pm_adc9utqqpcp7tx054l7vg56s2",
  "supplier": "mp_a0x6jm5h92wde6s5dnuvha4c",
  "number": "4X44EMKX",
  "status": "active",
  "estimated_usage": 123,
  "created_at": "2024-03-14T12:00:00Z",
  "updated_at": "2024-03-14T12:00:00Z",
  "start_at": "2024-03-14T12:00:00Z",
  "terminated_at": "2024-03-14T12:00:00Z",
  "end_at": "2024-03-14T12:00:00Z",
  "metadata": {
    "utm_source": "google",
    "utm_campaign": "campaign_name",
    "user_id": "1234567890"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

The subscription to create

plan
string
required

Plan ID

Example:

"pln_hq3q12f4ftsxtrm3doe7fedu"

customer
object
required
address
object
required
meter
object
required
payment_method
object
required
next_possible_start
boolean
required

If set to false we will request the cancellation of the previous supplier / grid operator signup to the date provided in intended_start_date. If set to true we will request the next possible date.

Example:

true

previous_supplier
string

ID of the previous supplier, possible to obtain via /suppliers

Example:

"mp_quxok4kc0rlkjv4cqsdjv09c"

intended_start_date
string<date>

Intended start date of the subscription. Must be a date in the future.

Example:

"2024-01-01"

lead
string

Lead to track attribution of the subscription

Example:

"lead_ffsql6afxonqgnplczjnegq9"

product_orders
object[]

Array of additional product orders. Each item has a 'type' and may include an additional object with the same name as the type for its details.

Example:
[
{ "type": "smart-meter" },
{
"type": "14a_enwg",
"14a_enwg": { "module_1": true }
}
]
metadata
object | null

Metadata of the subscription. Store any type of information, custom to your needs. E.g. the user_id of your in-house user. Restricted to 10KB.

Example:
{
"utm_source": "google",
"utm_campaign": "campaign_name",
"user_id": "1234567890"
}

Response

The created subscription details

object
enum<string>
required

Type of the object, always 'subscription'

Available options:
subscription
id
string
required

Unique identifier for the subscription

Example:

"sub_rocbrf1u5e48mm0reeqoag90"

plan
string
required

ID of the plan

Example:

"pln_ctj3tjzc7dywznuw1dy80lb3"

customer
string
required

ID of the customer

Example:

"cus_a8n8ol7yd4h0wohx824f0bui"

address
string
required

ID of the address

Example:

"adr_a7gurqkul8lzzsy1pf9p9388"

meter
string
required

ID of the meter

Example:

"mtr_azk4zue2ijx4ff1dbjt14m5h"

payment_method
string
required

ID of the payment method

Example:

"pm_adc9utqqpcp7tx054l7vg56s2"

status
enum<string>
required

Status of the subscription

Available options:
pending,
active,
ended
Example:

"active"

estimated_usage
number
required

Estimated yearly usage in kWh, provided by the customer in the checkout.

created_at
required

Timestamp when the subscription was created

Example:

"2024-03-14T12:00:00Z"

updated_at
required

Timestamp when the subscription was updated

Example:

"2024-03-14T12:00:00Z"

start_at
required

Timestamp when delivery was started / will start

Example:

"2024-03-14T12:00:00Z"

terminated_at
required

Timestamp when delivery was terminated

Example:

"2024-03-14T12:00:00Z"

end_at
required

Timestamp when the subscription was ended / will end

Example:

"2024-03-14T12:00:00Z"

supplier
string | null

ID of the previous supplier

Example:

"mp_a0x6jm5h92wde6s5dnuvha4c"

number
string | null

Human-readable identifier for the subscription

Example:

"4X44EMKX"

metadata
object | null

Metadata of the subscription. Store any type of information, custom to your needs. E.g. the user_id of your in-house user. Restricted to 10KB.

Example:
{
"utm_source": "google",
"utm_campaign": "campaign_name",
"user_id": "1234567890"
}