You've already forked Traefik-Redis-Api
NOJIRA: No cry
This commit is contained in:
219
swagger.yaml
Normal file
219
swagger.yaml
Normal file
@@ -0,0 +1,219 @@
|
|||||||
|
openapi: "3.1.0"
|
||||||
|
info:
|
||||||
|
title: Traefik Redis Provider API
|
||||||
|
version: "1.0"
|
||||||
|
license:
|
||||||
|
name: MIT
|
||||||
|
url: https://opensource.org/licenses/MIT
|
||||||
|
description: |
|
||||||
|
This is the API documentation for the Traefik Redis Provider.
|
||||||
|
It provides endpoints to manage routers and their configurations.
|
||||||
|
tags:
|
||||||
|
- name: routers
|
||||||
|
description: Operations related to routers
|
||||||
|
externalDocs:
|
||||||
|
description: Traefik Documentation
|
||||||
|
url: https://doc.traefik.io/traefik/
|
||||||
|
servers:
|
||||||
|
- url: http://localhost:9501
|
||||||
|
description: Local server
|
||||||
|
paths:
|
||||||
|
/{protocol}/routers/{router}:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- routers
|
||||||
|
parameters:
|
||||||
|
- name: protocol
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The protocol to use (e.g., http, udp, tcp)
|
||||||
|
example: http
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- name: router
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The name of the router to create or update
|
||||||
|
example: router-1
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
summary: Create or update a specific router
|
||||||
|
description: |
|
||||||
|
This endpoint creates or updates a specific router.
|
||||||
|
It allows you to configure the router with the specified settings.
|
||||||
|
requestBody:
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Router'
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Router created or updated successfully
|
||||||
|
|
||||||
|
delete:
|
||||||
|
tags:
|
||||||
|
- routers
|
||||||
|
parameters:
|
||||||
|
- name: router
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The name of the router to delete
|
||||||
|
example: router-1
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- name: protocol
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The protocol to use (e.g., http, udp, tcp)
|
||||||
|
example: http
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
summary: Delete a specific router
|
||||||
|
description: |
|
||||||
|
This endpoint deletes a specific router.
|
||||||
|
It removes the specified router from the configuration.
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Router deleted successfully
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- routers
|
||||||
|
parameters:
|
||||||
|
- name: protocol
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The protocol to use (e.g., http, udp, tcp)
|
||||||
|
example: http
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
- name: router
|
||||||
|
in: path
|
||||||
|
example: router-1
|
||||||
|
required: true
|
||||||
|
description: The name of the router to retrieve
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
summary: Get a specific router
|
||||||
|
description: |
|
||||||
|
This endpoint retrieves a specific router.
|
||||||
|
It returns the details of the specified router.
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: A specific router
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Router'
|
||||||
|
|
||||||
|
/{protocol}/routers:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- routers
|
||||||
|
parameters:
|
||||||
|
- name: protocol
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
example: http
|
||||||
|
description: The protocol to use (e.g., http, udp, tcp)
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
summary: Get all routers
|
||||||
|
description: |
|
||||||
|
This endpoint retrieves all routers.
|
||||||
|
It returns a list of routers with their details.
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: A list of routers
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
example:
|
||||||
|
- router-1
|
||||||
|
- router-2
|
||||||
|
|
||||||
|
components:
|
||||||
|
schemas:
|
||||||
|
Router:
|
||||||
|
type: object
|
||||||
|
required:
|
||||||
|
- rule
|
||||||
|
- service
|
||||||
|
properties:
|
||||||
|
observability:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
tracing:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
type: boolean
|
||||||
|
example: true
|
||||||
|
samplingRate:
|
||||||
|
type: number
|
||||||
|
example: 0.1
|
||||||
|
metrics:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
type: boolean
|
||||||
|
example: true
|
||||||
|
buckets:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: number
|
||||||
|
example: 0.1
|
||||||
|
accessLogs:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
type: boolean
|
||||||
|
example: true
|
||||||
|
priority:
|
||||||
|
type: integer
|
||||||
|
example: 10
|
||||||
|
tls:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
certResolver:
|
||||||
|
type: string
|
||||||
|
example: myresolver
|
||||||
|
domains:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
main:
|
||||||
|
type: string
|
||||||
|
example: example.com
|
||||||
|
sans:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
example:
|
||||||
|
- www.example.com
|
||||||
|
- api.example.com
|
||||||
|
service:
|
||||||
|
type: string
|
||||||
|
example: service-1
|
||||||
|
middlewares:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
example:
|
||||||
|
- middleware-1
|
||||||
|
- middleware-2
|
||||||
|
entrypoints:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
example:
|
||||||
|
- web
|
||||||
|
- websecure
|
||||||
|
rule:
|
||||||
|
type: string
|
||||||
|
examples:
|
||||||
|
- Host(`example.com`)
|
||||||
|
- Header(`key`, `value`)
|
||||||
|
- HeaderRegexp(`key`, `regexp`)
|
||||||
Reference in New Issue
Block a user