PlayMolecule client is a library whose intention is to abstract complex and computationally intensive applications so that any user can run applications in the Cloud within few commands.
To do so, we leverage the power of the Python programming language to setup, submit, run and retrieve jobs seamlessly. The library is practical in its approach: select your app of choice, instantiate a job the app, fill in the required arguments, submit the job and finally retrieve the results with very simple commands.
PlayMolecule client lets you focus on the research while PlayMolecule Web Services takes care of the rest.
Install miniconda from the conda repository.
Mac OS X | Linux | |
Python 3.6 | 64-bit (bash installer) |
64-bit (bash installer) 32-bit (bash installer) |
Install the PlaySDK package by running:
Now you can use playsdk from your favorite python editor, such as the interactive shell ipython.
Allows to create a PlayMolecule Web Services (PMWS) session with credentials provided by the API key (token). Remember that you can find your API key in the user page after you logged in.
From this point on, we assume you have created a session with your valid API key.
Lists all available apps and describes them shortly. The field Name is a unique identifier used to launch new jobs.
Name Description ProteinPrepare Prepare a protein for MD simulations using PROPKA 3.1 for residue titration and PDB2PQR 2.1 to optimize the hydrogen bond network. DeepSite Scan a protein for ligand binding sites using a convolutional neural network-based predictor. Kdeep Predict the binding affinity of a set of ligands to their receptor. BindScope Perform virtual screening of a library of ligands and score them with a probability of binding to given receptor.
Allows to instantiate an application with name appName, creating a new Job object.
Displays the status of current existing jobs, including the jobid and the status.
ID Status be4342da-90b5-45d6-8f04-71b4f6d4f3de Running cfeab8ff-c448-41bf-8994-d99236110939 Running da9423f1-e0d0-47ef-969b-0590dc971009 Running
Instantiates a Job object from an existing known jobId.
Describes the Job and lists the arguments accepted by a particular application. Default values for each argument are visible in the Value column.
Name Type Mandatory Value Description pH float False 7.2 pH at which residues will be titrated (default: 7.2) chain string False all chains to be used in ProteinPrepare (e.g.: -chain A B; default: all) mutations string False residue mutations structured as: # where resname is an aminoacid in standard abbreviation (e.g. ALA) or REMOVE (e.g.: -mutate A:2#GLY) webOut bool False False Generate web-related content (default: False) details bool False False return details of the protonation (default: False) removeWater bool False False ignore water molecules in the optimization (default: False) includeHeteroatoms bool False False include heteroatoms in the optimization (default: False) pdb fileORstring True None .pdb file of the receptor.
Arguments/attributes for an application can be inputted through the job.argName = [value] notation.
Note how the Value field for the argument changes in respect the previous default value.
Name Type Mandatory Value Description pH float False 6.2 pH at which residues will be titrated (default: 7.2) chain string False all chains to be used in ProteinPrepare (e.g.: -chain A B; default: all) mutations string False residue mutations structured as: # where resname is an aminoacid in standard abbreviation (e.g. ALA) or REMOVE (e.g.: -mutate A:2#GLY) webOut bool False False Generate web-related content (default: False) details bool False False return details of the protonation (default: False) removeWater bool False False ignore water molecules in the optimization (default: False) includeHeteroatoms bool False False include heteroatoms in the optimization (default: False) pdb fileORstring True None .pdb file of the receptor.
Submits a Job.
Submiting app: 181e92a1-e19b-4b6d-a8e4-85f608fabe46 Configuration uploaded Input data uploaded Execution submited. Execution ID: 609de9c4-b536-4766-9b6b-19a4e64569d6
Retrieves the status of a Job.
Status: Running
Retrieves the Job at the folder specified in job.output (by default the current directory).
Retrieving data of execution: 609de9c4-b536-4766-9b6b-19a4e64569d6 Data retrieved.
A folder with the id of the job will be created with the contents of the application output.
output.pdb