Overview

Pre-built tooling

Pre-built integrations

No pre-built integration yet (time to contribute: <48h)
Not seeing the integration you need? Build your own independently.
Roller uses the OAuth 2.0 Client Credentials flow via Nango Connect UI (no end‑user login).

Roller API

This page documents how to connect to Roller using Nango Connect UI with the OAuth 2.0 Client Credentials grant.
Why this page? Roller is a machine‑to‑machine integration (no end‑user login). Following the Connect UI pattern keeps it consistent with other CC integrations.

Setup guide

  1. Create API credentials in Roller
    • Obtain a Client ID and Client Secret for your Roller account (these may be scoped per venue/account depending on your setup).
  2. Create a Connect Session on your backend
    • Your server should create a short‑lived Connect Session and return its token to the frontend.
    • Use your preferred backend language; follow the standard Connect Session flow used by other CC integrations.
  3. Launch Connect UI in your frontend
    • Instantiate the Nango Frontend SDK with the session token and open the UI. The user will select Roller and enter Client ID / Client Secret.
import Nango from '@nangohq/frontend';

// 1) Fetch a session token from your backend
const connectSessionToken = await fetch('/api/connect-session').then(r => r.text());

// 2) Open Connect UI
const nango = new Nango({ connectSessionToken });
await nango.openConnectUI({ sessionToken: connectSessionToken });
// The Connect UI handles collecting Client ID/Secret and creating the connection
  1. Use the connection in your backend
    • Call Roller endpoints through your backend using Nango’s Proxy. Re‑use the connection you created in step 3.


API gotchas

  • Client Credentials (no end‑user login): there is no consent screen; the UI only collects Client ID/Secret.
  • Credential scope: if your Roller credentials are scoped (e.g., per venue), create separate connections per scope.
  • Timestamps: many APIs return timestamps in UTC; format for your users’ locale/timezone in the client.

Troubleshooting

  • 401/403 when calling Roller: double‑check the Client ID/Secret entered during Connect UI and that you’re using the intended connection ID.
  • Multiple accounts/instances: create one connection per account/instance so credentials don’t conflict.

Going further

  • Use metadata on the connection (or your own mapping) to track which venue/tenant a given connection refers to.
  • Add prefill values to Connect UI if you already know the Client ID (leaving only the secret for the user to paste).