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

# Plugchoice API

> Manage your EV chargers from your own systems: their status, charging, locations and energy use.

With the Plugchoice API, your own systems can do what you do in the Plugchoice dashboard: see your chargers and their status, start and stop charging, manage locations and charge cards, and read charging sessions and energy use.

## What you can do

<Columns cols={2}>
  <Card title="Chargers" icon="charging-station" href="/api-reference/chargers/list-chargers">
    List your chargers, see their status, change their settings and update their firmware.
  </Card>

  <Card title="Charging" icon="bolt" href="/api-reference/charger-actions/start-charging">
    Start and stop charging, or restart a charger.
  </Card>

  <Card title="Locations and teams" icon="building" href="/api-reference/sites/list-sites">
    Organise chargers by location and team, and manage who may charge with charge cards.
  </Card>

  <Card title="Sessions and energy" icon="chart-line" href="/api-reference/transactions/list-team-transactions">
    Read charging sessions and meter values, and export energy use.
  </Card>
</Columns>

## Make your first request

<Steps>
  <Step title="Create a token">
    In the dashboard, go to [**Settings › Personal Access Tokens**](https://app.plugchoice.com/settings/personal-access-tokens) and create a token. Copy it: it's shown only once.
  </Step>

  <Step title="Call the API">
    Send the token in the `Authorization` header. This asks who you are:

    ```bash theme={null}
    curl https://api.plugchoice.com/v3/user \
      -H "Authorization: Bearer YOUR_API_TOKEN"
    ```
  </Step>

  <Step title="List your chargers">
    ```bash theme={null}
    curl https://api.plugchoice.com/v3/chargers \
      -H "Authorization: Bearer YOUR_API_TOKEN"
    ```

    The [API reference](/api-reference/chargers/list-chargers) lets you try every endpoint from the page.
  </Step>
</Steps>

Building something other people sign in to? Use OAuth 2.0 instead of a personal token: see [Authentication](/guides/authentication).

## How it's organised

* **Teams** are at the top. You can belong to more than one.
* **Locations** are the places with chargers. Each belongs to a team.
* **Chargers** are at a location.
* **Connectors** are the plugs on a charger. A charger has one or more.

The API calls locations `sites`, as in `/v3/sites`.

## Good to know

<AccordionGroup>
  <Accordion title="Requests and responses">
    Every endpoint lives under `https://api.plugchoice.com/v3`, takes JSON and answers with JSON.
  </Accordion>

  <Accordion title="Lists come in pages">
    Endpoints that list things answer one page at a time. [Pagination](/guides/pagination)
  </Accordion>

  <Accordion title="There's a rate limit">
    Too many requests in a short time get `429 Too Many Requests`. [Rate limiting](/guides/rate-limiting)
  </Accordion>

  <Accordion title="Errors">
    Errors use the usual HTTP status codes, with a message in the body. [Errors](/guides/errors)
  </Accordion>
</AccordionGroup>

<Card title="Building an app for EV drivers?" icon="mobile" href="/sdk">
  The Plugchoice SDK lets the people using your app connect their charger in a few taps, without leaving your app.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.