forked from loafle/openapi-generator-original
227 lines
7.0 KiB
Plaintext
Vendored
227 lines
7.0 KiB
Plaintext
Vendored
# {{projectName}}
|
|
|
|
{{moduleName}} - JavaScript client for {{projectName}}
|
|
{{#appDescriptionWithNewLines}}
|
|
{{{appDescriptionWithNewLines}}}
|
|
{{/appDescriptionWithNewLines}}
|
|
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
|
|
|
- API version: {{appVersion}}
|
|
- Package version: {{projectVersion}}
|
|
{{^hideGenerationTimestamp}}
|
|
- Build date: {{generatedDate}}
|
|
{{/hideGenerationTimestamp}}
|
|
- Build package: {{generatorClass}}
|
|
{{#infoUrl}}
|
|
For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}})
|
|
{{/infoUrl}}
|
|
|
|
## 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 {{{projectName}}} --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 {{{projectName}}} 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/{{#gitUserId}}{{.}}{{/gitUserId}}{{^gitUserId}}YOUR_USERNAME{{/gitUserId}}/{{#gitRepoId}}{{.}}{{/gitRepoId}}{{^gitRepoId}}{{projectName}}{{/gitRepoId}}
|
|
then install it via:
|
|
|
|
```shell
|
|
npm install {{#gitUserId}}{{.}}{{/gitUserId}}{{^gitUserId}}YOUR_USERNAME{{/gitUserId}}/{{#gitRepoId}}{{.}}{{/gitRepoId}}{{^gitRepoId}}{{projectName}}{{/gitRepoId}} --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 {{{moduleName}}} = require('{{{projectName}}}');
|
|
{{#apiInfo}}{{#apis}}{{#-first}}{{#operations}}{{#operation}}{{#-first}}
|
|
{{#hasAuthMethods}}
|
|
var defaultClient = {{{moduleName}}}.ApiClient.instance;
|
|
{{#authMethods}}
|
|
{{#isBasic}}
|
|
{{#isBasicBasic}}
|
|
// Configure HTTP basic authorization: {{{name}}}
|
|
var {{{name}}} = defaultClient.authentications['{{{name}}}'];
|
|
{{{name}}}.username = 'YOUR USERNAME'
|
|
{{{name}}}.password = 'YOUR PASSWORD'
|
|
{{/isBasicBasic}}
|
|
{{#isBasicBearer}}
|
|
// Configure Bearer{{#bearerFormat}} ({{{.}}}){{/bearerFormat}} access token for authorization: {{{name}}}
|
|
var {{{name}}} = defaultClient.authentications['{{{name}}}'];
|
|
{{{name}}}.accessToken = "YOUR ACCESS TOKEN"
|
|
{{/isBasicBearer}}
|
|
{{/isBasic}}
|
|
{{#isApiKey}}
|
|
// Configure API key authorization: {{{name}}}
|
|
var {{{name}}} = defaultClient.authentications['{{{name}}}'];
|
|
{{{name}}}.apiKey = "YOUR API KEY"
|
|
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
|
|
//{{{name}}}.apiKeyPrefix['{{{keyParamName}}}'] = "Token"
|
|
{{/isApiKey}}
|
|
{{#isOAuth}}
|
|
// Configure OAuth2 access token for authorization: {{{name}}}
|
|
var {{{name}}} = defaultClient.authentications['{{{name}}}'];
|
|
{{{name}}}.accessToken = "YOUR ACCESS TOKEN"
|
|
{{/isOAuth}}
|
|
{{/authMethods}}
|
|
{{/hasAuthMethods}}
|
|
|
|
var api = new {{{moduleName}}}.{{{classname}}}()
|
|
{{#hasParams}}
|
|
{{#requiredParams}}
|
|
var {{{paramName}}} = {{{example}}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}}
|
|
{{/requiredParams}}
|
|
{{#optionalParams}}
|
|
{{#-first}}
|
|
var opts = {
|
|
{{/-first}}
|
|
'{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}}
|
|
{{#-last}}
|
|
};
|
|
{{/-last}}
|
|
{{/optionalParams}}
|
|
{{/hasParams}}
|
|
{{#usePromises}}
|
|
api.{{{operationId}}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}).then(function({{#returnType}}data{{/returnType}}) {
|
|
{{#returnType}}console.log('API called successfully. Returned data: ' + data);{{/returnType}}{{^returnType}}console.log('API called successfully.');{{/returnType}}
|
|
}, function(error) {
|
|
console.error(error);
|
|
});
|
|
|
|
{{/usePromises}}
|
|
{{^usePromises}}
|
|
var callback = function(error, data, response) {
|
|
if (error) {
|
|
console.error(error);
|
|
} else {
|
|
{{#returnType}}console.log('API called successfully. Returned data: ' + data);{{/returnType}}{{^returnType}}console.log('API called successfully.');{{/returnType}}
|
|
}
|
|
};
|
|
api.{{{operationId}}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}{{#hasParams}}, {{/hasParams}}callback);
|
|
{{/usePromises}}
|
|
{{/-first}}{{/operation}}{{/operations}}{{/-first}}{{/apis}}{{/apiInfo}}
|
|
```
|
|
|
|
## Documentation for API Endpoints
|
|
|
|
All URIs are relative to *{{basePath}}*
|
|
|
|
Class | Method | HTTP request | Description
|
|
------------ | ------------- | ------------- | -------------
|
|
{{#apiInfo}}{{#apis}}{{#operations}}{{#operation}}*{{moduleName}}.{{classname}}* | [**{{operationId}}**]({{apiDocPath}}{{classname}}.md#{{operationId}}) | **{{httpMethod}}** {{path}} | {{#summary}}{{summary}}{{/summary}}
|
|
{{/operation}}{{/operations}}{{/apis}}{{/apiInfo}}
|
|
|
|
## Documentation for Models
|
|
|
|
{{#models}}{{#model}} - [{{moduleName}}.{{classname}}]({{modelDocPath}}{{classname}}.md)
|
|
{{/model}}{{/models}}
|
|
|
|
## Documentation for Authorization
|
|
|
|
{{^authMethods}}
|
|
All endpoints do not require authorization.
|
|
{{/authMethods}}
|
|
{{#authMethods}}
|
|
{{#last}} Authentication schemes defined for the API:{{/last}}
|
|
|
|
### {{name}}
|
|
|
|
{{#isApiKey}}
|
|
|
|
- **Type**: API key
|
|
- **API key parameter name**: {{keyParamName}}
|
|
- **Location**: {{#isKeyInQuery}}URL query string{{/isKeyInQuery}}{{#isKeyInHeader}}HTTP header{{/isKeyInHeader}}
|
|
{{/isApiKey}}
|
|
{{#isBasic}}
|
|
{{#isBasicBasic}}
|
|
- **Type**: HTTP basic authentication
|
|
{{/isBasicBasic}}
|
|
{{#isBasicBearer}}
|
|
- **Type**: Bearer authentication{{#bearerFormat}} ({{{.}}}){{/bearerFormat}}
|
|
{{/isBasicBearer}}
|
|
{{/isBasic}}
|
|
{{#isOAuth}}
|
|
|
|
- **Type**: OAuth
|
|
- **Flow**: {{flow}}
|
|
- **Authorization URL**: {{authorizationUrl}}
|
|
- **Scopes**: {{^scopes}}N/A{{/scopes}}
|
|
{{#scopes}} - {{scope}}: {{description}}
|
|
{{/scopes}}
|
|
{{/isOAuth}}
|
|
|
|
{{/authMethods}}
|