Virtual Peaker is a Louisville, Kentucky software company selling grid-edge DERMS and virtual power plant software to United States and Canadian electric utilities — investor-owned utilities, municipal utilities, and rural electric cooperatives. Its platform is sold as three suites: Shift (grid-edge DERMS device control and demand response event dispatch), Relay (customer engagement, enrollment, and incentive processing), and Envision (demand forecasting). Virtual Peaker sits in the private DER-orchestration layer of the energy value chain, between device OEMs behind the meter and the utility back office — it is a vendor, not a utility, not a retailer, and not a data holder, so no consumer energy data right attaches to it. There is no Green Button / ESPI implementation here, no Consumer Data Right obligation, and no open market or grid data of any kind. What it does publish is its own API specification: Gravity Connect, an OpenAPI 3.0.0 contract (v2.0.6) that Virtual Peaker authored and openly published as a vendor-agnostic alternative to OpenADR and IEEE 2030.5 for onboarding and controlling DER devices. Gravity Connect is two-sided — the device OEM implements one half, the VPP platform implements the other — and both halves are readable anonymously as full Redoc API references. The honest posture: a real, downloadable, standards-ambitious API contract that is effectively undiscoverable (it is linked from nowhere on the marketing site) and whose credentials are partner-only, issued per utility program by emailing the Gravity Connect team. The commercial Shift API is named and sold on the marketing site but has no public documentation at all.
Virtual Peaker publishes 2 APIs on the APIs.io network: Gravity Connect API (Device Partner) and Gravity Connect API (Virtual Peaker). Tagged areas include Energy, United States, Utilities, Electricity, and Grid.
The Virtual Peaker catalog on APIs.io includes 1 event-driven AsyncAPI specification.
Virtual Peaker’s developer surface includes authentication, documentation, API reference, engineering blog, support, getting-started guide, changelog, and 27 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Energy & Utilities regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
The six quality facets above are damped to 85 points between them,
because the conditional facet above carries the other
15. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 85% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
The Device Partner half of Virtual Peaker's Gravity Connect specification — the endpoints a device OEM must implement so a VPP or DERMS platform can discover, enroll, read, grou...
The VPP half of the Gravity Connect specification — the publishing endpoints Virtual Peaker hosts so an integrated device partner can stream device signals, settings, command st...
aid: virtual-peaker
url: https://raw.githubusercontent.com/api-evangelist/virtual-peaker/refs/heads/main/apis.yml
name: Virtual Peaker
kind: company
description: 'Virtual Peaker is a Louisville, Kentucky software company selling grid-edge DERMS and virtual power plant software
to United States and Canadian electric utilities — investor-owned utilities, municipal utilities, and rural electric cooperatives.
Its platform is sold as three suites: Shift (grid-edge DERMS device control and demand response event dispatch), Relay (customer
engagement, enrollment, and incentive processing), and Envision (demand forecasting). Virtual Peaker sits in the private
DER-orchestration layer of the energy value chain, between device OEMs behind the meter and the utility back office — it
is a vendor, not a utility, not a retailer, and not a data holder, so no consumer energy data right attaches to it. There
is no Green Button / ESPI implementation here, no Consumer Data Right obligation, and no open market or grid data of any
kind. What it does publish is its own API specification: Gravity Connect, an OpenAPI 3.0.0 contract (v2.0.6) that Virtual
Peaker authored and openly published as a vendor-agnostic alternative to OpenADR and IEEE 2030.5 for onboarding and controlling
DER devices. Gravity Connect is two-sided — the device OEM implements one half, the VPP platform implements the other —
and both halves are readable anonymously as full Redoc API references. The honest posture: a real, downloadable, standards-ambitious
API contract that is effectively undiscoverable (it is linked from nowhere on the marketing site) and whose credentials
are partner-only, issued per utility program by emailing the Gravity Connect team. The commercial Shift API is named and
sold on the marketing site but has no public documentation at all.'
accessModel:
pricing: paid
onboarding: partner-only
trial: false
try_now: false
public: false
label: Paid · Partner-only onboarding
confidence: high
source:
- documentation
- authentication
generated: '2026-07-27'
method: manual
image: https://assets.virtualpeaker.io/gravity-connect/assets/vp_logo.png
tags:
- Energy
- United States
- Utilities
- Electricity
- Grid
- Demand Response
- DER
- DERMS
- Virtual Power Plant
- EV Charging
- Smart Thermostats
- Energy Storage
created: '2026-07-27'
modified: '2026-07-27'
enrichment:
round: '2026-07-27'
method: search/generate/derive
notes: 'Round 2 enrichment. Contract discovery re-run against every host (partner.virtualpeaker.io, partner-dev.virtualpeaker.io,
assets.virtualpeaker.io, virtual-peaker.com, support.virtual-peaker.com): no additional OpenAPI, no GraphQL, no MCP server,
no AsyncAPI and no /.well-known/ surface exist. New finds this round: the publicly downloadable Gravity Connect Postman
collection and the partner-dev environment it points at.'
specificationVersion: '0.23'
apis:
- aid: virtual-peaker:gravity-connect-device-partner-api
name: Gravity Connect API (Device Partner)
description: The Device Partner half of Virtual Peaker's Gravity Connect specification — the endpoints a device OEM must
implement so a VPP or DERMS platform can discover, enroll, read, group, and command its behind-the-meter DER devices.
Version 2.0.6, OpenAPI 3.0.0, 14 paths / 18 operations across Devices, Commands, Device Partner Driven Enrollment, OAuth
Device Discovery, Pairing Code Device Discovery (end-user app and utility-commissioned installation), Group Management,
and an Energy Interval endpoint. The published `servers` entry is the placeholder https://example.com because the OEM,
not Virtual Peaker, hosts this surface. Secured with OAuth 2.0 — client credentials (scope basic_partner_read_write) for
platform-to-partner calls, and authorization code (scope user_read) for homeowner-consented device discovery.
humanURL: https://assets.virtualpeaker.io/gravity-connect/device-partner-api.html
tags:
- DER
- Demand Response
- Device Control
- OEM
- Authentication
tags_raw:
- DER
- Demand Response
- Device Control
- OEM
- OAuth
properties:
- type: OpenAPI
url: openapi/virtual-peaker-gravity-connect-device-partner-api-openapi.yml
- type: APIReference
url: https://assets.virtualpeaker.io/gravity-connect/device-partner-api.html
- type: Documentation
url: https://virtual-peaker.com/partners/device-partners/
- type: Blog
url: https://virtual-peaker.com/blog/gravity-connect-api-oem-derms-integrations/
- type: Overlay
url: overlays/virtual-peaker-gravity-connect-device-partner-api-overlay.yaml
- type: GettingStarted
url: https://assets.virtualpeaker.io/gravity-connect/device-partner-api.html#section/Getting-Started
- aid: virtual-peaker:gravity-connect-vpp-api
name: Gravity Connect API (Virtual Peaker)
description: 'The VPP half of the Gravity Connect specification — the publishing endpoints Virtual Peaker hosts so an integrated
device partner can stream device signals, settings, command status, and enrollment events back into the platform. Version
2.0.6, OpenAPI 3.0.0, 5 paths / 5 operations, all under the Publishing tag and all keyed on a per-program PROGRAM_PUBLISH_KEY.
Base URL https://partner.virtualpeaker.io/v1, confirmed live (AWS API Gateway, anonymous request returns HTTP 403 MissingAuthenticationTokenException).
Authentication is not OAuth on this side: requests are signed with an HMAC-SHA256 of the request body using a PROGRAM_PUBLISH_SECRET
or DEVICE_PUBLISH_SECRET and sent as `Authorization: Publish <hmac>`.'
humanURL: https://assets.virtualpeaker.io/gravity-connect/vp-api.html
baseURL: https://partner.virtualpeaker.io/v1
tags:
- DER
- Demand Response
- Publishing
- Webhook
- HMAC
tags_raw:
- DER
- Demand Response
- Publishing
- Webhooks
- HMAC
properties:
- type: OpenAPI
url: openapi/virtual-peaker-gravity-connect-vpp-api-openapi.yml
- type: APIReference
url: https://assets.virtualpeaker.io/gravity-connect/vp-api.html
- type: Documentation
url: https://virtual-peaker.com/apis/
- type: Blog
url: https://virtual-peaker.com/blog/gravity-connect-v-openadr/
- type: Overlay
url: overlays/virtual-peaker-gravity-connect-vpp-api-overlay.yaml
- type: Webhooks
url: asyncapi/virtual-peaker-gravity-connect-webhooks.yml
common:
- type: MCPServer
url: mcp/virtual-peaker-mcp.yml
- type: AgenticAccess
url: agentic-access/virtual-peaker-agentic-access.yml
- type: DomainSecurity
url: security/virtual-peaker-domain-security.yml
- type: OAuthScopes
url: scopes/virtual-peaker-scopes.yml
- type: Authentication
url: authentication/virtual-peaker-authentication.yml
- type: Website
url: https://virtual-peaker.com/
- type: Documentation
url: https://virtual-peaker.com/apis/
- type: APIReference
url: https://assets.virtualpeaker.io/gravity-connect/device-partner-api.html
- type: Blog
url: https://virtual-peaker.com/blog/
- type: BlogRSS
url: https://virtual-peaker.com/feed/
- type: Support
url: https://support.virtual-peaker.com/knowledge
- type: SupportCenter
url: https://support.virtual-peaker.com/knowledge
- type: GitHubOrganization
url: https://github.com/virtual-peaker
- type: LinkedIn
url: https://www.linkedin.com/company/virtual-peaker/
- type: PrivacyPolicy
url: https://virtual-peaker.com/privacy-policy/
- type: TermsOfService
url: https://virtual-peaker.com/terms-of-use/
- type: ContactForm
url: https://virtual-peaker.com/company/contact/
- type: PartnerPortal
url: https://virtual-peaker.com/partners/device-partners/
name: Device Partners — the marketing entry point for OEM integrations (the Gravity Connect references themselves are linked
from nowhere on the site)
- type: GettingStarted
url: https://assets.virtualpeaker.io/gravity-connect/device-partner-api.html#section/Getting-Started
- type: Login
url: https://utility.virtualpeaker.io/
name: Utility application sign-in (no self-serve sign-up exists)
- type: Postman
url: https://assets.virtualpeaker.io/gravity-connect/Gravity%20Connect%20API.postman_collection.json
name: Gravity Connect API Postman collection — published, anonymously downloadable, 19 requests with HMAC pre-request scripts
- type: LLMsTxt
url: https://virtual-peaker.com/llms.txt
- type: LLMsTxt
url: llms/virtual-peaker-llms.txt
- type: llmsTxt
url: https://virtual-peaker.com/llms.txt
- type: Conventions
url: conventions/virtual-peaker-conventions.yml
- type: ErrorCatalog
url: errors/virtual-peaker-problem-types.yml
- type: Lifecycle
url: lifecycle/virtual-peaker-lifecycle.yml
- type: ChangeLog
url: changelog/virtual-peaker-changelog.yml
- type: Conformance
url: conformance/virtual-peaker-conformance.yml
- type: DataModel
url: data-model/virtual-peaker-data-model.yml
- type: Sandbox
url: sandbox/virtual-peaker-sandbox.yml
name: Partner-only development environment (partner-dev.virtualpeaker.io) — no self-serve sandbox
- type: Webhooks
url: asyncapi/virtual-peaker-gravity-connect-webhooks.yml
- type: AgentSkill
url: skills/_index.yml
- type: Packages
url: packages/virtual-peaker-packages.yml
name: No first-party SDK exists in any registry — recorded as a verified negative
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com