Skip to main content

API

Use the Results widget for new website integrations. Add this snippet to your page, replacing your-club with your Curling IO subdomain:

<curling-io-results
styling="curling-io"
subdomain="your-club"
section="competitions"
language="en"
></curling-io-results>
<script src="https://curling.io/widgets/results.js" defer></script>

The script loads published data from your organization's hostname. Set section to leagues, competitions, or products. Use language="fr" for French. Add registration to show available registration and waitlist actions.

Existing copied Elm embeds retain their compatibility contract. You can keep those snippets while adopting the native widget on new pages. Their legacy identifiers and JSON shape differ from the native contract below; use the IDs returned by the endpoint you are integrating with.

If you need JSON for your own interface, use your organization's Results endpoint:

https://your-club.curling.io/en/results/embed?resource=items&section=competitions

Responses contain config, labels, and the requested items, product, or results value. Field names use camelCase. Public visibility and enabled capabilities still apply. A missing or unpublished record does not become public because its ID is known.

See items, event details, and product details for the corresponding requests.