Get Started

What exactly is the {MAAS} API?

The {MAAS} API is an open source REST API built to help make it easier and more efficient to build interactive applications that want to utilize the wealth of weather data being transmitted by the Curiosity Rover on Mars. Our API is built upon the REMS (Rover Environmental Monitoring Station) data provided by the Centro de Astrobiologia (CSIC-INTA).

What's possible?

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

  • Current temperature (high's and low's)
  • Temperature on a previous date
  • Barometric pressure
  • Wind speed
  • Martian date
  • Martian sunrise and sunset
  • Seasons

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Get started with the {MAAS} API

Start building apps on a galactic scale with the Mars Atmospheric Aggregation System.

Our API is accessible at marsweather.ingenology.com. Thanks to being built with Django REST Framework, it features a Browsable API that makes exploring the data easy. Here are a few examples to get you started:

The following request:

curl -X GET http://marsweather.ingenology.com/v1/latest/

will return a JSON object for the latest report:

{
    "terrestrial_date": "2013-12-10", 
    "sol": 155, 
    "ls": 243.7, 
    "min_temp": -64.45, 
    "max_temp": 2.15, 
    "pressure": 9.175, 
    "pressure_string": "Higher", 
    "abs_humidity": null, 
    "wind_speed": 2.0, 
    "wind_direction": "E", 
    "atmo_opacity": "Sunny", 
    "season": "Month 9", 
    "sunrise": "2013-12-10T12:00:00Z", 
    "sunset": "2013-12-10T23:00:00Z"
}

You can filter by most report fields. For example, sol:

curl -X GET http://marsweather.ingenology.com/v1/archive/?sol=155

This returns:

{
    "count": 1, 
    "next": null, 
    "previous": null, 
    "results": [
        {
            "terrestrial_date": "2012-12-10", 
            "sol": 155, 
            ...
        }
    ]
}

You can also filter by terrestrial date using terrestrial_date_start and terrestrial_date_end. For example:

curl -X GET http://marsweather.ingenology.com/v1/archive/?terrestrial_date_start=2012-10-01&terrestrial_date_end=2012-10-31

This returns a collection of JSON objects for every weather report available for October 2012:

{
    "count": 29, 
    "next": "http://marsweather.ingenology.com/v1/archive/?terrestrial_date_end=2012-10-31&terrestrial_date_start=2012-10-01&page=2", 
    "previous": null, 
    "results": [
        ...
    ]
}

Our API is open sourced under the Apache license. The source code is available on Github

Browse the API Get the Code