Public API
System design of the Tergite public API
Flows
Initializing experiment
The Tergite SDK sends a request to the Tergite public API to initialize the experiment for a given backend.
The public API creates an empty job with a unique ID and saves it in ites database. It responds to the SDK with the job ID and the URL of the backend.
Updating experiment results
The Tergite SDK sends the OpenPulse representation of the experiment(s) to the Tergite backend. The Tergite backend runs the experiments and sends the results to the Tergite public API app.
The public API app updates the job in the database with the status of the run and the results, if any, of the experiment(s).
Retrieving experiment results
The Tergite SDK then requests the Tergite public API for the results. The public API then reads the results from its database and responds to the SDK with them.
Special Techniques
Authentication
TODO
Accounting
TODO