Introduction

The SyncroSim API is a RESTful API for interacting with SyncroSim Cloud to:

  • Manage organizations
  • Access libraries
  • Access maps
  • Perform zonal calculations

The API is usable via HTTP in any environment that supports HTTP requests.

For a step-by-step guide on the basics of using the API, see the Get started page.

Download OpenAPI description
Overview
SyncroSim API support

support@syncrosim.com

License

MIT

Languages
Servers
Mock server

https://apidocs.syncrosim.com/_mock/apis/

Production server

https://api.syncrosim.com/v1/

Organizations

Operations

Libraries

Operations

Maps

OperationsWebhooks

Get maps in a library

Request

Security
x-ss-api-key
Path
uploadUserstringrequired

Name of the library owner

libraryNamestringrequired

Name of the library

Query
typestring

An optional query parameter that can be 'tree' or 'flat' and that specifies how the response data will be structured. If not provided, structure defaults to 'flat'.

curl -i -X GET \
  'https://apidocs.syncrosim.com/_mock/apis/libs/user/{uploadUser}/{libraryName}/maps?type=string' \
  -H 'x-ss-api-key: YOUR_API_KEY_HERE'

Responses

List of maps in the library

Bodyapplication/json
mapLayoutIdinteger

ID number of the map type, defined by MapLayoutTitle

mapLayoutTitlestring

Name of the map type, associated with MapLayoutId

scenarioIdinteger

Scenario ID number

iterationinteger

Iteration the map is generated from

timestepinteger

Timestep the map is generated from

variableShortNamestring

Variable used to generate the map

variableDisplayNamestring

Display name of the variable used to generate the map

uniqueMapIdentifierstring

The unique identifier for this map

Response
application/json
{ "mapLayoutId": "integer", "mapLayoutTitle": "string", "scenarioId": "integer", "iteration": "integer", "timestep": "integer", "variableShortName": "string", "variableDisplayName": "string", "uniqueMapIdentifier": "string" }

Get GeoTIFF file for a map

Request

Security
x-ss-api-key
Path
uploadUserstringrequired

Name of the library owner

libraryNamestringrequired

Name of library

mapIdstringrequired

File name of the map to download (select from uniqueMapIdentifier variable in /libs/user/{uploadUser}/{libraryName}/maps/filterOptionTree response)

curl -i -X GET \
  'https://apidocs.syncrosim.com/_mock/apis/libs/user/{uploadUser}/{libraryName}/maps/{mapId}' \
  -H 'x-ss-api-key: YOUR_API_KEY_HERE'

Responses

Path to GeoTIFF file

Bodyapplication/json
rasterFilePathstring

Path to download specified map file. This url will be valid for 1 hour.

Response
application/json
{ "rasterFilePath": "string" }

Perform zonal calculations with single summarized result

Request

Security
x-ss-api-key
Path
uploadUserstringrequired

Name of the library owner

libraryNamestringrequired

Name of library

Bodyapplication/jsonrequired
mapIdstring

File name of the map to perform zonal calculation with (select from uniqueMapIdentifier returned by /libs/user/{uploadUser}/{libraryName}/maps response)

webhookUrlstring

Webhook for sending the zonal calculation results

geojsonstring

Geojson of area to be used in the zonal calculation

curl -i -X POST \
  'https://apidocs.syncrosim.com/_mock/apis/libs/user/{uploadUser}/{libraryName}/maps/zonal' \
  -H 'Content-Type: application/json' \
  -H 'x-ss-api-key: YOUR_API_KEY_HERE' \
  -d '{
    "mapId": "string",
    "webhookUrl": "string",
    "geojson": "string"
  }'

Responses

Metadata about the attempted calculation request

Bodyapplication/json
successboolean

Whether the zonal calculation was started successfully

messagestring

Optional informational message about this calculation request

requestIdstring

The UUID for this request

Response
application/json
{ "success": "boolean", "message": "string", "requestId": "string" }

Perform zonal calculations with results summarized as a histogram

Request

Security
x-ss-api-key
Path
uploadUserstringrequired

Name of the library owner

libraryNamestringrequired

Name of library

Bodyapplication/jsonrequired
mapIdstring

File name of the map to perform zonal calculation with (select from uniqueMapIdentifier returned by /libs/user/{uploadUser}/{libraryName}/maps response)

webhookUrlstring

Webhook for sending the zonal calculation results

geojsonstring

Geojson of area to be used in the zonal calculation

histogramBinsstring

List of values for break points in the histogram bins (optional; for continuous variables only)

curl -i -X POST \
  'https://apidocs.syncrosim.com/_mock/apis/libs/user/{uploadUser}/{libraryName}/maps/zonal-histogram' \
  -H 'Content-Type: application/json' \
  -H 'x-ss-api-key: YOUR_API_KEY_HERE' \
  -d '{
    "mapId": "string",
    "webhookUrl": "string",
    "geojson": "string",
    "histogramBins": "string"
  }'

Responses

Metadata about the attempted calculation request

Bodyapplication/json
successboolean

Whether the zonal calculation was started successfully

messagestring

Optional informational message about this calculation request

requestIdstring

The UUID for this request

Response
application/json
{ "success": "boolean", "message": "string", "requestId": "string" }

Get zonal calculation status

Request

Security
x-ss-api-key
Path
uploadUserstringrequired

Name of the library owner

libraryNamestringrequired

Name of library

requestIdstringrequired

Request UUID (returned from /libs/user/{uploadUser}/{libraryName}/maps/zonal)

curl -i -X GET \
  'https://apidocs.syncrosim.com/_mock/apis/libs/user/{uploadUser}/{libraryName}/maps/zonal/status/{requestId}' \
  -H 'x-ss-api-key: YOUR_API_KEY_HERE'

Responses

Metadata and results from the zonal calculation request

Bodyapplication/json
statusstring

The status of this zonal calculation request.

webhookUrlstring

The url this calculation request is configured to send results to

geojsonstring

The geojson this calculation request is performing on

dateStartedstring

The timestamp of the initiation of this calculation request

successboolean

Whether the zonal calculation was started successfully

requestIdstring

The UUID for this request

Response
application/json
{ "status": "string", "webhookUrl": "string", "geojson": "string", "dateStarted": "string", "success": true, "requestId": "string" }

Post Zonal Calculation ResultWebhook

Request

Bodyapplication/jsonrequired
successboolean

Whether the calculation completed successfully

Example: "boolean"
requestIdstring

The UUID for this request

resultArray of objects

The results of the calculation

application/json
{ "success": true, "requestId": "string", "result": "array" }