Skip to main content

Where you see it

  • Your server:
    • GET /link-sessions/{link_session_id} for a link session another caller opened;
    • GET /chargers/{charger_id} for a charger at a site you may not use;
    • POST /client-sessions when scope.chargers or scope.sites names a charger or site you may not use;
    • any path that doesn’t exist, with the title Not found.
  • Your app’s result, when the hosted flow can’t start (LinkResult.error.code):
    • the client secret is unknown;
    • the action’s charger or site is outside the client session’s scope, or no longer one you may manage;
    • add was opened with a scope of chargers only (the title Nothing to add to).
  • Inside the hosted flow, which handles it: a charger or claim that isn’t in the link session, or a Zaptec charger the account doesn’t have.

What it means

The SDK API gives the same answer for an id that doesn’t exist and for one you may not use, so it never tells you about someone else’s chargers or sites. Which chargers and sites you may use:

What to do

  • Use Plugchoice’s ids (id, a UUID), not your own references.
  • Make the client session’s scope cover the charger or site of the action your app opens. See Client sessions and scopes.
  • For add, the scope needs a site, a location or new_site.
  • For an integration acting for a user, send the same external_user_id you used when that user’s chargers were added.

Example