On Monday 28th March 2011 the WSFasta service was decommissioned and replaced by the following services:

The service documentation and clients below are historical and provided solely for reference purposes.


FASTA (pronounced FAST-Aye) stands for FAST-All, reflecting the fact that it can be used for a fast protein comparison or a fast nucleotide comparison. This program achieves a high level of sensitivity for similarity searching at high speed. This is achieved by performing optimised searches for local alignments using a substitution matrix. The high speed of this program is achieved by using the observed pattern of word hits to identify potential matches before attempting the more time consuming optimised search. The trade-off between speed and sensitivity is controlled by the ktup parameter, which specifies the size of the word. Increasing the ktup decreases the number of background hits. Not every word hit is investigated but instead initially looks for segment's containing several nearby hits.

For more information see:

Web service registry entries:


Sample clients are provided for a number of programming languages. For details of how to use these clients, download the client and run the program without any arguments.

Language Download Requirements
C# .NET Executable: wsfasta.exe; Source: wsfasta.cs A .NET runtime environment. If building from source development tools are also required. See the .NET tutorial for details.
Java Executable jar: WSFasta.jar; Source: Axis 1.4; All dependencies, including Axis 1.4 and Commons-CLI, are available in
Perl SOAP::Lite
Ruby wsfasta.rb soap4r
Taverna 1.x EBI_FASTA Taverna

For further details see WSFasta Clients.


In addition to these sample clients users have submitted workflows using these services to the myExperiment workflow repository. See workflows using the WSFasta Web Service for a list.


Service API

runFasta(params, content)

Submits a FASTA job to the service.


  • params an instance of the inputParams data structure.
  • content a list of data data structures describing the query sequence data.

Returns: a string containing the job ID (jobid).


Get the entry IDs of the hits in the FASTA output.


  • jobid the job identifier specifying the job to get the IDs from.

Returns: a string array of entry IDs.


Get the status of a job.


  • jobid the job identifier of the job to check status of.

Returns: a string indicating the status of the job. Current values are:

  • DONE: job has finished, and the results can then be retrieved.
  • ERROR: the job failed or no results where found
  • NOT_FOUND: the job id is no longer available (job results are deleted after 24 h)
  • PENDING: the job is in a queue waiting processing
  • RUNNING: the job is currently being processed


Get details of the result types available.


  • jobid the job identifier of the job to get result types for.

Returns: an array of WSFile structures describing the available result types for the job.

poll(jobid, type)

Wait until the job has finished and get the specified type of result data.


  • jobid the job identifier of the job to get result from.
  • type a string specifying the type of result to retrieve. See getResults(jobid) and WSFile for details of how to obtain valid values.

Returns: a base64 encoded string containing the result data. Depending on the SOAP library and programming language used the result may be returned in decoded form.

doFasta(params, content)

Deprecated. Use runInterProScan(params, content) instead.

polljob(jobid, outformat)

Deprecated. Use poll(jobid, type) instead.


Structure containing the input data for the job

Attribute Type Description Default
type string Type of content being used. Valid values are: 'sequence' and 'dbfetch' required
content string A sequence entry identifier in db:id format or a formatted sequence (fasta recommended) required

For example to specify an input sequence in Java:

Data inSeq = new Data();
inSeq.setType = "sequence";
inSeq.setContent = ">TestSequence\nASAMPLESEQ\n";


A structure containing the parameters required to run the job.

Attribute Type Description Default
program string FASTA program to run. Valid values are: 'fasta3', 'fastx3', 'fasty3', 'fastf3', 'fasts3' or 'ssearch' required
database string Sequence database to search. See databases. required
moltype string The type of the query sequence. Valid values are: 'Protein', 'DNA' or 'RNA' 'Protein'
histogram boolean Display histogram false
nucleotide boolean Set query type to nucleotide false
topstrand boolean Perform search with “top” strand of query sequence. Uses query as specified. false
bottomstrand boolean Perform search with “bottom” strand of query sequence. Uses reverse complement of query. false
gapopen int Gap creation penalty -12 for protein; -16 for DNA
gapext int Gap extension penalty -2 for protein; -4 for DNA
scores int Maximum number of scores to output 50
alignments int Maximum number of alignments to output 50
ktup int Word size 2 for protein; 6 for DNA
matrix string Scoring matrix. See matrix. BLOSUM50 for protein; “none” for DNA
eupper float Upper expectation limit 10.0
elower float Lower expectation limit 0.0
dbrange string Range of sequence lengths in database to search. all sequences
seqrange string Position range in query sequence to search with. whole sequence
outformat string Not used, see poll(jobid, type) for details of how to retrieve specific result types both
async boolean Asynchronous submission (recommended) false
email string Valid email address. See Why do you need my e-mail address? required


Structure describing a result type. Returned by the getResults(jobid) method.

Attribute Type Description
type string Symbolic name of the result type. Used with the poll(jobid, type) method.
ext string Recommended file extension for this result type.


If you have any questions or comments or you plan to use this service as part of a course or for a high number of submissions, please contact us EMBL-EBI Support.

services/archive/sss/wsfasta.txt · Last modified: 2013/04/23 16:42 by hpm