1
Starting from a clean slate
Install the SDK
Install the SDK
To install the Corti SDK you can use Node Package Manager (npm) in a terminal of your choosing:
- Install Node.js and npm (detailed instructions available here)
- Open a terminal and run
npm install @corti/sdk - Start using the JavaScript SDK!
View the package details and latest version on npm.
To check if you have npm installed, run
npm -v and a version number should be returned. If it fails, then reinstall npm from the link above or try restarting your computer.Create an SDK client
Create an SDK client
Before making requests, you’ll need to set up a CortiClient. This handles authentication with the Corti API.If you already have client credentials for your API project, you can initialize the client like this:
Still need to create an API project and client credentials? Learn more here!
2
Authentication
OAuth 2.0
OAuth 2.0
Authentication is governed by OAuth 2.0 using
client credentials grant type. This authentication protocol offers enhanced security measures, ensuring that access to patient data and medical documentation is securely managed and compliant with healthcare regulations.The client credentials flow shown below is intended for backend/server-side applications only. For frontend applications, you should use access tokens instead of exposing client secrets. See the Authentication Guide for frontend authentication patterns.
- Obtain your API client credentials from the Corti API Console.
- Add the client_id and client_secret to your project.
- Start making API calls and requests from this client!
For best performance, create a single CortiClient instance and reuse it throughout your application. Avoid re-initializing a new client for every request.
Click here to read more about how to appropriately use OAuth for your workflow needs and proper handling of client_secret.
For comprehensive authentication examples and advanced configuration options, see the Authentication Guide in the SDK repository.
3
Testing your client
Interaction Example
Interaction Example
JavaScript code example of using the client to authenticate and create an interaction:
Creating an interaction
Find the full specification for create interaction request in the API Reference
4
Building a complete workflow
Example workflow design and planning
Example workflow design and planning
Goal: Integrate with Corti SDK to enable an ambient documentation, AI scribe workflow application
| Decision | Integration Planning | |
|---|---|---|
| 1 | How will audio be processed - real-time web socket connection, via /stream API (recommended) or asynchronous processing, via /recordings and `/transcripts APIs? | To use the /stream API, follow the path for real-time ambient documentation; to use the /recordings and /transcripts APIs, follow the path of asynchronous ambient documentation. |
| 2 | What template(s) will be used in document generation workflow? | Use the GET/templates request to see available templates. In addition to accessing Corti-default templates, you can add the ?org= filter to find templates available to your specific organization. |
| 3 | Will document be generated based on Facts (recommended), transcript, or string? | Designing around Facts, transcript, or string will determine how to use the context variable in the Generate Document request. |
| 4 | Will EHR context or other data be used as Facts in document generation? | If yes, then use the Add Facts request to support the context updates. |
| 5 | How will the output be integrated into EHR or other target systems? | Document output will be a json object that can be saved as a full note, or parsed by section so that text can be directed to appropriate fields in the target system. |
Asynchronous Ambient Scribing Example
Asynchronous Ambient Scribing Example
The first step will be to create an interaction, as shown above. Once you’ve created your interaction, the interaction ID can be used for the steps that follow below.
1
Upload a recording
Here is where you use the Create a helper function to upload a recording:
interaction ID.upload recording
full function
The createReadStream import is used to create a readable stream from a file path.Find the full specification for uploading a recording in the API reference.
2
Generate a transcript
Here you’ll need the
interactionId as well as the recordingId returned from the upload response.Generate a transcript
Find the full specification for generating a transcript in the API reference
3
Generating a document
Here you need the interactionId and transcript text (
transcript) from the previous step.Generate a Document
Find the full specification for generating a document in the API reference
4
Retrieving the document
If you need to retrieve a generated document again or at a later time (since the
create call already returns the document), you can do so using the interactionId and documentId from the previous step.Get a Document
Find the full specification for retrieving a document in the API reference here
5
Putting it all together
Javascript SDK example
Javascript SDK example
The
dotenv import loads environment variables from a .env file. This keeps sensitive values like your client ID and client secret out of your source code, which is considered best practice.Additional Resources
- npm Package - Package details, version history, and installation information
- SDK Source Code - View the complete JavaScript SDK implementation
- Authentication Guide - Comprehensive authentication documentation and examples
- SDK Examples Repository - Working examples for various use cases and authentication patterns
- API Reference - Complete API endpoint specifications
To get access to Corti API click here to sign up