UDS and Plug API Differences
Read this page prior to starting an API integration with Plug to understand how key API mechanics are different in Plug compared to UDS.
API Versioning
The UDS API had implemented versioning in the API URL. The Plug API uses a dated version scheme (YYYY-MM-DD) and you are required to specify an additional Arc-Version header in all API requests. Using a version scheme allows Arcadia to release breaking changes without breaking your integration or requiring you to make updates before a certain time. Check out the Arc Platform API Versioning Guide for more information.
curl --request GET
--url '<https://api.arcadia.com/plug/credentials?page=0&size=20'>
--header 'Arc-Version: 2024-02-21'
Check out the Arc Platform API Versioning Guide for more information.
Authentication
Legacy UDS | Plug API |
|---|---|
Uses a bespoke authentication framework. | Fully compliant with OAuth 2.0 specs. |
To authenticate with the API and the Console, you can use the same username and password pair. | API keys are issued at the organization level. One organization can have multiple API keys.
|
Both Console and API authentication is user-specific. You will be able to get user-specific events for changes made via both the Console and the API. For example, when John Smith updates a credential via either the API or via Console. You will be able to get an event that tells you the credential is updated by John Smith. | Dashboard authentication is user-specific, while API authentication is not. This means, you will only be able to get user-specific events when the change is made via the Dashboard. For example, when John Smith updates a credential via the API. You will not be able to know that it was John Smith who updated the credential. |
To Authenticate in Plug, retrieve an API key from the Dashboard, then supply it in the Authenticate endpoint to retrieve a time-limited Access Token, per the OAuth 2.0 specs.
Searching via API
| Legacy UDS | Plug API |
|---|---|
| To obtain a list of searchable fields for a resource, you will need to query the respective Search endpoints. | The list of searchable fields is directly accessible under the search parameter in the query parameters section for a certain field in the API Reference. |
Webhooks
| Legacy UDS | Plug API |
|---|---|
| UDS has no webhook functionality | Arcadia will send webhooks for all status transitions for all stateful resources (i.e. credential, account, file, deletion, download). |
Check out the Webhooks Guide for more information.
API Field Naming Conventions
For better readability, Arcadia introduced the following naming convention for API fields:
- ID handling:
idare prefixed with an abbreviation to indicate the resource it identifies with the following abbreviations:- Account:
act_ - Credential:
crd_ - Deletion Log:
del_ - Download:
dwl_ - Error:
err_ - File:
fil_ - Meter:
mtr_ - Organization:
org_ - Payment:
pmt_ - Provider:
prv_ - Statement:
stm_ - Webhook:
whk_ - Site:
sit_ - Usage:
usg_ - User:
usr_
- Account:
- All ids are UUIDs except for error
ids. Errorids are NanoIDs.
AsPrintedis suffixed for all fields we present exactly as they are seen on the bill.- Field names that contain abbreviations are fully spelled out.
Dateis suffixed to all date fields without a time component.Atis suffixed to all date-time fields with a time component.isis prefixed for all boolean fields.
Updated 2 days ago
