nylas
Version:
A NodeJS wrapper for the Nylas REST API for email, contacts, and calendar.
127 lines (126 loc) • 4.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Notetakers = void 0;
const resource_js_1 = require("./resource.js");
const utils_js_1 = require("../utils.js");
/**
* Nylas Notetakers API
*
* The Nylas Notetakers API allows you to invite a Notetaker bot to meetings.
*/
class Notetakers extends resource_js_1.Resource {
/**
* Return all Notetakers
* @param params The parameters to list Notetakers with
* @return The list of Notetakers
*/
list({ identifier, queryParams, overrides, }) {
return super._list({
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers', { identifier })
: (0, utils_js_1.makePathParams)('/v3/notetakers', {}),
queryParams,
overrides,
});
}
/**
* Invite a Notetaker to a meeting
* @param params The parameters to create the Notetaker with
* @returns Promise resolving to the created Notetaker
*/
create({ identifier, requestBody, overrides, }) {
return this._create({
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers', { identifier })
: (0, utils_js_1.makePathParams)('/v3/notetakers', {}),
requestBody,
overrides,
});
}
/**
* Return a single Notetaker
* @param params The parameters to find the Notetaker with
* @returns Promise resolving to the Notetaker
*/
find({ identifier, notetakerId, overrides, }) {
return this._find({
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers/{notetakerId}', {
identifier,
notetakerId,
})
: (0, utils_js_1.makePathParams)('/v3/notetakers/{notetakerId}', { notetakerId }),
overrides,
});
}
/**
* Update a Notetaker
* @param params The parameters to update the Notetaker with
* @returns Promise resolving to the updated Notetaker
*/
update({ identifier, notetakerId, requestBody, overrides, }) {
return this._updatePatch({
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers/{notetakerId}', {
identifier,
notetakerId,
})
: (0, utils_js_1.makePathParams)('/v3/notetakers/{notetakerId}', { notetakerId }),
requestBody,
overrides,
});
}
/**
* Cancel a scheduled Notetaker
* @param params The parameters to cancel the Notetaker with
* @returns Promise resolving to the base response with request ID
*/
cancel({ identifier, notetakerId, overrides, }) {
return this._destroy({
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers/{notetakerId}/cancel', {
identifier,
notetakerId,
})
: (0, utils_js_1.makePathParams)('/v3/notetakers/{notetakerId}/cancel', {
notetakerId,
}),
overrides,
});
}
/**
* Remove a Notetaker from a meeting
* @param params The parameters to remove the Notetaker from the meeting
* @returns Promise resolving to a response containing the Notetaker ID and a message
*/
leave({ identifier, notetakerId, overrides, }) {
return this.apiClient.request({
method: 'POST',
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers/{notetakerId}/leave', {
identifier,
notetakerId,
})
: (0, utils_js_1.makePathParams)('/v3/notetakers/{notetakerId}/leave', { notetakerId }),
overrides,
});
}
/**
* Download media (recording and transcript) from a Notetaker session
* @param params The parameters to download the Notetaker media
* @returns Promise resolving to the media download response with URLs and sizes
*/
downloadMedia({ identifier, notetakerId, overrides, }) {
return this.apiClient.request({
method: 'GET',
path: identifier
? (0, utils_js_1.makePathParams)('/v3/grants/{identifier}/notetakers/{notetakerId}/media', {
identifier,
notetakerId,
})
: (0, utils_js_1.makePathParams)('/v3/notetakers/{notetakerId}/media', { notetakerId }),
overrides,
});
}
}
exports.Notetakers = Notetakers;