Overview

The Loby OData feed lets BI tools read your museum's data directly: visits, tickets, customers, memberships, orders and transactions, plus the ticket types, membership types, departments and locations they point at. It speaks OData v4 (JSON), the protocol Power BI and Excel understand natively.

https://odata.loby.io

The service document at the root lists every entity set, and https://odata.loby.io/$metadata describes their properties and types. Each set lives at its own URL, e.g. https://odata.loby.io/Visits.

Authentication

Create an API key in the back office under Manage › Developers › Create API key and pick the OData service. The key is shown once — store it safely.

Send the key on every request, either way:

  • Basic auth — any (or no) username, the key as the password. This is what Power BI and Excel use.
  • Bearer token — Authorization: Bearer <key>.
Copy
curl -u ":YOUR_KEY" "https://odata.loby.io/Visits?\$top=5"

A key reads one museum: yours. There is no way to widen a key's scope from the outside — filters can narrow what you get, never broaden it.

Test mode

A key is created for live or test data. A test-mode key reads the records created while the back office and checkout run in test mode; a live key never sees them, and the other way around.

Reading the data

Every response is OData JSON: a value array with the rows, @odata.count when you ask for it, and @odata.nextLink when there are more rows than the page holds.

Copy
{ "@odata.context": "https://odata.loby.io/$metadata#Visits", "value": [ { "id": "bd4a0997-39db-41d9-883a-cdfa83e2101f", "visitDate": "2026-01-15T10:30:00.000Z", "origin": "Ticket", "quantityAdult": 2, "quantityChild": 1, "quantityTotal": 3 } ], "@odata.nextLink": "https://odata.loby.io/Visits?$top=1000&$skip=1000" }

See Querying for the query options and Entity Sets for every set and property.

Next ›
Querying