GastroPlus Orchestrator Overview
Introduction
GastroPlus Orchestrator is the automation layer for GastroPlus 10.2 designed to enable seamless interaction with the simulation engine programmatically. The automation layer includes multiple functionalities exposed through REST API that facilitate interaction with GastroPlus engine through HTTP protocol. Through a suite of RESTful APIs, Orchestrator allows users to automate GastroPlus 10.2 simulation workflows, integrate it with custom tools, and build bespoke applications-eliminating manual steps and increasing reproducibility.
GastroPlus Orchestrator includes R an Python libraries to facilitate and streamline the use of the REST APIs within Python and R ecosystems.
Installation and Components
GastroPlus 10.2 installation installs the necessary components required for GastroPlus Orchestrator mentioned below
GastroPlusWebService - version 10.2.0
Library that exposes REST APIs for GastroPlus functionalities
gastroPlusAPI Python package - version 10.2.0
Python Client package that facilitates the interaction with GastroPlus engine.
gastroPlusAPI R package - version 10.2.0
R Client package that facilitates the interaction with GastroPlus engine.
gastroPlusRModuLens R pacakge - version 10.2.0
A companion R package offering high-level utilities for frequent workflows, plotting, visualization, and batched API calls for common MIDD workflow scenarios.
The GastroPlus REST APIs follow Header-based versioning. More information can be found in the OpenAPI specification documentation.
Functionalities
GastroPlus Orchestrator 10.2 version exposes a comprehensive list of functionalities of GastroPlus engine that address common use cases and operations.
GastroPlus Project Management(.gpproject)
GastroPlus projects can be programmatically created and modified through the following methods:
Create new
.gpprojectbased on reference project templates or by importing legacy.mdbprojects.Programmatically import/export simulation assets (e.g., compound, formulation, physiology).
Access / Modify Variables
The user can navigate through variables within a project and retrieve values of specific variables. Additionally, user can get / set variable values within an asset (eg., drug formulation, compound, physiology, etc.)
Navigate within the project hierarchy to locate variables inside assets (eg. drug formulation, compound, physiology, etc.)
Retrieve or modify variable values (e.g., solubility, clearance, physiological properties).
Run execution and output retrieval
Existing runs within a project can be executed and their outputs can be retrieved in different formats:
Summary of Pharmacokinetic information
Iteration List containing the variable values
Mass / Concentration time-series data
Configuring Parameter Sensitivity Analysis Run
Parameter sensitivity analysis run can be configured within a project through automation. In addition to the variable spacing (logarithmic / uniform) options available in the GUI, automation also provides the user to provide discrete user-defined variable values to be used in the PSA run.
Observed Data Operations
Experimental / Observed data in a .gpproject can be created, retrieved, and deleted programmatically.
Supported Modules
Key functionalities within the following GastroPlus modules are also exposed as part of GastroPlus Orchestrator
IVIVC analysis
PKPlus analysis
ADMET Predictor module
Concepts
The service can be started by the users in the following ways:
Start the service somewhere and configure from R/Python
Locate and start the GastroPlus 10.2 – Web application icon on your desktop or start menu.

The icon of Gastroplus 10.2-Web
A command window will open showing the service startup process.
Note the port number displayed at the end of the command window message.
Example:
listening on port: 57621You will use this address to configure your R or Python client.

Start the service from R/Python
To start the service directly from R/Python
From R:
Use the helper function
start_service()provided in thegastroPlusAPIpackage.CODE# Start service and connect gpx_service <- start_service() # The above starts a process using the processx package. See here for available methods. # ?processx::process # Quit the service gpx_service$kill()From Python:
Use theConfigurationandApiClientclasses to connect.CODEimport gastroplus_api configuration = gastroplus_api.Configuration( host="http://localhost:8700" ) with gastroplus_api.ApiClient(configuration) as api_client: api_instance = gastroplus_api.AdmetPredictorApi(api_client)
Supported units:
The different units supported by GastroPlus Orchestrator are defined below.
Basic Physical Quantities
Quantity | Abbreviated units | Full unit names |
|---|---|---|
Mass | g, kg, µg, ng, oz, lb | gram, ounce, kilogram, etc. |
Time | s, min, h, d, wk, y-wk, yr | second, minute, hour, day, year-week, etc. |
Length | m, Å, mm, nm, µm | meter, angstrom, micrometer, etc |
Volume | L, mL, nL, µL, m³ | liter, meters cubed, etc. |
Temperature | K, °C, °F, °R | Kelvin, Celsius, Fahrenheit |
Quantity | mol, units | moles, units |
Area | m², cm², mm², in² | meters squared, inches squared, etc. |
Derived Physical Quantities
The following derived quantities are supported, with their units automatically determined from their relationships to the basic physical quantities defined above.
Concentration, Exposure, Volumetric Flow, Mass Flow, Frequency, Permeability, Density, etc.
Metric Prefixes
Standard metric prefixes are applicable to the basic and derived physical quantities with some exceptions (for example, temperature).
Prefix | Symbol | Factor | Example |
|---|---|---|---|
femto | f | 10⁻¹⁵ | fg (femtogram) |
pico | p | 10⁻¹² | pg (picogram) |
nano | n | 10⁻⁹ | ng (nanogram) |
micro | µ (or u) | 10⁻⁶ | µg (microgram) |
milli | m | 10⁻³ | mg (milligram) |
kilo | k | 10³ | kg (kilogram) |
mega | M | 10⁶ | Mg (megagram) |
Preferred Units
The GastroPlus Orchestrator API returns quantities using the following preferred units to ensure consistency across responses:
Quantity | Symbol/Abbreviation |
|---|---|
Time |
|
Concentration |
|
Exposure |
|
Mass (Dose, Series Data) |
|
Mass (Body Weight) |
|
Age |
|
Height |
|
Body Mass Index |
|
Volume per Mass Flow |
|
Length |
|