Leap Webhook Subscription API

List, create, update, delete and test webhooks that deliver Leap event notifications such as meter, connect and dispatch events to a partner receiver URL. OpenAPI 3.0.1.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/leapfrog-power-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

leapfrog-power-webhooks-openapi.yml Raw ↑
openapi: 3.0.1
info:
  contact:
    email: apiteam@leap.energy
  description: "Create webhooks, list existing webhooks, update webhooks, and delete\
    \ webhooks."
  title: Webhook Subscription API
  version: "1.1"
servers:
- url: https://api.staging.leap.energy
- url: https://api.leap.energy
security:
- http: []
tags:
- name: webhooks
paths:
  /v1.1/webhooks:
    get:
      description: List existing webhooks.
      operationId: listWebhooks
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WebhookListResponse"
          description: List of webhooks
        "401":
          content:
            application/json:
              examples:
                error:
                  summary: Unauthorized error
                  value:
                    error: Unauthorized
                    message: Auth token is invalid
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unauthorized - Auth token is invalid
        "403":
          content:
            application/json:
              examples:
                error:
                  summary: Forbidden error
                  value:
                    error: Forbidden
                    message: You do not have permission to perform this action
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden - You do not have permission to perform this action
        "500":
          content:
            application/json:
              examples:
                error:
                  summary: Internal Server Error
                  value:
                    error: Internal Server Error
                    message: An unexpected error occurred
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Internal Server Error
      summary: List webhooks
      tags:
      - webhooks
    post:
      description: Create a new webhook to receive event notifications.
      operationId: createWebhook
      requestBody:
        $ref: "#/components/requestBodies/WebhookRequestBody"
      responses:
        "200":
          content:
            application/json:
              examples:
                success:
                  summary: A successful response
                  value:
                    webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
              schema:
                $ref: "#/components/schemas/WebhookResponse"
          description: Webhook created successfully
        "401":
          content:
            application/json:
              examples:
                error:
                  summary: Unauthorized error
                  value:
                    error: Unauthorized
                    message: Auth token is invalid
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unauthorized - Auth token is invalid
        "403":
          content:
            application/json:
              examples:
                error:
                  summary: Forbidden error
                  value:
                    error: Forbidden
                    message: You do not have permission to perform this action
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden - You do not have permission to perform this action
      summary: Create a webhook
      tags:
      - webhooks
  /v1.1/webhooks/{webhook_id}:
    delete:
      description: Delete an existing webhook identified by webhook_id.
      operationId: deleteWebhook
      parameters:
      - description: The ID of the webhook.
        explode: false
        in: path
        name: webhook_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              examples:
                success:
                  summary: A successful response
                  value:
                    message: Operation completed successfully
              schema:
                $ref: "#/components/schemas/SuccessResponse"
          description: Operation completed successfully
        "401":
          content:
            application/json:
              examples:
                error:
                  summary: Unauthorized error
                  value:
                    error: Unauthorized
                    message: Auth token is invalid
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unauthorized - Auth token is invalid
        "403":
          content:
            application/json:
              examples:
                error:
                  summary: Forbidden error
                  value:
                    error: Forbidden
                    message: You do not have permission to perform this action
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden - You do not have permission to perform this action
        "404":
          content:
            application/json:
              examples:
                error:
                  summary: Not Found error
                  value:
                    error: Not Found
                    message: The specified resource was not found
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Not Found - The specified resource was not found
      summary: Delete a webhook
      tags:
      - webhooks
    put:
      description: "Update an existing webhook identified by webhook_id. NOTE: using\
        \ this endpoint will overwrite all existing settings for the specified webhook_id."
      operationId: updateWebhook
      parameters:
      - description: The ID of the webhook.
        explode: false
        in: path
        name: webhook_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        $ref: "#/components/requestBodies/WebhookRequestBody"
      responses:
        "200":
          content:
            application/json:
              examples:
                success:
                  summary: A successful response
                  value:
                    webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
              schema:
                $ref: "#/components/schemas/WebhookResponse"
          description: Webhook created successfully
        "401":
          content:
            application/json:
              examples:
                error:
                  summary: Unauthorized error
                  value:
                    error: Unauthorized
                    message: Auth token is invalid
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unauthorized - Auth token is invalid
        "403":
          content:
            application/json:
              examples:
                error:
                  summary: Forbidden error
                  value:
                    error: Forbidden
                    message: You do not have permission to perform this action
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden - You do not have permission to perform this action
        "404":
          content:
            application/json:
              examples:
                error:
                  summary: Not Found error
                  value:
                    error: Not Found
                    message: The specified resource was not found
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Not Found - The specified resource was not found
      summary: Update a webhook
      tags:
      - webhooks
  /v1.1/webhooks/{webhook_id}/test:
    post:
      description: Send a test event to the configured receiver_url for the specified
        webhook_id.
      operationId: testWebhook
      parameters:
      - description: The ID of the webhook.
        explode: false
        in: path
        name: webhook_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        $ref: "#/components/requestBodies/TestWebhookRequestBody"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TestWebhookResponse"
          description: Object that returns the response from your server
        "401":
          content:
            application/json:
              examples:
                error:
                  summary: Unauthorized error
                  value:
                    error: Unauthorized
                    message: Auth token is invalid
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Unauthorized - Auth token is invalid
        "403":
          content:
            application/json:
              examples:
                error:
                  summary: Forbidden error
                  value:
                    error: Forbidden
                    message: You do not have permission to perform this action
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Forbidden - You do not have permission to perform this action
        "404":
          content:
            application/json:
              examples:
                error:
                  summary: Not Found error
                  value:
                    error: Not Found
                    message: The specified resource was not found
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Not Found - The specified resource was not found
      summary: Test a webhook
      tags:
      - webhooks
