API keys and authentication
Authentication credentials help prevent unauthorized access to your Robility flow server, flows, and services connected through components.
There are three types of credentials that you use in Robility flow:
1. Robilityflow API keys: For authentication with the Robility flow API and authorizing server-side Robility flow actions like running flows and uploading files.
2. Component API keys: For authentication between Robility flow and a service connected through a component, such as a model provider or third-party API.
3. Authentication environment variables: These environment variables configure how Robility flow handles user authentication and authorization.
Robility flow API keys
Robility Flow API keys allow you to interact with the platform programmatically, offering the same permissions as your user account. This means:
1. Your API key can access only your own flows, components, and data.
2. It cannot access other users’ resources.
3. The key represents the user who created it, if created by a superuser, it inherits superuser privileges.
4. Anyone with a superuser API key can perform privileged actions such as user and flow management via the Robility Flow API.
In single-user environments, you are always a superuser, and your Robility flow API keys always have superuser privileges.
In multi-user environments, users who aren’t superusers cannot use their API keys to access other users’ resources. You must start your Robility flow server with authentication enabled to allow user management and creation of non-superuser accounts.
Authentication and Access
Most API endpoints in Robility Flow require an API key, even if AUTO_LOGIN is enabled.
Create a Robility Flow API Key
To create Robility flow API key, do the following:
1. Publish your flow to the Robility Manager.
2. Navigate to the project in the Robility Manager.
3. Go to the “Workflows” page.
4. It will list the flows published against the Manager and choose your respective flow.
5. Click on “Generate API Key” and choose the published version of the flow.
6. Once the key is generated, click on “History” button and you can view the API key generated against each version of the flow published.
7. Copy the API key and store it securely.
How the Scheduler Uses API Keys
The Robility Flow Scheduler uses your API key to authenticate requests to the platform. When the scheduler triggers a bot or workflow execution, it includes this API key in the HTTP header of the request, ensuring secure and authorized access to run the bots.
You can generate and manage your Robility Flow API keys through the Workflow page in the Robility Manager. To schedule tasks, use the ‘Schedule Robots’. To verify whether a bot has executed successfully, check the ‘Automation Ops’ page under the ‘Flow‘ tab.