Space Training Catalogue API v2

You can access the training catalogue programmatically via our API:

https://training.spaceskills.org/api/v2

Make GET requests to any of the endpoints listed below. No authentication is required at present.

We make no guarantees about the availability of the API. If you are making extensive use of it, please get in touch with us about your requirements and suggestions for improvements.

Training opportunities

/opportunities

with optional query parameters:

Parameter Type Description
q[keyword] String A keyword or phrase to look for in the opportunity’s title or description
q[providers_name_eq_any] String The names of training providers, separated by semicolons
q[training_types_name_eq_any] String The names of training types, separated by semicolons
q[topics_name_eq_any] String The names of training topics, separated by semicolons
q[providers_name_eq_any] String The names of training providers, separated by semicolons
q[locations_country_eq_any] String The names of countries, separated by semicolons. Countries: United States, Luxembourg, Ireland, UK, Hungary, Netherlands, Italy, Belgium, Portugal, Romania, Greece, Online, Spain, France, Austria, Varies, Israel, Sweden, Germany, USA, Australia
q[price_gbp_lteq] Number Maximum price in GBP

Note that these query parameters are the same as appear in the URL when you filter the training opportunities on the website, so you can use the website to construct your query and copy it into your code.

Example

GET https://training.spaceskills.org/api/v2/opportunities?q[keyword]=gnss&q[Bproviders_name_eq_any]=European+Space+Agency+(ESA)

This query would return all training opportunities provided by ESA containing the word 'GNSS'.

Degrees

/degrees

with optional query parameters:

Parameter Type Description
q[keyword] String A keyword or phrase to look for in the opportunity’s title or description
q[providers_name_eq_any] String The names of degree providers, separated by semicolons
q[topics_name_eq_any] String The names of degree topics, separated by semicolons
q[qualification_eq_any] String The names of qualifications, separated by semicolons. Qualifications: Bachelor's, Master's, Doctorate / PhD, Postgraduate Certificate, Diploma, Certificate, Postgraduate Diploma
q[duration_eq_any] String The names of durations, separated by semicolons. Durations: 3 years, 5 years, 4 years, 1 year, 2 years, 8 years, 6 years, 6 months, 3.5 years, 9 months

Note that these query parameters are the same as appear in the URL when you filter the degrees on the website, so you can use the website to construct your query and copy it into your code.

Example

GET https://training.spaceskills.org/api/v2/degrees?q[keyword]=physics&q[providers_name_eq_any]=University+of+Lincoln

This query would return all degrees provided by the University of Lincoln rleated to physics.

Providers

/providers

with optional query parameters:

Parameter Type Description
q[keyword] String A keyword or phrase to look for in the provider’s name or description
q[topics_name_eq_any] String The names of training topics, separated by semicolons
q[locations_country_eq_any] String The names of countries, separated by semicolons. Countries: United States, Luxembourg, Ireland, UK, Hungary, Netherlands, Italy, Belgium, Portugal, Romania, Greece, Online, Spain, France, Austria, Varies, Israel, Sweden, Germany, USA, Australia

Note that these query parameters are the same as appear in the URL when you filter the providers on the website, so you can use the website to construct your query and copy it into your code.

Example

GET https://training.spaceskills.org/api/v2/providers?q[keyword]=university

This query would return all providers with 'university' in their name or description.

Pagination

Per page

By default, the API will return 50 results per page. You can change this by adding a page[size] parameter to your request:

/opportunities?page[size]=50

The maximum number of results per page is 100.

By default, the API will return the first page. You can change this by adding a page[number] parameter to your request:

/opportunities?page[number]=2