You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.8 KiB
Plaintext
98 lines
2.8 KiB
Plaintext
# Kotlin API client for {{appName}}
|
|||
|
|||
## Requires
|
|||
|
|||
{{#jvm}}
|
|||
* Kotlin 1.3.41
|
|||
* Gradle 4.9
|
|||
{{/jvm}}
|
|||
{{#multiplatform}}
|
|||
* Kotlin 1.3.50
|
|||
{{/multiplatform}}
|
|||
|
|||
## Build
|
|||
|
|||
{{#jvm}}
|
|||
First, create the gradle wrapper script:
|
|||
|
|||
```
|
|||
gradle wrapper
|
|||
```
|
|||
|
|||
Then, run:
|
|||
|
|||
{{/jvm}}
|
|||
```
|
|||
./gradlew check assemble
|
|||
```
|
|||
|
|||
This runs all tests and packages the library.
|
|||
|
|||
## Features/Implementation Notes
|
|||
|
|||
{{#generateApiDocs}}
|
|||
<a name="documentation-for-api-endpoints"></a>
|
|||
## Documentation for API Endpoints
|
|||
|
|||
All URIs are relative to *{{{basePath}}}*. Change it when instantiating `ApiClient(basePath)`.
|
|||
|
|||
Class | Method | HTTP request | Description
|
|||
------------ | ------------- | ------------- | -------------
|
|||
{{#apiInfo}}{{#apis}}{{#operations}}{{#operation}}*{{classname}}* | [**{{operationId}}**]({{apiDocPath}}{{classname}}.md#{{operationIdLowerCase}}) | **{{httpMethod}}** {{path}} | {{#summary}}{{{summary}}}{{/summary}}
|
|||
{{/operation}}{{/operations}}{{/apis}}{{/apiInfo}}
|
|||
{{/generateApiDocs}}
|
|||
|
|||
{{#generateModelDocs}}
|
|||
<a name="documentation-for-models"></a>
|
|||
## Documentation for Models
|
|||
|
|||
{{#modelPackage}}
|
|||
{{#models}}{{#model}} - [{{{modelPackage}}}.{{{classname}}}]({{modelDocPath}}{{{classname}}}.md)
|
|||
{{/model}}{{/models}}
|
|||
{{/modelPackage}}
|
|||
{{^modelPackage}}
|
|||
No model defined in this package
|
|||
{{/modelPackage}}
|
|||
{{/generateModelDocs}}
|
|||
|
|||
<a name="documentation-for-authorization"></a>{{! TODO: optional documentation for authorization? }}
|
|||
## Documentation for Authorization
|
|||
|
|||
{{^authMethods}}
|
|||
All endpoints do not require authorization.
|
|||
{{/authMethods}}
|
|||
{{#authMethods}}
|
|||
{{#last}}
|
|||
Authentication schemes defined for the API:
|
|||
{{/last}}
|
|||
{{/authMethods}}
|
|||
{{#authMethods}}
|
|||
<a name="{{name}}"></a>
|
|||
### {{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}}
|
|||
|
|||
## License
|
|||
|
|||
Copyright (C) 2015-2020 PeerTube Contributors
|
|||
|
|||
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
|||
|
|||
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
|
|||
|
|||
You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses.
|