
ats-service-api.0.9.0.source-code.api.yaml Maven / Gradle / Ivy
openapi: 3.0.0
info:
version: 1.0.0
title: Seat Service
description: API for the Seat Service. Exposes health checks and supports basic CRUD
operations
termsOfService: https://www.codacy.com/terms
contact:
name: Codacy
email: [email protected]
url: https://www.codacy.com
license:
name: Codacy. All rights reserved
url: https://www.codacy.com
tags:
- name: seat
description: Seat endpoints
servers:
- url: /v1
paths:
"/organization/{organizationId}/authors":
get:
tags:
- seat
summary: Get all authors that belong to the organization
description: ""
operationId: listAuthors
parameters:
- in: path
name: organizationId
description: organization Id
required: true
example: 1
schema:
type: integer
format: int64
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/Authors"
examples:
response:
value:
- id: 1
emails:
- [email protected]
- [email protected]
"400":
description: Bad Request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- seat
summary: Add array of author seats to the organization
description: ""
operationId: createAuthors
parameters:
- in: path
name: organizationId
description: organization Id
required: true
example: 1
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/AuthorBody"
required: true
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/Authors"
"400":
description: Bad Request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"/organization/{organizationId}/author":
post:
tags:
- seat
summary: Add an author seat to the organization
description: ""
operationId: createAuthor
parameters:
- in: path
name: organizationId
description: organization Id
required: true
example: 1
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/AuthorBody"
required: true
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/Author"
"400":
description: Bad Request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"/organization/{organizationId}/authors/remove":
post:
tags:
- seat
summary: Bulk remove authors
description: ""
operationId: removeAuthors
parameters:
- in: path
name: organizationId
description: organization Id
required: true
example: 1
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/RemoveAuthorsBody"
required: true
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/AuthorsEmailRemovedResponse"
"400":
description: Bad Request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"/organization/{organizationId}/author/{authorId}":
delete:
tags:
- seat
summary: Delete an author from the organization by the id
description: ""
operationId: deleteAuthor
parameters:
- in: path
name: organizationId
description: organization Id
required: true
example: 1
schema:
type: integer
format: int64
- in: path
name: authorId
description: author Id
required: true
example: 1
schema:
type: integer
format: int64
responses:
"200":
description: Successful operation
"400":
description: Bad Request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/subject:
get:
tags:
- subject
summary: Gets the subject with the given fields
description: Gets the subject with the given fields
operationId: getSubject
parameters:
- $ref: '#/components/parameters/organizationIdentifierQuery'
- $ref: '#/components/parameters/userIdentifierQuery'
- $ref: '#/components/parameters/emailQuery'
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/Subject"
"400":
$ref: '#/components/responses/BadRequest'
"404":
$ref: '#/components/responses/NotFound'
"500":
$ref: '#/components/responses/InternalServerError'
components:
schemas:
Authors:
type: array
items:
$ref: "#/components/schemas/Author"
Author:
type: object
required:
- id
- emails
properties:
id:
type: integer
format: int64
emails:
type: array
items:
type: string
AuthorsEmailRemovedResponse:
type: object
required:
- removed
properties:
removed:
type: array
items:
type: string
AuthorBody:
type: object
required:
- emails
properties:
emails:
type: array
items:
type: string
RemoveAuthorsBody:
type: object
required:
- emails
properties:
emails:
type: array
items:
type: string
Error:
type: object
required:
- description
properties:
description:
type: string
SubjectType:
type: string
enum:
- Author
- User
SubjectStatus:
type: string
enum:
- Active
- Inactive
- Deactivated
Subject:
type: object
properties:
subjectType:
$ref: "#/components/schemas/SubjectType"
userIdentifier:
type: integer
format: int64
emails:
type: array
items:
type: string
firstActivity:
type: string
format: date-time
x-scala-type: java.time.Instant
lastActivity:
type: string
format: date-time
x-scala-type: java.time.Instant
firstCommit:
type: string
format: date-time
x-scala-type: java.time.Instant
lastCommit:
type: string
format: date-time
x-scala-type: java.time.Instant
status:
$ref: "#/components/schemas/SubjectStatus"
required:
- subjectType
- status
ApiError:
type: object
required:
- error
- message
properties:
error:
type: string
message:
type: string
discriminator:
propertyName: error
BadRequest:
allOf:
- $ref: "#/components/schemas/ApiError"
NotFound:
allOf:
- $ref: "#/components/schemas/ApiError"
InternalServerError:
allOf:
- $ref: "#/components/schemas/ApiError"
parameters:
organizationIdentifierQuery:
in: query
name: organizationIdentifier
description: ""
required: false
example: 1
schema:
type: integer
format: int64
userIdentifierQuery:
in: query
name: userIdentifier
description: ""
required: false
example: 1
schema:
type: integer
format: int64
emailQuery:
in: query
name: email
description: ""
required: false
example: [email protected]
schema:
type: string
responses:
BadRequest: #400
description: 'Bad Request'
content:
application/json:
schema:
$ref: "#/components/schemas/BadRequest"
NotFound: #404
description: 'Not Found'
content:
application/json:
schema:
$ref: "#/components/schemas/NotFound"
InternalServerError: #500
description: 'Internal Server Error'
content:
application/json:
schema:
$ref: "#/components/schemas/InternalServerError"
© 2015 - 2025 Weber Informatics LLC | Privacy Policy