npm package: @ibutsu/client
Description: A Javascript client for the Ibutsu API
Latest version: 1.0.0

# @ibutsu/client

ibutsu - JavaScript client for @ibutsu/client
A system to store and query test results
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 1.9.0
- Package version: 1.0.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 @ibutsu/client --save
```

Finally, you need to build the module:

```shell
npm run build
```

##### Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing `package.json` (and this README). Let's call this `JAVASCRIPT_CLIENT_DIR`. Then run:

```shell
npm install
```

Next, [link](https://docs.npmjs.com/cli/link) it globally in npm with the following, also from `JAVASCRIPT_CLIENT_DIR`:

```shell
npm link
```

To use the link you just defined in your project, switch to the directory you want to use your @ibutsu/client from, and run:

```shell
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>
```

Finally, you need to build the module:

```shell
npm run build
```

#### 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 ibutsu = require('@ibutsu/client');


var api = new ibutsu.ArtifactApi()
var id = "id_example"; // {String} ID of artifact to delete
api.deleteArtifact(id).then(function() {
  console.log('API called successfully.');
}, function(error) {
  console.error(error);
});


```

## Documentation for API Endpoints

All URIs are relative to *http://localhost/api*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*ibutsu.ArtifactApi* | [**deleteArtifact**](docs/ArtifactApi.md#deleteArtifact) | **DELETE** /artifact/{id} | Delete an artifact
*ibutsu.ArtifactApi* | [**downloadArtifact**](docs/ArtifactApi.md#downloadArtifact) | **GET** /artifact/{id}/download | Download an artifact
*ibutsu.ArtifactApi* | [**getArtifact**](docs/ArtifactApi.md#getArtifact) | **GET** /artifact/{id} | Get a single artifact
*ibutsu.ArtifactApi* | [**getArtifactList**](docs/ArtifactApi.md#getArtifactList) | **GET** /artifact | Get a (filtered) list of artifacts
*ibutsu.ArtifactApi* | [**uploadArtifact**](docs/ArtifactApi.md#uploadArtifact) | **POST** /artifact | Uploads a test run artifact
*ibutsu.ArtifactApi* | [**viewArtifact**](docs/ArtifactApi.md#viewArtifact) | **GET** /artifact/{id}/view | Stream an artifact directly to the client/browser
*ibutsu.GroupApi* | [**addGroup**](docs/GroupApi.md#addGroup) | **POST** /group | Create a new group
*ibutsu.GroupApi* | [**getGroup**](docs/GroupApi.md#getGroup) | **GET** /group/{id} | Get a group
*ibutsu.GroupApi* | [**getGroupList**](docs/GroupApi.md#getGroupList) | **GET** /group | Get a list of groups
*ibutsu.GroupApi* | [**updateGroup**](docs/GroupApi.md#updateGroup) | **PUT** /group/{id} | Update a group
*ibutsu.HealthApi* | [**getDatabaseHealth**](docs/HealthApi.md#getDatabaseHealth) | **GET** /health/database | Get a health report for the database
*ibutsu.HealthApi* | [**getHealth**](docs/HealthApi.md#getHealth) | **GET** /health | Get a general health report
*ibutsu.HealthApi* | [**getHealthInfo**](docs/HealthApi.md#getHealthInfo) | **GET** /health/info | Get information about the server
*ibutsu.ImportApi* | [**addImport**](docs/ImportApi.md#addImport) | **POST** /import | Import a file into Ibutsu. This can be either a JUnit XML file, or an Ibutsu archive
*ibutsu.ImportApi* | [**getImport**](docs/ImportApi.md#getImport) | **GET** /import/{id} | Get the status of an import
*ibutsu.ProjectApi* | [**addProject**](docs/ProjectApi.md#addProject) | **POST** /project | Create a project
*ibutsu.ProjectApi* | [**getProject**](docs/ProjectApi.md#getProject) | **GET** /project/{id} | Get a single project by ID
*ibutsu.ProjectApi* | [**getProjectList**](docs/ProjectApi.md#getProjectList) | **GET** /project | Get a list of projects
*ibutsu.ProjectApi* | [**updateProject**](docs/ProjectApi.md#updateProject) | **PUT** /project/{id} | Update a project
*ibutsu.ReportApi* | [**addReport**](docs/ReportApi.md#addReport) | **POST** /report | Create a new report
*ibutsu.ReportApi* | [**deleteReport**](docs/ReportApi.md#deleteReport) | **DELETE** /report/{id} | Delete a report
*ibutsu.ReportApi* | [**downloadReport**](docs/ReportApi.md#downloadReport) | **GET** /report/{id}/download/{filename} | Download a report
*ibutsu.ReportApi* | [**getReport**](docs/ReportApi.md#getReport) | **GET** /report/{id} | Get a report
*ibutsu.ReportApi* | [**getReportList**](docs/ReportApi.md#getReportList) | **GET** /report | Get a list of reports
*ibutsu.ReportApi* | [**getReportTypes**](docs/ReportApi.md#getReportTypes) | **GET** /report/types | Get a list of report types
*ibutsu.ReportApi* | [**viewReport**](docs/ReportApi.md#viewReport) | **GET** /report/{id}/view/{filename} | View a report
*ibutsu.ResultApi* | [**addResult**](docs/ResultApi.md#addResult) | **POST** /result | Create a test result
*ibutsu.ResultApi* | [**getResult**](docs/ResultApi.md#getResult) | **GET** /result/{id} | Get a single result
*ibutsu.ResultApi* | [**getResultList**](docs/ResultApi.md#getResultList) | **GET** /result | Get the list of results.
*ibutsu.ResultApi* | [**updateResult**](docs/ResultApi.md#updateResult) | **PUT** /result/{id} | Updates a single result
*ibutsu.RunApi* | [**addRun**](docs/RunApi.md#addRun) | **POST** /run | Create a run
*ibutsu.RunApi* | [**getRun**](docs/RunApi.md#getRun) | **GET** /run/{id} | Get a single run by ID
*ibutsu.RunApi* | [**getRunList**](docs/RunApi.md#getRunList) | **GET** /run | Get a list of the test runs
*ibutsu.RunApi* | [**updateRun**](docs/RunApi.md#updateRun) | **PUT** /run/{id} | Update a single run
*ibutsu.WidgetApi* | [**getWidget**](docs/WidgetApi.md#getWidget) | **GET** /widget/{id} | Generate data for a dashboard widget
*ibutsu.WidgetApi* | [**getWidgetTypes**](docs/WidgetApi.md#getWidgetTypes) | **GET** /widget/types | Get a list of widget types
*ibutsu.WidgetConfigApi* | [**addWidgetConfig**](docs/WidgetConfigApi.md#addWidgetConfig) | **POST** /widget-config | Create a widget configuration
*ibutsu.WidgetConfigApi* | [**deleteWidgetConfig**](docs/WidgetConfigApi.md#deleteWidgetConfig) | **DELETE** /widget-config/{id} | Delete a widget configuration
*ibutsu.WidgetConfigApi* | [**getWidgetConfig**](docs/WidgetConfigApi.md#getWidgetConfig) | **GET** /widget-config/{id} | Get a single widget configuration
*ibutsu.WidgetConfigApi* | [**getWidgetConfigList**](docs/WidgetConfigApi.md#getWidgetConfigList) | **GET** /widget-config | Get the list of widget configurations
*ibutsu.WidgetConfigApi* | [**updateWidgetConfig**](docs/WidgetConfigApi.md#updateWidgetConfig) | **PUT** /widget-config/{id} | Updates a single widget configuration


## Documentation for Models

 - [ibutsu.Artifact](docs/Artifact.md)
 - [ibutsu.ArtifactList](docs/ArtifactList.md)
 - [ibutsu.Group](docs/Group.md)
 - [ibutsu.GroupList](docs/GroupList.md)
 - [ibutsu.Health](docs/Health.md)
 - [ibutsu.HealthInfo](docs/HealthInfo.md)
 - [ibutsu.InlineObject](docs/InlineObject.md)
 - [ibutsu.InlineObject1](docs/InlineObject1.md)
 - [ibutsu.InlineResponse200](docs/InlineResponse200.md)
 - [ibutsu.ModelImport](docs/ModelImport.md)
 - [ibutsu.Pagination](docs/Pagination.md)
 - [ibutsu.Project](docs/Project.md)
 - [ibutsu.ProjectList](docs/ProjectList.md)
 - [ibutsu.Report](docs/Report.md)
 - [ibutsu.ReportList](docs/ReportList.md)
 - [ibutsu.ReportParameters](docs/ReportParameters.md)
 - [ibutsu.Result](docs/Result.md)
 - [ibutsu.ResultList](docs/ResultList.md)
 - [ibutsu.Run](docs/Run.md)
 - [ibutsu.RunList](docs/RunList.md)
 - [ibutsu.WidgetConfig](docs/WidgetConfig.md)
 - [ibutsu.WidgetConfigList](docs/WidgetConfigList.md)
 - [ibutsu.WidgetParam](docs/WidgetParam.md)
 - [ibutsu.WidgetType](docs/WidgetType.md)
 - [ibutsu.WidgetTypeList](docs/WidgetTypeList.md)


## Documentation for Authorization



### api_key


- **Type**: API key
- **API key parameter name**: api_key
- **Location**: HTTP header