@cloudonix.io/cloudonix-cli
Version:
A CLI tool for the Cloudonix API.Core
81 lines (71 loc) • 3.02 kB
JavaScript
/**
* ██████╗██╗ ██████╗ ██╗ ██╗██████╗ ██████╗ ███╗ ██╗██╗██╗ ██╗
* ██╔════╝██║ ██╔═══██╗██║ ██║██╔══██╗██╔═══██╗████╗ ██║██║╚██╗██╔╝
* ██║ ██║ ██║ ██║██║ ██║██║ ██║██║ ██║██╔██╗ ██║██║ ╚███╔╝
* ██║ ██║ ██║ ██║██║ ██║██║ ██║██║ ██║██║╚██╗██║██║ ██╔██╗
* ╚██████╗███████╗╚██████╔╝╚██████╔╝██████╔╝╚██████╔╝██║ ╚████║██║██╔╝ ██╗
* ╚═════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝
*
* Project: cloudonix-cli | lib/ApikeysApi.js
* Creator: Nir Simionovich <nirs@cloudonix.io> | 2019-08-27
*/
const Client = require('../helpers/Client');
const Api = require('./Api');
class ApikeysApi extends Api {
static async get(apikeyIdent) {
try {
var queryPath = (typeof apikeyIdent != 'undefined') ? this._modelQueryPath + "/" + apikeyIdent : this._modelQueryPath;
var response = await this._modelHttpConnector.httpConnector.get(queryPath);
return {
status: response.status,
message: response.statusText,
data: response.data
};
} catch (error) {
return {
status: error.response.status,
message: error.response.statusText,
data: false
};
}
}
static async create(apikeyObject) {
try {
var queryPath = this._modelQueryPath;
if (typeof apikeyObject.application != 'undefined') {
delete apikeyObject.application;
}
delete apikeyObject.domain;
var response = await this._modelHttpConnector.httpConnector.post(queryPath, apikeyObject);
return {
status: response.status,
message: response.statusText,
data: response.data
};
} catch (error) {
return {
status: error.response.status,
message: error.response.statusText,
data: false
};
}
}
static async revoke(apikeyName) {
try {
var queryPath = this._modelQueryPath + "/" + apikeyName;
var response = await this._modelHttpConnector.httpConnector.delete(queryPath);
return {
status: response.status,
message: response.statusText,
data: response.data
};
} catch (error) {
return {
status: error.response.status,
message: error.response.statusText,
data: false
};
}
}
}
module.exports = ApikeysApi;