Web Service APIs: Search

RESTful Services support data query and retrieval in both JSON and XML formats. The Web Services mailing list will announce when new APIs are available or updated.

Subscribe to API mailing list

The Overview page provides a list of other Web Services offered.

About SEARCH services results

We have more than 80 query options in the advanced search system. All the advanced queries can be done by posting the relevant XML query representation to the search services. The queries can be categorized to four types based on the query results.

BLAST search on the PDB database
BLAST with Sequence. Example sequence:

VLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHGKKVADALTAVAHVDDMPNAL

BLAST with Structure ID and Chain ID. View a Java example that submits a BLAST search via a POST: PostBLASTQuery.java
Chemical Structure searches with SMILES or SMARTS strings
This query performs chemical structure searches using SMILES and SMARTS linear notations.
Search types include exact, substructure, superstructure and similarity.
SEARCH service

This interface exposes the RCSB PDB advanced search interface as an XML Web Service.

To use this service, POST a XML representation of an advanced search to /pdb/rest/search.

XML representation of advanced search

Every advanced search can be represented by XML. To view an example representation, simply execute an advanced search query and then click on the Result tab. One of the links on the top of the page is Query Details.

Every query is described by two data items:

  • queryType: the name of the class that is implementing the query
  • arguments: depending on the type of query that is being executed one or more differently named arguments need to be provided.



Sample XML Queries

An example XML query of the selected 'Query Type' will be displayed below, retrieved from RCSB Web Services.




Results from Query Submission will be Seen Here




  • View a Java example that submits a more complex Advanced Search doing a BLAST search and only looking at X-RAY structures. PostXMLQuery.java
  • View a Python 3 example that submits an Advanced Search for NMR Entries Search_NMR.py