UNPKG

@ibm-cloud/platform-services

Version:

Node.js client library for IBM Cloud Platform Services

755 lines 329 kB
/** * (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. */ /// <reference types="node" /> /// <reference types="node" /> import { IncomingHttpHeaders, OutgoingHttpHeaders } from 'http'; import { BaseService, SDKLogger, UserOptions } from 'ibm-cloud-sdk-core'; /** * 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 */ declare class CatalogManagementV1 extends BaseService { static _logger: SDKLogger; static DEFAULT_SERVICE_URL: string; static DEFAULT_SERVICE_NAME: string; /************************* * 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} */ static newInstance(options: UserOptions): CatalogManagementV1; /** * 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} */ constructor(options: UserOptions); /************************* * 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>>} */ getCatalogAccount(params?: CatalogManagementV1.GetCatalogAccountParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>; /** * 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>>} */ updateCatalogAccount(params?: CatalogManagementV1.UpdateCatalogAccountParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>; /** * 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>>} */ listCatalogAccountAudits(params?: CatalogManagementV1.ListCatalogAccountAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>; /** * 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>>} */ getCatalogAccountAudit(params: CatalogManagementV1.GetCatalogAccountAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>; /** * 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>>} */ getCatalogAccountFilters(params?: CatalogManagementV1.GetCatalogAccountFiltersParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccumulatedFilters>>; /** * 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>>} */ getShareApprovalList(params: CatalogManagementV1.GetShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>; /** * 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>>} */ deleteShareApprovalList(params: CatalogManagementV1.DeleteShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>; /** * 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>>} */ addShareApprovalList(params: CatalogManagementV1.AddShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>; /** * 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>>} */ getShareApprovalListAsSource(params: CatalogManagementV1.GetShareApprovalListAsSourceParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>; /** * 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>>} */ updateShareApprovalListAsSource(params: CatalogManagementV1.UpdateShareApprovalListAsSourceParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>; /************************* * 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>>} */ listCatalogs(params?: CatalogManagementV1.ListCatalogsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.CatalogSearchResult>>; /** * 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>>} */ createCatalog(params?: CatalogManagementV1.CreateCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>; /** * 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>>} */ getCatalog(params: CatalogManagementV1.GetCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>; /** * 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>>} */ replaceCatalog(params: CatalogManagementV1.ReplaceCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>; /** * 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>>} */ deleteCatalog(params: CatalogManagementV1.DeleteCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>; /** * 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>>} */ listCatalogAudits(params: CatalogManagementV1.ListCatalogAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>; /** * 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>>} */ getCatalogAudit(params: CatalogManagementV1.GetCatalogAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>; /************************* * 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>>} */ listEnterpriseAudits(params: CatalogManagementV1.ListEnterpriseAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>; /** * 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>>} */ getEnterpriseAudit(params: CatalogManagementV1.GetEnterpriseAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>; /************************* * 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>>} */ getConsumptionOfferings(params?: CatalogManagementV1.GetConsumptionOfferingsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>; /** * Get list of offerings. * * Retrieve the available offerings in the specified catalog. This can also be used by an unauthenticated user to * retreive publicly available offerings. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @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 {number} [params.limit] - The maximum number of results to return. * @param {number} [params.offset] - The number of results to skip before returning values. * @param {string} [params.name] - Only return results that contain the specified string. * @param {string} [params.sort] - The field on which the output is sorted. Sorts by default by **label** property. * Available fields are **name**, **label**, **created**, and **updated**. By adding **-** (i.e. **-label**) in front * of the query string, you can specify descending order. Default is ascending order. * @param {boolean} [params.includeHidden] - true - include offerings which have been marked as hidden. The default is * true. To not return hidden offerings false must be explicitly set. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>} */ listOfferings(params: CatalogManagementV1.ListOfferingsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>; /** * Create offering. * * Create an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} [params.url] - The url for this specific offering. * @param {string} [params.crn] - The crn for this specific offering. * @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.name] - The programmatic name of this offering. * @param {string} [params.offeringIconUrl] - URL for an icon associated with this offering. * @param {string} [params.offeringDocsUrl] - URL for an additional docs with this offering. * @param {string} [params.offeringSupportUrl] - [deprecated] - Use offering.support instead. URL to be displayed in * the Consumption UI for getting support on this offering. * @param {string[]} [params.tags] - List of tags associated with this catalog. * @param {string[]} [params.keywords] - List of keywords associated with offering, typically used to search for it. * @param {Rating} [params.rating] - Repository info for offerings. * @param {string} [params.created] - The date and time this catalog was created. * @param {string} [params.updated] - The date and time this catalog was last updated. * @param {string} [params.shortDescription] - Short description in the requested language. * @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code. * @param {string} [params.longDescription] - Long description in the requested language. * @param {JsonObject} [params.longDescriptionI18n] - A map of translated strings, by language code. * @param {Feature[]} [params.features] - list of features associated with this offering. * @param {Kind[]} [params.kinds] - Array of kind. * @param {PublishObject} [params.publish] - Publish information. * @param {boolean} [params.pcManaged] - Offering is managed by Partner Center. * @param {boolean} [params.publishApproved] - Offering has been approved to publish to permitted to IBM or Public * Catalog. * @param {boolean} [params.shareWithAll] - Denotes public availability of an Offering. * @param {boolean} [params.shareWithIbm] - Denotes IBM employee availability of an Offering - if share_enabled is * true. * @param {boolean} [params.shareEnabled] - Denotes sharing including access list availability of an Offering is * enabled. * @param {string} [params.publicOriginalCrn] - The original offering CRN that this publish entry came from. * @param {string} [params.publishPublicCrn] - The crn of the public catalog entry of this offering. * @param {string} [params.portalApprovalRecord] - The portal's approval record ID. * @param {string} [params.portalUiUrl] - The portal UI URL. * @param {string} [params.catalogId] - The id of the catalog containing this offering. * @param {string} [params.catalogName] - The name of the catalog. * @param {JsonObject} [params.metadata] - Map of metadata values for this offering. * @param {string} [params.disclaimer] - A disclaimer for this offering. * @param {boolean} [params.hidden] - Determine if this offering should be displayed in the Consumption UI. * @param {string} [params.provider] - Deprecated: Deprecated - Provider of this offering. * @param {ProviderInfo} [params.providerInfo] - Information on the provider for this offering, or omitted if no * provider information is given. * @param {RepoInfo} [params.repoInfo] - Repository info for offerings. * @param {ImagePullKey[]} [params.imagePullKeys] - Image pull keys for this offering. * @param {Support} [params.support] - Offering Support information. * @param {MediaItem[]} [params.media] - A list of media items related to this offering. * @param {DeprecatePending} [params.deprecatePending] - Deprecation information for an Offering. * @param {string} [params.productKind] - The product kind. Valid values are module, solution, or empty string. * @param {Badge[]} [params.badges] - A list of badges for this offering. * @param {Plan[]} [params.plans] - A list of plans for this offering. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ createOffering(params: CatalogManagementV1.CreateOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Import offering version. * * Import new version to an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string[]} [params.tags] - Tags array. * @param {string[]} [params.keywords] - Keywords array. * @param {string} [params.content] - Byte array representing the content to be imported. Only supported for OVA * images at this time. * @param {string} [params.name] - Name of version. Required for virtual server image for VPC. * @param {string} [params.label] - Display name of version. Required for virtual server image for VPC. * @param {string} [params.installKind] - Install type. Example: instance. Required for virtual server image for VPC. * @param {string[]} [params.targetKinds] - Deployment target of the content being onboarded. Current valid values are * iks, roks, vcenter, power-iaas, terraform, and vpc-x86. Required for virtual server image for VPC. * @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual * server image for VPC. * @param {string} [params.productKind] - Optional product kind for the software being onboarded. Valid values are * software, module, or solution. Default value is software. * @param {string} [params.productKindLabel] - Display value for optional product kind for the software being * onboarded. * @param {string} [params.sha] - SHA256 fingerprint of the image file. Required for virtual server image for VPC. * @param {string} [params.version] - Semantic version of the software being onboarded. Required for virtual server * image for VPC. * @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution. * @param {ImportOfferingBodyMetadata} [params.metadata] - Generic data to be included with content being onboarded. * Required for virtual server image for VPC. * @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains * the software being onboarded. * @param {string} [params.installType] - The install type of the variation. Specify extension or fullstack. * @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in the body of * this call. * @param {string} [params.targetVersion] - The semver value for this new version, if not found in the zip url package * content. * @param {boolean} [params.includeConfig] - Add all possible configuration values to this version when importing. * @param {boolean} [params.isVsi] - Indicates that the current terraform template is used to install a virtual server * image. * @param {string} [params.repotype] - The type of repository containing this version. Valid values are 'public_git' * or 'enterprise_git'. * @param {string} [params.xAuthToken] - Authentication token used to access the specified zip file. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ importOfferingVersion(params: CatalogManagementV1.ImportOfferingVersionParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Import offering. * * Import a new offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string[]} [params.tags] - Tags array. * @param {string[]} [params.keywords] - Keywords array. * @param {string} [params.content] - Byte array representing the content to be imported. Only supported for OVA * images at this time. * @param {string} [params.name] - Name of version. Required for virtual server image for VPC. * @param {string} [params.label] - Display name of version. Required for virtual server image for VPC. * @param {string} [params.installKind] - Install type. Example: instance. Required for virtual server image for VPC. * @param {string[]} [params.targetKinds] - Deployment target of the content being onboarded. Current valid values are * iks, roks, vcenter, power-iaas, terraform, and vpc-x86. Required for virtual server image for VPC. * @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual * server image for VPC. * @param {string} [params.productKind] - Optional product kind for the software being onboarded. Valid values are * software, module, or solution. Default value is software. * @param {string} [params.productKindLabel] - Display value for optional product kind for the software being * onboarded. * @param {string} [params.sha] - SHA256 fingerprint of the image file. Required for virtual server image for VPC. * @param {string} [params.version] - Semantic version of the software being onboarded. Required for virtual server * image for VPC. * @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution. * @param {ImportOfferingBodyMetadata} [params.metadata] - Generic data to be included with content being onboarded. * Required for virtual server image for VPC. * @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains * the software being onboarded. * @param {string} [params.installType] - The install type of the variation. Specify extension or fullstack. * @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in this post * body. * @param {string} [params.offeringId] - Re-use the specified offeringID during import. * @param {string} [params.targetVersion] - The semver value for this new version. * @param {boolean} [params.includeConfig] - Add all possible configuration items when creating this version. * @param {boolean} [params.isVsi] - Indicates that the current terraform template is used to install a virtual server * image. * @param {string} [params.repotype] - The type of repository containing this version. Valid values are 'public_git' * or 'enterprise_git'. * @param {string} [params.xAuthToken] - Authentication token used to access the specified zip file. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ importOffering(params: CatalogManagementV1.ImportOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Reload offering. * * Reload an existing version in offering from a tgz. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} params.targetVersion - The semver value for this new version. * @param {string[]} [params.tags] - Tags array. * @param {string} [params.content] - byte array representing the content to be imported. Only supported for OVA * images at this time. * @param {string[]} [params.targetKinds] - Target kinds. Current valid values are 'iks', 'roks', 'vcenter', * 'power-iaas', and 'terraform'. * @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual * server image for VPC. * @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution. * @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains * the software being onboarded. * @param {string} [params.installType] - The install type of the current software being onboarded. * @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in this post * body. * @param {string} [params.repoType] - The type of repository containing this version. Valid values are 'public_git' * or 'enterprise_git'. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ reloadOffering(params: CatalogManagementV1.ReloadOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Get offering. * * Get an offering. This can be used by an unauthenticated user for publicly available offerings. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} [params.type] - Offering Parameter Type. Valid values are 'name' or 'id'. Default is 'id'. * @param {boolean} [params.digest] - Return the digest format of the specified offering. Default is false. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ getOffering(params: CatalogManagementV1.GetOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Update offering. * * Update an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} [params.id] - unique id. * @param {string} [params.rev] - Cloudant revision. * @param {string} [params.url] - The url for this specific offering. * @param {string} [params.crn] - The crn for this specific offering. * @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.name] - The programmatic name of this offering. * @param {string} [params.offeringIconUrl] - URL for an icon associated with this offering. * @param {string} [params.offeringDocsUrl] - URL for an additional docs with this offering. * @param {string} [params.offeringSupportUrl] - [deprecated] - Use offering.support instead. URL to be displayed in * the Consumption UI for getting support on this offering. * @param {string[]} [params.tags] - List of tags associated with this catalog. * @param {string[]} [params.keywords] - List of keywords associated with offering, typically used to search for it. * @param {Rating} [params.rating] - Repository info for offerings. * @param {string} [params.created] - The date and time this catalog was created. * @param {string} [params.updated] - The date and time this catalog was last updated. * @param {string} [params.shortDescription] - Short description in the requested language. * @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code. * @param {string} [params.longDescription] - Long description in the requested language. * @param {JsonObject} [params.longDescriptionI18n] - A map of translated strings, by language code. * @param {Feature[]} [params.features] - list of features associated with this offering. * @param {Kind[]} [params.kinds] - Array of kind. * @param {PublishObject} [params.publish] - Publish information. * @param {boolean} [params.pcManaged] - Offering is managed by Partner Center. * @param {boolean} [params.publishApproved] - Offering has been approved to publish to permitted to IBM or Public * Catalog. * @param {boolean} [params.shareWithAll] - Denotes public availability of an Offering. * @param {boolean} [params.shareWithIbm] - Denotes IBM employee availability of an Offering - if share_enabled is * true. * @param {boolean} [params.shareEnabled] - Denotes sharing including access list availability of an Offering is * enabled. * @param {string} [params.publicOriginalCrn] - The original offering CRN that this publish entry came from. * @param {string} [params.publishPublicCrn] - The crn of the public catalog entry of this offering. * @param {string} [params.portalApprovalRecord] - The portal's approval record ID. * @param {string} [params.portalUiUrl] - The portal UI URL. * @param {string} [params.catalogId] - The id of the catalog containing this offering. * @param {string} [params.catalogName] - The name of the catalog. * @param {JsonObject} [params.metadata] - Map of metadata values for this offering. * @param {string} [params.disclaimer] - A disclaimer for this offering. * @param {boolean} [params.hidden] - Determine if this offering should be displayed in the Consumption UI. * @param {string} [params.provider] - Deprecated: Deprecated - Provider of this offering. * @param {ProviderInfo} [params.providerInfo] - Information on the provider for this offering, or omitted if no * provider information is given. * @param {RepoInfo} [params.repoInfo] - Repository info for offerings. * @param {ImagePullKey[]} [params.imagePullKeys] - Image pull keys for this offering. * @param {Support} [params.support] - Offering Support information. * @param {MediaItem[]} [params.media] - A list of media items related to this offering. * @param {DeprecatePending} [params.deprecatePending] - Deprecation information for an Offering. * @param {string} [params.productKind] - The product kind. Valid values are module, solution, or empty string. * @param {Badge[]} [params.badges] - A list of badges for this offering. * @param {Plan[]} [params.plans] - A list of plans for this offering. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ replaceOffering(params: CatalogManagementV1.ReplaceOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Update offering. * * Update an offering using a JSONPatch document as defined by RFC 6902. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} params.ifMatch - Offering etag contained in quotes. * @param {JsonPatchOperation[]} [params.updates] - * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>} */ updateOffering(params: CatalogManagementV1.UpdateOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>; /** * Delete offering. * * Delete an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} [params.xApproverToken] - IAM token of partner center. Only needed when Partner Center accessing * the private catalog offering. When accessing the public offering Partner Center only needs to use their token in * the authorization header. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>} */ deleteOffering(params: CatalogManagementV1.DeleteOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>; /** * Get offering statistics. * * Get the usage statistics for the specified offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.MetricStats>>} */ getOfferingStats(params: CatalogManagementV1.GetOfferingStatsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.MetricStats>>; /** * Get offering audit logs. * * Get the audit logs associated with an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @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>>} */ listOfferingAudits(params: CatalogManagementV1.ListOfferingAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>; /** * Get an offering audit log entry. * * Get the full audit log entry associated with an offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @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>>} */ getOfferingAudit(params: CatalogManagementV1.GetOfferingAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>; /** * Set offering publish approval settings. * * Approve or disapprove the offering to be allowed to publish to a particular public catalog based on the approval * type. Approvers should use the catalog and offering id from the public catalog since they wouldn't have access to * the private offering. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} params.approvalType - Type of approval. * * `pc_managed` - Partner Center is managing this offering * * `ibm_module_repo` - Offering is from an approved repository can be published into the module registry. * * `ibm_community` - Offering is from an approved repository can be published into the Community registry. * * `publish_approved` - Publishing approved, offering owners can now set who sees the offering in public catalog * * `approval_required` - Offering will be removed from public catalog when this flag is set to true, regardless of * the approval and visibility settings. * @param {string} params.approved - Approve (true) or disapprove (false). * @param {string} [params.portalRecord] - Partner Center identifier for this offering. * @param {string} [params.portalUrl] - Partner Center url for this offering. * @param {string} [params.xApproverToken] - IAM token of partner center. Only needed when Partner Center accessing * the private catalog offering. When accessing the public offering Partner Center only needs to use their token in * the authorization header. * @param {string} [params.xAuthToken] - Authentication token used to verify if user is a collaborator of a repository * as part of the checks to set the approval type as `ibm_module_repo` or `ibm_community`. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ApprovalResult>>} */ setOfferingPublish(params: CatalogManagementV1.SetOfferingPublishParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ApprovalResult>>; /** * Allows offering to be deprecated. * * Approve or disapprove the offering to be deprecated. * * @param {Object} params - The parameters to send to the service. * @param {string} params.catalogIdentifier - Catalog identifier. * @param {string} params.offeringId - Offering identification. * @param {string} params.setting - Set deprecation (true) or cancel deprecation (false). * @param {string} [params.description] - Additional information that users can provide to be displayed in deprecation * notification. * @param {number} [params.daysUntilDeprecate] - Specifies the amount of days until product is not available in * catalog. * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers * @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>} */ deprecateOffering(params: CatalogManagementV1.DeprecateOfferingParams): Promise<CatalogManagementV1.Response<CatalogMan