Push external data
POST/v2/data-sources/{competitionThemeSettingId}/{alias}
const url = 'https://api.ligr.live/rest/v2/data-sources/1/example';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"data":{"rows":[{"team":"Eagles","score":42}]}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.ligr.live/rest/v2/data-sources/1/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "data": { "rows": [ { "team": "Eagles", "score": 42 } ] } }'Update the snapshot for a data source identified by competition theme setting and alias. Use this endpoint from Google Apps Script, Zapier, or any other automation tool.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Entity identifier
The competition theme setting ID
The data source template alias (e.g., “standings”, “factfile”)
Request Bodyrequired
Section titled “Request Bodyrequired”Request body for pushing data to an external data source. Supports two formats:
-
Pre-formatted JSON (for complex schemas or direct API integrations): { data: { rows: […] } }
-
CSV string (for flat tabular data): { csv: “name,score\nJohn,10\nJane,20” }
object
Pre-formatted data matching the template schema. Use this format for complex schemas or direct API integrations.
CSV or TSV string. Works with any data source that can export CSV. Row 1 = headers, Row 2+ = data. Supports comma, tab, or semicolon delimiters. Server auto-detects delimiter and parses values (numbers, booleans, JSON arrays).
Parse hints for raw sheet data
object
‘row’ = headers in first row (default), ‘col’ = headers in first column
Which row/column contains headers (1-based). Defaults to 1.
Example
{ "data": { "rows": [ { "team": "Eagles", "score": 42 } ] }}Responses
Section titled “Responses”Ok
Response body after successfully pushing data
object
Validation warning if the data doesn’t match the template schema. Data is still stored even if validation fails.
Examplegenerated
{ "success": true, "alias": "example", "competitionThemeSettingId": 1, "lastPushedAt": "example", "warning": "example"}Request is invalid
object
object
Examplegenerated
{ "message": "example", "details": { "additionalProperty": "example" }}Missing or invalid api key
object
Examplegenerated
{ "message": "example"}Api key provides insufficient access for the request
object
Examplegenerated
{ "message": "example"}Data source not found
object
Examplegenerated
{ "message": "example"}Api key has made too many requests
object
Examplegenerated
{ "message": "example"}An unexpected error has occured. If problems persist please contact support
object
Examplegenerated
{ "message": "example"}