This release will mark a new set of security and authorization features available on the API. The Wattsense new API version will be live Wednesday 18, September 2019.
This is the most important feature in this release. A service account is a special kind of user meant to represent a non-human user that needs to have access to our API, hence having a seamless integration of your applications with our API. The main differences between service accounts and users are:
- Service accounts do not have account roles. Hence, they will not be able to take any action on users, other service accounts, API Keys, etc.
- Service accounts have the right to authenticate on the API using Basic Auth. This is by default set to false. This will allow you to implement your own webhooks that authenticate using service accounts to talk to our API.
All API Keys will have to be linked to a user or a service account. All previous API Keys will be migrated to this form factor, and your accounts will have a new service Account per API Key created.
The access rights of the API Keys will be managed via the subscription roles of the user or the service account it belongs to.
Any user can create API Keys for himself. However, to be able to create API Keys for a service account, the user must have the right to create a service account. Hence, that user needs an account role allowing him to do just that.
Starting from this release, users will have roles within the company’s account. Each role will contain a list of privileges the user has such as creating or editing service accounts, and creating or inviting new users.
The user console will provide an easy way to manage all of these new features.
This is the first of many new features coming. The future releases will contain the following features:
- Renaming of “Account” to “Organization” and renaming of “Subscription” to “Organization Unit”. We hope that this change will alleviate any confusion.
- Following this renaming, all the resources in the API that used to contain subcriptionId, subscriptionRoles, accountId, accountRoles, will see their name changed too.
- We will make it possible for users to create new organization units.
- The user will be able to set a different Shipping, Billing and contact info per Organization Unit.
- The user will be able to suspend the subscription of a box. The details of this feature will be detailed in a future blog post.