/iapi

Instrument Application Programming Interface

MIT LicenseMIT

iapi

Instrument Application Programming Interface for the Thermo Fisher Scientific Tribrid, Exactive, and Exploris series Mass Spectrometers.

News

Tribrid Series 4.0 has been released! The fixes from the patch for 3.5 are all incorporated into 4.0, so no patch is requried. See the changelog for details.

Note, use of the IAPI with Tune 3.5 requires a patch, available here.

About

This repository is intended to be used for scholarly research, and is therefore made available as-is. Ongoing maintenance and support is not generally available; however, issues and improvements will be considered on a case-by-case basis.

Getting Started

Visit the getting started document for first-time setup and requirements

Documentation

Visit the getting started document for first-time setup and requirements.

There are a variety of documents available, mostly derived from prior presentations at ASMS.

Tribrids

Exactive/Exploris

Usage

Some basic usage examples. These are just parital code snippets and require the proper setup to run correctly. They are here to provide a flavor of what is possible with the IAPI.

Receiving Spectra

Registers an event handler whenever a new spectrum arrives from the instrument.

// API access to a Fusion MS
IFusionInstrumentAccess instAccess = <else where>; 

// Get the first scan container for the instrument
var scanContainer = instAccess.GetMsScanContainer(0);

// Add an event handler for whenever a spectrum has arrived from the instrument
scanContainer.MsScanArrived += spectrumArrived;
 
// The event handler
void spectrumArrived(object sender, MsScanEventArgs e)
{
	// get the spectrum from the sending scan container
	var spectrum = e.GetScan();
}

Examples

Visit the examples directory for some C# example programs.

Filing an Issue

When filing an issue for the IAPI, please provide the following details:

  • Minimial workable example
  • Version of Tune used
  • Version of the API used
  • Instrument Model

Version Information

Versioning for the API will follow Semantic Versioning. Major version changes reflect breaking changes to the public API. Minor version changes reflect backwards-compatible feature additions. And patch version changes reflect backwards-compatible bug fixes. Versioning for Tune does not follow semantic versioning as there is no public API associated with it directly.

Module Version Date
Instrument API 1.1.0.1 Nov 30, 2016
Spectrum API 1.1.0.1 Nov 30, 2016
Fusion API 1.3.0.0 Sept 21, 2020
Tune (oldest supported) 3.0.1794 Nov 30, 2016
Tune (latest supported) 4.0.4084.22 December 2022

Please see the Changelog for a complete history of the versions.

License

All examples and code snippets are governed by the MIT License.

Use of the IAPI requires a Fusion IAPI Software License Argreement to be in placed. Please see the license information in the getting started document for details.

We also have a license FAQ to help translate the legalese into regular words.