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§ion=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.