What is an App?

The app is a business logic layer built on top of the APIs to solve a single problem or provide a limited scope of functionality. For example, User App includes functionalities such as onboarding or offboarding a user. An App could be of three types - Web, Mobile, and Backend.

What does it mean when we say create an app Or register an app?

Creating or registering an app is one and the same. A developer registers an app using the developer portal, which in return provides credentials such as client id, and client secret for making OS1 platform API calls. Once the app is registered, we assign it a unique identifier that is then used through its lifecycle to manage its metadata, subscription, AAA permissions, solution inclusion, etc.

What is a Solution?

A solution is a collection of compatible apps that solve an end-to-end business workflow. For example, a delivery management solution will include all apps such as dispatch, order management, routing, facility management, user management, etc required to manage last-mile deliveries.

The main attributes of a solution are below (not an exhaustive list).
List of app ids along with display order and default app to open when the user logs in.
The sequence of initialization of apps when the solution is onboarded.
Solution’s name, description, category, icons, etc

Should I use the Console or AAA libraries for authentication in my web apps?

We recommend that you use the Console in the web apps that you want to publish in the marketplace. By using the Console libraries, you can make your web apps accessible from one single place for the end customers. Otherwise, you will have to distribute your web app URLs individually to the end customers which will result in friction and inefficiencies for the discoverability of your web app.

When should I use Entity API vs Participant API?

At a high level, any entity that directly participates in the logistics process should be built on top of Participant Service (eg. users, facilities, vehicles, clients, warehouses etc). For all other general database applications that require a readily available Data object and CRUD APIs Entity Service should be used.

Can I generate permanent tokens on OS1 platforms with certain roles and permissions?

No, we follow OAuth 2.0.

Does my app have to be mutli-tenant?

Yes, in order to be approved for production, all apps have to be multi-tenant. This also means if you are hosting with us max one instance of the deployment of a particular app will be allowed in one stack.

What is the difference between stack and a tenant?

Stack is set out infra resources such as storage, networking, and computing on which we can create one or more tenants. Tenant enables storing of all customer's data in an isolated manner from one another. On OS1 we offer shared tenancy and dedicated tenancy model. In the shared tenancy model data is isolated but computing and networking are shared. In the dedicated tenancy offering there is only one customer in a particular stack by virtue of which the entire compute, storage, and networking resources are dedicated to a customer.

What is the difference between Core and Framework APIs?

Core APIs by design are business agnostic and do not implement any business logic. These APIs provide basic building blocks to manage data and workflows. Framework APIs extend the Core APIs and bring in the business context to provide solution for industry use cases.

Does my App needs to be approved before receiving production API keys?

Yes, in order to receive the production API keys your app will need to be approved by OS1 product operations team.

Will there be a review of my app and soln before they are published?

Yes, in order for an app or a solution to be published, it needs to complete a detailed technical review. The review is done by the OS1 platform operations team after the app or solution is submitted for review.

Can I build apps and solns for my internal operations team usage?

Yes, you can build apps and solns for your internal business operations team's usage and decide not to publish in the Marketplace.

How do I get started?

Please refer to the steps documented in getting started with OS1 platform or you could also refer to this getting started video.
We offer a Postman collection so that you can quickly access our APIs.
We also provide reference apps that provide a few sample implementations of how you build apps using the APIs.

How do I contact the OS1 Developer Platform team?

Please use contact us form here https://portal.os1.delhivery.com/#/contact-us to reach out to us. You could submit a query, a new feature request, or an issue using this form.