Help:WikiPathways Webservice/API

From WikiPathways

Revision as of 23:56, 17 February 2015 by Khanspers (Talk | contribs)
Jump to: navigation, search

Contents

This page documents WikiPathways REST API calls. For more information on libraries and code examples, see WikiPathways web services.

Functions

listOrganisms

Get a list of all available organisms.

Example: http://webservice.wikipathways.org/listOrganisms


listPathways

Get a list of all available pathways.

Example: http://webservice.wikipathways.org/listPathways

Arguments: listPathways

  • string organism
    • Only return pathways for this organism (optional).


getPathway

Download the pathway from WikiPathways.

Example: http://webservice.wikipathways.org/getPathway?pwId=WP4&revision=40020

Arguments:

  • string pwId
    • The pathway identifier.
  • integer revision
    • The revision number of the pathway (use '0' for most recent version).


getPathwayInfo

Get some general info about the pathway, such as the name, species, without downloading the GPML.

Example: http://webservice.wikipathways.org/getPathwayInfo?pwId=WP4

Arguments:

  • string pwId
    • The pathway identifier.


getPathwayHistory

Get the revision history of a pathway.

Example: http://webservice.wikipathways.org/getPathwayHistory?pwId=WP4&timestamp=20110101000000

Arguments:

  • string pwId
    • The pathway identifier.
  • string timestamp
    • Limit the results by date, only history items after the given timestamp will be included.


getRecentChanges

Get the recently changed pathways.

Note: the recent changes table only retains items for a limited time (2 months), so there is no guarantee that you will get all changes when the timestamp points to a date that is more than 2 months in the past.

Example: http://webservice.wikipathways.org/getRecentChanges?timestamp=20110101000000

Arguments:

  • string timestamp
    • Only get changes from after this time. Timestamp format: yyyymmddMMHHSS.


login

Start a logged in session, using an existing WikiPathways account. This function will return an authentication code that can be used to excecute methods that need authentication (e.g. updatePathway).


Arguments:

  • string name
    • The username of the WikiPathways account.
  • string pass
    • The password of the WikiPathways account.


getPathwayAs

Download a pathway in the specified file format.


Arguments:

  • string fileType
    • Download a pathway in the specified file format.
  • gpml
  • png
  • svg
  • pdf
  • txt
  • pwf
  • owl (for BioPAX level 3)

See the download page for an explanation of these file formats.

  • string pwId
    • The pathway identifier.
  • integer revision
    • The revision number of the pathway (use '0' for most recent version).


updatePathway

Update a pathway on the wiki with the given GPML code.

Note: To create/modify pathways via the web service, you need to have an account with web service write permissions. Please contact us to request write access for the web service.


Arguments:

  • string pwId
    • The pathway identifier.
  • string description
    • A description of the modifications.
  • string gpml
    • The updated GPML code.
  • integer revision
    • The revision number of the version this GPML code was based on. This is used to prevent edit conflicts in case another client edited the pathway after this client downloaded it.
  • object WSAuth auth
    • The authentication info.


createPathway

Create a new pathway on the wiki with the given GPML code.

Note: To create/modify pathways via the web service, you need to have an account with web service write permissions. Please contact us to request write access for the web service.


Arguments:

  • string gpml
    • The GPML code.
  • object WSAuth auth
    • The authentication info.


findPathwaysByText

Find pathways using a textual search on the description and text labels of the pathway objects. The query syntax offers several options:

  • Combine terms with AND and OR. Combining terms with a space is equal to using OR ('p53 OR apoptosis' gives the same result as 'p53 apoptosis').
  • Group terms with parentheses, e.g. '(apoptosis OR mapk) AND p53'
  • You can use wildcards * and ?. * searches for one or more characters, ? searchers for only one character.
  • Use quotes to escape special characters. E.g. '"apoptosis*"' will include the * in the search and not use it as wildcard.

Example: http://webservice.wikipathways.org/findPathwaysByText?query=apoptosis

Arguments:

  • string query
    • The search query (e.g. 'apoptosis' or 'p53').
  • string species
    • The species to limit the search to (leave blank to search on all species).


