Overview
The Turbo360 API is a RESTful interface that lets you perform CRUD operations and automate workflows across Turbo360 modules programmatically. The API follows the OpenAPI 3 (OAS3) specification and is accessible interactively via the Swagger UI or through API automation tools such as Postman.
The API base URL is {application_url}.
Business value
Automating operations through the API reduces manual effort, enables integration with external systems, and supports scalable management of resources across Cost Analyzer, Business Applications, Business Activity Monitoring, and Azure Documenter.
Prerequisites
- A valid Turbo360 account with API access enabled.
- An API key generated from Settings > API keys. See Authentication.
Required permissions
Only account owners can generate and manage API keys.
Dependencies
- API keys are scoped to specific HTTP methods and modules at generation time. Permissions can be updated at any time after creation.
- Module-level access must be configured before API calls to that module will succeed.
How it works
The Turbo360 API uses API key-based authentication. Each request must include a valid API key passed in the request header using the parameter name APIKey.
The API supports the following HTTP verbs across all modules:
| Verb | Purpose |
|---|---|
GET |
Retrieve data |
POST |
Create a workflow or resource |
PUT |
Update an existing workflow or resource |
DELETE |
Delete a workflow or resource |
The following modules expose API endpoints:
| Module | Endpoint groups |
|---|---|
| Azure Documenter | Azure Documenter, Azure Documenter - Group, Azure Documenter - Service principal |
| Business Activity Monitoring | BAM - Business process, BAM - Configuration, BAM - Service principal, BAM - Tracking, BAM - Transactions |
| Business Applications | Business Application, Business Application - Automated task, Business Application - Group, Business Application - Monitoring, Business Application - Resources, Business Application - Service principal |
| Cost Analyzer | Cost Analyzer - Group, Cost Analyzer - Monitoring, Cost Analyzer - Recommendation, Cost Analyzer - Schedule, Cost Analyzer - ServicePrincipal, Cost Analyzer - Views, Cost Analyzer - Workflow |
| Wiki | Wiki |
The full API specification is available at {application_url}//swagger/general/swagger.json. You can explore and test endpoints interactively using the Swagger UI. For automation workflows, use a tool such as Postman.
Steps
To begin using the Turbo360 API:
- Generate an API key in Settings > API Keys. See Authentication.
- Scope the key to the required HTTP methods (GET, POST, PUT, DELETE).
- Scope the key to the required modules (Business Applications, Business Activity Monitoring, Azure Documenter, Cost Analyzer).
- Include the API key in your request header using the parameter name
APIKey. - Use the Swagger UI to explore and test endpoints interactively, or configure Postman for automation workflows.
- Refer to the relevant module API reference for endpoint details and request schemas.
Configuration
| Option | Type | Required | Description |
|---|---|---|---|
| Base URL | String | Yes | {application_url} |
| Auth header name | String | Yes | APIKey |
| API key value | String | Yes | The API key generated from Settings > API Keys |
| HTTP method scope | Multi-select | Yes | GET, POST, PUT, DELETE — configurable at any time |
| Module scope | Multi-select | Yes | BA, BAM, AD, CA — configurable at any time |
Permission behavior
With API access: You can call API endpoints for the modules and HTTP methods your key is scoped to.
Without API access: Requests return an authentication error. Only account owners can generate keys; contact your account owner to obtain one.
Example scenario
A DevOps team wants to automate Cost Analyzer budget checks nightly. They generate an API key scoped to GET and the Cost Analyzer module, then include the key in the APIKey request header when calling /CostAnalyzer/{costAnalyzerGroupId}/Monitor/Get from a scheduled script. This retrieves current monitor data without requiring anyone to log in to the Turbo360 portal.
Limitations
- API keys can only be generated by Account owners.
- The Swagger UI requires manual authorization per session — enter your API key each time you open the Authorize dialog.
Troubleshooting
-
Requests return an authentication error.
Cause: The API key is missing, invalid, or not passed using the correct header parameter name.
Fix: Verify the key is active in Settings > API Keys and that it is included in the request header asAPIKey. -
A module endpoint returns a 403 Forbidden response.
Cause: The API key is not scoped to the module you are calling.
Fix: Edit the key in Settings > API Keys to add the required module under Allowed module(s). -
A PUT or DELETE request returns a 405 Method Not Allowed response.
Cause: The API key does not have the required HTTP method enabled.
Fix: Edit the key in Settings > API Keys to add the required method under Allowed method(s). -
The Swagger UI Authorize button shows a lock icon but requests still fail.
Cause: The API key was not submitted correctly in the Authorize dialog, or the session expired.
Fix: Click Authorize in the Swagger UI, re-enter your API key in the APIKey (apiKey) field, and click Authorize to confirm. -
Changes made via the API are not reflected in the portal.
Cause: Propagation delay or a caching issue in the portal view.
Fix: Refresh the portal page. If the issue persists, verify the API response returned a success status code.
FAQs
-
Which modules support API automation?
All four Turbo360 modules support API automation: Cost Analyzer, Business Applications, Business Activity Monitoring, and Azure Documenter. Wiki APIs are also available. -
Can I use the same API key for multiple modules?
Yes. When generating a key, you can select multiple modules under Allowed module(s). You can also update the module scope on an existing key at any time. -
How do I authenticate in the Swagger UI?
Click Authorize in the Swagger UI, enter your API key value in the APIKey (apiKey) field, and click Authorize. The key is passed as a header on all subsequent requests in that session.