Koha/api/v1/swagger/paths/erm_agreements.yaml
Jonathan Druart 3bf57d92a1
Bug 32030: ERM - REST API - GET POST PUT DELETE specs
Signed-off-by: Jonathan Field <jonathan.field@ptfs-europe.com>

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-11-08 09:43:37 -03:00

292 lines
7.9 KiB
YAML

---
/erm/agreements:
get:
x-mojo-to: ERM::Agreements#list
operationId: listErmAgreements
tags:
- agreement
summary: List agreements
produces:
- application/json
parameters:
- description: Case insensitive search on agreement agreement_id
in: query
name: agreement_id
required: false
type: integer
- description: Case insensitive search on agreement vendor_id
in: query
name: vendor_id
required: false
type: integer
- description: Case insensitive search on agreement name
in: query
name: name
required: false
type: string
- description: Case insensitive search on agreement description
in: query
name: description
required: false
type: string
- description: Case insensitive search on agreement status
in: query
name: status
required: false
type: string
- description: Case insensitive search on agreement closure_reason
in: query
name: closure_reason
required: false
type: string
- description: Case insensitive search on agreement is_perpetual
in: query
name: is_perpetual
required: false
type: boolean
- description: Case insensitive search on agreement renewal_priority
in: query
name: renewal_priority
required: false
type: string
- description: Case insensitive search on agreement license_info
in: query
name: license_info
required: false
type: string
- $ref: ../parameters.yaml#/match
- $ref: ../parameters.yaml#/order_by
- $ref: ../parameters.yaml#/page
- $ref: ../parameters.yaml#/per_page
- $ref: ../parameters.yaml#/q_param
- $ref: ../parameters.yaml#/q_body
- $ref: ../parameters.yaml#/q_header
responses:
200:
description: A list of agreement
schema:
items:
$ref: ../definitions.yaml#/erm_agreement
type: array
403:
description: Access forbidden
schema:
$ref: ../definitions.yaml#/error
500:
description: |-
Internal server error. Possible `error_code` attribute values:
* `internal_server_error`
schema:
$ref: ../definitions.yaml#/error
503:
description: Under maintenance
schema:
$ref: ../definitions.yaml#/error
x-koha-authorization:
permissions:
erm: 1
post:
x-mojo-to: ERM::Agreements#add
operationId: addErmAgreements
tags:
- agreement
summary: Add agreement
consumes:
- application/json
produces:
- application/json
parameters:
- description: A JSON object containing information about the new agreement
in: body
name: body
required: true
schema:
$ref: ../definitions.yaml#/erm_agreement
responses:
201:
description: A successfully created agreement
schema:
items:
$ref: ../definitions.yaml#/erm_agreement
400:
description: Bad parameter
schema:
$ref: ../definitions.yaml#/error
401:
description: Authentication required
schema:
$ref: ../definitions.yaml#/error
403:
description: Access forbidden
schema:
$ref: ../definitions.yaml#/error
404:
description: Ressource not found
schema:
$ref: ../definitions.yaml#/error
409:
description: Conflict in creating resource
schema:
$ref: ../definitions.yaml#/error
500:
description: |-
Internal server error. Possible `error_code` attribute values:
* `internal_server_error`
schema:
$ref: ../definitions.yaml#/error
503:
description: Under maintenance
schema:
$ref: ../definitions.yaml#/error
x-koha-authorization:
permissions:
erm: 1
"/erm/agreements/{agreement_id}":
get:
x-mojo-to: ERM::Agreements#get
operationId: getErmAgreements
tags:
- agreement
summary: Get agreement
produces:
- application/json
parameters:
- $ref: ../parameters.yaml#/agreement_id_pp
responses:
200:
description: An agreement
schema:
items:
$ref: ../definitions.yaml#/erm_agreement
401:
description: Authentication required
schema:
$ref: ../definitions.yaml#/error
403:
description: Access forbidden
schema:
$ref: ../definitions.yaml#/error
404:
description: Ressource not found
schema:
$ref: ../definitions.yaml#/error
500:
description: |-
Internal server error. Possible `error_code` attribute values:
* `internal_server_error`
schema:
$ref: ../definitions.yaml#/error
503:
description: Under maintenance
schema:
$ref: ../definitions.yaml#/error
x-koha-authorization:
permissions:
erm: 1
x-koha-embed:
- periods
- user_roles
- user_roles.patron
put:
x-mojo-to: ERM::Agreements#update
operationId: updateErmAgreements
tags:
- agreement
summary: Update agreement
consumes:
- application/json
produces:
- application/json
parameters:
- $ref: ../parameters.yaml#/agreement_id_pp
- name: body
in: body
description: A JSON object containing new information about existing agreement
required: true
schema:
$ref: ../definitions.yaml#/erm_agreement
responses:
200:
description: A successfully updated agreement
schema:
items:
$ref: ../definitions.yaml#/erm_agreement
400:
description: Bad parameter
schema:
$ref: ../definitions.yaml#/error
403:
description: Access forbidden
schema:
$ref: ../definitions.yaml#/error
404:
description: Ressource not found
schema:
$ref: ../definitions.yaml#/error
409:
description: Conflict in updating resource
schema:
$ref: ../definitions.yaml#/error
500:
description: |-
Internal server error. Possible `error_code` attribute values:
* `internal_server_error`
schema:
$ref: ../definitions.yaml#/error
503:
description: Under maintenance
schema:
$ref: ../definitions.yaml#/error
x-koha-authorization:
permissions:
erm: 1
x-koha-embed:
- periods
- user_roles
delete:
x-mojo-to: ERM::Agreements#delete
operationId: deleteErmAgreements
tags:
- agreement
summary: Delete agreement
produces:
- application/json
parameters:
- $ref: ../parameters.yaml#/agreement_id_pp
responses:
204:
description: Agreement deleted
400:
description: Agreement deletion failed
schema:
$ref: ../definitions.yaml#/error
401:
description: Authentication required
schema:
$ref: ../definitions.yaml#/error
403:
description: Access forbidden
schema:
$ref: ../definitions.yaml#/error
404:
description: Ressource not found
schema:
$ref: ../definitions.yaml#/error
409:
description: Conflict in deleting resource
schema:
$ref: ../definitions.yaml#/error
500:
description: |-
Internal server error. Possible `error_code` attribute values:
* `internal_server_error`
schema:
$ref: ../definitions.yaml#/error
503:
description: Under maintenance
schema:
$ref: ../definitions.yaml#/error
x-koha-authorization:
permissions:
erm: 1