> ## 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.

# Consent and branding

> What your users agree to, and how Link shows your name, logo and colour.

export const Screen = ({name, alt, caption, wide = false}) => {
  const style = wide ? {
    width: '100%'
  } : {
    width: '280px',
    maxWidth: '100%'
  };
  return <figure style={{
    margin: '1.5rem 0',
    textAlign: 'center'
  }}>
      <img className="block dark:hidden" src={`/images/sdk/${name}-light.webp`} alt={alt} style={{
    ...style,
    margin: '0 auto',
    borderRadius: '12px',
    border: '1px solid rgba(128, 128, 128, 0.25)'
  }} />
      <img className="hidden dark:block" src={`/images/sdk/${name}-dark.webp`} alt={alt} style={{
    ...style,
    margin: '0 auto',
    borderRadius: '12px',
    border: '1px solid rgba(128, 128, 128, 0.25)'
  }} />
      {caption ? <figcaption style={{
    marginTop: '0.5rem',
    fontSize: '0.875rem',
    opacity: 0.7
  }}>{caption}</figcaption> : null}
    </figure>;
};

## The consent screen

When a client session is for one of your users (`external_user_id`), their first link session starts with a consent screen. It tells them that you use Plugchoice to connect to their chargers, and what you may do:

* You can see their chargers, their status and their charging sessions.
* You can control their chargers: start, stop and limit charging, and change their settings.
* They can disconnect at any time in your app.

It links to Plugchoice's privacy policy and to yours.

<Columns cols={2}>
  <Screen name="consent" alt="The consent screen with Acme Energy's accent colour" caption="With an accent colour" />

  <Screen name="consent-logo" alt="The consent screen with a partner's logo" caption="With a logo" />
</Columns>

* **Agree and continue** records the consent and goes on.
* **Not now** ends the link session: it is `abandoned` with `abandon_reason: consent_declined`, and your app gets `cancelled`.
* A user who agreed once isn't asked again in later link sessions with your integration, until the consent text changes.
* Your own chargers (no `external_user_id`) and Plugchoice users' own link sessions have no consent screen.

The consent covers reading and controlling the charger from the start, so features that control charging later don't need to ask your users again.

## Your branding

Link shows your brand wherever your users see it:

| Item | Where |
| - | - |
| Name | The top of every screen ("Acme Energy, with Plugchoice") and the consent text |
| Logo | The top of every screen |
| Accent colour | Buttons, check marks and progress, adjusted so it reads in light and dark |
| Privacy policy URL | The consent screen |

<Columns cols={2}>
  <Screen name="accent-run" alt="Link setting up a charger in Acme Energy's accent colour" caption="The accent colour" />

  <Screen name="accent-panel" alt="Link showing the charger's connections in Acme Energy's accent colour" caption="On every screen" />
</Columns>

Plugchoice sets these on your integration. Email them to [support@plugchoice.com](mailto:support@plugchoice.com): your name as your users know it, a logo (an HTTPS URL), an accent colour as `#RRGGBB`, and your privacy policy URL. Without an accent colour Link uses its own.

<Screen name="consent-plain" alt="The consent screen without an accent colour" caption="Without an accent colour" />

## Light, dark and language

Each client session sets:

* `color_scheme`: `light`, `dark`, or `system` (the default), which follows the phone. Send the one your app uses, so Link matches it.
* `language`: `de`, `en`, `es`, `fi`, `fr`, `nl` or `zh`. Other languages fall back to English.

See [Client sessions and scopes](/sdk/concepts/client-sessions).


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