How Arc Works

You will use both the client-side component, Connect, and a server to access the Arc APIs. See the Quickstart section for a functional example. The flow works like this:

  1. For a user that you'd like to connect to the Arc platform, determine a unique key that you'll use to identify that user within Arc API responses. It can be the user's unique ID in your database or some other unique identifier. This key is referred to as the client_user_id in the API.
  2. Make a POST request to /auth/connect_token from your server, specifying the user's client_user_id in the request body in order to fetch a Connect Token scoped to that user.
  3. Provide that Connect Token as a parameter when opening Connect for the user.
  4. After the user submits their credentials, Connect will call the onCredentialsSubmitted callback with the unique utilityCredentialId generated for this user's credential to the specified utility. You can optionally pass this as utility_credential_id instead of a client_user_id when creating a Connect Token if you ever need the user to update their credentials.
  5. Listen for webhooks that reference the specified client_user_id or make requests API endpoints using that client_user_id to retrieve or analyze data specific to the user.