💧
OLI API
  • Welcome to the OLI API documentation
  • Basic workflow
  • Authentication
    • Bearer Token
    • API Keys
      • Generate a Key
      • List All Keys
      • Delete a Key
  • Generating chemistry model files
    • ChemBuilder API
      • Getting Started with ChemBuilder
        • Set Thermodynamic Framework
        • Include Private Databanks
        • Include Inflows
          • Include Assays
          • Include Pseudocomponent
        • Choose Phases
        • Specify Model Name
        • Choose Redox
        • Choose Solids
        • Add Kinetics
      • ChemBuilder Query
        • Species Query
        • Redox Query
        • Solid Phase Query
        • Databank Query
        • Kinetics Query
        • Query Output Results
      • Supporting Information for ChemBuilder
        • Add Comment
        • "enabled" Keyword
        • ChemBuilder Errors
    • Chemistry Wizard
  • Uploading chemistry model files
  • Get list of uploaded files
  • Quickstart example: Python
  • Known issues and Limitations
  • OLI ENGINE API
    • Main methods
      • API call blueprint
      • Chemistry information
      • Isothermal flash
      • Isenthalpic flash
      • Bubble point flash
      • Dew point flash
      • Vapor amount flash
      • Vapor fraction flash
      • Isochoric flash
      • set pH flash
      • Precipitation point flash
      • Autoclave
      • Custom flash
      • Corrosion contact surfaces
      • Corrosion rates
      • Water analysis
  • Additional methods
    • Flash history - Chemistry model
    • Result - by jobId
    • delete file
    • cancel run
  • Inflows input
  • Optional inputs
  • Kinetic calculation inputs
  • Kinetic calculation outputs
  • Input units
  • User defined output unit set
  • Survey calculation
  • Stream output
  • Error/Warning output
  • Definition of terms
  • OLI Process API
    • Uploading a Process API package
      • Creating a Process API package
    • Get list of all uploaded ProcessAPI packages
    • Get input specs for Process API package
    • Get output specs for ProcessAPI package
    • Run a Process API calculation
    • Get calculation status and results
  • Deleting a process package
  • Undelete a process package
  • Process API input specification
    • "data" object
      • "flowsheet" object
        • "chemical-info" object
        • "general-info" object
        • "properties" object
        • "units_set_info" object
  • OLI ScaleChem API
    • Uploading chemistry model files for ScaleChem API
    • Get list of uploaded ScaleChem model files
    • Main methods
      • Brine analysis
      • Gas analysis
      • Oil analysis
      • Mixer calculation
      • Scale scenario
Powered by GitBook
On this page

Was this helpful?

  1. Generating chemistry model files
  2. ChemBuilder API
  3. Getting Started with ChemBuilder
  4. Include Inflows

Include Assays

To include assays in the inflow, users must define additional JSON objects containing "type": "assay". Users can provide a custom name for the assay "name" field.

Below is a sample input to add an assay to the inflow:

{       
         "inflows": [
            {
                "name": "H2O"
            },
            {
                "name": "test",
                "type": "assay",
                "data": {
                    "assayDataType": "ASTM D1160",
                    "thermoMethod": "API-8",
                    "assayBulkDensity": {
                        "type": "Specific Gravity",
                        "value": 0.769
                    },
                    "distillationCurveCuts": 7,
                    "distillationData": {
                        "temperatureUnit" : "°C",
                        "data": [
                        {
                            "volumePercentDistilled": 5,
                            "temperature": 68.7
                        },
                        {
                            "volumePercentDistilled": 10,
                            "temperature": 105.7
                        },
                        {
                            "volumePercentDistilled": 20,
                            "temperature": 171.9
                        },
                        {
                            "volumePercentDistilled": 30,
                            "temperature": 235.8
                        },
                        {
                            "volumePercentDistilled": 40,
                            "temperature": 295
                        },
                        {
                            "volumePercentDistilled": 50,
                            "temperature": 350.3
                        },
                        {
                            "volumePercentDistilled": 60,
                            "temperature": 405.3
                        },
                        {
                            "volumePercentDistilled": 70,
                            "temperature": 462.5
                        }
                    ]
                }
            }
        }
    ] 
 }   
    

The assay object consists of three keys: "name", "type", and "data".

assay
required
type
description

name

String

A name provided by the user for this input assay.

type

String

This field is used to specify the type of inflow (e.g., "assay" or "pseudo").

data

JSON Object

This field contains the user-defined input for an assay.

The "data" section has the following keys:

data
required
type

assayDataType

String

thermoMethod

String

assayBulkDensity

JSON Object

distillationCurveCuts

Integer

distillationData

JSON Object

A few key points to remember are:

The "type" must be specified as either "assay" or "pseudo". Otherwise, the species is treated as a regular inflow species.

The supported thermodynamic methods include API-8, API-5, Cavett, and Kessler.

The supported density types include Specific Gravity, API Gravity, and Watson K.

The supported thermo methods areASTM D1160, ASTM D86, ASTM D2887, and

TBP Curve.

The number of distillation data points must be greater than 4.

The maximum temperature allowed is 923.15 K.

The distillation data for temperature and volume percent must be entered by the user in ascending order.

The assay object and its associated input JSON object can be enabled or disabled using "enabled" Keyword

PreviousInclude InflowsNextInclude Pseudocomponent

Last updated 10 months ago

Was this helpful?

✔️
✔️
✔️
✔️
✔️
✔️
✔️
✔️