mirror of
https://github.com/rocky-linux/peridot.git
synced 2024-12-26 12:10:56 +00:00
120 lines
3.5 KiB
Markdown
120 lines
3.5 KiB
Markdown
|
# Go API client for rhsecurity
|
||
|
|
||
|
Unofficial OpenAPI definitions for Red Hat Security Data API
|
||
|
|
||
|
## Overview
|
||
|
This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-spec](https://www.openapis.org/) from a remote server, you can easily generate an API client.
|
||
|
|
||
|
- API version: 1.0
|
||
|
- Package version: 1.0.0
|
||
|
- Build package: org.openapitools.codegen.languages.GoClientCodegen
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
Install the following dependencies:
|
||
|
|
||
|
```shell
|
||
|
go get github.com/stretchr/testify/assert
|
||
|
go get golang.org/x/oauth2
|
||
|
go get golang.org/x/net/context
|
||
|
```
|
||
|
|
||
|
Put the package under your project folder and add the following in import:
|
||
|
|
||
|
```golang
|
||
|
import sw "./rhsecurity"
|
||
|
```
|
||
|
|
||
|
To use a proxy, set the environment variable `HTTP_PROXY`:
|
||
|
|
||
|
```golang
|
||
|
os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")
|
||
|
```
|
||
|
|
||
|
## Configuration of Server URL
|
||
|
|
||
|
Default configuration comes with `Servers` field that contains server objects as defined in the OpenAPI specification.
|
||
|
|
||
|
### Select Server Configuration
|
||
|
|
||
|
For using other server than the one defined on index 0 set context value `sw.ContextServerIndex` of type `int`.
|
||
|
|
||
|
```golang
|
||
|
ctx := context.WithValue(context.Background(), sw.ContextServerIndex, 1)
|
||
|
```
|
||
|
|
||
|
### Templated Server URL
|
||
|
|
||
|
Templated server URL is formatted using default variables from configuration or from context value `sw.ContextServerVariables` of type `map[string]string`.
|
||
|
|
||
|
```golang
|
||
|
ctx := context.WithValue(context.Background(), sw.ContextServerVariables, map[string]string{
|
||
|
"basePath": "v2",
|
||
|
})
|
||
|
```
|
||
|
|
||
|
Note, enum values are always validated and all unused variables are silently ignored.
|
||
|
|
||
|
### URLs Configuration per Operation
|
||
|
|
||
|
Each operation can use different server URL defined using `OperationServers` map in the `Configuration`.
|
||
|
An operation is uniquely identifield by `"{classname}Service.{nickname}"` string.
|
||
|
Similar rules for overriding default operation server index and variables applies by using `sw.ContextOperationServerIndices` and `sw.ContextOperationServerVariables` context maps.
|
||
|
|
||
|
```
|
||
|
ctx := context.WithValue(context.Background(), sw.ContextOperationServerIndices, map[string]int{
|
||
|
"{classname}Service.{nickname}": 2,
|
||
|
})
|
||
|
ctx = context.WithValue(context.Background(), sw.ContextOperationServerVariables, map[string]map[string]string{
|
||
|
"{classname}Service.{nickname}": {
|
||
|
"port": "8443",
|
||
|
},
|
||
|
})
|
||
|
```
|
||
|
|
||
|
## Documentation for API Endpoints
|
||
|
|
||
|
All URIs are relative to *https://access.redhat.com/hydra/rest/securitydata*
|
||
|
|
||
|
Class | Method | HTTP request | Description
|
||
|
------------ | ------------- | ------------- | -------------
|
||
|
*DefaultApi* | [**GetCve**](docs/DefaultApi.md#getcve) | **Get** /cve/{CVE}.json | Get specific CVE
|
||
|
*DefaultApi* | [**GetCves**](docs/DefaultApi.md#getcves) | **Get** /cve.json | Get CVEs
|
||
|
|
||
|
|
||
|
## Documentation For Models
|
||
|
|
||
|
- [CVE](docs/CVE.md)
|
||
|
- [CVEDetailed](docs/CVEDetailed.md)
|
||
|
- [CVEDetailedAffectedRelease](docs/CVEDetailedAffectedRelease.md)
|
||
|
- [CVEDetailedBugzilla](docs/CVEDetailedBugzilla.md)
|
||
|
- [CVEDetailedCvss3](docs/CVEDetailedCvss3.md)
|
||
|
- [CVEDetailedPackageState](docs/CVEDetailedPackageState.md)
|
||
|
|
||
|
|
||
|
## Documentation For Authorization
|
||
|
|
||
|
Endpoints do not require authorization.
|
||
|
|
||
|
|
||
|
## Documentation for Utility Methods
|
||
|
|
||
|
Due to the fact that model structure members are all pointers, this package contains
|
||
|
a number of utility functions to easily obtain pointers to values of basic types.
|
||
|
Each of these functions takes a value of the given basic type and returns a pointer to it:
|
||
|
|
||
|
* `PtrBool`
|
||
|
* `PtrInt`
|
||
|
* `PtrInt32`
|
||
|
* `PtrInt64`
|
||
|
* `PtrFloat`
|
||
|
* `PtrFloat32`
|
||
|
* `PtrFloat64`
|
||
|
* `PtrString`
|
||
|
* `PtrTime`
|
||
|
|
||
|
## Author
|
||
|
|
||
|
mustafa@ctrliq.com
|
||
|
|