forked from loafle/openapi-generator-original
RFC6750 indicates that the correct header format is 'Bearer <token>', not 'BEARER <token>'.
130 lines
5.0 KiB
Plaintext
130 lines
5.0 KiB
Plaintext
# {{gemName}}
|
|
|
|
{{moduleName}} - the Ruby gem for the {{appName}}
|
|
|
|
{{#appDescription}}
|
|
{{{appDescription}}}
|
|
{{/appDescription}}
|
|
|
|
This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
|
|
|
|
- API version: {{appVersion}}
|
|
- Package version: {{gemVersion}}
|
|
- Build date: {{generatedDate}}
|
|
- Build package: {{generatorClass}}
|
|
{{#infoUrl}}
|
|
For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}})
|
|
{{/infoUrl}}
|
|
|
|
## Installation
|
|
|
|
### Build a gem
|
|
|
|
To build the Ruby code into a gem:
|
|
|
|
```shell
|
|
gem build {{{gemName}}}.gemspec
|
|
```
|
|
|
|
Then either install the gem locally:
|
|
|
|
```shell
|
|
gem install ./{{{gemName}}}-{{{gemVersion}}}.gem
|
|
```
|
|
(for development, run `gem install --dev ./{{{gemName}}}-{{{gemVersion}}}.gem` to install the development dependencies)
|
|
|
|
or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
|
|
|
|
Finally add this to the Gemfile:
|
|
|
|
gem '{{{gemName}}}', '~> {{{gemVersion}}}'
|
|
|
|
### Install from Git
|
|
|
|
If the Ruby gem is hosted at a git repository: https://github.com/{{#gitUserId}}{{.}}{{/gitUserId}}{{^gitUserId}}YOUR_GIT_USERNAME{{/gitUserId}}/{{#gitRepoId}}{{.}}{{/gitRepoId}}{{^gitRepoId}}YOUR_GIT_REPO{{/gitRepoId}}, then add the following in the Gemfile:
|
|
|
|
gem '{{{gemName}}}', :git => 'https://github.com/{{#gitUserId}}{{.}}{{/gitUserId}}{{^gitUserId}}YOUR_GIT_USERNAME{{/gitUserId}}/{{#gitRepoId}}{{.}}{{/gitRepoId}}{{^gitRepoId}}YOUR_GIT_REPO{{/gitRepoId}}.git'
|
|
|
|
### Include the Ruby code directly
|
|
|
|
Include the Ruby code directly using `-I` as follows:
|
|
|
|
```shell
|
|
ruby -Ilib script.rb
|
|
```
|
|
|
|
## Getting Started
|
|
|
|
Please follow the [installation](#installation) procedure and then run the following code:
|
|
```ruby
|
|
# Load the gem
|
|
require '{{{gemName}}}'
|
|
{{#apiInfo}}{{#apis}}{{#-first}}{{#operations}}{{#operation}}{{#-first}}{{#hasAuthMethods}}
|
|
# Setup authorization
|
|
{{{moduleName}}}.configure do |config|{{#authMethods}}{{#isBasic}}
|
|
# Configure HTTP basic authorization: {{{name}}}
|
|
config.username = 'YOUR USERNAME'
|
|
config.password = 'YOUR PASSWORD'{{/isBasic}}{{#isApiKey}}
|
|
# Configure API key authorization: {{{name}}}
|
|
config.api_key['{{{keyParamName}}}'] = 'YOUR API KEY'
|
|
# Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
|
|
#config.api_key_prefix['{{{keyParamName}}}'] = 'Bearer'{{/isApiKey}}{{#isOAuth}}
|
|
# Configure OAuth2 access token for authorization: {{{name}}}
|
|
config.access_token = 'YOUR ACCESS TOKEN'{{/isOAuth}}
|
|
{{/authMethods}}end
|
|
{{/hasAuthMethods}}
|
|
|
|
api_instance = {{{moduleName}}}::{{{classname}}}.new{{#hasParams}}
|
|
{{#vendorExtensions.x-codegen-hasRequiredParams}}{{#allParams}}{{#required}}
|
|
{{{paramName}}} = {{{example}}} # {{{dataType}}} | {{{description}}}
|
|
{{/required}}{{/allParams}}{{/vendorExtensions.x-codegen-hasRequiredParams}}{{#hasOptionalParams}}
|
|
opts = { {{#allParams}}{{^required}}
|
|
{{{paramName}}}: {{{example}}}{{#vendorExtensions.x-codegen-hasMoreOptional}},{{/vendorExtensions.x-codegen-hasMoreOptional}} # {{{dataType}}} | {{{description}}}{{/required}}{{/allParams}}
|
|
}{{/hasOptionalParams}}{{/hasParams}}
|
|
|
|
begin
|
|
{{#summary}} #{{{.}}}
|
|
{{/summary}} {{#returnType}}result = {{/returnType}}api_instance.{{{operationId}}}{{#hasParams}}({{#allParams}}{{#required}}{{{paramName}}}{{#vendorExtensions.x-codegen-hasMoreRequired}}, {{/vendorExtensions.x-codegen-hasMoreRequired}}{{/required}}{{/allParams}}{{#hasOptionalParams}}{{#vendorExtensions.x-codegen-hasRequiredParams}}, {{/vendorExtensions.x-codegen-hasRequiredParams}}opts{{/hasOptionalParams}}){{/hasParams}}{{#returnType}}
|
|
p result{{/returnType}}
|
|
rescue {{{moduleName}}}::ApiError => e
|
|
puts "Exception when calling {{classname}}->{{{operationId}}}: #{e}"
|
|
end
|
|
{{/-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}}{{/authMethods}}
|
|
{{#authMethods}}### {{name}}
|
|
|
|
{{#isApiKey}}- **Type**: API key
|
|
- **API key parameter name**: {{keyParamName}}
|
|
- **Location**: {{#isKeyInQuery}}URL query string{{/isKeyInQuery}}{{#isKeyInHeader}}HTTP header{{/isKeyInHeader}}
|
|
{{/isApiKey}}
|
|
{{#isBasic}}- **Type**: HTTP basic authentication
|
|
{{/isBasic}}
|
|
{{#isOAuth}}- **Type**: OAuth
|
|
- **Flow**: {{flow}}
|
|
- **Authorization URL**: {{authorizationUrl}}
|
|
- **Scopes**: {{^scopes}}N/A{{/scopes}}
|
|
{{#scopes}} - {{scope}}: {{description}}
|
|
{{/scopes}}
|
|
{{/isOAuth}}
|
|
|
|
{{/authMethods}}
|