tagger/docs/swagger.yaml
2024-04-04 13:30:41 -07:00

195 lines
4.1 KiB
YAML

basePath: /api/v1
definitions:
main.tag:
properties:
id:
type: string
name:
type: string
resources:
items:
type: string
type: array
type: object
models.Resource:
properties:
id:
type: string
resource:
type: string
tags:
items:
type: string
type: array
type: object
host: localhost:8080
info:
contact:
email: matthewrich.conf@gmail.com
name: API Support
url: http://www.swagger.io/support
description: This is the Tagger API.
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
termsOfService: http://swagger.io/terms/
title: Tagger API
version: "0.31"
paths:
/ping:
get:
consumes:
- application/json
description: ping alive endpoint
produces:
- application/json
responses:
"200":
description: OK
schema:
type: string
summary: ping endpoint
tags:
- ping
/resources:
get:
consumes:
- application/json
description: Get resource to tags
parameters:
- description: Resource URL
in: query
name: resource
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/models.Resource'
summary: Get resource tags
tags:
- tag resource
/resources/{resource}:
get:
consumes:
- application/json
description: Get resource to tags
parameters:
- description: Base64 encoded Resource URL
in: path
name: resource
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/models.Resource'
summary: Get resource tags
tags:
- tag resource
/tags:
post:
consumes:
- application/json
description: Add a tag for a resource
parameters:
- description: Tag JSON object
in: body
name: tag
required: true
schema:
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/main.tag'
summary: Add a tag for a resource
tags:
- tag resource
/tags/{name}:
get:
consumes:
- application/json
description: Get resources associated with a Tag
parameters:
- description: Tag name
in: path
name: name
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
items:
type: string
type: array
summary: Get list of resources tagged
tags:
- Tags
put:
consumes:
- application/json
description: Updates the resources associated with a tag
parameters:
- description: Tag name
in: path
name: name
required: true
type: string
- description: Tag JSON object
in: body
name: tag
required: true
schema:
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/main.tag'
summary: Update a tag
tags:
- tag resource
/tags/{tag}:
post:
consumes:
- application/json
description: Add a resource to a tag
parameters:
- description: Tag name
in: path
name: tag
required: true
type: string
- description: Resource JSON object
in: body
name: resource
required: true
schema:
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/main.tag'
summary: Add a resource to a tag
tags:
- tag resource
swagger: "2.0"