npm package: @manageiq/catalog-api-jsclient
Description: This is a API to fetch and order catalog items from different cloud sources
Latest version: 1.0.0

# @manageiq/catalog-api-jsclient

@ManageiqCatalogApiJsclient - JavaScript client for @manageiq/catalog-api-jsclient
This API gets and orders catalog items from different cloud sources.
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 0.1.0
- Package version: 0.1.0
- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen

## Installation

### For [Node.js](https://nodejs.org/)

#### npm

To publish the library as a [npm](https://www.npmjs.com/),
please follow the procedure in ["Publishing npm packages"](https://docs.npmjs.com/getting-started/publishing-npm-packages).

Then install it via:

```shell
npm install @manageiq/catalog-api-jsclient --save
```

#### git
#
If the library is hosted at a git repository, e.g.
https://github.com/GIT_USER_ID/GIT_REPO_ID
then install it via:

```shell
    npm install GIT_USER_ID/GIT_REPO_ID --save
```

### For browser

The library also works in the browser environment via npm and [browserify](http://browserify.org/). After following
the above steps with Node.js and installing browserify with `npm install -g browserify`,
perform the following (assuming *main.js* is your entry file):

```shell
browserify main.js > bundle.js
```

Then include *bundle.js* in the HTML pages.

### Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error:
Cannot resolve module", most certainly you should disable AMD loader. Add/merge
the following section to your webpack config:

```javascript
module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}
```

## Getting Started

Please follow the [installation](#installation) instruction and execute the following JS code:

```javascript
var @ManageiqCatalogApiJsclient = require('@manageiq/catalog-api-jsclient');

var defaultClient = @ManageiqCatalogApiJsclient.ApiClient.instance;
// Configure API key authorization: APIKeyAuth
var APIKeyAuth = defaultClient.authentications['APIKeyAuth'];
APIKeyAuth.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//APIKeyAuth.apiKeyPrefix['x-rh-auth-identity'] = "Token"
// Configure HTTP basic authorization: BasicAuth
var BasicAuth = defaultClient.authentications['BasicAuth'];
BasicAuth.username = 'YOUR USERNAME'
BasicAuth.password = 'YOUR PASSWORD'

var api = new @ManageiqCatalogApiJsclient.AdminsApi()
var portfolioId = "portfolioId_example"; // {String} The Portfolio ID
var addPortfolioItem = new @ManageiqCatalogApiJsclient.AddPortfolioItem(); // {AddPortfolioItem} 
api.addPortfolioItemToPortfolio(portfolioId, addPortfolioItem).then(function() {
  console.log('API called successfully.');
}, function(error) {
  console.error(error);
});


```

## Documentation for API Endpoints

All URIs are relative to *https://localhost/api/catalog*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*@ManageiqCatalogApiJsclient.AdminsApi* | [**addPortfolioItemToPortfolio**](docs/AdminsApi.md#addPortfolioItemToPortfolio) | **POST** /portfolios/{portfolio_id}/portfolio_items | Add a portfolio item to a portfolio
*@ManageiqCatalogApiJsclient.AdminsApi* | [**addToOrder**](docs/AdminsApi.md#addToOrder) | **POST** /orders/{order_id}/order_items | Add an order item to an order in pending state
*@ManageiqCatalogApiJsclient.AdminsApi* | [**createOrder**](docs/AdminsApi.md#createOrder) | **POST** /orders | Create a new order
*@ManageiqCatalogApiJsclient.AdminsApi* | [**createPortfolio**](docs/AdminsApi.md#createPortfolio) | **POST** /portfolios | Add a new portfolio
*@ManageiqCatalogApiJsclient.AdminsApi* | [**createPortfolioItem**](docs/AdminsApi.md#createPortfolioItem) | **POST** /portfolio_items | Add a new portfolio item
*@ManageiqCatalogApiJsclient.AdminsApi* | [**destroyPortfolio**](docs/AdminsApi.md#destroyPortfolio) | **DELETE** /portfolios/{id} | Delete an existing portfolio
*@ManageiqCatalogApiJsclient.AdminsApi* | [**destroyPortfolioItem**](docs/AdminsApi.md#destroyPortfolioItem) | **DELETE** /portfolio_items/{id} | Delete an existing portfolio item
*@ManageiqCatalogApiJsclient.AdminsApi* | [**fetchPortfolioItemsWithPortfolio**](docs/AdminsApi.md#fetchPortfolioItemsWithPortfolio) | **GET** /portfolios/{portfolio_id}/portfolio_items | Get all portfolio items from a specific portfolio
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listOrderItems**](docs/AdminsApi.md#listOrderItems) | **GET** /orders/{order_id}/order_items | Gets a list of items in a given order
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listOrders**](docs/AdminsApi.md#listOrders) | **GET** /orders | Get a list of orders
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listPortfolioItems**](docs/AdminsApi.md#listPortfolioItems) | **GET** /portfolio_items | List all portfolio items
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listPortfolios**](docs/AdminsApi.md#listPortfolios) | **GET** /portfolios | List portfolios
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listProgressMessages**](docs/AdminsApi.md#listProgressMessages) | **GET** /order_items/{order_item_id}/progress_messages | Gets a list of progress messages in an item
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listProviderControlParameters**](docs/AdminsApi.md#listProviderControlParameters) | **GET** /portfolio_items/{portfolio_item_id}/provider_control_parameters | Gets the provider control parameters for this portfolio item; requires control paramaters provided when provisioning the portfolio item.
*@ManageiqCatalogApiJsclient.AdminsApi* | [**listServicePlans**](docs/AdminsApi.md#listServicePlans) | **GET** /portfolio_items/{portfolio_item_id}/service_plans | Gets all service plans for a specific portfolio item; requires a connection to the topology service.
*@ManageiqCatalogApiJsclient.AdminsApi* | [**shareInfo**](docs/AdminsApi.md#shareInfo) | **GET** /portfolios/{portfolio_id}/share_info | Fetch share information about this portfolio, the response would include a collection of groups and permissions with each group
*@ManageiqCatalogApiJsclient.AdminsApi* | [**sharePortfolio**](docs/AdminsApi.md#sharePortfolio) | **POST** /portfolios/{portfolio_id}/share | Share a portfolio with one or more groups with specific permission
*@ManageiqCatalogApiJsclient.AdminsApi* | [**showOrderItem**](docs/AdminsApi.md#showOrderItem) | **GET** /orders/{order_id}/order_items/{id} | Gets an individual order item from a given order
*@ManageiqCatalogApiJsclient.AdminsApi* | [**showPortfolio**](docs/AdminsApi.md#showPortfolio) | **GET** /portfolios/{id} | Get a specific portfolio
*@ManageiqCatalogApiJsclient.AdminsApi* | [**showPortfolioItem**](docs/AdminsApi.md#showPortfolioItem) | **GET** /portfolio_items/{id} | Gets a specific portfolio item
*@ManageiqCatalogApiJsclient.AdminsApi* | [**submitOrder**](docs/AdminsApi.md#submitOrder) | **POST** /orders/{order_id}/submit_order | Submit a given order
*@ManageiqCatalogApiJsclient.AdminsApi* | [**unsharePortfolio**](docs/AdminsApi.md#unsharePortfolio) | **POST** /portfolios/{portfolio_id}/unshare | Unshare a portfolio from one or more groups with specific permission
*@ManageiqCatalogApiJsclient.AdminsApi* | [**updatePortfolio**](docs/AdminsApi.md#updatePortfolio) | **PATCH** /portfolios/{id} | Edit an existing portfolio
*@ManageiqCatalogApiJsclient.DefaultApi* | [**updatePortfolioItem**](docs/DefaultApi.md#updatePortfolioItem) | **PATCH** /portfolio_items/{id} | Edit an existing portfolio item
*@ManageiqCatalogApiJsclient.UsersApi* | [**addToOrder**](docs/UsersApi.md#addToOrder) | **POST** /orders/{order_id}/order_items | Add an order item to an order in pending state
*@ManageiqCatalogApiJsclient.UsersApi* | [**fetchPortfolioItemsWithPortfolio**](docs/UsersApi.md#fetchPortfolioItemsWithPortfolio) | **GET** /portfolios/{portfolio_id}/portfolio_items | Get all portfolio items from a specific portfolio
*@ManageiqCatalogApiJsclient.UsersApi* | [**listOrderItems**](docs/UsersApi.md#listOrderItems) | **GET** /orders/{order_id}/order_items | Gets a list of items in a given order
*@ManageiqCatalogApiJsclient.UsersApi* | [**listOrders**](docs/UsersApi.md#listOrders) | **GET** /orders | Get a list of orders
*@ManageiqCatalogApiJsclient.UsersApi* | [**listPortfolioItems**](docs/UsersApi.md#listPortfolioItems) | **GET** /portfolio_items | List all portfolio items
*@ManageiqCatalogApiJsclient.UsersApi* | [**listPortfolios**](docs/UsersApi.md#listPortfolios) | **GET** /portfolios | List portfolios
*@ManageiqCatalogApiJsclient.UsersApi* | [**listProgressMessages**](docs/UsersApi.md#listProgressMessages) | **GET** /order_items/{order_item_id}/progress_messages | Gets a list of progress messages in an item
*@ManageiqCatalogApiJsclient.UsersApi* | [**listProviderControlParameters**](docs/UsersApi.md#listProviderControlParameters) | **GET** /portfolio_items/{portfolio_item_id}/provider_control_parameters | Gets the provider control parameters for this portfolio item; requires control paramaters provided when provisioning the portfolio item.
*@ManageiqCatalogApiJsclient.UsersApi* | [**listServicePlans**](docs/UsersApi.md#listServicePlans) | **GET** /portfolio_items/{portfolio_item_id}/service_plans | Gets all service plans for a specific portfolio item; requires a connection to the topology service.
*@ManageiqCatalogApiJsclient.UsersApi* | [**shareInfo**](docs/UsersApi.md#shareInfo) | **GET** /portfolios/{portfolio_id}/share_info | Fetch share information about this portfolio, the response would include a collection of groups and permissions with each group
*@ManageiqCatalogApiJsclient.UsersApi* | [**showOrderItem**](docs/UsersApi.md#showOrderItem) | **GET** /orders/{order_id}/order_items/{id} | Gets an individual order item from a given order
*@ManageiqCatalogApiJsclient.UsersApi* | [**showPortfolio**](docs/UsersApi.md#showPortfolio) | **GET** /portfolios/{id} | Get a specific portfolio
*@ManageiqCatalogApiJsclient.UsersApi* | [**showPortfolioItem**](docs/UsersApi.md#showPortfolioItem) | **GET** /portfolio_items/{id} | Gets a specific portfolio item


## Documentation for Models

 - [@ManageiqCatalogApiJsclient.AddPortfolioItem](docs/AddPortfolioItem.md)
 - [@ManageiqCatalogApiJsclient.CollectionLinks](docs/CollectionLinks.md)
 - [@ManageiqCatalogApiJsclient.CollectionMetadata](docs/CollectionMetadata.md)
 - [@ManageiqCatalogApiJsclient.CreatePortfolioItem](docs/CreatePortfolioItem.md)
 - [@ManageiqCatalogApiJsclient.Order](docs/Order.md)
 - [@ManageiqCatalogApiJsclient.OrderItem](docs/OrderItem.md)
 - [@ManageiqCatalogApiJsclient.OrderItemsCollection](docs/OrderItemsCollection.md)
 - [@ManageiqCatalogApiJsclient.OrdersCollection](docs/OrdersCollection.md)
 - [@ManageiqCatalogApiJsclient.Organization](docs/Organization.md)
 - [@ManageiqCatalogApiJsclient.Portfolio](docs/Portfolio.md)
 - [@ManageiqCatalogApiJsclient.PortfolioItem](docs/PortfolioItem.md)
 - [@ManageiqCatalogApiJsclient.PortfolioItemsCollection](docs/PortfolioItemsCollection.md)
 - [@ManageiqCatalogApiJsclient.PortfoliosCollection](docs/PortfoliosCollection.md)
 - [@ManageiqCatalogApiJsclient.ProgressMessage](docs/ProgressMessage.md)
 - [@ManageiqCatalogApiJsclient.ProgressMessagesCollection](docs/ProgressMessagesCollection.md)
 - [@ManageiqCatalogApiJsclient.ProviderControlParameters](docs/ProviderControlParameters.md)
 - [@ManageiqCatalogApiJsclient.ServicePlan](docs/ServicePlan.md)
 - [@ManageiqCatalogApiJsclient.ShareInfo](docs/ShareInfo.md)
 - [@ManageiqCatalogApiJsclient.SharePolicy](docs/SharePolicy.md)
 - [@ManageiqCatalogApiJsclient.UnsharePolicy](docs/UnsharePolicy.md)


## Documentation for Authorization


### APIKeyAuth

- **Type**: API key
- **API key parameter name**: x-rh-auth-identity
- **Location**: HTTP header

### BasicAuth

- **Type**: HTTP basic authentication