Substructure Searching

Please use either the interactive sketcher or cut-and-paste your query structures below in the text area.


Note that search results are limited when run within a browser. For more complete results, please use the RESTful API below.


This server also supports access via basic RESTful syntax. Currently only GET method is supported. The syntax is as follows:


where the parameters s and mode are required and format and max are optional. QUERY is the query structure encoded as either SMILES or SMARTS. Be sure to escape special characters (e.g., [], $, etc.) if you're running on the command line (e.g., via curl). FORMAT can be any valid molecular formats as described here; if not specified, it's default to sdf. N specifies the maximum search results to return. The default value is 1000 if not specified. Here is an example using curl:

curl 'http://localhost:8080/search?s=S=P(c1ccccc1)c1ccccc1&mode=text&format=smiles&N=0'

This example returns all search results in SMILES format. To quickly estimate the number of matches for a particular query, the count method can quite useful; e.g.,

curl 'http://localhost:8080/count?s=S=P(c1ccccc1)c1ccccc1'

Note that since this estimate is based on molecular fingerprint screening, the value returned is a loose upper bound of the actual match count if one were to run the same query through the search method. (Of course, the degree of "looseness" here depends on a number of variables such as fingerprint algorithm, length, and so forth.)