/
TMY API request-response technical description

TMY API request-response technical description

TMY API definition

The system currently exposes 3 different endpoints that support TMY data generation and retrieving. Each TMY API call expects a different data structure as defined below.

 

TMY data generation request

Request: each TMY data generation request has to contain:

  • Authorization header

  • Body

Response: result for the case of successful processing is:

  • requestId – the generated ID is further used as input in the status request

 

TMY data generation request status
Request: each TMY data generation status request has to contain:

  • Authorization header

  • requestId – the value is being used in the URL path

Response: result for the case of successful processing is:

  • URL from where generated data can be downloaded by any user

 

Generated output TMY data as body in message response

Request: each TMY data generation request has to contain:

  • Authorization header

  • requestId – the value is being used in the URL path

  • Output format - expected output data format specified in the URL path

Response: result for the case of successful processing is:

  • Output data – output data in message response

 

Subscription (Company + User) details request
Request: each subscription details request has to contain:

  • Authorization header

Response: result for the case of successful processing is:

  • Subscription details

 


TMY data generation request

Request method: POST

URL: https://api.solargis.com/tmy/data-request

 

Request message

Header:

Key

Value

Key

Value

authorization

Bearer {token generated by Company admin via UI}

 

Body:

Field name

Type

Mandatory

Supported Values

Description

Field name

Type

Mandatory

Supported Values

Description

latitude

Decimal

Yes

60N to 45S *

Coordinate to describe a position. Only numerical value - see the example below

longitude

Decimal

Yes

-180 to +180

Coordinate to describe a position. Only numerical value - see the example below

timeStep

Text

Yes

  • PT60M

  • PT15M

Supported TMY data frequency (time step) as ISO8601

tmyScenario

Text

Yes

P50

Supported probability of exceedance

outputFormats

Text

Yes

  • SOLARGIS_JSON

  • SOLARGIS_CSV

  • SAM

  • HELIOSCOPE

Supported output formats

siteName

Text

Yes

Free text

Free text

fileLabel

Text

No

Alphanumeric characters + underscore characterCoordinate to describe a position

Free text

 * Data for southern New Zealand is accessible, despite it being under 45° S latitude.

 

Request message example

POST: https://api.solargis.com/tmy/data-request

{   "latitude": 42.91,   "longitude": -114.84,   "timeStep": "PT60M",   "tmyScenario": "P50",   "outputFormats": ["SOLARGIS_CSV","SOLARGIS_JSON", "SAM", "HELIOSCOPE"],   "siteName": "Pro example Site",   "fileLabel": "pro_01" }

 

 

Response message

HTTP: 200 OK

Field name

Type

Mandatory

Length

Description

Field name

Type

Mandatory

Length

Description

requestId

string - random ID

Yes

 max 36

Request identifier

Response message example

{     "requestId": "5qmuSlqinM" }

 

 


TMY data generation request status

Request method: GET

URL: https://api.solargis.com/tmy/data-request/{requestId}

Request message

Header:

Key

Value

Key

Value

authorization

Bearer {token generated by Company admin via UI}

 

Body:

Field name

Type

Mandatory

Supported Values

Description

Field name

Type

Mandatory

Supported Values

Description

-

-

-

-

-

Note: Status request does not send body within request message – only requestId is being used as an identifier as part of the requested URL

 

Request message example

GET: https://api.solargis.com/tmy/data-request/5qmuSlqinM

Response message

HTTP: 200 OK

 

Field name

Type

Mandatory

Description

Field name

Type

Mandatory

Description

status

Text

Yes

Enum: queued, processing, success, reject, error, expired

statusCode

Text

No

 

statusMessage

Text

No

 

downloadUrl

Text

No

Is provided only once the processing of the data request was successful. Status = Success

 

  • Generated data are stored on the S3 environment for 7 days. After 7 days, system permanently deletes these generated data.

  • URL for data fetching retrieved from status API call is valid for 24 hours. After 24 hours, user has to send new request to get new valid URL.

 

 

Status description:

  • queued: request was successfully validated, subscription calculations were executed, the number of pending requests was increased, and the request was sent into Queue for further processing by our TMY Core team

  • processing: TMY Core team started processing the request read from the queue

  • success: request was successfully processed, and data were stored in AWS S3

  • reject: Validation in TMY Core failed. Most common issues: longitude and latitude point to the area for which we are not able to provide data, …

  • error: Unexpected server error during the request processing

  • Future status - expired: Status is not used yet. When the rules about request expiration will be introduced, information about the status will be provided

 

Response message example

HTTP 200 {     "status": "processing",     "statusCode": "102",     "statusMessage": "Request is being processed." }

 

 

 


Generated output TMY data in message response

Request method: GET

URL: https://api.solargis.com/tmy/data-request/{requestId}/{output format}

Supported output formats:

  • SOLARGIS_JSON

  • SOLARGIS_CSV

  • SAM

  • HELIOSCOPE

Request message

Header:

Key

Value

Key

Value

authorization

Bearer {token generated by Company admin via UI}

 

Body:

Field name

Type

Mandatory

Supported Values

Description

Field name

Type

Mandatory

Supported Values

Description

-

-

-

-

-

Note: Status request does not send body within request message – only requestId and expected output data format are being used as identifiers

 

Request message example

GET: https://api.solargis.com/tmy/data-request/5qmuSlqinM/SOLARGIS_JSON

Response message

HTTP: 200 OK

 

 


Subscription (Company + User) details request

Request method: GET

URL: https://api.solargis.com/customer/company-subscription/status

Request message

Header:

Key

Value

Key

Value

authorization

Bearer {token generated by Company admin via UI}

 

Body:

Field name

Type

Mandatory

Supported Values

Description

Field name

Type

Mandatory

Supported Values

Description

-

-

-

-

-

Note: User details request does not send body within request message

 

Request message example

GET: https://api.solargis.com/customer/company-subscription/status

 

Response message

HTTP: 200 OK

Field name

Type

Mandatory

Description

Field name

Type

Mandatory

Description

user

Object

No

User object for case of user token is being used

  • firstName

Text

No

First name

  • middleName

Text

No

Middle name

  • lastName

Text

No

Last name

  • email

Text

No

Email address

company

Object

Yes

Company object

  • sgCompanyId

Text

Yes

Company ID

  • name

Text

No

Company name

subscriptions

Array of Objects

Yes

List of all subscriptions assigned to user (in case of user token is being used / for Userless token only one subscription is returned

  • id

Text

Yes

Subscription identifier

  • validFrom

Datetime

Yes

Time of validity: From

  • validTo

Datetime

Yes

Time of validity: To

  • type

Text

Yes

Subscription type

  • consumptionActive

Text

Yes

Subscription can be consumed = true, else false

  • totalRequests

Number

Yes

Amount of all requests that can be called on the subscription

  • pendingRequests

Number

Yes

Amount of all requests that are being processed

  • finishedRequests

Number

Yes

Amount of all successful requests

  • name

Text

No

Subscription custom name

 

 

Response message example

 

 

 

Related content

Solargis TMY API Technical Guide
Solargis TMY API Technical Guide
More like this
TMY API technical description
TMY API technical description
More like this
Solargis API User Guide
Solargis API User Guide
Read with this
TMY integration environment details
TMY integration environment details
More like this
LTA API request / response examples
LTA API request / response examples
Read with this
Postman API tool requests example
Postman API tool requests example
More like this