MAMMOTh API description

It is the REST API with JSON response.
For using it you should add the next paths to the current page address.

Access database description.

/stat - get the document with database statistics.
/information/{ID} - get the information about database object by their ID.

Access MAMMOTh substances information.

/substances-syn/ - the list of available substance synonyms in MAMMOTh.
/substances-syn/{name} - the list of available substance synonyms that matches the {name} pattern.
/substances-syn/{name}/full - the list of available substance synonyms that exactly matches the {name} pattern.
/substances-syn/{name}/for - the list of available substance synonyms for substance, which name exactly matches the {name} pattern.
/substances/ - the list of available substances in MAMMOTh
/substances/{name} - the list of available substances in MAMMOTh that matches the {name} pattern (without searching by synonyms).
/substances/{name}/full - the list of available substances in MAMMOTh that exactly matches the {name} pattern (without searching by synonyms).

Access MAMMOTh structural models information

/models-short/ - the list of available structural models in MAMMOTh.
/models-short/{ID} - the list of available structural models in MAMMOTh which ID matches the {ID} pattern.
/models-short/{substanceID}/search - get the list of available structural models in MAMMOTh which have the substance with identifier {substanceID} in it.
/models-short/entityRole - the list of structural models where the selected substance is take part
parameter type is requred description example
substance String yes substance identifier /entityRole?substance=SS0000069
reversible int no get only the reversible models? Returns all types by default /entityRole?substance=SS0000069&reversible=1
substrate int no get models where substance is substrate /entityRole?substance=SS0000069&substrate=1
product int no get models where substance is product /entityRole?substance=SS0000069&product=1
modifier int no get models where substance is modifier /entityRole?substance=SS0000069&modifier=1
NOTE! Substrate in reversible model is a product too, and vice versa. To do such search, please, use the request like:
/models-short/entityRole?substance=SS0000069&reversible=1&substrate=1&product=1

/models-short/entitiesAmount - the structural models description about entries amount (substrates,products and modifiers)
parameter type is requred description example
reversible int no get only the reversible models? Returns all types by default /entitiesAmount?reversible=1
substrates int no get models which has the selected number of substrates /entitiesAmount?substrates=2
products int no get models which has the selected number of substrates /entitiesAmount?products=2
modifiers int no get models which has the selected number of substrates /entitiesAmount?modifiers=4
NOTE! Substrate in reversible model is a product too, and vice versa. Request returns all cases that are matched. You can combine request to search concrete model pattern:
/models-short/entitiesAmount?reversible=0&substrates=2&products=3&modifiers=5

Access MAMMOTh models full information

/models/ - the list of available models in MAMMOTh (Full model description).
/models/{ID} - the list of available models in MAMMOTh which ID matches the {ID} pattern (Full model description).

Example

If you want to get models associated with the substance 'ATP' you should make the following steps:
1) Find the substance entity corresponding to the 'ATP' substance.
/substances-syn/ATP - returns the list of substance synonyms matching the requested name ({"synonymID":"SY0000196","name":"ATP","type":"substance","substanceId":"SS0000065","substanceName":"ATP"}). You are interested in 'substanceId' parameter. It is the identifier of the substance entity in MAMMOTh. You can get the full substance entity description by the following requests: /substances/SS0000065/full or /substances/ATP/full.
2) Request the models that contain selected substance:
/models-short/SS0000065/search - returns the list of models with short descriptions of model scheme, substances that are input/output/regulators, reversibility of the process and model identifiers (Identifiers are: gnid - structural model, mmid - mathematical model, psid - parameter set).
3) Full mathematical model description available by the request
/models/GN0000067 - gives complete information about the model stored in MAMMOTh.

Please, send all questions to kazfdr [@] bionet.nsc.ru