OpenTox API 1.2

From ToxBank API Wiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "==API 1.2== '''Interface specifications for OpenTox services (Version 1.2).''' ===Common specifications for all APIs=== OpenTox components are webservices with a REST (http://e...")
 
 
Line 5: Line 5:
  
 
OpenTox components are webservices with a REST (http://en.wikipedia.org/wiki/Representational_State_Transfer) interface.
 
OpenTox components are webservices with a REST (http://en.wikipedia.org/wiki/Representational_State_Transfer) interface.
Parameters
+
 
 +
====Parameters====
  
 
Parameters are posted with a "Content-Type:application/x-www-form-urlencoded" HTTP header. Parameter names are typed in bold letters in the API definitions. Square brackets (e.g. compound_uris[]) indicate that a list of arguments is expected.
 
Parameters are posted with a "Content-Type:application/x-www-form-urlencoded" HTTP header. Parameter names are typed in bold letters in the API definitions. Square brackets (e.g. compound_uris[]) indicate that a list of arguments is expected.
Line 15: Line 16:
 
subjectid is a (optional) parameter that contains the OpenSSO A&A token needed to access protected services.
 
subjectid is a (optional) parameter that contains the OpenSSO A&A token needed to access protected services.
  
Examples:
+
'''Examples:'''
  
 
  curl -X GET http://{server}/dataset?compound_uris[]={compound_uri1}&compound_uris[]={compound_uri2})
 
  curl -X GET http://{server}/dataset?compound_uris[]={compound_uri1}&compound_uris[]={compound_uri2})
Line 21: Line 22:
 
  curl -X POST -d 'dataset_uri=http://{server}/dataset/5' http://{server}/algorithm/xxx
 
  curl -X POST -d 'dataset_uri=http://{server}/dataset/5' http://{server}/algorithm/xxx
  
Request and submit formats
+
====Request and submit formats====
  
 
The default OpenTox format is RDF/XML (with exception of the compound API), but service developers may support additional formats. You can request them, by specifying the MIME type in the "Accept" and "Content-Type" HTTP headers.
 
The default OpenTox format is RDF/XML (with exception of the compound API), but service developers may support additional formats. You can request them, by specifying the MIME type in the "Accept" and "Content-Type" HTTP headers.
  
 
If the service cannot serve the requested format, the default format (usually RDF/XML) will be returned.
 
If the service cannot serve the requested format, the default format (usually RDF/XML) will be returned.
Examples:
+
 
 +
'''Examples:'''
  
 
Request a compound in SDF format:
 
Request a compound in SDF format:
Line 39: Line 41:
  
 
  curl -X POST -H "Content-Type:application/rdf+xml" --data-binary@my_data_file.rdf http://{server}/dataset
 
  curl -X POST -H "Content-Type:application/rdf+xml" --data-binary@my_data_file.rdf http://{server}/dataset
File uploads
+
 
 +
====File uploads====
  
 
Files can be uploaded by specifying "multipart/form-data" in the Content-Type header.
 
Files can be uploaded by specifying "multipart/form-data" in the Content-Type header.
Bug reports and feature requests
+
 
 +
====Bug reports and feature requests====
  
 
Please use our Issue tracker to report problems with the current API. You can also discuss the APIs on the developers mailing list.
 
Please use our Issue tracker to report problems with the current API. You can also discuss the APIs on the developers mailing list.

Latest revision as of 11:09, 29 August 2011

Contents

API 1.2

Interface specifications for OpenTox services (Version 1.2).

Common specifications for all APIs

OpenTox components are webservices with a REST (http://en.wikipedia.org/wiki/Representational_State_Transfer) interface.

Parameters

Parameters are posted with a "Content-Type:application/x-www-form-urlencoded" HTTP header. Parameter names are typed in bold letters in the API definitions. Square brackets (e.g. compound_uris[]) indicate that a list of arguments is expected.

Ampersands in URI attribute values (e.g. dataset_uri="/dataset/abc?feature_uri=/feature/x&feature_uri=/feature/z") should be escaped, as explained in http://www.w3.org/TR/html401/appendix/notes.html#ampersands-in-uris

For curl POST requests the -d/--data option should be used to ensure the content type. See [[1]] for more information on the -d parameter.

subjectid is a (optional) parameter that contains the OpenSSO A&A token needed to access protected services.

Examples:

curl -X GET http://{server}/dataset?compound_uris[]={compound_uri1}&compound_uris[]={compound_uri2})
curl -X POST -d 'dataset_uri=http://{server}/dataset/5' http://{server}/algorithm/xxx

Request and submit formats

The default OpenTox format is RDF/XML (with exception of the compound API), but service developers may support additional formats. You can request them, by specifying the MIME type in the "Accept" and "Content-Type" HTTP headers.

If the service cannot serve the requested format, the default format (usually RDF/XML) will be returned.

Examples:

Request a compound in SDF format:

curl -X GET -H "Accept:chemical/x-mdl-sdfile" http://{server}/compound/{id}

Submit a compound in InChI format:

curl -X POST -H "Content-Type:chemical/x-inchi" --data-binary "InChI=1S/C5H10/c1-2-4-5-3-1/h1-5H2" http://{server}/compound

Create a new dataset:

curl -X POST -H "Content-Type:application/rdf+xml" --data-binary@my_data_file.rdf http://{server}/dataset

File uploads

Files can be uploaded by specifying "multipart/form-data" in the Content-Type header.

Bug reports and feature requests

Please use our Issue tracker to report problems with the current API. You can also discuss the APIs on the developers mailing list.

Personal tools