SOAP-based BLAST Web Service Christiam Camacho camacho@ncbi.nlm.nih.gov Tom Madden madden@ncbi.nlm.nih.gov Overview The Simple Object Access Protocol (SOAP)-based BLAST Web Service offers software developers the possibility to develop applications that access the BLAST resources at NCBI in their programming language of choice, relying on widely adopted industry standards such as XML (Extensible Markup Language) and WSDL (Web Service Definition Language). The service definition can be found in http://www.ncbi.nlm.nih.gov/blast/netblast/blastws.cgi? WSDL and the underlying data structures use the NCBI data model in its XML schema representation. This service provides a simple interface for submitting and retrieving BLAST results that does not require deep knowledge of the NCBI data model as well as a more complete interface which does require knowledge of the NCBI data model and the BLAST 4 network protocol, and familiarity with Abstract Syntax Notation (ASN.1) (see references). The simple (“Lite”) interface allows developers to quickly build a tool around this service, but should provide sufficient flexibility for most projects. The usage model of the service is simple. The user submits a search, receives a BLAST Request ID (RID), and then uses the RID to check the status of the search, retrieve results, or a search strategy (see below). The BLAST web pages at blast.ncbi.nlm.nih.gov will also accept the RID. For scripted retrieval at the BLAST web page please follow the syntax documented by the QBLAST URL API or use the blast_formatter BLAST+ command line application. This document’s intended audience is software developers and it requires working knowledge of web services frameworks using SOAP and WSDL. Usage policy Please see guidelines under “Web service interface” in http://blast.ncbi.nlm.nih.gov/Blast.cgi? CMD=Web&PAGE_TYPE=BlastDocs&DOC_TYPE=DeveloperInfo Interface description Simple BLAST database search submission: SubmitSearchLite This function accepts on input a Blast4-queue-search-request-lite and returns a string with a BLAST request ID (RID). The Blast4-queue-search-request-lite includes the basic fields to launch a BLAST search: Query: a string which contains sequence in FASTA format, a GI number, or an accession Database: a string which contains the BLAST database name to search Options: a Blast4-options-lite structure which contains a task and (optionally) commonly used BLAST options. A list of supported tasks can be obtained via the GetSupportedTasks function. Setting the task sets both the type of search (e.g., BLAST® Help BLAST® Help BLAST® Help BLAST® Help