@ibm-cloud/platform-services
Version:
Node.js client library for IBM Cloud Platform Services
1,068 lines • 372 kB
JavaScript
"use strict";
/**
* (C) Copyright IBM Corp. 2025.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (g && (g = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
/**
* IBM OpenAPI SDK Code Generator Version: 3.99.1-daeb6e46-20250131-173156
*/
/* eslint-disable max-classes-per-file */
/* eslint-disable no-await-in-loop */
var extend = require("extend");
var ibm_cloud_sdk_core_1 = require("ibm-cloud-sdk-core");
var common_1 = require("../lib/common");
/**
* This is the API to use for managing private catalogs for IBM Cloud. Private catalogs provide a way to centrally
* manage access to products in the IBM Cloud catalog and your own catalogs.
*
* API Version: 1.0
*/
var CatalogManagementV1 = /** @class */ (function (_super) {
__extends(CatalogManagementV1, _super);
/**
* Construct a CatalogManagementV1 object.
*
* @param {Object} options - Options for the service.
* @param {string} [options.serviceUrl] - The base URL for the service
* @param {OutgoingHttpHeaders} [options.headers] - Default headers that shall be included with every request to the service.
* @param {Authenticator} options.authenticator - The Authenticator object used to authenticate requests to the service
* @constructor
* @returns {CatalogManagementV1}
*/
function CatalogManagementV1(options) {
var _this = this;
options = options || {};
_this = _super.call(this, options) || this;
if (options.serviceUrl) {
_this.setServiceUrl(options.serviceUrl);
}
else {
_this.setServiceUrl(CatalogManagementV1.DEFAULT_SERVICE_URL);
}
return _this;
}
/*************************
* Factory method
************************/
/**
* Constructs an instance of CatalogManagementV1 with passed in options and external configuration.
*
* @param {UserOptions} [options] - The parameters to send to the service.
* @param {string} [options.serviceName] - The name of the service to configure
* @param {Authenticator} [options.authenticator] - The Authenticator object used to authenticate requests to the service
* @param {string} [options.serviceUrl] - The base URL for the service
* @returns {CatalogManagementV1}
*/
CatalogManagementV1.newInstance = function (options) {
options = options || {};
if (!options.serviceName) {
options.serviceName = this.DEFAULT_SERVICE_NAME;
}
if (!options.authenticator) {
options.authenticator = (0, ibm_cloud_sdk_core_1.getAuthenticatorFromEnvironment)(options.serviceName);
}
var service = new CatalogManagementV1(options);
service.configureService(options.serviceName);
if (options.serviceUrl) {
service.setServiceUrl(options.serviceUrl);
}
return service;
};
/*************************
* account
************************/
/**
* Get catalog account settings.
*
* Get the account level settings for the account for private catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>}
*/
CatalogManagementV1.prototype.getCatalogAccount = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = ['headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getCatalogAccount');
var parameters = {
options: {
url: '/catalogaccount',
method: 'GET',
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Update account settings.
*
* Update the account level settings for the account for private catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.id] - Account identification.
* @param {string} [params.rev] - Cloudant revision.
* @param {boolean} [params.hideIbmCloudCatalog] - Hide the public catalog in this account.
* @param {Filters} [params.accountFilters] - Filters for account and catalog filters.
* @param {string} [params.regionFilter] - Region filter string.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>}
*/
CatalogManagementV1.prototype.updateCatalogAccount = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = [
'id',
'rev',
'hideIbmCloudCatalog',
'accountFilters',
'regionFilter',
'headers',
];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = {
'id': _params.id,
'_rev': _params.rev,
'hide_IBM_cloud_catalog': _params.hideIbmCloudCatalog,
'account_filters': _params.accountFilters,
'region_filter': _params.regionFilter,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'updateCatalogAccount');
var parameters = {
options: {
url: '/catalogaccount',
method: 'PUT',
body: body,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get catalog account audit logs.
*
* Get the audit logs associated with a catalog account.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
CatalogManagementV1.prototype.listCatalogAccountAudits = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = ['start', 'limit', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'start': _params.start,
'limit': _params.limit,
'lookupnames': _params.lookupnames,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'listCatalogAccountAudits');
var parameters = {
options: {
url: '/catalogaccount/audits',
method: 'GET',
qs: query,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get a catalog account audit log entry.
*
* Get the full audit log entry associated with a catalog account.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
CatalogManagementV1.prototype.getCatalogAccountAudit = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['auditlogIdentifier'];
var _validParams = ['auditlogIdentifier', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'lookupnames': _params.lookupnames,
};
var path = {
'auditlog_identifier': _params.auditlogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getCatalogAccountAudit');
var parameters = {
options: {
url: '/catalogaccount/audits/{auditlog_identifier}',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get catalog account filters.
*
* Get the accumulated filters of the account and of the catalogs you have access to.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.catalog] - catalog id. Narrow down filters to the account and just the one catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccumulatedFilters>>}
*/
CatalogManagementV1.prototype.getCatalogAccountFilters = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = ['catalog', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'catalog': _params.catalog,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getCatalogAccountFilters');
var parameters = {
options: {
url: '/catalogaccount/filters',
method: 'GET',
qs: query,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get share approval access list.
*
* Get the share approval access list associated with the specified object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>}
*/
CatalogManagementV1.prototype.getShareApprovalList = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['objectType'];
var _validParams = ['objectType', 'start', 'limit', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'start': _params.start,
'limit': _params.limit,
};
var path = {
'object_type': _params.objectType,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getShareApprovalList');
var parameters = {
options: {
url: '/shareapproval/{object_type}/access',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Delete share approval access.
*
* Delete share approval accesses associated with the specified object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string[]} params.accesses - A list of accesses to delete. An entry with star["*"] will remove all
* accesses.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
CatalogManagementV1.prototype.deleteShareApprovalList = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['objectType', 'accesses'];
var _validParams = ['objectType', 'accesses', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = _params.accesses;
var path = {
'object_type': _params.objectType,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'deleteShareApprovalList');
var parameters = {
options: {
url: '/shareapproval/{object_type}/access',
method: 'DELETE',
body: body,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Add accesses to share approval access list.
*
* Add one or more accesses to the share approval access list for a specific object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string[]} params.accesses - A list of accesses to add.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
CatalogManagementV1.prototype.addShareApprovalList = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['objectType', 'accesses'];
var _validParams = ['objectType', 'accesses', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = _params.accesses;
var path = {
'object_type': _params.objectType,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'addShareApprovalList');
var parameters = {
options: {
url: '/shareapproval/{object_type}/access',
method: 'POST',
body: body,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get share approval access list for requesting accounts.
*
* Get the share approval access list associated with the specified object type in a certain approval state for
* requesting accounts.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} params.approvalStateIdentifier - The different possible approval states for share requests or
* access request.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {string} [params.enterpriseId] - Execute the request in the context of an enterprise or enterpise account
* group ID. Use '-ent-enterpriseid' for an enterprise and '-entgrp-enterprisegroupid for an enterprise group.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>}
*/
CatalogManagementV1.prototype.getShareApprovalListAsSource = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['objectType', 'approvalStateIdentifier'];
var _validParams = [
'objectType',
'approvalStateIdentifier',
'start',
'limit',
'enterpriseId',
'headers',
];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'start': _params.start,
'limit': _params.limit,
'enterprise_id': _params.enterpriseId,
};
var path = {
'object_type': _params.objectType,
'approval_state_identifier': _params.approvalStateIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getShareApprovalListAsSource');
var parameters = {
options: {
url: '/shareapproval/{object_type}/access/source/{approval_state_identifier}',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Update approval states for share approval access list for requesting accounts.
*
* Update one or more access approval states from the share approval access list for a specific object type for
* requesting accounts.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} params.approvalStateIdentifier - The different possible approval states for share requests or
* access request.
* @param {string[]} params.accesses - A list of accesses to update to the specified approval state.
* @param {string} [params.enterpriseId] - Execute the request in the context of an enterprise or enterpise account
* group ID. Use '-ent-enterpriseid' for an enterprise and '-entgrp-enterprisegroupid for an enterprise group.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
CatalogManagementV1.prototype.updateShareApprovalListAsSource = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['objectType', 'approvalStateIdentifier', 'accesses'];
var _validParams = [
'objectType',
'approvalStateIdentifier',
'accesses',
'enterpriseId',
'headers',
];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = _params.accesses;
var query = {
'enterprise_id': _params.enterpriseId,
};
var path = {
'object_type': _params.objectType,
'approval_state_identifier': _params.approvalStateIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'updateShareApprovalListAsSource');
var parameters = {
options: {
url: '/shareapproval/{object_type}/access/source/{approval_state_identifier}',
method: 'POST',
body: body,
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/*************************
* catalogs
************************/
/**
* Get list of catalogs.
*
* Retrieves the available catalogs for a given account. This can be used by an unauthenticated user to retrieve the
* public catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.CatalogSearchResult>>}
*/
CatalogManagementV1.prototype.listCatalogs = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = ['headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'listCatalogs');
var parameters = {
options: {
url: '/catalogs',
method: 'GET',
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Create a catalog.
*
* Create a catalog for a given account.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.shortDescription] - Description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.catalogIconUrl] - URL for an icon associated with this catalog.
* @param {string} [params.catalogBannerUrl] - URL for a banner image for this catalog.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {Feature[]} [params.features] - List of features associated with this catalog.
* @param {boolean} [params.disabled] - Denotes whether a catalog is disabled.
* @param {string} [params.resourceGroupId] - Resource group id the catalog is owned by.
* @param {string} [params.owningAccount] - Account that owns catalog.
* @param {Filters} [params.catalogFilters] - Filters for account and catalog filters.
* @param {string} [params.kind] - Kind of catalog. Supported kinds are offering and vpe.
* @param {JsonObject} [params.metadata] - Catalog specific metadata.
* @param {TargetAccountContext[]} [params.targetAccountContexts] - List of target accounts contexts on this catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
CatalogManagementV1.prototype.createCatalog = function (params) {
var _params = __assign({}, params);
var _requiredParams = [];
var _validParams = [
'label',
'labelI18n',
'shortDescription',
'shortDescriptionI18n',
'catalogIconUrl',
'catalogBannerUrl',
'tags',
'features',
'disabled',
'resourceGroupId',
'owningAccount',
'catalogFilters',
'kind',
'metadata',
'targetAccountContexts',
'headers',
];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = {
'label': _params.label,
'label_i18n': _params.labelI18n,
'short_description': _params.shortDescription,
'short_description_i18n': _params.shortDescriptionI18n,
'catalog_icon_url': _params.catalogIconUrl,
'catalog_banner_url': _params.catalogBannerUrl,
'tags': _params.tags,
'features': _params.features,
'disabled': _params.disabled,
'resource_group_id': _params.resourceGroupId,
'owning_account': _params.owningAccount,
'catalog_filters': _params.catalogFilters,
'kind': _params.kind,
'metadata': _params.metadata,
'target_account_contexts': _params.targetAccountContexts,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'createCatalog');
var parameters = {
options: {
url: '/catalogs',
method: 'POST',
body: body,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get catalog.
*
* Get a catalog. This can also be used by an unauthenticated user to get the public catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
CatalogManagementV1.prototype.getCatalog = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['catalogIdentifier'];
var _validParams = ['catalogIdentifier', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var path = {
'catalog_identifier': _params.catalogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getCatalog');
var parameters = {
options: {
url: '/catalogs/{catalog_identifier}',
method: 'GET',
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Update catalog.
*
* Update a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} [params.id] - Unique ID.
* @param {string} [params.rev] - Cloudant revision.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.shortDescription] - Description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.catalogIconUrl] - URL for an icon associated with this catalog.
* @param {string} [params.catalogBannerUrl] - URL for a banner image for this catalog.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {Feature[]} [params.features] - List of features associated with this catalog.
* @param {boolean} [params.disabled] - Denotes whether a catalog is disabled.
* @param {string} [params.resourceGroupId] - Resource group id the catalog is owned by.
* @param {string} [params.owningAccount] - Account that owns catalog.
* @param {Filters} [params.catalogFilters] - Filters for account and catalog filters.
* @param {string} [params.kind] - Kind of catalog. Supported kinds are offering and vpe.
* @param {JsonObject} [params.metadata] - Catalog specific metadata.
* @param {TargetAccountContext[]} [params.targetAccountContexts] - List of target accounts contexts on this catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
CatalogManagementV1.prototype.replaceCatalog = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['catalogIdentifier'];
var _validParams = [
'catalogIdentifier',
'id',
'rev',
'label',
'labelI18n',
'shortDescription',
'shortDescriptionI18n',
'catalogIconUrl',
'catalogBannerUrl',
'tags',
'features',
'disabled',
'resourceGroupId',
'owningAccount',
'catalogFilters',
'kind',
'metadata',
'targetAccountContexts',
'headers',
];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var body = {
'id': _params.id,
'_rev': _params.rev,
'label': _params.label,
'label_i18n': _params.labelI18n,
'short_description': _params.shortDescription,
'short_description_i18n': _params.shortDescriptionI18n,
'catalog_icon_url': _params.catalogIconUrl,
'catalog_banner_url': _params.catalogBannerUrl,
'tags': _params.tags,
'features': _params.features,
'disabled': _params.disabled,
'resource_group_id': _params.resourceGroupId,
'owning_account': _params.owningAccount,
'catalog_filters': _params.catalogFilters,
'kind': _params.kind,
'metadata': _params.metadata,
'target_account_contexts': _params.targetAccountContexts,
};
var path = {
'catalog_identifier': _params.catalogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'replaceCatalog');
var parameters = {
options: {
url: '/catalogs/{catalog_identifier}',
method: 'PUT',
body: body,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
'Content-Type': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Delete catalog.
*
* Delete a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>}
*/
CatalogManagementV1.prototype.deleteCatalog = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['catalogIdentifier'];
var _validParams = ['catalogIdentifier', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var path = {
'catalog_identifier': _params.catalogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'deleteCatalog');
var parameters = {
options: {
url: '/catalogs/{catalog_identifier}',
method: 'DELETE',
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get catalog audit logs.
*
* Get the audit logs associated with a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
CatalogManagementV1.prototype.listCatalogAudits = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['catalogIdentifier'];
var _validParams = ['catalogIdentifier', 'start', 'limit', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'start': _params.start,
'limit': _params.limit,
'lookupnames': _params.lookupnames,
};
var path = {
'catalog_identifier': _params.catalogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'listCatalogAudits');
var parameters = {
options: {
url: '/catalogs/{catalog_identifier}/audits',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get a catalog audit log entry.
*
* Get the full audit log entry associated with a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
CatalogManagementV1.prototype.getCatalogAudit = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['catalogIdentifier', 'auditlogIdentifier'];
var _validParams = ['catalogIdentifier', 'auditlogIdentifier', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'lookupnames': _params.lookupnames,
};
var path = {
'catalog_identifier': _params.catalogIdentifier,
'auditlog_identifier': _params.auditlogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getCatalogAudit');
var parameters = {
options: {
url: '/catalogs/{catalog_identifier}/audits/{auditlog_identifier}',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/*************************
* enterprise
************************/
/**
* Get enterprise audit logs.
*
* Get the audit logs associated with an enterprise.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.enterpriseIdentifier - Enterprise ID.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
CatalogManagementV1.prototype.listEnterpriseAudits = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['enterpriseIdentifier'];
var _validParams = ['enterpriseIdentifier', 'start', 'limit', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'start': _params.start,
'limit': _params.limit,
'lookupnames': _params.lookupnames,
};
var path = {
'enterprise_identifier': _params.enterpriseIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'listEnterpriseAudits');
var parameters = {
options: {
url: '/enterprises/{enterprise_identifier}/audits',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/**
* Get an enterprise audit log entry.
*
* Get the full audit log entry associated with an enterprise.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.enterpriseIdentifier - Enterprise ID.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
CatalogManagementV1.prototype.getEnterpriseAudit = function (params) {
var _params = __assign({}, params);
var _requiredParams = ['enterpriseIdentifier', 'auditlogIdentifier'];
var _validParams = ['enterpriseIdentifier', 'auditlogIdentifier', 'lookupnames', 'headers'];
var _validationErrors = (0, ibm_cloud_sdk_core_1.validateParams)(_params, _requiredParams, _validParams);
if (_validationErrors) {
return Promise.reject(_validationErrors);
}
var query = {
'lookupnames': _params.lookupnames,
};
var path = {
'enterprise_identifier': _params.enterpriseIdentifier,
'auditlog_identifier': _params.auditlogIdentifier,
};
var sdkHeaders = (0, common_1.getSdkHeaders)(CatalogManagementV1.DEFAULT_SERVICE_NAME, 'v1', 'getEnterpriseAudit');
var parameters = {
options: {
url: '/enterprises/{enterprise_identifier}/audits/{auditlog_identifier}',
method: 'GET',
qs: query,
path: path,
},
defaultOptions: extend(true, {}, this.baseOptions, {
headers: extend(true, sdkHeaders, this.baseOptions.headers, {
'Accept': 'application/json',
}, _params.headers),
}),
};
return this.createRequest(parameters);
};
/*************************
* offerings
************************/
/**
* Get consumption offerings.
*
* Retrieve the available offerings from both public and from the account that currently scoped for consumption. These
* copies cannot be used for updating. They are not complete and only return what is visible to the caller. This can
* be used by an unauthenticated user to retreive publicly available offerings.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {boolean} [params.digest] - true - Strip down the content of what is returned. For example don't return the
* readme. Makes the result much smaller. Defaults to false.
* @param {string} [params.catalog] - catalog id. Narrow search down to just a particular catalog. It will apply the
* catalog's public filters to the public catalog offerings on the result.
* @param {string} [params.select] - What should be selected. Default is 'all' which will return both public and
* private offerings. 'public' returns only the public offerings and 'private' returns only the private offerings.
* @param {boolean} [params.includeHidden] - true - include offerings which have been marked as hidden. The default is
* false and hidden offerings are not returned.
* @param {number} [params.limit] - number or results to return.
* @param {number} [params.offset] - number of results to skip before returning values.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>}
*/
CatalogManagementV1.prototype.getConsumptionOfferings = function (params)