Tomas Cohen Arazi
87dc9b0ac1
This patch removes the $ref occurences for borrowernumber in not patron-specific endpoints. 'borrowernumber' is still used on them, but as a hardcoded parameter. The param rename will happen on a separate bug for each endpoint. Signed-off-by: Josef Moravec <josef.moravec@gmail.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
400 lines
10 KiB
JSON
400 lines
10 KiB
JSON
{
|
|
"/holds": {
|
|
"get": {
|
|
"x-mojo-to": "Hold#list",
|
|
"operationId": "listHolds",
|
|
"tags": ["patrons", "holds"],
|
|
"parameters": [
|
|
{
|
|
"name": "reserve_id",
|
|
"in": "query",
|
|
"description": "Internal reserve identifier",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "borrowernumber",
|
|
"in": "query",
|
|
"description": "Internal patron identifier",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "reservedate",
|
|
"in": "query",
|
|
"description": "Reserve date",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "biblionumber",
|
|
"in": "query",
|
|
"description": "Internal biblio identifier",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "branchcode",
|
|
"in": "query",
|
|
"description": "Branch code",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "notificationdate",
|
|
"in": "query",
|
|
"description": "Notification date",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "reminderdate",
|
|
"in": "query",
|
|
"description": "Reminder date",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "cancellationdate",
|
|
"in": "query",
|
|
"description": "Cancellation date",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "reservenotes",
|
|
"in": "query",
|
|
"description": "Reserve notes",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "priority",
|
|
"in": "query",
|
|
"description": "Priority",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "found",
|
|
"in": "query",
|
|
"description": "Found status",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "timestamp",
|
|
"in": "query",
|
|
"description": "Time of latest update",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "itemnumber",
|
|
"in": "query",
|
|
"description": "Internal item identifier",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "waitingdate",
|
|
"in": "query",
|
|
"description": "Date the item was marked as waiting for the patron",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "expirationdate",
|
|
"in": "query",
|
|
"description": "Date the hold expires",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "lowestPriority",
|
|
"in": "query",
|
|
"description": "Lowest priority",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "suspend",
|
|
"in": "query",
|
|
"description": "Suspended",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "suspend_until",
|
|
"in": "query",
|
|
"description": "Suspended until",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"produces": ["application/json"],
|
|
"responses": {
|
|
"200": {
|
|
"description": "A list of holds",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/holds"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Authentication required",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Hold not allowed",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Borrower not found",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"503": {
|
|
"description": "Under maintenance",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
}
|
|
},
|
|
"x-koha-authorization": {
|
|
"allow-owner": true,
|
|
"allow-guarantor": true,
|
|
"permissions": {
|
|
"borrowers": "edit_borrowers"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"x-mojo-to": "Hold#add",
|
|
"operationId": "addHold",
|
|
"tags": ["patrons", "holds"],
|
|
"parameters": [{
|
|
"name": "body",
|
|
"in": "body",
|
|
"description": "A JSON object containing informations about the new hold",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"borrowernumber": {
|
|
"description": "Internal patron identifier",
|
|
"type": "integer"
|
|
},
|
|
"biblionumber": {
|
|
"description": "Biblio internal identifier",
|
|
"type": "integer"
|
|
},
|
|
"itemnumber": {
|
|
"description": "Item internal identifier",
|
|
"type": "integer"
|
|
},
|
|
"branchcode": {
|
|
"description": "Pickup location",
|
|
"type": "string"
|
|
},
|
|
"expirationdate": {
|
|
"description": "Hold end date",
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"itemtype": {
|
|
"description": "Limit hold on one itemtype (ignored for item-level holds)",
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"consumes": ["application/json"],
|
|
"produces": ["application/json"],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created hold",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/hold"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Missing or wrong parameters",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Authentication required",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Hold not allowed",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Borrower not found",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"503": {
|
|
"description": "Under maintenance",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
}
|
|
},
|
|
"x-koha-authorization": {
|
|
"allow-owner": true,
|
|
"permissions": {
|
|
"reserveforothers": "1"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/holds/{reserve_id}": {
|
|
"put": {
|
|
"x-mojo-to": "Hold#edit",
|
|
"operationId": "editHold",
|
|
"tags": ["holds"],
|
|
"parameters": [{
|
|
"$ref": "../parameters.json#/holdIdPathParam"
|
|
}, {
|
|
"name": "body",
|
|
"in": "body",
|
|
"description": "A JSON object containing fields to modify",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"priority": {
|
|
"description": "Position in waiting queue",
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"branchcode": {
|
|
"description": "Pickup location",
|
|
"type": "string"
|
|
},
|
|
"suspend_until": {
|
|
"description": "Suspend until",
|
|
"type": "string",
|
|
"format": "date"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"consumes": ["application/json"],
|
|
"produces": ["application/json"],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Updated hold",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/hold"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Missing or wrong parameters",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Authentication required",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Hold not allowed",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Hold not found",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"503": {
|
|
"description": "Under maintenance",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
}
|
|
},
|
|
"x-koha-authorization": {
|
|
"allow-owner": true,
|
|
"allow-guarantor": true,
|
|
"permissions": {
|
|
"reserveforothers": "1"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"x-mojo-to": "Hold#delete",
|
|
"operationId": "deleteHold",
|
|
"tags": ["holds"],
|
|
"parameters": [{
|
|
"$ref": "../parameters.json#/holdIdPathParam"
|
|
}
|
|
],
|
|
"produces": ["application/json"],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful deletion",
|
|
"schema": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Authentication required",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Hold not allowed",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Hold not found",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
},
|
|
"503": {
|
|
"description": "Under maintenance",
|
|
"schema": {
|
|
"$ref": "../definitions.json#/error"
|
|
}
|
|
}
|
|
},
|
|
"x-koha-authorization": {
|
|
"permissions": {
|
|
"reserveforothers": "1"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|