ApiOpenStudio has several layers that it uses to define its resources and access to them.
Only specific roles have the permissions to create, edit or delete elements from these layers.
The base ApiOpenStudio package is a completely headless API, and is the core of the suite. It is self-contained and provides all the logic and resources that you will need to run ApiOpenStudio. This is available at
There is another package that will enable you to administer the headless ApiOpenStudio through an admin interface:
An account is a superset of applications. This allows you to create fine-grained access to ApiOpenStudio and its resources for all levels of users and make control of your API resources and customers very easy.
An account is group of applications. So in a business sense, an account can be a client.
Applications belong to an account.
These are like projects or applications that are associated with an account.
These are individual REST resources that are associated with an application.
A resource is the main element that developers will use to interact with ApiOpenStudio.
It defines everything about a resource, such as:
Processors are the semantic blocks used in the processing of the incoming data.
You should not need to create any Processor classes, thus eliminating the need for time-consuming programming.
There are many processors available with ApiOpenStudio core, but you can add more processors from the community, or even create custom ones yourself. These can all me maintained using composer.