findPathwaysByXref

Find pathways by searching on the external references of DataNodes (gene/protein/metabolite identifiers). When using the REST style invocation, you can specify multiple ids and codes parameters to query for multiple xrefs at once. In that case, the number of ids and codes parameters should match, they will be paired to form xrefs, e.g.: http://www.wikipathways.org/wpi/webservice/webservice.php/findPathwaysByXref?ids=1234&ids=ENSG00000130164&codes=L&codes=En

Example: http://webservice.wikipathways.org/findPathwaysByXref?ids=1234&codes=L

Arguments:

  • array of string ids
    • One or more DataNode identifier(s) (e.g. 'P45985').
  • array of string codes
    • One or more code(s) of the database system to limit the search to. See this page for an overview of available system codes. If you supply multiple codes, the number of codes needs to equal the number of ids supplied. If you supply multiple ids and only one code, this code will be used for all ids.


findInteractions

Find interactions defined in WikiPathways pathways.

Example: http://webservice.wikipathways.org/findInteractions?query=P53

Arguments:

  • string query
    • The name of an entity to find interactions for (e.g. 'P53')


saveCurationTag

Apply a curation tag to a pahtway. This operation will overwrite any existing tag with the same name.

Note: To create/modify pathways via the web service, you need to have an account with web service write permissions. Please contact us to request write access for the web service.


Arguments:

  • string pwId
    • The pathway identifier.
  • string tagName
    • The name of the tag to apply.
  • string tagText
    • The tag text (optional).
  • integer revision
    • The revision this tag applies to.
  • object WSAuth auth
    • The authentication info.


removeCurationTag

Remove a curation tag from a pathway.

Note: To create/modify pathways via the web service, you need to have an account with web service write permissions. Please contact us to request write access for the web service.


Arguments:

  • string pwId
    • The pathway identifier.
  • string tagName
    • The name of the tag to remove.
  • object WSAuth auth
    • The authentication info.


getCurationTags

Get all curation tags for the given pathway.

Example: http://webservice.wikipathways.org/getCurationTags?pwId=WP4

Arguments:

  • string pwId
    • The pathway identifier.


getCurationTagsByName

Get all curation tags for the given tag name. Use this method if you want to find all pathways that are tagged with a specific curation tag.

Example: http://webservice.wikipathways.org/getCurationTagsByName?tagName=Curation:FeaturedPathway

Arguments:


getColoredPathway

Get a colored image version of the pathway.


Arguments:

  • string pwId
    • The pathway identifier.
  • integer revision
    • The revision number of the pathway (use '0' for most recent version).
  • array of string graphId
    • An array with GraphIds of the objects to color.
  • array of string color
    • An array with colors of the objects (should be the same length as graphId).

Colors should be encoded as a hexadecimal number, e.g. FF0000 for red).

  • string fileType
    • The image type (One of 'svg', 'pdf' or 'png').


getXrefList

Get a list of external references on the pathway (gene, protein or metabolite ids), translated to the given database system.

Example: http://webservice.wikipathways.org/getXrefList?pwId=WP4&code=S

Arguments:

  • string pwId
    • The pathway identifier.
  • string code
    • The code of the system to translate to (e.g. 'S' for UniProt).


findPathwaysByLiterature

Find pathways by their literature references.

Example: http://webservice.wikipathways.org/findPathwaysByLiterature?query=18651794

Arguments:

  • string query
    • The query, can be a pubmed id, author name or title keyword.


findPathwaysByLiterature

Find pathways by their literature references.

Example: http://webservice.wikipathways.org/findPathwaysByLiterature?query=18651794

Arguments:

  • string query
    • The query, can be a pubmed id, author name or title keyword.


saveOntologyTag

Add a specific ontology tag to a given pathway.


Arguments:

  • string pwId
    • The pathway identifier
  • string term
    • The ontology term
  • string termId
    • The ontology term identifier
  • object WSAuth auth
    • The authentication info.
  • string user
    • The username of the WikiPathways account


removeOntologyTag

