canonical: https://jentic.com/apis/corporateolacabs/corporateolacabs

# Corporateolacabs Ola Corporate API

Jentic publishes the only available OpenAPI specification for Ola Corporate API, keeping it validated and agent-ready. The Ola Corporate API lets businesses manage employees, rides, invoices, and expense codes on the Ola Corporate ride-booking platform. It exposes 12 endpoints for adding or removing corporate users individually or in bulk, listing rides taken under a corporate account, downloading per-ride invoices, and managing expense codes that route ride spend into the right cost centre. Authentication is handled via an X-CORPORATE-TOKEN header issued to registered Ola Corporate partners.

## For AI agents

Manage corporate users, retrieve ride history, download ride invoices, and configure expense codes on the Ola Corporate platform. API-key authentication via X-CORPORATE-TOKEN header.

## Scope

Does not handle consumer ride booking, driver onboarding, or non-Ola transport modes - use for Ola Corporate user, ride, invoice, and expense-code management only.

## Capabilities

- Add, update, and delete individual corporate users so HR systems can keep ride entitlements aligned with employment status
- Bulk-upsert a batch of corporate users in a single call to support HRIS-driven provisioning at scale
- List corporate rides with filters and pagination to power monthly travel reports and audit trails
- Download a per-ride invoice that finance teams can attach directly to journal entries
- Create, update, and delete expense codes that route ride spend into the right cost centre
- Adjust expense code allocations with a dedicated PATCH operation when teams or cost owners change

## Use cases

### HRIS-Driven User Provisioning

Sync the corporate ride entitlement list with the HR system so that new joiners gain Ola access on day one and leavers are removed automatically. The bulk upsert endpoint handles batches of users in a single call, which keeps the sync job simple even for large companies.

Example prompt: Read the latest active employee list from the HRIS, then call POST `/v1/api/corporate/users` with the bulk payload to add or update users, and DELETE `/v1/api/corporate/user` for any leavers.

### Monthly Expense Reconciliation

Pull every corporate ride for the previous month, group by expense code, and reconcile against the company's accounting system. The download invoice endpoint produces a per-ride invoice that finance can attach to the journal entry, removing manual export work.

Example prompt: Call GET `/v2/api/corporate/rides` with the previous-month date range, then for each ride call GET `/v1/api/corporate/rides/downloadInvoice` and post the invoice plus expense code into the accounting system.

### Expense Code Lifecycle Management

Spin up and retire expense codes as cost centres change, and adjust which employees are allocated to which code over time. The dedicated PATCH operation on the expense code endpoint handles allocation changes without rewriting the whole expense code record.

Example prompt: Call POST `/v2/api/corporate/expenseCode` to create a new code, PATCH `/v2/api/corporate/expenseCode` to add user allocations, and DELETE `/v2/api/corporate/expenseCode` when the cost centre is retired.

### AI Agent Travel Reporting via Jentic

An AI agent answers questions like 'how much did the sales team spend on Ola last quarter?' by searching Jentic for the rides operation, calling it with the right filters, and aggregating the results. The agent does not need to know the path or the header name - Jentic returns the schema and credentials are injected at execution time.

Example prompt: Search Jentic for 'list Ola corporate rides', load the GET `/v2/api/corporate/rides` operation, execute it scoped to the requested team, and summarise the spend in natural language.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/v1/api/corporate/user` | Add a new corporate user |
| POST | `/v1/api/corporate/users` | Add or update users in bulk |
| GET | `/v2/api/corporate/rides` | List corporate rides (v2) |
| GET | `/v1/api/corporate/rides/downloadInvoice` | Download invoice for a ride |
| POST | `/v2/api/corporate/expenseCode` | Create an expense code |
| PATCH | `/v2/api/corporate/expenseCode` | Adjust expense code allocation |

## Key resources

- **Corporate Users** — Add, update, delete, list, and bulk-manage corporate users.
- **Corporate Rides** — List rides under the corporate account (v1 and v2) and download per-ride invoices.
- **Expense Codes** — Create, update, delete, and manage user allocations for expense codes.

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 67 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 90 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 51 / 100
  - Agent Usability: 94 / 100
  - Security: 50 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/corporateolacabs/corporateolacabs/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the Ola Corporate API by hand means setting its X-CORPORATE-TOKEN header, choosing the right host between production and staging, and coding the user, ride, and expense-code calls yourself across mixed v1 and v2 paths. Through Jentic you install once, import the Ola Corporate API from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Ola Corporate operations carry the user, ride, or expense-code target in the request, so scope this by operations: allow the agent the calls it needs, such as listing rides and adding a corporate user, and leave expense-code edits out unless you add them. Each operation you credit the agent with stays inside that allowed set.
- **Credential handling:** Your Ola Corporate token is stored once, encrypted, by your own Jentic One instance and injected into the X-CORPORATE-TOKEN header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list Ola corporate rides' or 'add a corporate user', and Jentic returns the matching operation with its input and response schemas so the agent picks the right endpoint without browsing the reference docs.

## Related APIs

- **Ola Cabs API** — Consumer-facing Ola Cabs API for ride booking and tracking outside the corporate context.
- **Lyft API** — US-focused ride-hailing platform with developer APIs for ride booking and history.
- **Xero Accounting API** — Accounting platform that can ingest reconciled Ola Corporate ride invoices as bills or expenses.

## FAQ

### Why is there no official OpenAPI spec for Ola Corporate API?

Ola does not publish an OpenAPI specification for its corporate platform. Jentic generates and maintains this spec so that AI agents and developers can call Ola Corporate API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Ola Corporate API use?

The Ola Corporate API uses an API-key scheme: every request must include an X-CORPORATE-TOKEN header containing the partner key issued by Ola. Through Jentic the token is held in the encrypted vault and added to the header at execution time, so it never enters the agent's context.

### Can I bulk-add corporate users with the Ola Corporate API?

Yes. POST `/v1/api/corporate/users` accepts a batch payload that adds or updates multiple users in a single call, which is the recommended path for HRIS sync jobs rather than calling the single-user POST repeatedly.

### How do I download an invoice for a specific ride?

Call GET `/v1/api/corporate/rides/downloadInvoice` with the ride identifier returned by the rides listing endpoint. The response is the invoice payload that can be attached to a finance record.

### What are the rate limits for the Ola Corporate API?

The OpenAPI spec does not declare numeric rate limits. Treat HTTP 429 responses as authoritative and back off according to the Retry-After header where present, and confirm production limits with Ola Corporate before high-volume sync jobs.

### How do I list corporate rides through Jentic?

Search Jentic for 'list Ola corporate rides', load the GET `/v2/api/corporate/rides` operation, and execute it with your date range and filters. Jentic returns the operation schema so the agent does not need to parse Ola documentation.

### Can I limit what my agent is allowed to do with the Ola Corporate API?

Yes. Because your Jentic One instance is self-hosted, you decide which Ola Corporate operations your agent may call, and your own rules govern that allowed set. Since each operation carries its user, ride, or expense-code target in the request, you can scope by operation, for example letting the agent list rides with GET `/v2/api/corporate/rides` and add a user with POST `/v1/api/corporate/user` while leaving expense-code edits like POST or PATCH `/v2/api/corporate/expenseCode` out. The agent can only invoke the operations you credit it with, and the X-CORPORATE-TOKEN is injected at execution time rather than exposed to the agent.
