@datocms/cma-client
Version:
JS client for DatoCMS REST Content Management API
86 lines • 2.5 kB
JavaScript
import * as Utils from '@datocms/rest-client-utils';
import BaseResource from '../../BaseResource';
export default class SsoSettings extends BaseResource {
/**
* Retrieve SSO Settings
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/self
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
find() {
return this.rawFind().then((body) => Utils.deserializeResponseBody(body));
}
/**
* Retrieve SSO Settings
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/self
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawFind() {
return this.client.request({
method: 'GET',
url: '/sso-settings',
});
}
/**
* Generate SSO token
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/generate_token
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
generateToken() {
return this.rawGenerateToken().then((body) => Utils.deserializeResponseBody(body));
}
/**
* Generate SSO token
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/generate_token
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawGenerateToken() {
return this.client.request({
method: 'PUT',
url: '/sso-settings/generate-token',
});
}
/**
* Update SSO Settings
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/update
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
update(body) {
return this.rawUpdate(Utils.serializeRequestBody(body, {
type: 'sso_settings',
attributes: ['idp_saml_metadata_url', 'idp_saml_metadata_xml'],
relationships: ['default_role'],
})).then((body) => Utils.deserializeResponseBody(body));
}
/**
* Update SSO Settings
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/sso-settings/update
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawUpdate(body) {
return this.client.request({
method: 'PUT',
url: '/sso-settings',
body,
});
}
}
SsoSettings.TYPE = 'sso_settings';
//# sourceMappingURL=SsoSettings.js.map