components:
  parameters:
    WebhookId:
      description: The ID of the webhook.
      explode: false
      in: path
      name: webhook_id
      required: true
      schema:
        format: uuid
        type: string
      style: simple
  requestBodies:
    WebhookRequestBody:
      content:
        application/json:
          examples:
            webhook:
              summary: A sample webhook request
              value:
                headers:
                - name: x-api-key
                  value: your-test-key
                event_types:
                - meter.created
                receiver_url: https://company.com/leap-webhooks
          schema:
            $ref: "#/components/schemas/WebhookRequest"
      required: true
    TestWebhookRequestBody:
      content:
        application/json:
          examples:
            meter.created:
              summary: A sample meter created event
              value:
                webhook_event_type: meter.created
                meter_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
                partner_reference: sample-ref-123
          schema:
            $ref: "#/components/schemas/WebhookEventTypeDiscriminator"
      required: true
  responses:
    WebhookList:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/WebhookListResponse"
      description: List of webhooks
    Unauthorized:
      content:
        application/json:
          examples:
            error:
              summary: Unauthorized error
              value:
                error: Unauthorized
                message: Auth token is invalid
          schema:
            $ref: "#/components/schemas/ErrorResponse"
      description: Unauthorized - Auth token is invalid
    Forbidden:
      content:
        application/json:
          examples:
            error:
              summary: Forbidden error
              value:
                error: Forbidden
                message: You do not have permission to perform this action
          schema:
            $ref: "#/components/schemas/ErrorResponse"
      description: Forbidden - You do not have permission to perform this action
    InternalServerError:
      content:
        application/json:
          examples:
            error:
              summary: Internal Server Error
              value:
                error: Internal Server Error
                message: An unexpected error occurred
          schema:
            $ref: "#/components/schemas/ErrorResponse"
      description: Internal Server Error
    WebhookCreated:
      content:
        application/json:
          examples:
            success:
              summary: A successful response
              value:
                webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
          schema:
            $ref: "#/components/schemas/WebhookResponse"
      description: Webhook created successfully
    NotFound:
      content:
        application/json:
          examples:
            error:
              summary: Not Found error
              value:
                error: Not Found
                message: The specified resource was not found
          schema:
            $ref: "#/components/schemas/ErrorResponse"
      description: Not Found - The specified resource was not found
    Success:
      content:
        application/json:
          examples:
            success:
              summary: A successful response
              value:
                message: Operation completed successfully
          schema:
            $ref: "#/components/schemas/SuccessResponse"
      description: Operation completed successfully
    TestWebhookResponse:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/TestWebhookResponse"
      description: Object that returns the response from your server
  schemas:
    WebhookRequest:
      example:
        headers:
        - name: x-api-key
          value: your-test-key
        event_types:
        - meter.created
        receiver_url: https://company.com/leap-webhooks
      properties:
        headers:
          description: List of custom headers used in requests back to the origin.
          example:
          - name: x-api-key
            value: your-test-key
          items:
            $ref: "#/components/schemas/Header"
          type: array
        event_types:
          description: A list of unique event keys to subscribe to.
          example:
          - meter.created
          items:
            $ref: "#/components/schemas/WebhookEventType"
          type: array
        receiver_url:
          description: The callback URL for this webhook.
          example: https://company.com/leap-webhooks
          type: string
      required:
      - event_types
      - receiver_url
      type: object
    Webhook:
      example:
        webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
        event_types:
        - meter.created
        - meter.created
        headers:
        - name: name
          value: value
        - name: name
          value: value
        receiver_url: https://company.com/leap-webhooks
      properties:
        webhook_id:
          description: The unique identifier for your webhook subscription.
          example: 364be407-1f08-48fa-afd2-ee1dd228b76b
          format: uuid
          type: string
        event_types:
          items:
            $ref: "#/components/schemas/WebhookEventType"
          type: array
        headers:
          items:
            $ref: "#/components/schemas/Header"
          type: array
        receiver_url:
          example: https://company.com/leap-webhooks
          type: string
      required:
      - event_types
      - headers
      - receiver_url
      - webhook_id
      type: object
    WebhookListResponse:
      example:
        webhooks:
        - webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
          event_types:
          - meter.created
          - meter.created
          headers:
          - name: name
            value: value
          - name: name
            value: value
          receiver_url: https://company.com/leap-webhooks
        - webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
          event_types:
          - meter.created
          - meter.created
          headers:
          - name: name
            value: value
          - name: name
            value: value
          receiver_url: https://company.com/leap-webhooks
      properties:
        webhooks:
          items:
            $ref: "#/components/schemas/Webhook"
          type: array
      required:
      - webhooks
      type: object
    WebhookEventId:
      description: The unique identifier for a webhook event with payload.
      example: 31f6b61a-712e-42e7-83af-ea441777a32f
      format: uuid
      type: string
    WebhookPayload:
      description: A webhook payload that you receive from Leap.
      properties:
        webhook_event_id:
          description: The unique identifier for a webhook event with payload.
          example: 31f6b61a-712e-42e7-83af-ea441777a32f
          format: uuid
          type: string
        payload:
          $ref: "#/components/schemas/WebhookEventTypeDiscriminator"
      required:
      - payload
      - webhook_event_id
      type: object
    ErrorResponse:
      example:
        error: error
        message: message
      properties:
        error:
          description: Error type.
          type: string
        message:
          description: Detailed error message.
          type: string
      type: object
    WebhookResponse:
      example:
        webhook_id: 364be407-1f08-48fa-afd2-ee1dd228b76b
      properties:
        webhook_id:
          description: The unique identifier for your webhook subscription.
          example: 364be407-1f08-48fa-afd2-ee1dd228b76b
          format: uuid
          type: string
      required:
      - webhook_id
      type: object
    SuccessResponse:
      example:
        message: Operation completed successfully
      properties:
        message:
          description: Success message.
          example: Operation completed successfully
          type: string
      required:
      - message
      type: object
    TestWebhookResponse:
      description: This object returns the response that Leap got from your server
      example:
        is_successful: true
        error: error
        status_code: 0
        response_time_ms: 6
      properties:
        is_successful:
          description: True if Leap was able to connect to your server and receive
            a 2xx response.
          type: boolean
        error:
          description: "If Leap wasn't able to get any response from your server,\
            \ e.g. due to connection issues, this field will be populated."
          type: string
        status_code:
          description: HTTP response status code that Leap received from your server.
            This field will only be populated if Leap was able to reach your server.
          type: integer
        response_time_ms:
          description: Your server's response time in milliseconds. This field will
            only be populated if Leap was able to reach your server.
          type: integer
      required:
      - is_successful
      type: object
    WebhookEventTypeDiscriminator:
      discriminator:
        mapping:
          meter.created: "#/components/schemas/MeterCreatedEventV1Wrapped"
          meter.enrollment.global-status.updated: "#/components/schemas/MeterEnrollmentGlobalStatusUpdatedEventV1Wrapped"
          meter.enrollment.participation-status.updated: "#/components/schemas/MeterEnrollmentParticipationStatusUpdatedEventV1Wrapped"
          meter.enrollment.required-actions.updated: "#/components/schemas/MeterEnrollmentPartnerRequiredActionsUpdatedV1Wrapped"
          meter.enrollment.group.updated: "#/components/schemas/MeterEnrollmentGroupUpdatedEventV1Wrapped"
          connect_session.updated: "#/components/schemas/ConnectSessionUpdatedEventV1Wrapped"
          connect_session.authorization_updated: "#/components/schemas/ConnectSessionAuthorizationUpdatedEventV1Wrapped"
        propertyName: webhook_event_type
      example:
        webhook_event_type: meter.created
      oneOf:
      - $ref: "#/components/schemas/MeterCreatedEventV1Wrapped"
      - $ref: "#/components/schemas/MeterEnrollmentGlobalStatusUpdatedEventV1Wrapped"
      - $ref: "#/components/schemas/MeterEnrollmentParticipationStatusUpdatedEventV1Wrapped"
      - $ref: "#/components/schemas/MeterEnrollmentPartnerRequiredActionsUpdatedV1Wrapped"
      - $ref: "#/components/schemas/MeterEnrollmentGroupUpdatedEventV1Wrapped"
      - $ref: "#/components/schemas/ConnectSessionUpdatedEventV1Wrapped"
      - $ref: "#/components/schemas/ConnectSessionAuthorizationUpdatedEventV1Wrapped"
      properties:
        webhook_event_type:
          $ref: "#/components/schemas/WebhookEventType"
      required:
      - webhook_event_type
      type: object
    WebhookEventType:
      enum:
      - meter.created
      - connect_session.updated
      - connect_session.authorization_updated
      - meter.enrollment.global-status.updated
      - meter.enrollment.participation-status.updated
      - meter.enrollment.required-actions.updated
      - meter.enrollment.group.updated
      type: string
    Header:
      example:
        name: name
        value: value
      properties:
        name:
          description: The name of the header.
          type: string
        value:
          description: The value of the header.
          type: string
      required:
      - name
      - value
      type: object
    WebhookId:
      description: The unique identifier for your webhook subscription.
      example: 364be407-1f08-48fa-afd2-ee1dd228b76b
      format: uuid
      type: string
    MeterCreatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/MeterCreatedEventV1"
    MeterCreatedEventV1:
      properties:
        meter_id:
          description: The unique identifier for the meter.
          example: 11111111-1111-1111-1111-111111111111
          format: uuid
          type: string
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        transmission_region:
          $ref: "#/components/schemas/transmission_region"
        meter_type:
          $ref: "#/components/schemas/MeterType"
      required:
      - meter_id
      - transmission_region
      type: object
    MeterEnrollmentGlobalStatusUpdatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/MeterEnrollmentGlobalStatusUpdatedV1"
    MeterEnrollmentGlobalStatusUpdatedV1:
      properties:
        meter_id:
          description: The unique identifier for the meter.
          example: 11111111-1111-1111-1111-111111111111
          format: uuid
          type: string
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        transmission_region:
          $ref: "#/components/schemas/transmission_region"
        meter_type:
          $ref: "#/components/schemas/MeterType"
        global_enrollment_status:
          $ref: "#/components/schemas/EnrollmentStatus"
      required:
      - global_enrollment_status
      - meter_id
      - transmission_region
      type: object
    MeterEnrollmentParticipationStatusUpdatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/MeterEnrollmentParticipationStatusUpdatedV1"
    MeterEnrollmentParticipationStatusUpdatedV1:
      properties:
        meter_id:
          description: The unique identifier for the meter.
          example: 11111111-1111-1111-1111-111111111111
          format: uuid
          type: string
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        transmission_region:
          $ref: "#/components/schemas/transmission_region"
        meter_type:
          $ref: "#/components/schemas/MeterType"
        participation_preference:
          $ref: "#/components/schemas/ParticipationPreference"
        start_time:
          format: date-time
          type: string
        end_time:
          format: date-time
          type: string
      required:
      - meter_id
      - participation_preference
      - start_time
      - transmission_region
      type: object
    MeterEnrollmentPartnerRequiredActionsUpdatedV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/MeterEnrollmentPartnerRequiredActionsUpdatedV1"
    MeterEnrollmentPartnerRequiredActionsUpdatedV1:
      properties:
        meter_id:
          description: The unique identifier for the meter.
          example: 11111111-1111-1111-1111-111111111111
          format: uuid
          type: string
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        transmission_region:
          $ref: "#/components/schemas/transmission_region"
        meter_type:
          $ref: "#/components/schemas/MeterType"
        required_actions:
          $ref: "#/components/schemas/PartnerRequiredActions"
        global_enrollment_status:
          $ref: "#/components/schemas/EnrollmentStatus"
      required:
      - global_enrollment_status
      - meter_id
      - required_actions
      - transmission_region
      type: object
    MeterEnrollmentGroupUpdatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/MeterEnrollmentGroupUpdatedV1"
    MeterEnrollmentGroupUpdatedV1:
      properties:
        market_group_id:
          description: Identifier for the market group
          format: uuid
          type: string
        market_group_name:
          description: Name for the market group
          example: GRP1_NAME
          type: string
        start_date_time:
          description: The date when this market group will become active
          example: 2024-05-01T04:00:00Z
          format: date-time
          type: string
        end_date_time:
          description: The date when this market group will become inactive
          example: 2024-06-01T04:00:00Z
          format: date-time
          type: string
        meter_ids:
          items:
            $ref: "#/components/schemas/meter_id"
          type: array
      required:
      - end_date_time
      - market_group_id
      - market_group_name
      - meter_ids
      - start_date_time
      type: object
    ConnectSessionUpdatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/ConnectSessionUpdatedEventV1"
    ConnectSessionUpdatedEventV1:
      properties:
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        status:
          description: The status of the connect session.
          enum:
          - CREATED
          - UPDATED
          - CLOSED
          - COMPLETED
          type: string
      required:
      - partner_reference
      - status
      type: object
    ConnectSessionAuthorizationUpdatedEventV1Wrapped:
      allOf:
      - $ref: "#/components/schemas/BaseEvent"
      - $ref: "#/components/schemas/ConnectSessionAuthorizationUpdatedEventV1"
    ConnectSessionAuthorizationUpdatedEventV1:
      properties:
        partner_reference:
          description: The partner-supplied reference ID to help identify the customer
            or site that a Leap meter correlates to a partner?s internal systems.
          example: partner-reference-1
          maxLength: 256
          minLength: 3
          pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
          type: string
        utility_name:
          $ref: "#/components/schemas/utility"
        status:
          description: The status of the authorization.
          enum:
          - INITIATED
          - COMPLETED
          - FAILED
          type: string
      required:
      - partner_reference
      - status
      - utility_name
      type: object
    BaseEvent:
      properties:
        webhook_event_type:
          $ref: "#/components/schemas/WebhookEventType"
      required:
      - webhook_event_type
      type: object
    meter_id:
      description: The unique identifier for the meter.
      example: 11111111-1111-1111-1111-111111111111
      format: uuid
      type: string
    PartnerReference:
      description: The partner-supplied reference ID to help identify the customer
        or site that a Leap meter correlates to a partner?s internal systems.
      example: partner-reference-1
      maxLength: 256
      minLength: 3
      pattern: "^[^\\/\\\\?\\]\\[{}!#$%^&*()<>|]{3,256}$"
      type: string
    transmission_region:
      description: Defines the transmission region of the meter
      enum:
      - CAISO
      - ERCOT
      - NYISO
      - ISONE
      - PJM
      - SERC
      - WECC_SW
      - WECC_PC
      example: CAISO
      type: string
    MeterType:
      description: The type of asset.
      enum:
      - UTILITY_METER
      - SUBMETER
      - DEVICE
      type: string
    EnrollmentStatus:
      description: The enrollment status of the meter.
      enum:
      - ACTIVE
      - ELIGIBLE
      - INELIGIBLE
      - NOT_PARTICIPATING
      - PENDING
      example: ACTIVE
      type: string
    ParticipationPreference:
      enum:
      - PARTICIPATE
      - IDLE
      - DISENROLL
      type: string
    PartnerRequiredActions:
      properties:
        partner:
          description: Required actions for the partner
          example:
          - program_identifier: CEC-DSGS
            delivery_period: CEC-DSGS_2025_AUG_OCT
            enrollment_deadline_date_time: 2024-07-29T00:00:00.000Z
            action_type: IS_AUTHORIZED
            action_description: "There are missing fields: fieldname"
            action_code: AUTH_0001
          items:
            $ref: "#/components/schemas/RequiredAction"
          type: array
      type: object
    RequiredAction:
      allOf:
      - $ref: "#/components/schemas/PublicProgram"
      - $ref: "#/components/schemas/DeliveryPeriod"
      - properties:
          enrollment_deadline_date_time:
            description: The deadline date and time for the required action in UTC.
            example: 2024-07-29T00:00:00Z
            format: date-time
            type: string
          action_type:
            $ref: "#/components/schemas/action_type"
          action_description:
            description: Description of the required action.
            example: "There are missing fields: fieldname"
            type: string
          action_code:
            description: The action code.
            example: SERV_0002
            type: string
        required:
        - action_code
        - action_description
        - action_type
        - delivery_period
        - enrollment_deadline_date_time
        - program_identifier
        type: object
    utility:
      description: The name of the Investor Owned Utility or Publicly Owned Utility
        whose territory the customer is in.
      enum:
     

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/leapfrog-power/refs/heads/main/openapi/leapfrog-power-webhooks-openapi.yml