Remove a specific ontology tag to a given pathway.


Arguments:

  • string pwId
    • The pathway identifier
  • string termId
    • The ontology term identifier
  • object WSAuth auth
    • The authentication info.
  • string user
    • The username of the WikiPathways account


getOntologyTermsByOntology

Get a list of ontology terms from a given ontology.

Example: http://webservice.wikipathways.org/getOntologyTermsByOntology?ontology=Disease

Arguments:

  • string ontology
    • The ontology term (for possible values, see the Ontology Tags section on the pathway page.


getPathwaysByOntologyTerm

Get a list of pathways tagged with a given ontology term.

Example: http://webservice.wikipathways.org/getPathwaysByOntologyTerm?term=DOID:344

Arguments:

  • string term
    • The ontology term identifier.


getPathwaysByParentOntologyTerm

Get a list of pathways tagged with any ontology term that is the child of the given Ontology term.

Example: http://webservice.wikipathways.org/getPathwaysByParentOntologyTerm?term=DOID:344

Arguments:

  • string term
    • The ontology term identifier.


getUserByOrcid

Get WP username by ORCID id.


Arguments:

  • string orcid
    • The ORCID identifier.



Objects

This section explains the different object classes defined in the WSDL.

WSPathwayInfo

Container for pathway metadata, such as name, organism and url.

Fields:

  • string id
    • The pathway identifier
  • string name
    • The name of the pathway
  • string species
    • The species (organism) of the pathway
  • string revision
    • The revision number of the pathway
  • string url
    • The url to the pathway

WSPathway

Extends WSPathwayInfo.

Container for pathway metadata and content. This object inherits all fields from WSPathwayInfo and has one additional field:

Fields:

  • string gpml
    • The content of the pathway (as GPML).

WSPathwayHistory

Extends WSPathwayInfo.

Container for pathway revision history. This object inherits all fields from WSPathwayInfo and has one additional field:

Fields:

  • array of WSHistoryRow history
    • The revision history of the pathway.

WSHistoryRow

Info about a single revision of a pathway.

Fields:

  • string revision
    • The revision number of this revision
  • string comment
    • The edit description
  • string user
    • The username of the user that edited this revision
  • string timestamp
    • The timestamp of this revision

WSAuth

Container for authentication data for a logged in WikiPathways session.

Fields:

  • string user
    • The username of a WikiPathways account
  • string key
    • The authentication key of the session (can be obtained by calling the login function).

WSSearchResult

Container for a single search result.

Fields:

  • double score
    • The score of the search result
  • string id
    • The pathway identifier
  • string name
    • The name of the pathway
  • string species
    • The species (organism) of the pathway
  • string revision
    • The revision number of the pathway
  • string url
    • The url to the pathway
  • array of WSIndexField fields
    • An array of index fields that were returned with the search. The included fields vary among different search functions. For example, it includes an array of hashes of arrays to represent interactions involving grouped objects.

WSIndexField

Container for a single index field.

Fields:

  • string name
    • The name of the index field.
  • array of string values
    • An array with the value(s) of the field.


WSCurationTag

Container for a single index field.

Fields:

  • string name
    • The internal tag name.
  • string displayName
    • The display name of the tag.
  • object WSPathwayInfo pathway
    • The pathway this tag applies to.
  • string revision
    • The revision this tag applies to. '0' is used for tags that apply to all revisions.
  • string text
    • The tag text.
  • long timeModified
    • The timestamp of the last modified date.
  • string userModified
    • The username of the user that last modified the tag.


WSOntologyTerm

Represents an ontology term

Fields:

  • string ontology
    • The name of the ontology.
  • string id
    • The ontology term identifier
  • string name
    • The ontology term name

GPML Elements

Relevant attributes and elements defined for the GPML pathway file format. Also see complete GPML documentation.

GraphId

Internal identifier for datanodes used to define graph model in GPML. The GraphID is a randomly generated hexidecimal. See sample GPML below:



   <DataNode TextLabel="HTR1B" Type="Protein" GraphId="c8d79">



Return to Web Services help page

Personal tools