> ## Documentation Index
> Fetch the complete documentation index at: https://developers.podero.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Partner API Overview

> Comprehensive guide to the Podero Partner API for server-to-server integration

# Podero Partner API Developer Reference

**Version:** 2.0.0

This resource provides a concise overview of the Podero Partner API endpoints, designed for interacting with and governing its hardware and features.

<CardGroup cols={2}>
  <Card title="Get Started" icon="rocket" href="/partner-api/getting-started/prerequisites">
    Begin your integration journey with our step-by-step tutorial
  </Card>

  <Card title="User Journeys" icon="map" href="/partner-api/user-journeys/end-user/device-onboarding">
    Explore common use cases and workflows
  </Card>

  <Card title="Authentication" icon="key" href="/partner-api/overview/authentication">
    Learn about OAuth2 server-to-server authentication
  </Card>

  <Card title="API Reference" icon="book" href="/partner-api/reference/users">
    Complete parameter documentation
  </Card>
</CardGroup>

## Versioning

<Note>
  Podero follows **Semantic Versioning** (MAJOR.MINOR.PATCH) to ensure stability and compatibility.
</Note>

Given a version number **MAJOR.MINOR.PATCH**, we increment:

1. **MAJOR** version when incompatible API changes are made
2. **MINOR** version when functionality is added in a backward-compatible manner
3. **PATCH** version when backward-compatible bug fixes are made

The developer documentation is tagged with the corresponding version number. The API URL is tagged with the current MAJOR.MINOR version.

New versions are issued when significant changes occur or new features are introduced that may break existing functionality. Bug fixes are made available across all supported API versions.

## Environments

You can access multiple environments within our systems. Each has its unique access policies and live/mocked confiugrations.

<Warning>
  Environments are self-contained and isolated. Client credentials are associated with a specific environment and cannot be employed in other environments.
</Warning>

<Tabs>
  <Tab title="Production">
    | Resource            | URL                                         |
    | ------------------- | ------------------------------------------- |
    | API Base            | `https://app.podero.com/api/partners/v2.0/` |
    | Documentation       | [API Reference](/api-reference)             |
    | OAuth Authorization | Client Credentials                          |
  </Tab>

  <Tab title="Sandbox">
    | Resource            | URL                                                 |
    | ------------------- | --------------------------------------------------- |
    | API Base            | `https://sandbox-app.podero.com/api/partners/v2.0/` |
    | Documentation       | [API Reference](/api-reference)                     |
    | OAuth Authorization | Client Credentials                                  |
  </Tab>
</Tabs>

## API Documentation

A detailed low-level documentation of the API can be found in the [API Reference](/api-reference).

## Organization and User Management

There are 3 access levels within an organization:

* **Administrator**
* **Staff**
* **User**

The "Administrator" and "Staff" roles can view and edit all other users and their devices.

An Administrator can add other Staff and Administrators. The Client Credential access for a server-to-server connection has the same privileges as an organization's Administrator.

### Permission Matrix

<Accordion title="Administrator / Server-to-Server">
  | Role             | Create | Read | Update | Delete |
  | ---------------- | ------ | ---- | ------ | ------ |
  | Admin Users      | ✅      | ✅    | ✅      | ✅      |
  | Staff Users      | ✅      | ✅    | ✅      | ✅      |
  | Users            | ✅      | ✅    | ✅      | ✅      |
  | Buildings        | ✅      | ✅    | ✅      | ✅      |
  | Energy Contracts | ✅      | ✅    | ✅      | ✅      |
  | Devices          | ✅      | ✅    | ✅      | ✅      |
</Accordion>

<Accordion title="Staff">
  | Role             | Create | Read | Update | Delete |
  | ---------------- | ------ | ---- | ------ | ------ |
  | Admin User       | ❌      | ✅    | ❌      | ❌      |
  | Staff User       | ❌      | ✅    | ❌      | ❌      |
  | Users            | ✅      | ✅    | ✅      | ✅      |
  | Buildings        | ✅      | ✅    | ✅      | ✅      |
  | Energy Contracts | ✅      | ✅    | ✅      | ✅      |
  | Devices          | ✅      | ✅    | ✅      | ✅      |
</Accordion>

<Accordion title="User (End-User)">
  The "User" can only see and edit their own assets and no assets owned by other users.

  | Role     | Create | Read | Update | Delete |
  | -------- | ------ | ---- | ------ | ------ |
  | User     | ❌      | ✅    | ✅      | ❌      |
  | Building | ✅      | ✅    | ✅      | ✅      |
  | Device   | ✅      | ✅    | ✅      | ✅      |
</Accordion>

## Core Concepts

### Organization

An organization is the highest level our Partners have access to. For management purposes, one Partner can maintain multiple organizations.

<Tip>
  Please reach out to [contact@podero.com](mailto:contact@podero.com) if you need more than one organization.
</Tip>

### Users

The user refers to the Partner's end-user, who owns the devices that are being monitored, steered, and optimized through Podero's platform. The Partner can choose to add their own internal ID, as well as a host of other additional information.

Our API is connected to a rich database, allowing the Partners to add extensive information about their users, reducing effort and needed disk space on their own server side.

### Devices

The devices that can be monitored, steered, and optimized through the Podero platform are:

* **Heat Pumps**
* **Electric Vehicles**
* **EV Chargers**
* **Solar Inverters**

## Next Steps

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/partner-api/overview/authentication">
    Set up OAuth2 authentication
  </Card>

  <Card title="Getting Started" icon="rocket" href="/partner-api/getting-started/prerequisites">
    Follow our step-by-step tutorial
  </Card>
</CardGroup>
