Building on eConnect Core: Documenting the v2 API
eConnect Core v11 ships with a new REST API, and we wanted the documentation for it to be good enough that a developer — or an AI agent — could go from nothing to a working integration in an afternoon. Here's what we built, and how.
Executive summary
- The v2 API: a REST API over all of eConnect Core — 688 endpoints across 14 modules, JSON in and out, with JWT bearer tokens for sign-in.
- A new developer section: getting started, an architecture page with diagrams, a map of the whole API, and a reference page for every module.
- Guides for pushing data in: step-by-step pages for sending casino ratings, TITO tickets, POS transactions, face detections and plate reads into eConnect from your own systems.
- A downloadable OpenAPI schema, per release, so you can generate a typed client in your own language. Version 11.0 is up now.
- Generated from the server itself: the reference pages come from the schema the server publishes, so the docs describe the API that actually runs.
Why a v2 API
eConnect has always had ways in — SOAP services, the POS API, the Events Bridge — but each one covers part of the product. The v2 API covers all of it, in one consistent style that any modern language can call.
It is not a separate copy of the product. The v2 endpoints are generated from the same service contracts the eConnect client runs on, so what an integration can read and write is exactly what a user can — no more and no less, and held to the same permission keys.
Three calls to a working integration
Every integration does the same three things: sign in, find the module you want, and call it.
# 1. Sign in for a token pair
curl -X POST https://your-server/api/v2/auth/login \
-H 'Content-Type: application/json' \
-d '{ "userName": "integration-svc", "password": "••••••••" }'
# 2. Ask the server which modules it has
curl https://your-server/api/v2/portal/installed-plugins \
-H "Authorization: Bearer $ACCESS_TOKEN"
# 3. Call the module — here, pushing POS transactions
curl -X POST "https://your-server/api/v2/pos/plugins/$POS_ID/events/batch" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-d @transactions.json
The middle step matters because a deployment can run more than one instance of the same module — two casinos, three POS systems — and the route says which one you mean. Getting Started walks through all of it with full C# and JavaScript samples.
How we built the docs
Generated where it can be
In development, the server publishes its own OpenAPI document. A small pipeline turns that into the reference: one page per module, grouped by resource, with example request and response bodies built from the real schemas. When the API changes, we regenerate, and the difference shows up as a diff instead of a stale page.
Written by hand where it matters
The parts that need judgement are written by hand: getting started, the architecture, and the guides for pushing data in. Those were written field by field from the actual contracts — plate direction is 0, 1 or 2, gender is a single M, F or U, and each image says how tightly it is cropped — so an integrator never has to guess what a value means.
Pictures for the moving parts
Sign-in, plugin discovery, permissions and data ingress each have a diagram, because a sequence is easier to follow as a picture than as three paragraphs.
A schema for every release
The OpenAPI schema is a download on the OpenAPI Schema page, one file per release. A client you generate against 11.0 keeps working when 11.1 ships, because 11.1 publishes its own file instead of replacing this one.
Pushing your data into eConnect
The question we hear most from partners is "how do we get our data in?" — ratings from a table-games system, tickets from a slot system, transactions from a till, detections from another camera or analytics engine. Each now has its own page with the payload, what each field is for, the mistakes to avoid, and samples in curl, C# and Python:
Data pushed this way is no different from data eConnect collects itself: it shows up in the same grids, drives the same alerts and reports, and opens the same video.
Get started
Read the eConnect Core API docs →
Building an integration and want to talk it through? Reach us at support@econnect.tv or call 702-523-8786.