Introduction to OData
OData (Open Data Protocol) is an open standard (approved by OASIS and ISO) for querying and manipulating data through REST APIs. Its great advantage is that it defines URL conventions for filtering, sorting, paginating, selecting fields and expanding relationships — without having to create a custom endpoint for each combination.
In practice: instead of asking the backend "give me the bookings of customer X created this
month, only with the code and the date", you build that query yourself from the URL with standard
parameters ($filter, $select, $orderby, etc.).
- OData documentation on Microsoft Learn — complete guide to the protocol and the library Rently uses (ASP.NET OData).
- OData standard site (odata.org) — specification, URL conventions and examples.
- OData v4 URL conventions — detailed reference for
$filter,$expand, etc.
OData in Rently
Rently exposes a read-only OData API over a set of reference/query entities, designed for integrations that need to query and report data flexibly (filters, aggregations, exports) without multiple calls.
- Base URL: all OData resources live under
https://{tenant}.rently.com.ar/odata. - Authentication: the same as the rest of the API — Bearer token in the
Authorizationheader (see Authentication). - Read-only: OData endpoints support
GET(collection and by key). Write operations (create/update bookings, payments, etc.) are done through the REST API.
Available entity sets
| Entity set | Resource | Description |
|---|---|---|
| Bookings | /odata/Bookings | Bookings (supports $expand of Customer, Category, etc.). |
| Customers | /odata/Customers | Customers. |
| Agencies | /odata/Agencies | Agencies. |
| Categories | /odata/Categories | Vehicle categories. |
| Models | /odata/Models | Vehicle models. |
| Places | /odata/Places | Branch offices / locations. |
| BookingBrands | /odata/BookingBrands | Booking brands. |
OData or REST?
- Use OData when you need to query/filter/report over these entities with flexibility (for example, listing a customer's bookings in a date range, expanding their data, fetching only some fields).
- Use the REST API (the Bookings, Customers, etc. modules) to operate: create and manage bookings, record payments, check-in/out, incidents, etc.
Continue with Building OData queries to see how to filter, expand and sort with real examples.