The Arc API can be used in two different modes, differentiated by the API keys you use to send your request -
Users who sign up for the Arc API are automatically granted
sandboxed API keys and can begin working with the API immediately. The
sandboxed API mode should be used when developing and testing your applications. Some API features and endpoints intended to make development easier are only supported in the
sandboxed API mode - like test credentials and triggering specific webhooks.
live API keys are only granted to users who have signed up for a paid plan through the Arc Dashboard.
All of the main resources in the Arc API have a
sandboxed boolean field on them to help you understand which API mode you are working in. You do not need to worry about populating this field; we will always set this field for you according to which set of API keys you sent your request with. Only
sandboxed API keys can interact with resources where
true and only
live API keys can interact with resources where
You may want to test the Arc API without using real customer credentials. To do so you may use test credentials to access dynamically generated mock data from any zip code or utility. Note that this functionality only works when making requests using the
sandboxed API mode.
Please note, although Spark is available in several utilities, for test credentials we have limited the feature availability to the PG&E area. Therefore, if you wish to test Spark functionality with test credentials, please use use a PG&E zip code (e.g. 94609) when going through Connect.
The following credentials will provide different utility account scenarios to test with.
- If the specified utility uses email addresses as usernames, simply append
@any-domain.comto the username.
- If you have already created one of the test users below in your sandbox, you can always append any numbers to the end of the username to replicate the same scenarios (ex:
- If you are testing ConEd, see the special section Testing Consolidated Edison
|Username / Email||Account configuration||Utility statements available?|
|ARC_TEST_R_SINGLE_ELEC||1 active electric account||Yes|
|ARC_TEST_R_SINGLE_ELEC_MULTI_METER||1 active electric account with multiple electric meters||Yes|
|ARC_TEST_R_MULTI_ELEC||3 active electric accounts, each with a different tariff when PG&E is specified as the utility||Yes|
|ARC_TEST_R_SINGLE_GAS||1 active gas account||No|
|ARC_TEST_R_SINGLE_ELEC_SINGLE_GAS||1 active electric account and 1 active gas account||No|
|ARC_TEST_R_SINGLE_ELEC_GAS||1 active electric and gas account||Yes|
|ARC_TEST_R_SINGLE_COMBINED_MULTI_METER||1 active electric and gas account with one electric meter and one gas meter||Electric: Yes|
|ARC_TEST_R_CLOSED||1 closed electric account||No|
|ARC_TEST_R_NO_ACCOUNTS||No utility accounts||No|
|ARC_TEST_R_NEW_ELEC||1 active electric account||No|
|ARC_TEST_R_UTILITY_ACCOUNTS_DISCOVERY_ERROR||Encounters an error discovering Utility Accounts||No|
|ARC_TEST_R_HISTORICAL_STATEMENTS_DISCOVERY_ERROR||Encounters an error discovering historical Utility Statements||No|
|ARC_TEST_R_INTERVALS_DISCOVERY_ERROR||Encounters an error discovering interval data||Yes|
The following passwords control the result of test utility credential
|verified||The credentials will be verified and the data corresponding to the specified username will become available|
|rejected||The credentials will be rejected|
|error||The credentials will behave as if a credential verification error occurred|
|timeout_verified||Same as |
|timeout_rejected||Same as |
|timeout_error||Same as |
Programmatic credential submission
For general testing or continuous integration purposes, an API endpoint is available in the
sandboxed API mode - for submitting test credentials, as an alternative to doing so manually using Connect. Note that real credentials will still need to be tested manually using Connect.