DocsWidgets

Widget error codes

Every error a widget raises links to its row on this page.

Catching errors

A widget reports a problem as an oddsrelay:error event on its element. The event bubbles, so one listener on the document catches every widget on the page.

The event's detail holds the code, the message the visitor sees, whether the call is retryable and a link to the code's row below. When the feed refused the call, e.detail.status holds its HTTP status. Log it too: one code can stand for more than one refusal.

Log every widget error

document.addEventListener("oddsrelay:error", function (e) {
  console.warn(e.detail.code, e.detail.status, e.detail.message, e.detail.docs);
});

Every code

Only OR-2001 and OR-2002 are retryable: the same call may work next time. Each row quotes the message your visitors see, then says what to do about it.

OR-1101
This domain is not on the widget key's allow-list.

The browser reports it as a CORS error. Send us the page's exact origin (scheme, host and port) to add to the key. https://example.com and https://www.example.com are two entries.

OR-1102
The widget key is invalid or has been revoked.

Check that data-or-key holds the key exactly as we issued it. A revoked key stays revoked, so ask us for a new one. If e.detail.status is 400 the key is fine and the feed refused a value: data-or-region takes one lowercase code, such as uk, and every filter takes a key the feed knows.

OR-1103
The widget key is not scoped to this region.

The feed refused the call (HTTP 403). The region, the feed, a bookmaker in the filters or this page's address is outside the key, or the account is suspended. Check data-or-region, then send us the page's address.

OR-1104
The widget key is not scoped to this feed.

The key is fine: the feed doesn't serve the region in data-or-region (HTTP 404). Set it to a region the key covers.

OR-1105
This key has used its request allowance for now.

The key is out of tokens (HTTP 402) or over its rate limit (HTTP 429). Ask us to raise its allowance.

OR-1201
The page's content security policy blocked the widget stylesheet.

Your page's policy dropped the widget's styles. Allow them in style-src as the CSP page shows.

OR-2001Retryable
Couldn't reach the live feed.

The feed timed out or returned a server error. Nothing to change on your side: with polling on, the widget tries again by itself.

OR-2002Retryable
The browser is offline.

The visitor's device has no connection. Nothing to change on your side.

OR-3001
No opportunities match these filters right now.

Not a fault: the call worked and nothing matched. Widen the filters to see more rows.

OR-9001
The widget could not be rendered.

Something failed inside the widget. Send us the code, the page address and the browser you used.

If a code isn't listed or the fix didn't work, contact us with the code and the page's address.