Skip to content

demo client API

Muharem Hrnjadovic edited this page May 9, 2011 · 25 revisions

The OpenQuake django server application exposes the following set of api endpoints for use by the GeoExt client.

^mtapi/ ^input_upload/$
^mtapi/ ^hazard_risk_calc/$
^mtapi/ ^hazard_risk_result/$

input_upload

POST

Allows the user to upload a NRML file with seismic input model data. Makes use of a multipart/form-data

Form parameters:

The content type of the returned data needs to be text/html.

http://openquake.gemsun02.ethz.ch/mtapi/input_upload/

{"status": "success", "msg": "Upload successful",
 "upload": 22,
 "files": [{"id": 1, "name": "src-a.xml"}, {"id": 2, "name": "src-b.xml"}]}

hazard_risk_calc

POST

Allows the user to start a combined hazard/risk OpenQuake engine calculation given the chosen geometry and a small selection of calculation parameters.

TODO:

  • what hazard/risk calculation parameters should be supported by the GUI?

http://openquake.gemsun02.ethz.ch/mtapi/hazard_risk_calc/

{
    "model": "mtapi.calculationparams",
    "upload": 22,
    "fields": {
        "job_type": "classical",
        "region_grid_spacing": 0.1,
        "min_magnitude": 6.1,
        "investigation_time": 50.0,
        "component": "average",
        "imt": "pga",
        "period": 12.0,
        "truncation_type": "none",
        "truncation_level": 1.0,
        "reference_vs30_value": 10.0,
        "imls": [1.0, 2.0, 3.0],
        "poes": [1.0, 2.0, 3.0],
        "realizations": 2,
        "histories": 5,
        "gm_correlated": false,
        "region": "POLYGON((-180 -90,180 -90,180 90,-180 90,-180 -90))"
    }
}

Please note:

  • job_type may be one of the following: 'classical', 'probabilistic', 'deterministic'
  • min_magnitude and investigation_time are only set for classical and probabilistic job types
  • component may be one of the following: 'average', 'gmroti50'
  • imt (intensity measure type) may be one of the following: 'pga', 'sa', 'pgv', 'pgd'
  • period is only set if the intensity measure type is 'sa'
  • truncation_type may be one of the following: 'none', '1-sided', '2-sided'
  • imls (intensity measure levels) and poes (probabilities of exceedence) are only set for classical job types
  • realizations (number of logic tree samples) is only set for classical and probabilistic job types
  • histories (number of seismicity histories) is only set for probabilistic job types
  • gm_correlated (ground motion correlation flag) is only set for probabilistic and deterministic job types
  • float values listed above must always be positive

Response data:

{"status": "success", "msg": "Calculation started", "id": 123}

hazard_risk_result

GET

TODO:

  • clarify whether maps should be rendered using fixed or stretched classifications.

Allows clients to obtain the results of the given OpenQuake calculation.

http://openquake.gemsun02.ethz.ch/mtapi/hazard_risk_result/123/

Response data (TODO: add min/max for stretched classifications):

{
    "pk": 123,
    "model": "mtapi.calculationresults",
    "fields": {
        "hazardcurves": ["123-hazardcurve.svg-1", "123-hazardcurve.svg-2"],
        "losscurves": ["123-losscurve.svg"],
    }
}

Response codes:

  • 400: when result not available yet
  • 200: when the result is available
Clone this wiki locally