View | Details | Raw Unified | Return to bug 29620
Collapse All | Expand All

(-)a/api/v1/swagger/definitions.json (-95 lines)
Lines 1-95 Link Here
1
{
2
  "account_line": {
3
    "$ref": "definitions/account_line.json"
4
  },
5
  "basket": {
6
    "$ref": "definitions/basket.json"
7
  },
8
  "cashup": {
9
    "$ref": "definitions/cashup.json"
10
  },
11
  "circ-rule-kind": {
12
    "$ref": "definitions/circ-rule-kind.json"
13
  },
14
  "city": {
15
    "$ref": "definitions/city.yaml"
16
  },
17
  "error": {
18
    "$ref": "definitions/error.json"
19
  },
20
  "fund": {
21
    "$ref": "definitions/fund.json"
22
  },
23
  "hold": {
24
    "$ref": "definitions/hold.json"
25
  },
26
  "invoice": {
27
    "$ref": "definitions/invoice.json"
28
  },
29
  "item": {
30
    "$ref": "definitions/item.yaml"
31
  },
32
  "checkouts": {
33
    "$ref": "definitions/checkouts.json"
34
  },
35
  "checkout": {
36
    "$ref": "definitions/checkout.json"
37
  },
38
  "holds": {
39
    "$ref": "definitions/holds.json"
40
  },
41
  "ill_backends": {
42
    "$ref": "definitions/ill_backends.json"
43
  },
44
  "ill_backend": {
45
    "$ref": "definitions/ill_backend.json"
46
  },
47
  "import_batch_profile": {
48
    "$ref": "definitions/import_batch_profile.json"
49
  },
50
  "import_batch_profiles": {
51
    "$ref": "definitions/import_batch_profiles.json"
52
  },
53
  "library": {
54
    "$ref": "definitions/library.json"
55
  },
56
  "transfer_limit": {
57
    "$ref": "definitions/transfer_limit.json"
58
  },
59
  "order": {
60
    "$ref": "definitions/order.json"
61
  },
62
  "advancededitormacro": {
63
    "$ref": "definitions/advancededitormacro.json"
64
  },
65
  "patron": {
66
    "$ref": "definitions/patron.json"
67
  },
68
  "patron_account_credit": {
69
    "$ref": "definitions/patron_account_credit.json"
70
  },
71
  "patron_balance": {
72
    "$ref": "definitions/patron_balance.json"
73
  },
74
  "patron_extended_attribute": {
75
    "$ref": "definitions/patron_extended_attribute.json"
76
  },
77
  "quote": {
78
    "$ref": "definitions/quote.json"
79
  },
80
  "allows_renewal": {
81
    "$ref": "definitions/allows_renewal.json"
82
  },
83
  "vendor": {
84
    "$ref": "definitions/vendor.json"
85
  },
86
  "return_claim": {
87
    "$ref": "definitions/return_claim.json"
88
  },
89
  "smtp_server": {
90
    "$ref": "definitions/smtp_server.json"
91
  },
92
  "suggestion": {
93
    "$ref": "definitions/suggestion.yaml"
94
  }
95
}
(-)a/api/v1/swagger/definitions.yaml (+63 lines)
Line 0 Link Here
1
---
2
account_line:
3
  $ref: definitions/account_line.yaml
4
advancededitormacro:
5
  $ref: definitions/advancededitormacro.yaml
6
allows_renewal:
7
  $ref: definitions/allows_renewal.yaml
8
basket:
9
  $ref: definitions/basket.yaml
10
cashup:
11
  $ref: definitions/cashup.yaml
12
checkout:
13
  $ref: definitions/checkout.yaml
14
checkouts:
15
  $ref: definitions/checkouts.yaml
16
circ-rule-kind:
17
  $ref: definitions/circ-rule-kind.yaml
18
city:
19
  $ref: definitions/city.yaml
20
error:
21
  $ref: definitions/error.yaml
22
fund:
23
  $ref: definitions/fund.yaml
24
hold:
25
  $ref: definitions/hold.yaml
26
holds:
27
  $ref: definitions/holds.yaml
28
ill_backend:
29
  $ref: definitions/ill_backend.yaml
30
ill_backends:
31
  $ref: definitions/ill_backends.yaml
32
import_batch_profile:
33
  $ref: definitions/import_batch_profile.yaml
34
import_batch_profiles:
35
  $ref: definitions/import_batch_profiles.yaml
36
invoice:
37
  $ref: definitions/invoice.yaml
38
item:
39
  $ref: definitions/item.yaml
40
library:
41
  $ref: definitions/library.yaml
42
order:
43
  $ref: definitions/order.yaml
44
patron:
45
  $ref: definitions/patron.yaml
46
patron_account_credit:
47
  $ref: definitions/patron_account_credit.yaml
48
patron_balance:
49
  $ref: definitions/patron_balance.yaml
50
patron_extended_attribute:
51
  $ref: definitions/patron_extended_attribute.yaml
52
quote:
53
  $ref: definitions/quote.yaml
54
return_claim:
55
  $ref: definitions/return_claim.yaml
56
smtp_server:
57
  $ref: definitions/smtp_server.yaml
58
suggestion:
59
  $ref: definitions/suggestion.yaml
60
transfer_limit:
61
  $ref: definitions/transfer_limit.yaml
62
vendor:
63
  $ref: definitions/vendor.yaml
(-)a/api/v1/swagger/definitions/account_line.json (-121 lines)
Lines 1-121 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "account_line_id": {
5
      "type": "integer",
6
      "description": "Internal account line identifier"
7
    },
8
    "checkout_id": {
9
      "type": [
10
        "integer",
11
        "null"
12
      ],
13
      "description": "Internal identifier for the checkout the account line is related to"
14
    },
15
    "patron_id": {
16
      "type": "integer",
17
      "description": "Internal identifier for the patron the account line belongs to"
18
    },
19
    "item_id": {
20
      "type": [
21
        "integer",
22
        "null"
23
      ],
24
      "description": "Internal identifier for the item the account line is related to"
25
    },
26
    "date": {
27
      "type": "string",
28
      "format": "date-time",
29
      "description": "Date the account line was created"
30
    },
31
    "amount": {
32
      "type": "number",
33
      "description": "Account line amount"
34
    },
35
    "description": {
36
      "type": [
37
        "string",
38
        "null"
39
      ],
40
      "description": "Account line description"
41
    },
42
    "account_type": {
43
      "type": [
44
          "string",
45
          "null"
46
      ],
47
      "description": "Account line type"
48
    },
49
    "debit_type": {
50
      "type": [
51
          "string",
52
          "null"
53
      ],
54
      "description": "Account line debit type"
55
    },
56
    "credit_type": {
57
      "type": [
58
          "string",
59
          "null"
60
      ],
61
      "description": "Account line credit type"
62
    },
63
    "payment_type": {
64
      "type": [
65
        "string",
66
        "null"
67
      ],
68
      "description": "Payment type"
69
    },
70
    "amount_outstanding": {
71
      "type": "number",
72
      "description": "Outstanding amount"
73
    },
74
    "last_increment": {
75
      "type": [
76
        "number",
77
        "null"
78
      ],
79
      "description": "The amount the line was increased last time"
80
    },
81
    "timestamp": {
82
      "type": "string",
83
      "format": "date-time",
84
      "description": "Timestamp for the latest line update"
85
    },
86
    "internal_note": {
87
      "type": [
88
        "string",
89
        "null"
90
      ],
91
      "description": "Internal note"
92
    },
93
    "user_id": {
94
      "type": [
95
        "integer",
96
        "null"
97
      ],
98
      "description": "Internal patron identifier for the staff member that introduced the account line"
99
    },
100
    "library_id": {
101
      "type": [
102
        "string",
103
        "null"
104
      ],
105
      "description": "Internal identifier for the library in which the transaction took place"
106
    },
107
    "interface": {
108
      "type": [ "string", "null" ],
109
      "description": "Interface in which the account line was generated (values can be: api, cron, commandline, intranet, opac and sip)"
110
    },
111
    "status": {
112
      "type": [ "string", "null" ],
113
      "description": "The credit/debit status"
114
    },
115
    "cash_register_id": {
116
      "type": [ "integer", "null" ],
117
      "description": "Internal identifier for the cash register used for the payment (if any)"
118
    }
119
  },
120
  "additionalProperties": false
121
}
(-)a/api/v1/swagger/definitions/account_line.yaml (+96 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  account_line_id:
5
    type: integer
6
    description: Internal account line identifier
7
  checkout_id:
8
    type:
9
      - integer
10
      - "null"
11
    description: Internal identifier for the checkout the account line is related to
12
  patron_id:
13
    type: integer
14
    description: Internal identifier for the patron the account line belongs to
15
  item_id:
16
    type:
17
      - integer
18
      - "null"
19
    description: Internal identifier for the item the account line is related to
20
  date:
21
    type: string
22
    format: date-time
23
    description: Date the account line was created
24
  amount:
25
    type: number
26
    description: Account line amount
27
  description:
28
    type:
29
      - string
30
      - "null"
31
    description: Account line description
32
  account_type:
33
    type:
34
      - string
35
      - "null"
36
    description: Account line type
37
  debit_type:
38
    type:
39
      - string
40
      - "null"
41
    description: Account line debit type
42
  credit_type:
43
    type:
44
      - string
45
      - "null"
46
    description: Account line credit type
47
  payment_type:
48
    type:
49
      - string
50
      - "null"
51
    description: Payment type
52
  amount_outstanding:
53
    type: number
54
    description: Outstanding amount
55
  last_increment:
56
    type:
57
      - number
58
      - "null"
59
    description: The amount the line was increased last time
60
  timestamp:
61
    type: string
62
    format: date-time
63
    description: Timestamp for the latest line update
64
  internal_note:
65
    type:
66
      - string
67
      - "null"
68
    description: Internal note
69
  user_id:
70
    type:
71
      - integer
72
      - "null"
73
    description: Internal patron identifier for the staff member that introduced the
74
      account line
75
  library_id:
76
    type:
77
      - string
78
      - "null"
79
    description: Internal identifier for the library in which the transaction took place
80
  interface:
81
    type:
82
      - string
83
      - "null"
84
    description: "Interface in which the account line was generated (values can be: api,
85
      cron, commandline, intranet, opac and sip)"
86
  status:
87
    type:
88
      - string
89
      - "null"
90
    description: The credit/debit status
91
  cash_register_id:
92
    type:
93
      - integer
94
      - "null"
95
    description: Internal identifier for the cash register used for the payment (if any)
96
additionalProperties: false
(-)a/api/v1/swagger/definitions/advancededitormacro.json (-26 lines)
Lines 1-26 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "macro_id": {
5
      "$ref": "../x-primitives.json#/advancededitormacro_id"
6
    },
7
    "name": {
8
      "description": "macro name",
9
      "type": "string"
10
    },
11
    "macro_text": {
12
      "description": "macro text",
13
      "type": ["string", "null"]
14
    },
15
    "patron_id": {
16
      "description": "borrower number",
17
      "type": ["integer", "null"]
18
    },
19
    "shared": {
20
        "description": "is macro shared",
21
        "type": ["boolean", "null"]
22
    }
23
  },
24
  "additionalProperties": false,
25
  "required": ["name", "macro_text", "patron_id", "shared"]
26
}
(-)a/api/v1/swagger/definitions/advancededitormacro.yaml (+29 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  macro_id:
5
    $ref: ../x-primitives.yaml#/advancededitormacro_id
6
  name:
7
    description: macro name
8
    type: string
9
  macro_text:
10
    description: macro text
11
    type:
12
      - string
13
      - "null"
14
  patron_id:
15
    description: borrower number
16
    type:
17
      - integer
18
      - "null"
19
  shared:
20
    description: is macro shared
21
    type:
22
      - boolean
23
      - "null"
24
additionalProperties: false
25
required:
26
  - name
27
  - macro_text
28
  - patron_id
29
  - shared
(-)a/api/v1/swagger/definitions/allows_renewal.json (-26 lines)
Lines 1-26 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "allows_renewal": {
5
      "type": "boolean",
6
      "description": "Renewability status; true = renewable, false = not renewable"
7
    },
8
    "max_renewals": {
9
      "type": "integer",
10
      "description": "Maximum number of possible renewals"
11
    },
12
     "current_renewals": {
13
      "type": "integer",
14
      "description": "Current used renewals"
15
    },
16
     "unseen_renewals": {
17
      "type": "integer",
18
      "description": "Number of consecutive times the item was renewed without being seen"
19
    },
20
    "error": {
21
      "type": ["string", "null"],
22
      "description": "Description on false allows_renewal."
23
    }
24
  },
25
  "additionalProperties": false
26
}
(-)a/api/v1/swagger/definitions/allows_renewal.yaml (+21 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  allows_renewal:
5
    type: boolean
6
    description: Renewability status; true = renewable, false = not renewable
7
  max_renewals:
8
    type: integer
9
    description: Maximum number of possible renewals
10
  current_renewals:
11
    type: integer
12
    description: Current used renewals
13
  unseen_renewals:
14
    type: integer
15
    description: Number of consecutive times the item was renewed without being seen
16
  error:
17
    type:
18
      - string
19
      - "null"
20
    description: Description on false allows_renewal.
21
additionalProperties: false
(-)a/api/v1/swagger/definitions/basket.json (-100 lines)
Lines 1-100 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
        "basket_id": {
5
            "type": "integer",
6
            "description": "Internal identifier for the basket"
7
        },
8
        "name": {
9
            "type": "string",
10
            "description": "Basket name"
11
        },
12
        "internal_note": {
13
            "type": [
14
                "string",
15
                "null"
16
            ],
17
            "description": "Internal note"
18
        },
19
        "vendor_note": {
20
            "type": [
21
                "string",
22
                "null"
23
            ],
24
            "description": "Vendor note"
25
        },
26
        "contract_id": {
27
            "type": "integer",
28
            "description": "Internal identifier of the linked contract"
29
        },
30
        "creation_date": {
31
            "type": [
32
                "string",
33
                "null"
34
            ],
35
            "format": "date",
36
            "description": "The date the basket was created"
37
        },
38
        "close_date": {
39
            "type": [
40
                "string",
41
                "null"
42
            ],
43
            "format": "date",
44
            "description": "The date the basket was closed"
45
        },
46
        "vendor_id": {
47
            "type": "integer",
48
            "description": "Internal identifier for the vendor"
49
        },
50
        "authorised_by": {
51
            "type": [
52
                "integer",
53
                "null"
54
            ],
55
            "description": "Internal patron identifier of the basket creator"
56
        },
57
        "basket_group_id": {
58
            "type": [
59
                "integer",
60
                "null"
61
            ],
62
            "description": "links this basket to its group (aqbasketgroups.id)"
63
        },
64
        "delivery_library": {
65
            "type": [
66
                "string",
67
                "null"
68
            ],
69
            "description": "basket delivery place"
70
        },
71
        "billing_library": {
72
            "type": [
73
                "string",
74
                "null"
75
            ],
76
            "description": "basket billing place"
77
        },
78
        "library_id": {
79
            "type": [
80
                "integer",
81
                "null"
82
            ],
83
            "description": "Library the basket belongs to"
84
        },
85
        "standing": {
86
            "type": "boolean",
87
            "description": "If the orders in this basket are standing"
88
        },
89
        "create_items": {
90
            "type": "string",
91
            "enum": [
92
                "ordering",
93
                "receiving",
94
                "cataloguing"
95
            ],
96
            "description": "When items should be created for orders in this basket (Options: 'ordering', 'receiving', 'cataloguing'. Null means system wide config)"
97
        }
98
    },
99
    "additionalProperties": false
100
}
(-)a/api/v1/swagger/definitions/basket.yaml (+74 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  basket_id:
5
    type: integer
6
    description: Internal identifier for the basket
7
  name:
8
    type: string
9
    description: Basket name
10
  internal_note:
11
    type:
12
      - string
13
      - "null"
14
    description: Internal note
15
  vendor_note:
16
    type:
17
      - string
18
      - "null"
19
    description: Vendor note
20
  contract_id:
21
    type: integer
22
    description: Internal identifier of the linked contract
23
  creation_date:
24
    type:
25
      - string
26
      - "null"
27
    format: date
28
    description: The date the basket was created
29
  close_date:
30
    type:
31
      - string
32
      - "null"
33
    format: date
34
    description: The date the basket was closed
35
  vendor_id:
36
    type: integer
37
    description: Internal identifier for the vendor
38
  authorised_by:
39
    type:
40
      - integer
41
      - "null"
42
    description: Internal patron identifier of the basket creator
43
  basket_group_id:
44
    type:
45
      - integer
46
      - "null"
47
    description: links this basket to its group (aqbasketgroups.id)
48
  delivery_library:
49
    type:
50
      - string
51
      - "null"
52
    description: basket delivery place
53
  billing_library:
54
    type:
55
      - string
56
      - "null"
57
    description: basket billing place
58
  library_id:
59
    type:
60
      - integer
61
      - "null"
62
    description: Library the basket belongs to
63
  standing:
64
    type: boolean
65
    description: If the orders in this basket are standing
66
  create_items:
67
    type: string
68
    enum:
69
      - ordering
70
      - receiving
71
      - cataloguing
72
    description: "When items should be created for orders in this basket (Options:
73
      'ordering', 'receiving', 'cataloguing'. Null means system wide config)"
74
additionalProperties: false
(-)a/api/v1/swagger/definitions/cashup.json (-38 lines)
Lines 1-38 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
        "cashup_id": {
5
            "type": "integer",
6
            "description": "Internal cashup identifier"
7
        },
8
        "cash_register_id": {
9
            "type": "integer",
10
            "description": "Internal identifier for the register the cashup belongs to"
11
        },
12
        "manager_id": {
13
            "type": "integer",
14
            "description": "Internal identifier for the manager the cashup was performed by"
15
        },
16
        "manager": {
17
            "type": [
18
                "object",
19
                "null"
20
            ],
21
            "description": "The object representing the manager the cashup was performed by"
22
        },
23
        "amount": {
24
            "type": "number",
25
            "description": "Account line amount"
26
        },
27
        "timestamp": {
28
            "type": "string",
29
            "format": "date-time",
30
            "description": "Timestamp for the latest line update"
31
        },
32
        "summary": {
33
            "type": "object",
34
            "description": "A summary of the cashup action"
35
        }
36
    },
37
    "additionalProperties": false
38
}
(-)a/api/v1/swagger/definitions/cashup.yaml (+28 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  cashup_id:
5
    type: integer
6
    description: Internal cashup identifier
7
  cash_register_id:
8
    type: integer
9
    description: Internal identifier for the register the cashup belongs to
10
  manager_id:
11
    type: integer
12
    description: Internal identifier for the manager the cashup was performed by
13
  manager:
14
    type:
15
      - object
16
      - "null"
17
    description: The object representing the manager the cashup was performed by
18
  amount:
19
    type: number
20
    description: Account line amount
21
  timestamp:
22
    type: string
23
    format: date-time
24
    description: Timestamp for the latest line update
25
  summary:
26
    type: object
27
    description: A summary of the cashup action
28
additionalProperties: false
(-)a/api/v1/swagger/definitions/checkout.json (-110 lines)
Lines 1-110 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "checkout_id": {
5
      "type": "integer",
6
      "description": "internally assigned checkout identifier"
7
    },
8
    "patron_id": {
9
      "$ref": "../x-primitives.json#/patron_id"
10
    },
11
    "item_id": {
12
      "type": "integer",
13
      "description": "internal identifier of checked out item"
14
    },
15
    "due_date": {
16
      "type": "string",
17
      "format": "date-time",
18
      "description": "Due date"
19
    },
20
    "library_id": {
21
      "type": ["string", "null"],
22
      "description": "code of the library the item was checked out"
23
    },
24
    "issuer_id": {
25
      "type": [ "integer", "null" ],
26
      "description": "internally assigned for the user that processed the checkout"
27
    },
28
    "checkin_date": {
29
      "type": ["string", "null"],
30
      "format": "date-time",
31
      "description": "Date the item was returned"
32
    },
33
    "last_renewed_date": {
34
      "type": ["string", "null"],
35
      "format": "date-time",
36
      "description": "Date the item was last renewed"
37
    },
38
    "renewals": {
39
      "type": ["integer", "null"],
40
      "description": "Number of renewals"
41
    },
42
    "unseen_renewals": {
43
      "type": ["integer", "null"],
44
      "description": "Number of consecutive unseen renewals"
45
    },
46
    "auto_renew": {
47
      "type": "boolean",
48
      "description": "Auto renewal"
49
    },
50
    "auto_renew_error": {
51
      "type": ["string", "null"],
52
      "description": "Auto renewal error"
53
    },
54
    "timestamp": {
55
      "type": "string",
56
      "description": "Last update time"
57
    },
58
    "checkout_date": {
59
      "type": "string",
60
      "format": "date-time",
61
      "description": "Date the item was issued"
62
    },
63
    "onsite_checkout": {
64
      "type": "boolean",
65
      "description": "On site checkout"
66
    },
67
    "note": {
68
      "type": ["string", "null"],
69
      "description": "Issue note text"
70
    },
71
    "note_date": {
72
      "type": ["string", "null"],
73
      "format": "date",
74
      "description": "Datetime of the issue note"
75
    },
76
    "note_seen": {
77
      "type": ["boolean", "null"],
78
      "description": "has the note been seen already"
79
    },
80
    "issuer": {
81
      "type": [
82
          "object",
83
          "null"
84
      ],
85
      "description": "The object representing the checkout issuer"
86
    },
87
    "item": {
88
      "type": [
89
          "object",
90
          "null"
91
      ],
92
      "description": "The object representing the checked out item"
93
    },
94
    "library": {
95
      "type": [
96
          "object",
97
          "null"
98
      ],
99
      "description": "The object representing the checkout library"
100
    },
101
    "patron": {
102
      "type": [
103
          "object",
104
          "null"
105
      ],
106
      "description": "The object representing the checkout patron"
107
    }
108
  },
109
  "additionalProperties": false
110
}
(-)a/api/v1/swagger/definitions/checkout.yaml (+102 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  checkout_id:
5
    type: integer
6
    description: internally assigned checkout identifier
7
  patron_id:
8
    $ref: ../x-primitives.yaml#/patron_id
9
  item_id:
10
    type: integer
11
    description: internal identifier of checked out item
12
  due_date:
13
    type: string
14
    format: date-time
15
    description: Due date
16
  library_id:
17
    type:
18
      - string
19
      - "null"
20
    description: code of the library the item was checked out
21
  issuer_id:
22
    type:
23
      - integer
24
      - "null"
25
    description: internally assigned for the user that processed the checkout
26
  checkin_date:
27
    type:
28
      - string
29
      - "null"
30
    format: date-time
31
    description: Date the item was returned
32
  last_renewed_date:
33
    type:
34
      - string
35
      - "null"
36
    format: date-time
37
    description: Date the item was last renewed
38
  renewals:
39
    type:
40
      - integer
41
      - "null"
42
    description: Number of renewals
43
  unseen_renewals:
44
    type:
45
      - integer
46
      - "null"
47
    description: Number of consecutive unseen renewals
48
  auto_renew:
49
    type: boolean
50
    description: Auto renewal
51
  auto_renew_error:
52
    type:
53
      - string
54
      - "null"
55
    description: Auto renewal error
56
  timestamp:
57
    type: string
58
    description: Last update time
59
  checkout_date:
60
    type: string
61
    format: date-time
62
    description: Date the item was issued
63
  onsite_checkout:
64
    type: boolean
65
    description: On site checkout
66
  note:
67
    type:
68
      - string
69
      - "null"
70
    description: Issue note text
71
  note_date:
72
    type:
73
      - string
74
      - "null"
75
    format: date
76
    description: Datetime of the issue note
77
  note_seen:
78
    type:
79
      - boolean
80
      - "null"
81
    description: has the note been seen already
82
  issuer:
83
    type:
84
      - object
85
      - "null"
86
    description: The object representing the checkout issuer
87
  item:
88
    type:
89
      - object
90
      - "null"
91
    description: The object representing the checked out item
92
  library:
93
    type:
94
      - object
95
      - "null"
96
    description: The object representing the checkout library
97
  patron:
98
    type:
99
      - object
100
      - "null"
101
    description: The object representing the checkout patron
102
additionalProperties: false
(-)a/api/v1/swagger/definitions/checkouts.json (-7 lines)
Lines 1-7 Link Here
1
{
2
  "type": "array",
3
  "items": {
4
    "$ref": "checkout.json"
5
  },
6
  "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/checkouts.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: checkout.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/circ-rule-kind.json (-15 lines)
Lines 1-15 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "scope": {
5
      "description": "levels that this rule kind can be set for",
6
      "type": "array",
7
      "items": {
8
        "type": "string",
9
        "enum": [ "branchcode", "categorycode", "itemtype" ]
10
      }
11
    }
12
  },
13
  "additionalProperties": false,
14
  "required": ["scope"]
15
}
(-)a/api/v1/swagger/definitions/circ-rule-kind.yaml (+15 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  scope:
5
    description: levels that this rule kind can be set for
6
    type: array
7
    items:
8
      type: string
9
      enum:
10
        - branchcode
11
        - categorycode
12
        - itemtype
13
additionalProperties: false
14
required:
15
  - scope
(-)a/api/v1/swagger/definitions/city.yaml (-1 / +1 lines)
Lines 2-8 Link Here
2
type: object
2
type: object
3
properties:
3
properties:
4
  city_id:
4
  city_id:
5
    $ref: ../x-primitives.json#/city_id
5
    $ref: ../x-primitives.yaml#/city_id
6
  name:
6
  name:
7
    description: city name
7
    description: city name
8
    type: string
8
    type: string
(-)a/api/v1/swagger/definitions/club_hold.json (-27 lines)
Lines 1-27 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
      "club_hold_id": {
5
        "type": "integer",
6
        "description": "Internal club hold identifier"
7
      },
8
      "club_id": {
9
        "type": "integer",
10
        "description": "Internal club identifier"
11
      },
12
      "biblio_id": {
13
        "type": "integer",
14
        "description": "Internal biblio identifier"
15
      },
16
      "item_id": {
17
        "type": ["string", "null"],
18
        "description": "Internal item identifier"
19
      },
20
      "date_created": {
21
        "type": "string",
22
        "format": "date-time",
23
        "description": "Date and time the hold was created"
24
      }
25
    },
26
    "additionalProperties": false
27
}
(-)a/api/v1/swagger/definitions/club_hold.yaml (+22 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  club_hold_id:
5
    type: integer
6
    description: Internal club hold identifier
7
  club_id:
8
    type: integer
9
    description: Internal club identifier
10
  biblio_id:
11
    type: integer
12
    description: Internal biblio identifier
13
  item_id:
14
    type:
15
      - string
16
      - "null"
17
    description: Internal item identifier
18
  date_created:
19
    type: string
20
    format: date-time
21
    description: Date and time the hold was created
22
additionalProperties: false
(-)a/api/v1/swagger/definitions/club_hold_patron_hold.json (-31 lines)
Lines 1-31 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
      "club_hold_patron_hold_id": {
5
        "type": "integer",
6
        "description": "Internal club hold to patron hold identifier"
7
      },
8
      "club_hold_id": {
9
        "type": "integer",
10
        "description": "Internal club hold identifier"
11
      },
12
      "hold_id": {
13
        "type": ["integer", "null"],
14
        "description": "Internal hold identifier"
15
      },
16
      "patron_id": {
17
        "type": "integer",
18
        "description": "Internal patron identifier"
19
      },
20
      "error_code": {
21
        "type": ["string", "null"],
22
        "format": "date",
23
        "description": "Code returned by CanItemBeReserved"
24
      },
25
      "error_message": {
26
        "type": ["string", "null"],
27
        "description": "Generic error message"
28
      }
29
    },
30
    "additionalProperties": false
31
}
(-)a/api/v1/swagger/definitions/club_hold_patron_hold.yaml (+29 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  club_hold_patron_hold_id:
5
    type: integer
6
    description: Internal club hold to patron hold identifier
7
  club_hold_id:
8
    type: integer
9
    description: Internal club hold identifier
10
  hold_id:
11
    type:
12
      - integer
13
      - "null"
14
    description: Internal hold identifier
15
  patron_id:
16
    type: integer
17
    description: Internal patron identifier
18
  error_code:
19
    type:
20
      - string
21
      - "null"
22
    format: date
23
    description: Code returned by CanItemBeReserved
24
  error_message:
25
    type:
26
      - string
27
      - "null"
28
    description: Generic error message
29
additionalProperties: false
(-)a/api/v1/swagger/definitions/club_hold_patron_holds.json (-7 lines)
Lines 1-7 Link Here
1
{
2
    "type": "array",
3
    "items": {
4
      "$ref": "club_hold_patron_hold.json"
5
    },
6
    "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/club_hold_patron_holds.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: club_hold_patron_hold.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/club_holds.json (-7 lines)
Lines 1-7 Link Here
1
{
2
    "type": "array",
3
    "items": {
4
      "$ref": "club_hold.json"
5
    },
6
    "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/club_holds.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: club_hold.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/error.json (-10 lines)
Lines 1-10 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "error": {
5
      "description": "Error message",
6
      "type": "string"
7
    }
8
  },
9
  "additionalProperties": true
10
}
(-)a/api/v1/swagger/definitions/error.yaml (+7 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  error:
5
    description: Error message
6
    type: string
7
additionalProperties: true
(-)a/api/v1/swagger/definitions/fund.json (-105 lines)
Lines 1-105 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "fund_id": {
5
      "$ref": "../x-primitives.json#/fund_id"
6
    },
7
    "code": {
8
      "type": [
9
        "string",
10
        "null"
11
      ],
12
      "description": "Code assigned to the fund by the user"
13
    },
14
    "name": {
15
      "type": [
16
        "string",
17
        "null"
18
      ],
19
      "description": "Name assigned to the fund by the user"
20
    },
21
    "library_id": {
22
      "type": [
23
        "string",
24
        "null"
25
      ],
26
      "description": "Internal identifier for the library that this fund belongs to"
27
    },
28
    "total_amount": {
29
      "type": [
30
        "number",
31
        "null"
32
      ],
33
      "description": "Total amount for this fund"
34
    },
35
    "warn_at_percentage": {
36
      "type": [
37
        "number",
38
        "null"
39
      ],
40
      "description": "Warning at percentage"
41
    },
42
    "warn_at_amount": {
43
      "type": [
44
        "number",
45
        "null"
46
      ],
47
      "description": "Warning at amount"
48
    },
49
    "notes": {
50
      "type": [
51
        "string",
52
        "null"
53
      ],
54
      "description": "Notes related to this fund"
55
    },
56
    "budget_id": {
57
      "type": [
58
        "number",
59
        "null"
60
      ],
61
      "description": "Internal identifier for the budget"
62
    },
63
    "timestamp": {
64
      "type": [
65
        "string"
66
      ],
67
      "format": "date-time",
68
      "description": "Timestamp"
69
    },
70
    "fund_owner_id": {
71
      "type": [
72
        "number",
73
        "null"
74
      ],
75
      "description": "Internal identifier for the fund owner"
76
    },
77
    "fund_access": {
78
      "type": [
79
        "number",
80
        "null"
81
      ],
82
      "description": "Level of permission for this fund (1: owner, 2: owner, users and library, 3: owner and users)"
83
    },
84
    "parent_fund_id": {
85
        "type": [ "integer", "null" ],
86
        "description": "Internal identifier for parent fund"
87
    },
88
    "statistic1_auth_value_category": {
89
      "type": [
90
        "string",
91
        "null"
92
      ],
93
      "description": "Statistical category for this fund"
94
    },
95
    "statistic2_auth_value_category": {
96
      "type": [
97
        "string",
98
        "null"
99
      ],
100
      "description": "Second statistical category for this fund"
101
    }
102
  },
103
  "additionalProperties": false,
104
  "required": ["name"]
105
}
(-)a/api/v1/swagger/definitions/fund.yaml (+79 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  fund_id:
5
    $ref: ../x-primitives.yaml#/fund_id
6
  code:
7
    type:
8
      - string
9
      - "null"
10
    description: Code assigned to the fund by the user
11
  name:
12
    type:
13
      - string
14
      - "null"
15
    description: Name assigned to the fund by the user
16
  library_id:
17
    type:
18
      - string
19
      - "null"
20
    description: Internal identifier for the library that this fund belongs to
21
  total_amount:
22
    type:
23
      - number
24
      - "null"
25
    description: Total amount for this fund
26
  warn_at_percentage:
27
    type:
28
      - number
29
      - "null"
30
    description: Warning at percentage
31
  warn_at_amount:
32
    type:
33
      - number
34
      - "null"
35
    description: Warning at amount
36
  notes:
37
    type:
38
      - string
39
      - "null"
40
    description: Notes related to this fund
41
  budget_id:
42
    type:
43
      - number
44
      - "null"
45
    description: Internal identifier for the budget
46
  timestamp:
47
    type:
48
      - string
49
    format: date-time
50
    description: Timestamp
51
  fund_owner_id:
52
    type:
53
      - number
54
      - "null"
55
    description: Internal identifier for the fund owner
56
  fund_access:
57
    type:
58
      - number
59
      - "null"
60
    description: "Level of permission for this fund (1: owner, 2: owner, users and library,
61
      3: owner and users)"
62
  parent_fund_id:
63
    type:
64
      - integer
65
      - "null"
66
    description: Internal identifier for parent fund
67
  statistic1_auth_value_category:
68
    type:
69
      - string
70
      - "null"
71
    description: Statistical category for this fund
72
  statistic2_auth_value_category:
73
    type:
74
      - string
75
      - "null"
76
    description: Second statistical category for this fund
77
additionalProperties: false
78
required:
79
  - name
(-)a/api/v1/swagger/definitions/hold.json (-96 lines)
Lines 1-96 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "hold_id": {
5
      "type": "integer",
6
      "description": "Internal hold identifier"
7
    },
8
    "patron_id": {
9
      "type": "integer",
10
      "description": "Internal patron identifier"
11
    },
12
    "hold_date": {
13
      "type": ["string", "null"],
14
      "format": "date",
15
      "description": "The date the hold was placed"
16
    },
17
    "biblio_id": {
18
      "type": "integer",
19
      "description": "Internal biblio identifier"
20
    },
21
    "pickup_library_id": {
22
      "type": ["string", "null"],
23
      "description": "Internal library identifier for the pickup library"
24
    },
25
    "desk_id": {
26
      "type": ["integer", "null"],
27
      "description": "The id of the desk"
28
    },
29
    "cancellation_date": {
30
      "type": ["string", "null"],
31
      "format": "date",
32
      "description": "The date the hold was cancelled"
33
    },
34
    "cancellation_reason": {
35
      "type": ["string", "null"],
36
      "description": "The reason the hold was cancelled"
37
    },
38
    "notes": {
39
      "type": ["string", "null"],
40
      "description": "Notes related to this hold"
41
    },
42
    "priority": {
43
      "type": ["integer", "null"],
44
      "description": "Where in the queue the patron sits"
45
    },
46
    "status": {
47
      "type": ["string", "null"],
48
      "description": "A one letter code defining what the status of the hold is after it has been confirmed"
49
    },
50
    "timestamp": {
51
      "type": "string",
52
      "format": "date-time",
53
      "description": "Timestamp for the latest hold update"
54
    },
55
    "item_id": {
56
      "type": ["string", "null"],
57
      "description": "Internal item identifier"
58
    },
59
    "waiting_date": {
60
      "type": ["string", "null"],
61
      "format": "date",
62
      "description": "The date the item was marked as waiting for the patron at the library"
63
    },
64
    "expiration_date": {
65
      "type": ["string", "null"],
66
      "format": "date",
67
      "description": "The date the hold expires"
68
    },
69
    "lowest_priority": {
70
      "type": "boolean",
71
      "description": "Controls if the hold is given the lowest priority on the queue"
72
    },
73
    "suspended": {
74
      "type": "boolean",
75
      "description": "Controls if the hold is suspended"
76
    },
77
    "suspended_until": {
78
      "type": ["string", "null"],
79
      "format": "date-time",
80
      "description": "Date until which the hold has been suspended"
81
    },
82
    "non_priority": {
83
      "description": "Set this hold as non priority",
84
      "type": "boolean"
85
    },
86
    "item_type": {
87
      "type": ["string", "null"],
88
      "description": "If record level hold, the optional itemtype of the item the patron is requesting"
89
    },
90
    "item_level": {
91
      "type": "boolean",
92
      "description": "If the hold is placed at item level"
93
    }
94
  },
95
  "additionalProperties": false
96
}
(-)a/api/v1/swagger/definitions/hold.yaml (+101 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  hold_id:
5
    type: integer
6
    description: Internal hold identifier
7
  patron_id:
8
    type: integer
9
    description: Internal patron identifier
10
  hold_date:
11
    type:
12
      - string
13
      - "null"
14
    format: date
15
    description: The date the hold was placed
16
  biblio_id:
17
    type: integer
18
    description: Internal biblio identifier
19
  pickup_library_id:
20
    type:
21
      - string
22
      - "null"
23
    description: Internal library identifier for the pickup library
24
  desk_id:
25
    type:
26
      - integer
27
      - "null"
28
    description: The id of the desk
29
  cancellation_date:
30
    type:
31
      - string
32
      - "null"
33
    format: date
34
    description: The date the hold was cancelled
35
  cancellation_reason:
36
    type:
37
      - string
38
      - "null"
39
    description: The reason the hold was cancelled
40
  notes:
41
    type:
42
      - string
43
      - "null"
44
    description: Notes related to this hold
45
  priority:
46
    type:
47
      - integer
48
      - "null"
49
    description: Where in the queue the patron sits
50
  status:
51
    type:
52
      - string
53
      - "null"
54
    description: A one letter code defining what the status of the hold is after it has
55
      been confirmed
56
  timestamp:
57
    type: string
58
    format: date-time
59
    description: Timestamp for the latest hold update
60
  item_id:
61
    type:
62
      - string
63
      - "null"
64
    description: Internal item identifier
65
  waiting_date:
66
    type:
67
      - string
68
      - "null"
69
    format: date
70
    description: The date the item was marked as waiting for the patron at the library
71
  expiration_date:
72
    type:
73
      - string
74
      - "null"
75
    format: date
76
    description: The date the hold expires
77
  lowest_priority:
78
    type: boolean
79
    description: Controls if the hold is given the lowest priority on the queue
80
  suspended:
81
    type: boolean
82
    description: Controls if the hold is suspended
83
  suspended_until:
84
    type:
85
      - string
86
      - "null"
87
    format: date-time
88
    description: Date until which the hold has been suspended
89
  non_priority:
90
    description: Set this hold as non priority
91
    type: boolean
92
  item_type:
93
    type:
94
      - string
95
      - "null"
96
    description: If record level hold, the optional itemtype of the item the patron is
97
      requesting
98
  item_level:
99
    type: boolean
100
    description: If the hold is placed at item level
101
additionalProperties: false
(-)a/api/v1/swagger/definitions/holds.json (-7 lines)
Lines 1-7 Link Here
1
{
2
  "type": "array",
3
  "items": {
4
    "$ref": "hold.json"
5
  },
6
  "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/holds.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: hold.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/ill_backend.json (-14 lines)
Lines 1-14 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "ill_backend_id": {
5
      "type": "string",
6
      "description": "Internal ILL backend identifier"
7
    },
8
    "capabilities": {
9
      "type": "object",
10
      "description": "List of capabilities"
11
    }
12
  },
13
  "additionalProperties": false
14
}
(-)a/api/v1/swagger/definitions/ill_backend.yaml (+10 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  ill_backend_id:
5
    type: string
6
    description: Internal ILL backend identifier
7
  capabilities:
8
    type: object
9
    description: List of capabilities
10
additionalProperties: false
(-)a/api/v1/swagger/definitions/ill_backends.json (-7 lines)
Lines 1-7 Link Here
1
{
2
  "type": "array",
3
  "items": {
4
    "$ref": "ill_backend.json"
5
  },
6
  "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/ill_backends.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: ill_backend.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/import_batch_profile.json (-54 lines)
Lines 1-54 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "profile_id": {
5
      "type": "integer",
6
      "description": "Internal profile identifier"
7
    },
8
    "name": {
9
      "description": "name of this profile",
10
      "type": "string"
11
    },
12
    "matcher_id": {
13
      "description": "the id of the match rule used (matchpoints.matcher_id)",
14
      "type": ["integer", "null"]
15
    },
16
    "template_id": {
17
      "description": "the id of the marc modification template",
18
      "type": ["integer", "null"]
19
    },
20
    "overlay_action": {
21
      "description": "how to handle duplicate records",
22
      "type": ["string", "null"]
23
    },
24
    "nomatch_action": {
25
      "description": "how to handle records where no match is found",
26
      "type": ["string", "null"]
27
    },
28
    "item_action": {
29
      "description": "what to do with item records",
30
      "type": ["string", "null"]
31
    },
32
    "parse_items": {
33
      "description": "should items be parsed",
34
      "type": ["boolean", "null"]
35
    },
36
    "record_type": {
37
      "description": "type of record in the batch",
38
      "type": ["string", "null"]
39
    },
40
    "encoding": {
41
      "description": "file encoding",
42
      "type": ["string", "null"]
43
    },
44
    "format": {
45
      "description": "marc format",
46
      "type": ["string", "null"]
47
    },
48
    "comments": {
49
      "description": "any comments added when the file was uploaded",
50
      "type": ["string", "null"]
51
    }
52
  },
53
  "additionalProperties": false
54
}
(-)a/api/v1/swagger/definitions/import_batch_profile.yaml (+60 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  profile_id:
5
    type: integer
6
    description: Internal profile identifier
7
  name:
8
    description: name of this profile
9
    type: string
10
  matcher_id:
11
    description: the id of the match rule used (matchpoints.matcher_id)
12
    type:
13
      - integer
14
      - "null"
15
  template_id:
16
    description: the id of the marc modification template
17
    type:
18
      - integer
19
      - "null"
20
  overlay_action:
21
    description: how to handle duplicate records
22
    type:
23
      - string
24
      - "null"
25
  nomatch_action:
26
    description: how to handle records where no match is found
27
    type:
28
      - string
29
      - "null"
30
  item_action:
31
    description: what to do with item records
32
    type:
33
      - string
34
      - "null"
35
  parse_items:
36
    description: should items be parsed
37
    type:
38
      - boolean
39
      - "null"
40
  record_type:
41
    description: type of record in the batch
42
    type:
43
      - string
44
      - "null"
45
  encoding:
46
    description: file encoding
47
    type:
48
      - string
49
      - "null"
50
  format:
51
    description: marc format
52
    type:
53
      - string
54
      - "null"
55
  comments:
56
    description: any comments added when the file was uploaded
57
    type:
58
      - string
59
      - "null"
60
additionalProperties: false
(-)a/api/v1/swagger/definitions/import_batch_profiles.json (-7 lines)
Lines 1-7 Link Here
1
{
2
    "type": "array",
3
    "items": {
4
      "$ref": "import_batch_profile.json"
5
    },
6
    "additionalProperties": false
7
}
(-)a/api/v1/swagger/definitions/import_batch_profiles.yaml (+5 lines)
Line 0 Link Here
1
---
2
type: array
3
items:
4
  $ref: import_batch_profile.yaml
5
additionalProperties: false
(-)a/api/v1/swagger/definitions/invoice.json (-57 lines)
Lines 1-57 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
        "invoice_id": {
5
            "type": "integer",
6
            "description": "Internal identifier for the incoide. Generated on POST"
7
        },
8
        "invoice_number": {
9
            "type": "string",
10
            "description": "Invoice number assigned by the vendor"
11
        },
12
        "vendor_id": {
13
            "type": "integer",
14
            "description": "Internal identifier for the vendor"
15
        },
16
        "shipping_date": {
17
            "type": [
18
                "string",
19
                "null"
20
            ],
21
            "format": "date",
22
            "description": "Date of shipping"
23
        },
24
        "invoice_date": {
25
            "type": [
26
                "string",
27
                "null"
28
            ],
29
            "format": "date",
30
            "description": "Date of billing"
31
        },
32
        "closed": {
33
            "type": "boolean",
34
            "description": "If the invoice is closed"
35
        },
36
        "close_date": {
37
            "type": "string",
38
            "format": "date",
39
            "description": "Invoice close date (only when the invoice is closed)"
40
        },
41
        "shipping_cost": {
42
            "type": [
43
                "integer",
44
                "null"
45
            ],
46
            "description": "Shipping cost"
47
        },
48
        "shipping_cost_budget_id": {
49
            "type": [
50
                "integer",
51
                "null"
52
            ],
53
            "description": "Shipping cost linking to budget"
54
        }
55
    },
56
    "additionalProperties": false
57
}
(-)a/api/v1/swagger/definitions/invoice.yaml (+42 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  invoice_id:
5
    type: integer
6
    description: Internal identifier for the incoide. Generated on POST
7
  invoice_number:
8
    type: string
9
    description: Invoice number assigned by the vendor
10
  vendor_id:
11
    type: integer
12
    description: Internal identifier for the vendor
13
  shipping_date:
14
    type:
15
      - string
16
      - "null"
17
    format: date
18
    description: Date of shipping
19
  invoice_date:
20
    type:
21
      - string
22
      - "null"
23
    format: date
24
    description: Date of billing
25
  closed:
26
    type: boolean
27
    description: If the invoice is closed
28
  close_date:
29
    type: string
30
    format: date
31
    description: Invoice close date (only when the invoice is closed)
32
  shipping_cost:
33
    type:
34
      - integer
35
      - "null"
36
    description: Shipping cost
37
  shipping_cost_budget_id:
38
    type:
39
      - integer
40
      - "null"
41
    description: Shipping cost linking to budget
42
additionalProperties: false
(-)a/api/v1/swagger/definitions/library.json (-106 lines)
Lines 1-106 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "library_id": {
5
      "$ref": "../x-primitives.json#/library_id"
6
    },
7
    "name": {
8
      "type": "string",
9
      "description": "Printable name of library"
10
    },
11
    "address1": {
12
      "type": ["string", "null"],
13
      "description": "the first address line of the library"
14
    },
15
    "address2": {
16
      "type": ["string", "null"],
17
      "description": "the second address line of the library"
18
    },
19
    "address3": {
20
      "type": ["string", "null"],
21
      "description": "the third address line of the library"
22
    },
23
    "postal_code": {
24
      "type": ["string", "null"],
25
      "description": "the postal code of the library"
26
    },
27
    "city": {
28
      "type": ["string", "null"],
29
      "description": "the city or province of the library"
30
    },
31
    "state": {
32
      "type": ["string", "null"],
33
      "description": "the reqional state of the library"
34
    },
35
    "country": {
36
      "type": ["string", "null"],
37
      "description": "the county of the library"
38
    },
39
    "phone": {
40
      "type": ["string", "null"],
41
      "description": "the primary phone of the library"
42
    },
43
    "fax": {
44
      "type": ["string", "null"],
45
      "description": "the fax number of the library"
46
    },
47
    "email": {
48
      "type": ["string", "null"],
49
      "description": "the primary email address of the library"
50
    },
51
    "illemail": {
52
      "type": ["string", "null"],
53
      "description": "the ILL staff email address of the library"
54
    },
55
    "reply_to_email": {
56
      "type": ["string", "null"],
57
      "description": "the email to be used as a Reply-To"
58
    },
59
    "return_path_email": {
60
      "type": ["string", "null"],
61
      "description": "the email to be used as Return-Path"
62
    },
63
    "url": {
64
      "type": ["string", "null"],
65
      "description": "the URL for your library or branch's website"
66
    },
67
    "ip": {
68
      "type": ["string", "null"],
69
      "description": "the IP address for your library or branch"
70
    },
71
    "notes": {
72
      "type": ["string", "null"],
73
      "description": "notes related to your library or branch"
74
    },
75
    "opac_info": {
76
      "type": ["string", "null"],
77
      "description": "HTML that displays in OPAC"
78
    },
79
    "geolocation": {
80
      "type": ["string", "null"],
81
      "description": "geolocation of your library"
82
    },
83
    "marc_org_code": {
84
        "type": [ "string", "null" ],
85
        "description": "MARC Organization Code, see http://www.loc.gov/marc/organizations/orgshome.html, when empty defaults to syspref MARCOrgCode"
86
    },
87
    "pickup_location": {
88
        "type": "boolean",
89
        "description": "If the library can act as a pickup location"
90
    },
91
    "public": {
92
        "type": "boolean",
93
        "description": "If the library is visible to the public"
94
    },
95
    "smtp_server": {
96
        "type": ["object", "null"],
97
        "description": "The library effective SMTP server"
98
    },
99
    "needs_override": {
100
        "type": "boolean",
101
        "description": "If the library needs an override to act as pickup location for a hold"
102
    }
103
  },
104
  "additionalProperties": false,
105
  "required": ["library_id", "name"]
106
}
(-)a/api/v1/swagger/definitions/library.yaml (+123 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  library_id:
5
    $ref: ../x-primitives.yaml#/library_id
6
  name:
7
    type: string
8
    description: Printable name of library
9
  address1:
10
    type:
11
      - string
12
      - "null"
13
    description: the first address line of the library
14
  address2:
15
    type:
16
      - string
17
      - "null"
18
    description: the second address line of the library
19
  address3:
20
    type:
21
      - string
22
      - "null"
23
    description: the third address line of the library
24
  postal_code:
25
    type:
26
      - string
27
      - "null"
28
    description: the postal code of the library
29
  city:
30
    type:
31
      - string
32
      - "null"
33
    description: the city or province of the library
34
  state:
35
    type:
36
      - string
37
      - "null"
38
    description: the reqional state of the library
39
  country:
40
    type:
41
      - string
42
      - "null"
43
    description: the county of the library
44
  phone:
45
    type:
46
      - string
47
      - "null"
48
    description: the primary phone of the library
49
  fax:
50
    type:
51
      - string
52
      - "null"
53
    description: the fax number of the library
54
  email:
55
    type:
56
      - string
57
      - "null"
58
    description: the primary email address of the library
59
  illemail:
60
    type:
61
      - string
62
      - "null"
63
    description: the ILL staff email address of the library
64
  reply_to_email:
65
    type:
66
      - string
67
      - "null"
68
    description: the email to be used as a Reply-To
69
  return_path_email:
70
    type:
71
      - string
72
      - "null"
73
    description: the email to be used as Return-Path
74
  url:
75
    type:
76
      - string
77
      - "null"
78
    description: the URL for your library or branch's website
79
  ip:
80
    type:
81
      - string
82
      - "null"
83
    description: the IP address for your library or branch
84
  notes:
85
    type:
86
      - string
87
      - "null"
88
    description: notes related to your library or branch
89
  opac_info:
90
    type:
91
      - string
92
      - "null"
93
    description: HTML that displays in OPAC
94
  geolocation:
95
    type:
96
      - string
97
      - "null"
98
    description: geolocation of your library
99
  marc_org_code:
100
    type:
101
      - string
102
      - "null"
103
    description: MARC Organization Code, see
104
      http://www.loc.gov/marc/organizations/orgshome.html, when empty defaults
105
      to syspref MARCOrgCode
106
  pickup_location:
107
    type: boolean
108
    description: If the library can act as a pickup location
109
  public:
110
    type: boolean
111
    description: If the library is visible to the public
112
  smtp_server:
113
    type:
114
      - object
115
      - "null"
116
    description: The library effective SMTP server
117
  needs_override:
118
    type: boolean
119
    description: If the library needs an override to act as pickup location for a hold
120
additionalProperties: false
121
required:
122
  - library_id
123
  - name
(-)a/api/v1/swagger/definitions/order.json (-335 lines)
Lines 1-335 Link Here
1
{
2
    "type": "object",
3
    "properties": {
4
        "order_id": {
5
            "type": "integer",
6
            "description": "Internally assigned order identifier"
7
        },
8
        "biblio_id": {
9
            "type": [
10
                "integer",
11
                "null"
12
            ],
13
            "description": "Identifier for the linked bibliographic record"
14
        },
15
        "created_by": {
16
            "type": [
17
                "integer",
18
                "null"
19
            ],
20
            "description": "Interal patron identifier of the order line creator"
21
        },
22
        "entry_date": {
23
            "type": [
24
                "string",
25
                "null"
26
            ],
27
            "format": "date",
28
            "description": "Date the bib was added to the basket"
29
        },
30
        "quantity": {
31
            "type": [
32
                "integer",
33
                "null"
34
            ],
35
            "description": "Ordered quantity"
36
        },
37
        "currency": {
38
            "type": [
39
                "string",
40
                "null"
41
            ],
42
            "description": "Currency used for the purchase"
43
        },
44
        "list_price": {
45
            "type": [
46
                "number",
47
                "null"
48
            ],
49
            "description": "Vendor price for the line item"
50
        },
51
        "replacement_price": {
52
            "type": [
53
                "number",
54
                "null"
55
            ],
56
            "description": "Replacement cost for this item"
57
        },
58
        "date_received": {
59
            "type": [
60
                "string",
61
                "null"
62
            ],
63
            "format": "date",
64
            "description": "Date the order was received"
65
        },
66
        "invoice_id": {
67
            "type": [
68
                "integer",
69
                "null"
70
            ],
71
            "description": "Id of the order invoice"
72
        },
73
        "shipping_cost": {
74
            "type": [
75
                "number",
76
                "null"
77
            ],
78
            "description": "Shipping cost"
79
        },
80
        "unit_price": {
81
            "type": [
82
                "number",
83
                "null"
84
            ],
85
            "description": "The actual cost entered when receiving this line item"
86
        },
87
        "unit_price_tax_excluded": {
88
            "type": [
89
                "number",
90
                "null"
91
            ],
92
            "description": "Unit price excluding tax (on receiving)"
93
        },
94
        "unit_price_tax_included": {
95
            "type": [
96
                "number",
97
                "null"
98
            ],
99
            "description": "Unit price including tax (on receiving)"
100
        },
101
        "quantity_received": {
102
            "type": "integer",
103
            "description": "Quantity received so far"
104
        },
105
        "cancellation_date": {
106
            "type": [
107
                "string",
108
                "null"
109
            ],
110
            "format": "date",
111
            "description": "Date the line item was deleted"
112
        },
113
        "cancellation_reason": {
114
            "type": [
115
                "string",
116
                "null"
117
            ],
118
            "description": "Reason of cancellation"
119
        },
120
        "internal_note": {
121
            "type": [
122
                "string",
123
                "null"
124
            ],
125
            "description": "Notes related to this order line, made for staff"
126
        },
127
        "vendor_note": {
128
            "type": [
129
                "string",
130
                "null"
131
            ],
132
            "description": "Notes related to this order line, made for vendor"
133
        },
134
        "basket_id": {
135
            "type": [
136
                "integer",
137
                "null"
138
            ],
139
            "description": "Basket this order is linked to"
140
        },
141
        "timestamp": {
142
            "type": "string",
143
            "format": "date-time",
144
            "description": "Date and time this order line was last modified"
145
        },
146
        "rrp": {
147
            "type": [
148
                "number",
149
                "null"
150
            ],
151
            "description": "Retail cost for this item"
152
        },
153
        "rrp_tax_excluded": {
154
            "type": [
155
                "number",
156
                "null"
157
            ],
158
            "description": "Replacement cost for this item (tax excluded)"
159
        },
160
        "rrp_tax_included": {
161
            "type": [
162
                "number",
163
                "null"
164
            ],
165
            "description": "Replacement cost for this item (tax included)"
166
        },
167
        "ecost": {
168
            "type": [
169
                "number",
170
                "null"
171
            ],
172
            "description": "Effective cost"
173
        },
174
        "ecost_tax_excluded": {
175
            "type": [
176
                "number",
177
                "null"
178
            ],
179
            "description": "Effective cost (tax excluded)"
180
        },
181
        "ecost_tax_included": {
182
            "type": [
183
                "number",
184
                "null"
185
            ],
186
            "description": "Effective cost (tax included)"
187
        },
188
        "tax_rate_on_ordering": {
189
            "type": [
190
                "number",
191
                "null"
192
            ],
193
            "description": "Tax rate on ordering (%)"
194
        },
195
        "tax_rate_on_receiving": {
196
            "type": [
197
                "number",
198
                "null"
199
            ],
200
            "description": "Tax rate on receiving (%)"
201
        },
202
        "tax_value_on_ordering": {
203
            "type": [
204
                "number",
205
                "null"
206
            ],
207
            "description": "Tax value on ordering"
208
        },
209
        "tax_value_on_receiving": {
210
            "type": [
211
                "number",
212
                "null"
213
            ],
214
            "description": "Tax value on receiving"
215
        },
216
        "discount_rate": {
217
            "type": [
218
                "number",
219
                "null"
220
            ],
221
            "description": "Discount rate"
222
        },
223
        "fund_id": {
224
            "type": "integer",
225
            "description": "Internal identifier for the fund this order goes against"
226
        },
227
        "statistics_1": {
228
            "type": [
229
                "string",
230
                "null"
231
            ],
232
            "description": "Statistical field"
233
        },
234
        "statistics_2": {
235
            "type": [
236
                "string",
237
                "null"
238
            ],
239
            "description": "Statistical field (2)"
240
        },
241
        "statistics_1_authcat": {
242
            "type": [
243
                "string",
244
                "null"
245
            ],
246
            "description": "Statistical category for this order"
247
        },
248
        "statistics_2_authcat": {
249
            "type": [
250
                "string",
251
                "null"
252
            ],
253
            "description": "Statistical category for this order (2)"
254
        },
255
        "uncertain_price": {
256
            "type": "boolean",
257
            "description": "If this price was uncertain"
258
        },
259
        "claims_count": {
260
            "type": "integer",
261
            "description": "Generated claim letters count"
262
        },
263
        "last_claim_date": {
264
            "type": [
265
                "string",
266
                "null"
267
            ],
268
            "format": "date",
269
            "description": "Last date a claim letter was generated"
270
        },
271
        "subscription_id": {
272
            "type": [
273
                "integer",
274
                "null"
275
            ],
276
            "description": "Subscription ID linking the order to a subscription"
277
        },
278
        "parent_order_id": {
279
            "type": [
280
                "integer",
281
                "null"
282
            ],
283
            "description": "Order ID of parent order line if exists"
284
        },
285
        "status": {
286
            "type": "string",
287
            "enum": [
288
                "new",
289
                "ordered",
290
                "partial",
291
                "complete",
292
                "cancelled"
293
            ],
294
            "description": "The current order status"
295
        },
296
        "basket": {
297
            "type": [
298
                "object",
299
                "null"
300
            ]
301
        },
302
        "biblio": {
303
            "type": [
304
                "object",
305
                "null"
306
            ]
307
        },
308
        "current_item_level_holds_count": {
309
            "type": "integer",
310
            "description": "Current holds count for associated items"
311
        },
312
        "fund": {
313
            "type": [
314
                "object",
315
                "null"
316
            ]
317
        },
318
        "invoice": {
319
            "type": [
320
                "object",
321
                "null"
322
            ]
323
        },
324
        "items": {
325
            "type": "array"
326
        },
327
        "subscription": {
328
            "type": [
329
                "object",
330
                "null"
331
            ]
332
        }
333
    },
334
    "additionalProperties": false
335
}
(-)a/api/v1/swagger/definitions/order.yaml (+241 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  order_id:
5
    type: integer
6
    description: Internally assigned order identifier
7
  biblio_id:
8
    type:
9
      - integer
10
      - "null"
11
    description: Identifier for the linked bibliographic record
12
  created_by:
13
    type:
14
      - integer
15
      - "null"
16
    description: Interal patron identifier of the order line creator
17
  entry_date:
18
    type:
19
      - string
20
      - "null"
21
    format: date
22
    description: Date the bib was added to the basket
23
  quantity:
24
    type:
25
      - integer
26
      - "null"
27
    description: Ordered quantity
28
  currency:
29
    type:
30
      - string
31
      - "null"
32
    description: Currency used for the purchase
33
  list_price:
34
    type:
35
      - number
36
      - "null"
37
    description: Vendor price for the line item
38
  replacement_price:
39
    type:
40
      - number
41
      - "null"
42
    description: Replacement cost for this item
43
  date_received:
44
    type:
45
      - string
46
      - "null"
47
    format: date
48
    description: Date the order was received
49
  invoice_id:
50
    type:
51
      - integer
52
      - "null"
53
    description: Id of the order invoice
54
  shipping_cost:
55
    type:
56
      - number
57
      - "null"
58
    description: Shipping cost
59
  unit_price:
60
    type:
61
      - number
62
      - "null"
63
    description: The actual cost entered when receiving this line item
64
  unit_price_tax_excluded:
65
    type:
66
      - number
67
      - "null"
68
    description: Unit price excluding tax (on receiving)
69
  unit_price_tax_included:
70
    type:
71
      - number
72
      - "null"
73
    description: Unit price including tax (on receiving)
74
  quantity_received:
75
    type: integer
76
    description: Quantity received so far
77
  cancellation_date:
78
    type:
79
      - string
80
      - "null"
81
    format: date
82
    description: Date the line item was deleted
83
  cancellation_reason:
84
    type:
85
      - string
86
      - "null"
87
    description: Reason of cancellation
88
  internal_note:
89
    type:
90
      - string
91
      - "null"
92
    description: Notes related to this order line, made for staff
93
  vendor_note:
94
    type:
95
      - string
96
      - "null"
97
    description: Notes related to this order line, made for vendor
98
  basket_id:
99
    type:
100
      - integer
101
      - "null"
102
    description: Basket this order is linked to
103
  timestamp:
104
    type: string
105
    format: date-time
106
    description: Date and time this order line was last modified
107
  rrp:
108
    type:
109
      - number
110
      - "null"
111
    description: Retail cost for this item
112
  rrp_tax_excluded:
113
    type:
114
      - number
115
      - "null"
116
    description: Replacement cost for this item (tax excluded)
117
  rrp_tax_included:
118
    type:
119
      - number
120
      - "null"
121
    description: Replacement cost for this item (tax included)
122
  ecost:
123
    type:
124
      - number
125
      - "null"
126
    description: Effective cost
127
  ecost_tax_excluded:
128
    type:
129
      - number
130
      - "null"
131
    description: Effective cost (tax excluded)
132
  ecost_tax_included:
133
    type:
134
      - number
135
      - "null"
136
    description: Effective cost (tax included)
137
  tax_rate_on_ordering:
138
    type:
139
      - number
140
      - "null"
141
    description: Tax rate on ordering (%)
142
  tax_rate_on_receiving:
143
    type:
144
      - number
145
      - "null"
146
    description: Tax rate on receiving (%)
147
  tax_value_on_ordering:
148
    type:
149
      - number
150
      - "null"
151
    description: Tax value on ordering
152
  tax_value_on_receiving:
153
    type:
154
      - number
155
      - "null"
156
    description: Tax value on receiving
157
  discount_rate:
158
    type:
159
      - number
160
      - "null"
161
    description: Discount rate
162
  fund_id:
163
    type: integer
164
    description: Internal identifier for the fund this order goes against
165
  statistics_1:
166
    type:
167
      - string
168
      - "null"
169
    description: Statistical field
170
  statistics_2:
171
    type:
172
      - string
173
      - "null"
174
    description: Statistical field (2)
175
  statistics_1_authcat:
176
    type:
177
      - string
178
      - "null"
179
    description: Statistical category for this order
180
  statistics_2_authcat:
181
    type:
182
      - string
183
      - "null"
184
    description: Statistical category for this order (2)
185
  uncertain_price:
186
    type: boolean
187
    description: If this price was uncertain
188
  claims_count:
189
    type: integer
190
    description: Generated claim letters count
191
  last_claim_date:
192
    type:
193
      - string
194
      - "null"
195
    format: date
196
    description: Last date a claim letter was generated
197
  subscription_id:
198
    type:
199
      - integer
200
      - "null"
201
    description: Subscription ID linking the order to a subscription
202
  parent_order_id:
203
    type:
204
      - integer
205
      - "null"
206
    description: Order ID of parent order line if exists
207
  status:
208
    type: string
209
    enum:
210
      - new
211
      - ordered
212
      - partial
213
      - complete
214
      - cancelled
215
    description: The current order status
216
  basket:
217
    type:
218
      - object
219
      - "null"
220
  biblio:
221
    type:
222
      - object
223
      - "null"
224
  current_item_level_holds_count:
225
    type: integer
226
    description: Current holds count for associated items
227
  fund:
228
    type:
229
      - object
230
      - "null"
231
  invoice:
232
    type:
233
      - object
234
      - "null"
235
  items:
236
    type: array
237
  subscription:
238
    type:
239
      - object
240
      - "null"
241
additionalProperties: false
(-)a/api/v1/swagger/definitions/patron.json (-296 lines)
Lines 1-296 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "patron_id": {
5
      "$ref": "../x-primitives.json#/patron_id"
6
    },
7
    "cardnumber": {
8
      "$ref": "../x-primitives.json#/cardnumber"
9
    },
10
    "surname": {
11
      "$ref": "../x-primitives.json#/surname"
12
    },
13
    "firstname": {
14
      "$ref": "../x-primitives.json#/firstname"
15
    },
16
    "title": {
17
      "type": ["string", "null"],
18
      "description": "patron's title"
19
    },
20
    "other_name": {
21
      "type": ["string", "null"],
22
      "description": "any other names associated with the patron"
23
    },
24
    "initials": {
25
      "type": ["string", "null"],
26
      "description": "initials of the patron"
27
    },
28
    "street_number": {
29
      "type": ["string", "null"],
30
      "description": "street number of patron's primary address"
31
    },
32
    "street_type": {
33
      "type": ["string", "null"],
34
      "description": "street type of patron's primary address"
35
    },
36
    "address": {
37
      "type": ["string", "null"],
38
      "description": "first address line of patron's primary address"
39
    },
40
    "address2": {
41
      "type": ["string", "null"],
42
      "description": "second address line of patron's primary address"
43
    },
44
    "city": {
45
      "type": ["string", "null"],
46
      "description": "city or town of patron's primary address"
47
    },
48
    "state": {
49
      "type": ["string", "null"],
50
      "description": "state or province of patron's primary address"
51
    },
52
    "postal_code": {
53
      "type": ["string", "null"],
54
      "description": "zip or postal code of patron's primary address"
55
    },
56
    "country": {
57
      "type": ["string", "null"],
58
      "description": "country of patron's primary address"
59
    },
60
    "email": {
61
      "$ref": "../x-primitives.json#/email"
62
    },
63
    "phone": {
64
      "$ref": "../x-primitives.json#/phone"
65
    },
66
    "mobile": {
67
      "type": ["string", "null"],
68
      "description": "the other phone number for patron's primary address"
69
    },
70
    "fax": {
71
      "type": ["string", "null"],
72
      "description": "fax number for patron's primary address"
73
    },
74
    "secondary_email": {
75
      "type": ["string", "null"],
76
      "description": "secondary email address for patron's primary address"
77
    },
78
    "secondary_phone": {
79
      "type": ["string", "null"],
80
      "description": "secondary phone number for patron's primary address"
81
    },
82
    "altaddress_street_number": {
83
      "type": ["string", "null"],
84
      "description": "street number of patron's alternate address"
85
    },
86
    "altaddress_street_type": {
87
      "type": ["string", "null"],
88
      "description": "street type of patron's alternate address"
89
    },
90
    "altaddress_address": {
91
      "type": ["string", "null"],
92
      "description": "first address line of patron's alternate address"
93
    },
94
    "altaddress_address2": {
95
      "type": ["string", "null"],
96
      "description": "second address line of patron's alternate address"
97
    },
98
    "altaddress_city": {
99
      "type": ["string", "null"],
100
      "description": "city or town of patron's alternate address"
101
    },
102
    "altaddress_state": {
103
      "type": ["string", "null"],
104
      "description": "state or province of patron's alternate address"
105
    },
106
    "altaddress_postal_code": {
107
      "type": ["string", "null"],
108
      "description": "zip or postal code of patron's alternate address"
109
    },
110
    "altaddress_country": {
111
      "type": ["string", "null"],
112
      "description": "country of patron's alternate address"
113
    },
114
    "altaddress_email": {
115
      "type": ["string", "null"],
116
      "description": "email address for patron's alternate address"
117
    },
118
    "altaddress_phone": {
119
      "type": ["string", "null"],
120
      "description": "phone number for patron's alternate address"
121
    },
122
    "date_of_birth": {
123
      "type": ["string", "null"],
124
      "format": "date",
125
      "description": "patron's date of birth"
126
    },
127
    "library_id": {
128
      "type": "string",
129
      "description": "Internal identifier for the patron's home library"
130
    },
131
    "category_id": {
132
      "type": "string",
133
      "description": "Internal identifier for the patron's category"
134
    },
135
    "date_enrolled": {
136
      "type": ["string", "null"],
137
      "format": "date",
138
      "description": "date the patron was added to Koha"
139
    },
140
    "expiry_date": {
141
      "type": ["string", "null"],
142
      "format": "date",
143
      "description": "date the patron's card is set to expire"
144
    },
145
    "date_renewed": {
146
      "type": ["string", "null"],
147
      "format": "date",
148
      "description": "date the patron's card was last renewed"
149
    },
150
    "incorrect_address": {
151
      "type": ["boolean", "null"],
152
      "description": "set to 1 if library marked this patron as having an unconfirmed address"
153
    },
154
    "patron_card_lost": {
155
      "type": ["boolean", "null"],
156
      "description": "set to 1 if library marked this patron as having lost his card"
157
    },
158
    "restricted": {
159
      "type": "boolean",
160
      "readOnly": true,
161
      "description": "If any restriction applies to the patron"
162
    },
163
    "staff_notes": {
164
      "type": ["string", "null"],
165
      "description": "a note on the patron's account"
166
    },
167
    "relationship_type": {
168
      "type": ["string", "null"],
169
      "description": "used for children to include the relationship to their guarantor"
170
    },
171
    "gender": {
172
      "type": ["string", "null"],
173
      "description": "patron's gender"
174
    },
175
    "userid": {
176
      "type": ["string", "null"],
177
      "description": "patron's login"
178
    },
179
    "opac_notes": {
180
      "type": ["string", "null"],
181
      "description": "a note on the patron's account visible in OPAC and staff interface"
182
    },
183
    "altaddress_notes": {
184
      "type": ["string", "null"],
185
      "description": "a note related to patron's alternate address"
186
    },
187
    "statistics_1": {
188
      "type": ["string", "null"],
189
      "description": "a field that can be used for any information unique to the library"
190
    },
191
    "statistics_2": {
192
      "type": ["string", "null"],
193
      "description": "a field that can be used for any information unique to the library"
194
    },
195
    "autorenew_checkouts": {
196
      "type": "boolean",
197
      "description": "indicate whether auto-renewal is allowed for patron"
198
    },
199
    "altcontact_firstname": {
200
      "type": ["string", "null"],
201
      "description": "first name of alternate contact for the patron"
202
    },
203
    "altcontact_surname": {
204
      "type": ["string", "null"],
205
      "description": "surname or last name of the alternate contact for the patron"
206
    },
207
    "altcontact_address": {
208
      "type": ["string", "null"],
209
      "description": "the first address line for the alternate contact for the patron"
210
    },
211
    "altcontact_address2": {
212
      "type": ["string", "null"],
213
      "description": "the second address line for the alternate contact for the patron"
214
    },
215
    "altcontact_city": {
216
      "type": ["string", "null"],
217
      "description": "the city for the alternate contact for the patron"
218
    },
219
    "altcontact_state": {
220
      "type": ["string", "null"],
221
      "description": "the state for the alternate contact for the patron"
222
    },
223
    "altcontact_postal_code": {
224
      "type": ["string", "null"],
225
      "description": "the zipcode for the alternate contact for the patron"
226
    },
227
    "altcontact_country": {
228
      "type": ["string", "null"],
229
      "description": "the country for the alternate contact for the patron"
230
    },
231
    "altcontact_phone": {
232
      "type": ["string", "null"],
233
      "description": "the phone number for the alternate contact for the patron"
234
    },
235
    "sms_number": {
236
      "type": ["string", "null"],
237
      "description": "the mobile phone number where the patron would like to receive notices (if SMS turned on)"
238
    },
239
    "sms_provider_id": {
240
      "type": ["integer", "null"],
241
      "description": "the provider of the mobile phone number defined in smsalertnumber"
242
    },
243
    "privacy": {
244
      "type": "integer",
245
      "description": "patron's privacy settings related to their checkout history"
246
    },
247
    "privacy_guarantor_checkouts": {
248
      "type": "integer",
249
      "description": "controls if relatives can see this patron's checkouts"
250
    },
251
    "privacy_guarantor_fines": {
252
      "type": "boolean",
253
      "description": "controls if relatives can see this patron's fines"
254
    },
255
    "check_previous_checkout": {
256
      "type": "string",
257
      "description": "produce a warning for this patron if this item has previously been checked out to this patron if 'yes', not if 'no', defer to category setting if 'inherit'"
258
    },
259
    "updated_on": {
260
      "type": "string",
261
      "format": "date-time",
262
      "description": "time of last change could be useful for synchronization with external systems (among others)"
263
    },
264
    "last_seen": {
265
      "type": ["string", "null"],
266
      "format": "date-time",
267
      "description": "last time a patron has been seen (connected at the OPAC or staff interface)"
268
    },
269
    "lang": {
270
      "type": "string",
271
      "description": "lang to use to send notices to this patron"
272
    },
273
    "login_attempts": {
274
      "type": ["integer", "null"],
275
      "description": "number of failed login attemps"
276
    },
277
    "overdrive_auth_token": {
278
      "type": ["string", "null"],
279
      "description": "persist OverDrive auth token"
280
    },
281
    "anonymized": {
282
      "type": "boolean",
283
      "readOnly": true,
284
      "description": "If the patron has been anonymized"
285
    },
286
    "extended_attributes": {
287
      "type": "array",
288
      "description": "patron's extended attributes",
289
      "items": {
290
        "$ref": "patron_extended_attribute.json"
291
      }
292
    }
293
  },
294
  "additionalProperties": false,
295
  "required": ["surname", "address", "city", "library_id", "category_id"]
296
}
(-)a/api/v1/swagger/definitions/patron.yaml (+337 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  patron_id:
5
    $ref: ../x-primitives.yaml#/patron_id
6
  cardnumber:
7
    $ref: ../x-primitives.yaml#/cardnumber
8
  surname:
9
    $ref: ../x-primitives.yaml#/surname
10
  firstname:
11
    $ref: ../x-primitives.yaml#/firstname
12
  title:
13
    type:
14
      - string
15
      - "null"
16
    description: patron's title
17
  other_name:
18
    type:
19
      - string
20
      - "null"
21
    description: any other names associated with the patron
22
  initials:
23
    type:
24
      - string
25
      - "null"
26
    description: initials of the patron
27
  street_number:
28
    type:
29
      - string
30
      - "null"
31
    description: street number of patron's primary address
32
  street_type:
33
    type:
34
      - string
35
      - "null"
36
    description: street type of patron's primary address
37
  address:
38
    type:
39
      - string
40
      - "null"
41
    description: first address line of patron's primary address
42
  address2:
43
    type:
44
      - string
45
      - "null"
46
    description: second address line of patron's primary address
47
  city:
48
    type:
49
      - string
50
      - "null"
51
    description: city or town of patron's primary address
52
  state:
53
    type:
54
      - string
55
      - "null"
56
    description: state or province of patron's primary address
57
  postal_code:
58
    type:
59
      - string
60
      - "null"
61
    description: zip or postal code of patron's primary address
62
  country:
63
    type:
64
      - string
65
      - "null"
66
    description: country of patron's primary address
67
  email:
68
    $ref: ../x-primitives.yaml#/email
69
  phone:
70
    $ref: ../x-primitives.yaml#/phone
71
  mobile:
72
    type:
73
      - string
74
      - "null"
75
    description: the other phone number for patron's primary address
76
  fax:
77
    type:
78
      - string
79
      - "null"
80
    description: fax number for patron's primary address
81
  secondary_email:
82
    type:
83
      - string
84
      - "null"
85
    description: secondary email address for patron's primary address
86
  secondary_phone:
87
    type:
88
      - string
89
      - "null"
90
    description: secondary phone number for patron's primary address
91
  altaddress_street_number:
92
    type:
93
      - string
94
      - "null"
95
    description: street number of patron's alternate address
96
  altaddress_street_type:
97
    type:
98
      - string
99
      - "null"
100
    description: street type of patron's alternate address
101
  altaddress_address:
102
    type:
103
      - string
104
      - "null"
105
    description: first address line of patron's alternate address
106
  altaddress_address2:
107
    type:
108
      - string
109
      - "null"
110
    description: second address line of patron's alternate address
111
  altaddress_city:
112
    type:
113
      - string
114
      - "null"
115
    description: city or town of patron's alternate address
116
  altaddress_state:
117
    type:
118
      - string
119
      - "null"
120
    description: state or province of patron's alternate address
121
  altaddress_postal_code:
122
    type:
123
      - string
124
      - "null"
125
    description: zip or postal code of patron's alternate address
126
  altaddress_country:
127
    type:
128
      - string
129
      - "null"
130
    description: country of patron's alternate address
131
  altaddress_email:
132
    type:
133
      - string
134
      - "null"
135
    description: email address for patron's alternate address
136
  altaddress_phone:
137
    type:
138
      - string
139
      - "null"
140
    description: phone number for patron's alternate address
141
  date_of_birth:
142
    type:
143
      - string
144
      - "null"
145
    format: date
146
    description: patron's date of birth
147
  library_id:
148
    type: string
149
    description: Internal identifier for the patron's home library
150
  category_id:
151
    type: string
152
    description: Internal identifier for the patron's category
153
  date_enrolled:
154
    type:
155
      - string
156
      - "null"
157
    format: date
158
    description: date the patron was added to Koha
159
  expiry_date:
160
    type:
161
      - string
162
      - "null"
163
    format: date
164
    description: date the patron's card is set to expire
165
  date_renewed:
166
    type:
167
      - string
168
      - "null"
169
    format: date
170
    description: date the patron's card was last renewed
171
  incorrect_address:
172
    type:
173
      - boolean
174
      - "null"
175
    description: set to 1 if library marked this patron as having an unconfirmed address
176
  patron_card_lost:
177
    type:
178
      - boolean
179
      - "null"
180
    description: set to 1 if library marked this patron as having lost his card
181
  restricted:
182
    type: boolean
183
    readOnly: true
184
    description: If any restriction applies to the patron
185
  staff_notes:
186
    type:
187
      - string
188
      - "null"
189
    description: a note on the patron's account
190
  relationship_type:
191
    type:
192
      - string
193
      - "null"
194
    description: used for children to include the relationship to their guarantor
195
  gender:
196
    type:
197
      - string
198
      - "null"
199
    description: patron's gender
200
  userid:
201
    type:
202
      - string
203
      - "null"
204
    description: patron's login
205
  opac_notes:
206
    type:
207
      - string
208
      - "null"
209
    description: a note on the patron's account visible in OPAC and staff interface
210
  altaddress_notes:
211
    type:
212
      - string
213
      - "null"
214
    description: a note related to patron's alternate address
215
  statistics_1:
216
    type:
217
      - string
218
      - "null"
219
    description: a field that can be used for any information unique to the library
220
  statistics_2:
221
    type:
222
      - string
223
      - "null"
224
    description: a field that can be used for any information unique to the library
225
  autorenew_checkouts:
226
    type: boolean
227
    description: indicate whether auto-renewal is allowed for patron
228
  altcontact_firstname:
229
    type:
230
      - string
231
      - "null"
232
    description: first name of alternate contact for the patron
233
  altcontact_surname:
234
    type:
235
      - string
236
      - "null"
237
    description: surname or last name of the alternate contact for the patron
238
  altcontact_address:
239
    type:
240
      - string
241
      - "null"
242
    description: the first address line for the alternate contact for the patron
243
  altcontact_address2:
244
    type:
245
      - string
246
      - "null"
247
    description: the second address line for the alternate contact for the patron
248
  altcontact_city:
249
    type:
250
      - string
251
      - "null"
252
    description: the city for the alternate contact for the patron
253
  altcontact_state:
254
    type:
255
      - string
256
      - "null"
257
    description: the state for the alternate contact for the patron
258
  altcontact_postal_code:
259
    type:
260
      - string
261
      - "null"
262
    description: the zipcode for the alternate contact for the patron
263
  altcontact_country:
264
    type:
265
      - string
266
      - "null"
267
    description: the country for the alternate contact for the patron
268
  altcontact_phone:
269
    type:
270
      - string
271
      - "null"
272
    description: the phone number for the alternate contact for the patron
273
  sms_number:
274
    type:
275
      - string
276
      - "null"
277
    description: the mobile phone number where the patron would like to receive notices (if
278
      SMS turned on)
279
  sms_provider_id:
280
    type:
281
      - integer
282
      - "null"
283
    description: the provider of the mobile phone number defined in smsalertnumber
284
  privacy:
285
    type: integer
286
    description: patron's privacy settings related to their checkout history
287
  privacy_guarantor_checkouts:
288
    type: integer
289
    description: controls if relatives can see this patron's checkouts
290
  privacy_guarantor_fines:
291
    type: boolean
292
    description: controls if relatives can see this patron's fines
293
  check_previous_checkout:
294
    type: string
295
    description: produce a warning for this patron if this item has previously been checked
296
      out to this patron if 'yes', not if 'no', defer to category setting if
297
      'inherit'
298
  updated_on:
299
    type: string
300
    format: date-time
301
    description: time of last change could be useful for synchronization with external
302
      systems (among others)
303
  last_seen:
304
    type:
305
      - string
306
      - "null"
307
    format: date-time
308
    description: last time a patron has been seen (connected at the OPAC or staff interface)
309
  lang:
310
    type: string
311
    description: lang to use to send notices to this patron
312
  login_attempts:
313
    type:
314
      - integer
315
      - "null"
316
    description: number of failed login attemps
317
  overdrive_auth_token:
318
    type:
319
      - string
320
      - "null"
321
    description: persist OverDrive auth token
322
  anonymized:
323
    type: boolean
324
    readOnly: true
325
    description: If the patron has been anonymized
326
  extended_attributes:
327
    type: array
328
    description: patron's extended attributes
329
    items:
330
      $ref: patron_extended_attribute.yaml
331
additionalProperties: false
332
required:
333
  - surname
334
  - address
335
  - city
336
  - library_id
337
  - category_id
(-)a/api/v1/swagger/definitions/patron_account_credit.json (-44 lines)
Lines 1-44 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "credit_type": {
5
      "type": "string",
6
      "description": "Type of credit ('CREDIT', 'FORGIVEN', 'LOST_FOUND', 'PAYMENT', 'WRITEOFF' )"
7
    },
8
    "amount": {
9
      "type": "number",
10
      "minimum": 0,
11
      "description": "Credit amount"
12
    },
13
    "library_id": {
14
      "type": [ "string", "null" ],
15
      "description": "Internal identifier for the library in which the transaction took place"
16
    },
17
    "account_lines_ids": {
18
        "type": "array",
19
        "items": {
20
            "type": "integer"
21
        },
22
        "description": "List of account line ids the credit goes against (optional)"
23
    },
24
    "payment_type": {
25
        "type": "string",
26
        "description":  "Payment type (only applies when credit_type=payment)"
27
    },
28
    "date": {
29
      "type": "string",
30
      "format": "date",
31
      "description": "Date the credit was recorded (optional)"
32
    },
33
    "description": {
34
      "type": "string",
35
      "description": "Description"
36
    },
37
    "note": {
38
      "type": "string",
39
      "description": "Internal note"
40
    }
41
  },
42
  "required": [ "amount" ],
43
  "additionalProperties": false
44
}
(-)a/api/v1/swagger/definitions/patron_account_credit.yaml (+36 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  credit_type:
5
    type: string
6
    description: Type of credit ('CREDIT', 'FORGIVEN', 'LOST_FOUND', 'PAYMENT', 'WRITEOFF' )
7
  amount:
8
    type: number
9
    minimum: 0
10
    description: Credit amount
11
  library_id:
12
    type:
13
      - string
14
      - "null"
15
    description: Internal identifier for the library in which the transaction took place
16
  account_lines_ids:
17
    type: array
18
    items:
19
      type: integer
20
    description: List of account line ids the credit goes against (optional)
21
  payment_type:
22
    type: string
23
    description: Payment type (only applies when credit_type=payment)
24
  date:
25
    type: string
26
    format: date
27
    description: Date the credit was recorded (optional)
28
  description:
29
    type: string
30
    description: Description
31
  note:
32
    type: string
33
    description: Internal note
34
required:
35
  - amount
36
additionalProperties: false
(-)a/api/v1/swagger/definitions/patron_balance.json (-40 lines)
Lines 1-40 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "balance": {
5
      "type": "number",
6
      "description": "Signed decimal number"
7
    },
8
    "outstanding_credits": {
9
      "properties": {
10
        "total": {
11
            "type": "number"
12
        },
13
        "lines": {
14
            "type": "array",
15
            "items": {
16
                "$ref": "account_line.json"
17
            }
18
        }
19
      }
20
    },
21
    "outstanding_debits": {
22
      "type": "object",
23
      "properties": {
24
        "total": {
25
            "type": "number"
26
        },
27
        "lines": {
28
            "type": "array",
29
            "items": {
30
                "$ref": "account_line.json"
31
            }
32
        }
33
      }
34
    }
35
  },
36
  "additionalProperties": false,
37
  "required": [
38
    "balance"
39
  ]
40
}
(-)a/api/v1/swagger/definitions/patron_balance.yaml (+26 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  balance:
5
    type: number
6
    description: Signed decimal number
7
  outstanding_credits:
8
    properties:
9
      total:
10
        type: number
11
      lines:
12
        type: array
13
        items:
14
          $ref: account_line.yaml
15
  outstanding_debits:
16
    type: object
17
    properties:
18
      total:
19
        type: number
20
      lines:
21
        type: array
22
        items:
23
          $ref: account_line.yaml
24
additionalProperties: false
25
required:
26
  - balance
(-)a/api/v1/swagger/definitions/patron_extended_attribute.json (-24 lines)
Lines 1-24 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "extended_attribute_id": {
5
      "description": "Internal ID for the extended attribute",
6
      "type": "integer"
7
    },
8
    "type": {
9
      "description": "Extended attribute type",
10
      "type": "string"
11
    },
12
    "value": {
13
      "description": "Extended attribute value",
14
      "type": [
15
        "string"
16
      ]
17
    }
18
  },
19
  "additionalProperties": false,
20
  "required": [
21
    "type",
22
    "value"
23
  ]
24
}
(-)a/api/v1/swagger/definitions/patron_extended_attribute.yaml (+17 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  extended_attribute_id:
5
    description: Internal ID for the extended attribute
6
    type: integer
7
  type:
8
    description: Extended attribute type
9
    type: string
10
  value:
11
    description: Extended attribute value
12
    type:
13
      - string
14
additionalProperties: false
15
required:
16
  - type
17
  - value
(-)a/api/v1/swagger/definitions/quote.json (-22 lines)
Lines 1-22 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "quote_id": {
5
      "$ref": "../x-primitives.json#/quote_id"
6
    },
7
    "source": {
8
      "description": "source of the quote",
9
      "type": "string"
10
    },
11
    "text": {
12
      "description": "text",
13
      "type": ["string", "null"]
14
    },
15
    "displayed_on": {
16
      "description": "Last display date",
17
      "type": ["string", "null"]
18
    }
19
  },
20
  "additionalProperties": false,
21
  "required": ["quote_id", "source", "text"]
22
}
(-)a/api/v1/swagger/definitions/quote.yaml (+23 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  quote_id:
5
    $ref: ../x-primitives.yaml#/quote_id
6
  source:
7
    description: source of the quote
8
    type: string
9
  text:
10
    description: text
11
    type:
12
      - string
13
      - "null"
14
  displayed_on:
15
    description: Last display date
16
    type:
17
      - string
18
      - "null"
19
additionalProperties: false
20
required:
21
  - quote_id
22
  - source
23
  - text
(-)a/api/v1/swagger/definitions/return_claim.json (-94 lines)
Lines 1-94 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "claim_id": {
5
      "type": [
6
        "integer"
7
      ],
8
      "description": "internally assigned return claim identifier"
9
    },
10
    "item_id": {
11
      "type": [
12
        "integer"
13
      ],
14
      "description": "internal identifier of the claimed item"
15
    },
16
    "issue_id": {
17
      "type": [
18
        "integer",
19
        "null"
20
      ],
21
      "description": "internal identifier of the claimed checkout if still checked out"
22
    },
23
    "old_issue_id": {
24
      "type": [
25
        "integer",
26
        "null"
27
      ],
28
      "description": "internal identifier of the claimed checkout if not longer checked out"
29
    },
30
    "patron_id": {
31
      "$ref": "../x-primitives.json#/patron_id"
32
    },
33
    "notes": {
34
      "type": [
35
        "string",
36
        "null"
37
      ],
38
      "description": "notes about this claim"
39
    },
40
    "created_on": {
41
      "type": [
42
        "string",
43
        "null"
44
      ],
45
      "format": "date-time",
46
      "description": "date of claim creation"
47
    },
48
    "created_by": {
49
      "type": [
50
        "integer",
51
        "null"
52
      ],
53
      "description": "patron id of librarian who made the claim"
54
    },
55
    "updated_on": {
56
      "type": [
57
        "string",
58
        "null"
59
      ],
60
      "format": "date-time",
61
      "description": "date the claim was last updated"
62
    },
63
    "updated_by": {
64
      "type": [
65
        "integer",
66
        "null"
67
      ],
68
      "description": "patron id of librarian who last updated the claim"
69
    },
70
    "resolution": {
71
      "type": [
72
        "string",
73
        "null"
74
      ],
75
      "description": "code of resolution type for this claim"
76
    },
77
    "resolved_on": {
78
      "type": [
79
        "string",
80
        "null"
81
      ],
82
      "format": "date-time",
83
      "description": "date the claim was resolved"
84
    },
85
    "resolved_by": {
86
      "type": [
87
        "integer",
88
        "null"
89
      ],
90
      "description": "patron id of librarian who resolved this claim"
91
    }
92
  },
93
  "additionalProperties": false
94
}
(-)a/api/v1/swagger/definitions/return_claim.yaml (+67 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  claim_id:
5
    type:
6
      - integer
7
    description: internally assigned return claim identifier
8
  item_id:
9
    type:
10
      - integer
11
    description: internal identifier of the claimed item
12
  issue_id:
13
    type:
14
      - integer
15
      - "null"
16
    description: internal identifier of the claimed checkout if still checked out
17
  old_issue_id:
18
    type:
19
      - integer
20
      - "null"
21
    description: internal identifier of the claimed checkout if not longer checked out
22
  patron_id:
23
    $ref: ../x-primitives.yaml#/patron_id
24
  notes:
25
    type:
26
      - string
27
      - "null"
28
    description: notes about this claim
29
  created_on:
30
    type:
31
      - string
32
      - "null"
33
    format: date-time
34
    description: date of claim creation
35
  created_by:
36
    type:
37
      - integer
38
      - "null"
39
    description: patron id of librarian who made the claim
40
  updated_on:
41
    type:
42
      - string
43
      - "null"
44
    format: date-time
45
    description: date the claim was last updated
46
  updated_by:
47
    type:
48
      - integer
49
      - "null"
50
    description: patron id of librarian who last updated the claim
51
  resolution:
52
    type:
53
      - string
54
      - "null"
55
    description: code of resolution type for this claim
56
  resolved_on:
57
    type:
58
      - string
59
      - "null"
60
    format: date-time
61
    description: date the claim was resolved
62
  resolved_by:
63
    type:
64
      - integer
65
      - "null"
66
    description: patron id of librarian who resolved this claim
67
additionalProperties: false
(-)a/api/v1/swagger/definitions/smtp_server.json (-57 lines)
Lines 1-57 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "smtp_server_id": {
5
      "type": "integer",
6
      "description": "Internal SMTP server identifier",
7
      "readOnly": true
8
    },
9
    "name": {
10
      "type": "string",
11
      "description": "Name of the SMTP server"
12
    },
13
    "host": {
14
      "type": "string",
15
      "description": "SMTP host name"
16
    },
17
    "port": {
18
      "type": "integer",
19
      "description": "TCP port number"
20
    },
21
    "timeout": {
22
      "type": "integer",
23
      "description": "Maximum time in seconds to wait for server"
24
    },
25
    "ssl_mode": {
26
      "type": "string",
27
      "enum": [
28
        "disabled",
29
        "ssl",
30
        "starttls"
31
      ],
32
      "description": "If SSL/TLS will be used"
33
    },
34
    "user_name": {
35
      "type": [
36
        "string",
37
        "null"
38
      ],
39
      "description": "The user name to use for authentication (optional)"
40
    },
41
    "password": {
42
      "type": [
43
        "string",
44
        "null"
45
      ],
46
      "description": "The password to use for authentication (optional)"
47
    },
48
    "debug": {
49
      "type": "boolean",
50
      "description": "If the SMTP connection is set to debug mode"
51
    }
52
  },
53
  "additionalProperties": false,
54
  "required": [
55
    "name"
56
  ]
57
}
(-)a/api/v1/swagger/definitions/smtp_server.yaml (+42 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  smtp_server_id:
5
    type: integer
6
    description: Internal SMTP server identifier
7
    readOnly: true
8
  name:
9
    type: string
10
    description: Name of the SMTP server
11
  host:
12
    type: string
13
    description: SMTP host name
14
  port:
15
    type: integer
16
    description: TCP port number
17
  timeout:
18
    type: integer
19
    description: Maximum time in seconds to wait for server
20
  ssl_mode:
21
    type: string
22
    enum:
23
      - disabled
24
      - ssl
25
      - starttls
26
    description: If SSL/TLS will be used
27
  user_name:
28
    type:
29
      - string
30
      - "null"
31
    description: The user name to use for authentication (optional)
32
  password:
33
    type:
34
      - string
35
      - "null"
36
    description: The password to use for authentication (optional)
37
  debug:
38
    type: boolean
39
    description: If the SMTP connection is set to debug mode
40
additionalProperties: false
41
required:
42
  - name
(-)a/api/v1/swagger/definitions/transfer_limit.json (-27 lines)
Lines 1-27 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "limit_id": {
5
      "type": "integer",
6
      "description": "Internal transfer limit identifier"
7
    },
8
    "to_library_id": {
9
      "type": "string",
10
      "description": "Internal library id for which library the item is going to"
11
    },
12
    "from_library_id": {
13
      "type": "string",
14
      "description": "Internal library id for which library the item is coming from"
15
    },
16
    "item_type": {
17
      "type": ["string", "null"],
18
      "description": "Itemtype defining the type for this limi"
19
    },
20
    "collection_code": {
21
      "type": ["string", "null"],
22
      "description": "Authorized value for the collection code associated with this limit"
23
    }
24
  },
25
  "additionalProperties": false,
26
  "required": ["to_library_id", "from_library_id"]
27
}
(-)a/api/v1/swagger/definitions/transfer_limit.yaml (+26 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  limit_id:
5
    type: integer
6
    description: Internal transfer limit identifier
7
  to_library_id:
8
    type: string
9
    description: Internal library id for which library the item is going to
10
  from_library_id:
11
    type: string
12
    description: Internal library id for which library the item is coming from
13
  item_type:
14
    type:
15
      - string
16
      - "null"
17
    description: Itemtype defining the type for this limi
18
  collection_code:
19
    type:
20
      - string
21
      - "null"
22
    description: Authorized value for the collection code associated with this limit
23
additionalProperties: false
24
required:
25
  - to_library_id
26
  - from_library_id
(-)a/api/v1/swagger/definitions/vendor.json (-149 lines)
Lines 1-149 Link Here
1
{
2
  "type": "object",
3
  "properties": {
4
    "id": {
5
      "$ref": "../x-primitives.json#/vendor_id"
6
    },
7
    "name": {
8
      "type": [
9
        "string"
10
      ],
11
      "description": "Vendor name"
12
    },
13
    "address1": {
14
      "type": [
15
        "string",
16
        "null"
17
      ],
18
      "description": "Vendor physical address (line 1)"
19
    },
20
    "address2": {
21
      "type": [
22
        "string",
23
        "null"
24
      ],
25
      "description": "Vendor physical address (line 2)"
26
    },
27
    "address3": {
28
      "type": [
29
        "string",
30
        "null"
31
      ],
32
      "description": "Vendor physical address (line 3)"
33
    },
34
    "address4": {
35
      "type": [
36
        "string",
37
        "null"
38
      ],
39
      "description": "Vendor physical address (line 4)"
40
    },
41
    "phone": {
42
      "type": [
43
        "string",
44
        "null"
45
      ],
46
      "description": "Vendor phone number"
47
    },
48
    "fax": {
49
      "type": [
50
        "string",
51
        "null"
52
      ],
53
      "description": "Vendor fax number"
54
    },
55
    "accountnumber": {
56
      "type": [
57
        "string",
58
        "null"
59
      ],
60
      "description": "Vendor account number"
61
    },
62
    "notes": {
63
      "type": [
64
        "string",
65
        "null"
66
      ],
67
      "description": "Vendor notes"
68
    },
69
    "postal": {
70
      "type": [
71
        "string",
72
        "null"
73
      ],
74
      "description": "Vendor postal address"
75
    },
76
    "url": {
77
      "type": [
78
        "string",
79
        "null"
80
      ],
81
      "description": "Vendor web address"
82
    },
83
    "active": {
84
      "type": [
85
        "boolean",
86
        "null"
87
      ],
88
      "description": "Is this vendor active"
89
    },
90
    "list_currency": {
91
      "type": [
92
        "string",
93
        "null"
94
      ],
95
      "description": "List prices currency"
96
    },
97
    "invoice_currency": {
98
      "type": [
99
        "string",
100
        "null"
101
      ],
102
      "description": "Invoice prices currency"
103
    },
104
    "gst": {
105
      "type": [
106
        "boolean",
107
        "null"
108
      ],
109
      "description": "Is the library taxed when buying from this vendor"
110
    },
111
    "list_includes_gst": {
112
      "type": [
113
        "boolean",
114
        "null"
115
      ],
116
      "description": "List prices include taxes"
117
    },
118
    "invoice_includes_gst": {
119
      "type": [
120
        "boolean",
121
        "null"
122
      ],
123
      "description": "Invoice prices include taxes"
124
    },
125
    "tax_rate": {
126
      "type": [
127
        "number",
128
        "null"
129
      ],
130
      "description": "Default tax rate for items ordered from this vendor"
131
    },
132
    "discount": {
133
      "type": [
134
        "number",
135
        "null"
136
      ],
137
      "description": "Default discount rate for items ordered from this vendor"
138
    },
139
    "deliverytime": {
140
      "type": [
141
        "integer",
142
        "null"
143
      ],
144
      "description": "Expected delivery time (in days)"
145
    }
146
  },
147
  "additionalProperties": false,
148
  "required": ["name"]
149
}
(-)a/api/v1/swagger/definitions/vendor.yaml (+107 lines)
Line 0 Link Here
1
---
2
type: object
3
properties:
4
  id:
5
    $ref: ../x-primitives.yaml#/vendor_id
6
  name:
7
    type:
8
      - string
9
    description: Vendor name
10
  address1:
11
    type:
12
      - string
13
      - "null"
14
    description: Vendor physical address (line 1)
15
  address2:
16
    type:
17
      - string
18
      - "null"
19
    description: Vendor physical address (line 2)
20
  address3:
21
    type:
22
      - string
23
      - "null"
24
    description: Vendor physical address (line 3)
25
  address4:
26
    type:
27
      - string
28
      - "null"
29
    description: Vendor physical address (line 4)
30
  phone:
31
    type:
32
      - string
33
      - "null"
34
    description: Vendor phone number
35
  fax:
36
    type:
37
      - string
38
      - "null"
39
    description: Vendor fax number
40
  accountnumber:
41
    type:
42
      - string
43
      - "null"
44
    description: Vendor account number
45
  notes:
46
    type:
47
      - string
48
      - "null"
49
    description: Vendor notes
50
  postal:
51
    type:
52
      - string
53
      - "null"
54
    description: Vendor postal address
55
  url:
56
    type:
57
      - string
58
      - "null"
59
    description: Vendor web address
60
  active:
61
    type:
62
      - boolean
63
      - "null"
64
    description: Is this vendor active
65
  list_currency:
66
    type:
67
      - string
68
      - "null"
69
    description: List prices currency
70
  invoice_currency:
71
    type:
72
      - string
73
      - "null"
74
    description: Invoice prices currency
75
  gst:
76
    type:
77
      - boolean
78
      - "null"
79
    description: Is the library taxed when buying from this vendor
80
  list_includes_gst:
81
    type:
82
      - boolean
83
      - "null"
84
    description: List prices include taxes
85
  invoice_includes_gst:
86
    type:
87
      - boolean
88
      - "null"
89
    description: Invoice prices include taxes
90
  tax_rate:
91
    type:
92
      - number
93
      - "null"
94
    description: Default tax rate for items ordered from this vendor
95
  discount:
96
    type:
97
      - number
98
      - "null"
99
    description: Default discount rate for items ordered from this vendor
100
  deliverytime:
101
    type:
102
      - integer
103
      - "null"
104
    description: Expected delivery time (in days)
105
additionalProperties: false
106
required:
107
  - name
(-)a/api/v1/swagger/parameters.json (-126 lines)
Lines 1-126 Link Here
1
{
2
  "biblio_id_pp": {
3
    "$ref": "parameters/biblio.json#/biblio_id_pp"
4
  },
5
  "advancededitormacro_id_pp": {
6
    "$ref": "parameters/advancededitormacro.json#/advancededitormacro_id_pp"
7
  },
8
  "patron_id_pp": {
9
    "$ref": "parameters/patron.json#/patron_id_pp"
10
  },
11
  "transfer_limit_id_pp": {
12
    "$ref": "parameters/transfer_limit.json#/transfer_limit_id_pp"
13
  },
14
  "patron_id_qp": {
15
    "$ref": "parameters/patron.json#/patron_id_qp"
16
  },
17
  "import_batch_profile_id_pp": {
18
    "$ref": "parameters/import_batch_profile.json#/import_batch_profile_id_pp"
19
  },
20
  "city_id_pp": {
21
    "$ref": "parameters/city.json#/city_id_pp"
22
  },
23
  "hold_id_pp": {
24
    "$ref": "parameters/hold.json#/hold_id_pp"
25
  },
26
  "club_id_pp": {
27
    "$ref": "parameters/club.json#/club_id_pp"
28
  },
29
  "library_id_pp": {
30
    "$ref": "parameters/library.json#/library_id_pp"
31
  },
32
  "item_id_pp": {
33
    "$ref": "parameters/item.json#/item_id_pp"
34
  },
35
  "order_id_pp": {
36
    "$ref": "parameters/order.json#/order_id_pp"
37
  },
38
  "quote_id_pp": {
39
    "$ref": "parameters/quote.json#/quote_id_pp"
40
  },
41
  "smtp_server_id_pp": {
42
    "$ref": "parameters/smtp_server.json#/smtp_server_id_pp"
43
  },
44
  "vendoridPathParam": {
45
    "$ref": "parameters/vendor.json#/vendoridPathParam"
46
  },
47
  "checkout_id_pp": {
48
    "$ref": "parameters/checkout.json#/checkout_id_pp"
49
  },
50
  "seen_pp": {
51
    "$ref": "parameters/checkout.json#/seen_pp"
52
  },
53
  "cash_register_id_pp": {
54
    "$ref": "parameters/cash_register.json#/cash_register_id_pp"
55
  },
56
  "cashup_id_pp": {
57
    "$ref": "parameters/cashup.json#/cashup_id_pp"
58
  },
59
  "match": {
60
    "name": "_match",
61
    "in": "query",
62
    "required": false,
63
    "description": "Matching criteria",
64
    "type": "string",
65
    "enum": [
66
        "contains",
67
        "exact",
68
        "starts_with",
69
        "ends_with"
70
    ]
71
  },
72
  "order_by": {
73
    "name": "_order_by",
74
    "in": "query",
75
    "required": false,
76
    "description": "Sorting criteria",
77
    "type": "array",
78
    "collectionFormat": "csv",
79
    "items": {
80
        "type": "string"
81
    }
82
  },
83
  "page": {
84
    "name": "_page",
85
    "in": "query",
86
    "required": false,
87
    "description": "Page number, for paginated object listing",
88
    "type": "integer"
89
  },
90
  "per_page": {
91
    "name": "_per_page",
92
    "in": "query",
93
    "required": false,
94
    "description": "Page size, for paginated object listing",
95
    "type": "integer"
96
  },
97
  "q_body": {
98
    "name": "query",
99
    "in": "body",
100
    "required": false,
101
    "description": "Query filter sent through request's body",
102
    "schema": {
103
      "type": ["object", "array"]
104
    }
105
  },
106
  "q_param": {
107
    "name": "q",
108
    "in": "query",
109
    "required": false,
110
    "description": "Query filter sent as a request parameter",
111
    "type": "string"
112
  },
113
  "q_header": {
114
    "name": "x-koha-query",
115
    "in": "header",
116
    "required": false,
117
    "description": "Query filter sent as a request header",
118
    "type": "string"
119
  },
120
  "fundidPathParam": {
121
    "$ref": "parameters/fund.json#/fundidPathParam"
122
  },
123
  "suggestion_id_pp": {
124
    "$ref": "parameters/suggestion.json#/suggestion_id_pp"
125
  }
126
}
(-)a/api/v1/swagger/parameters.yaml (+96 lines)
Line 0 Link Here
1
---
2
advancededitormacro_id_pp:
3
  $ref: parameters/advancededitormacro.yaml#/advancededitormacro_id_pp
4
biblio_id_pp:
5
  $ref: parameters/biblio.yaml#/biblio_id_pp
6
cash_register_id_pp:
7
  $ref: parameters/cash_register.yaml#/cash_register_id_pp
8
cashup_id_pp:
9
  $ref: parameters/cashup.yaml#/cashup_id_pp
10
checkout_id_pp:
11
  $ref: parameters/checkout.yaml#/checkout_id_pp
12
city_id_pp:
13
  $ref: parameters/city.yaml#/city_id_pp
14
club_id_pp:
15
  $ref: parameters/club.yaml#/club_id_pp
16
fundidPathParam:
17
  $ref: parameters/fund.yaml#/fundidPathParam
18
hold_id_pp:
19
  $ref: parameters/hold.yaml#/hold_id_pp
20
import_batch_profile_id_pp:
21
  $ref: parameters/import_batch_profile.yaml#/import_batch_profile_id_pp
22
item_id_pp:
23
  $ref: parameters/item.yaml#/item_id_pp
24
library_id_pp:
25
  $ref: parameters/library.yaml#/library_id_pp
26
match:
27
  name: _match
28
  in: query
29
  required: false
30
  description: Matching criteria
31
  type: string
32
  enum:
33
    - contains
34
    - exact
35
    - starts_with
36
    - ends_with
37
order_by:
38
  name: _order_by
39
  in: query
40
  required: false
41
  description: Sorting criteria
42
  type: array
43
  collectionFormat: csv
44
  items:
45
    type: string
46
order_id_pp:
47
  $ref: parameters/order.yaml#/order_id_pp
48
page:
49
  name: _page
50
  in: query
51
  required: false
52
  description: Page number, for paginated object listing
53
  type: integer
54
patron_id_pp:
55
  $ref: parameters/patron.yaml#/patron_id_pp
56
patron_id_qp:
57
  $ref: parameters/patron.yaml#/patron_id_qp
58
per_page:
59
  name: _per_page
60
  in: query
61
  required: false
62
  description: Page size, for paginated object listing
63
  type: integer
64
q_body:
65
  name: query
66
  in: body
67
  required: false
68
  description: Query filter sent through request's body
69
  schema:
70
    type:
71
      - object
72
      - array
73
q_param:
74
  name: q
75
  in: query
76
  required: false
77
  description: Query filter sent as a request parameter
78
  type: string
79
q_header:
80
  name: x-koha-query
81
  in: header
82
  required: false
83
  description: Query filter sent as a request header
84
  type: string
85
quote_id_pp:
86
  $ref: parameters/quote.yaml#/quote_id_pp
87
seen_pp:
88
  $ref: parameters/checkout.yaml#/seen_pp
89
smtp_server_id_pp:
90
  $ref: parameters/smtp_server.yaml#/smtp_server_id_pp
91
suggestion_id_pp:
92
  $ref: parameters/suggestion.yaml#/suggestion_id_pp
93
transfer_limit_id_pp:
94
  $ref: parameters/transfer_limit.yaml#/transfer_limit_id_pp
95
vendoridPathParam:
96
  $ref: parameters/vendor.yaml#/vendoridPathParam
(-)a/api/v1/swagger/parameters/advancededitormacro.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "advancededitormacro_id_pp": {
3
      "name": "advancededitormacro_id",
4
      "in": "path",
5
      "description": "Advanced editor macro internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/advancededitormacro.yaml (+7 lines)
Line 0 Link Here
1
---
2
advancededitormacro_id_pp:
3
  name: advancededitormacro_id
4
  in: path
5
  description: Advanced editor macro internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/biblio.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "biblio_id_pp": {
3
      "name": "biblio_id",
4
      "in": "path",
5
      "description": "Record internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/biblio.yaml (+7 lines)
Line 0 Link Here
1
---
2
biblio_id_pp:
3
  name: biblio_id
4
  in: path
5
  description: Record internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/cash_register.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "cash_register_id_pp": {
3
      "name": "cash_register_id",
4
      "in": "path",
5
      "description": "Cash register internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/cash_register.yaml (+7 lines)
Line 0 Link Here
1
---
2
cash_register_id_pp:
3
  name: cash_register_id
4
  in: path
5
  description: Cash register internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/cashup.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "cashup_id_pp": {
3
      "name": "cashup_id",
4
      "in": "path",
5
      "description": "Cashup internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/cashup.yaml (+7 lines)
Line 0 Link Here
1
---
2
cashup_id_pp:
3
  name: cashup_id
4
  in: path
5
  description: Cashup internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/checkout.json (-16 lines)
Lines 1-16 Link Here
1
{
2
  "checkout_id_pp": {
3
    "name": "checkout_id",
4
    "in": "path",
5
    "description": "Internal checkout identifier",
6
    "required": true,
7
    "type": "integer"
8
  },
9
  "seen_pp": {
10
    "name": "seen",
11
    "in": "query",
12
    "description": "Item was seen flag",
13
    "required": false,
14
    "type": "integer"
15
  }
16
}
(-)a/api/v1/swagger/parameters/checkout.yaml (+13 lines)
Line 0 Link Here
1
---
2
checkout_id_pp:
3
  name: checkout_id
4
  in: path
5
  description: Internal checkout identifier
6
  required: true
7
  type: integer
8
seen_pp:
9
  name: seen
10
  in: query
11
  description: Item was seen flag
12
  required: false
13
  type: integer
(-)a/api/v1/swagger/parameters/city.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "city_id_pp": {
3
      "name": "city_id",
4
      "in": "path",
5
      "description": "City internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/city.yaml (+7 lines)
Line 0 Link Here
1
---
2
city_id_pp:
3
  name: city_id
4
  in: path
5
  description: City internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/club.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "club_id_pp": {
3
        "name": "club_id",
4
        "in": "path",
5
        "description": "Internal club identifier",
6
        "required": true,
7
        "type": "integer"
8
      }
9
}
(-)a/api/v1/swagger/parameters/club.yaml (+7 lines)
Line 0 Link Here
1
---
2
club_id_pp:
3
  name: club_id
4
  in: path
5
  description: Internal club identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/fund.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "fundidPathParam": {
3
      "name": "fund_id",
4
      "in": "path",
5
      "description": "Fund id",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/fund.yaml (+7 lines)
Line 0 Link Here
1
---
2
fundidPathParam:
3
  name: fund_id
4
  in: path
5
  description: Fund id
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/hold.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "hold_id_pp": {
3
    "name": "hold_id",
4
    "in": "path",
5
    "description": "Internal hold identifier",
6
    "required": true,
7
    "type": "integer"
8
  }
9
}
(-)a/api/v1/swagger/parameters/hold.yaml (+7 lines)
Line 0 Link Here
1
---
2
hold_id_pp:
3
  name: hold_id
4
  in: path
5
  description: Internal hold identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/import_batch_profile.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "import_batch_profile_id_pp": {
3
    "name": "import_batch_profile_id",
4
    "in": "path",
5
    "description": "Internal profile identifier",
6
    "required": true,
7
    "type": "integer"
8
  }
9
}
(-)a/api/v1/swagger/parameters/import_batch_profile.yaml (+7 lines)
Line 0 Link Here
1
---
2
import_batch_profile_id_pp:
3
  name: import_batch_profile_id
4
  in: path
5
  description: Internal profile identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/item.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "item_id_pp": {
3
    "name": "item_id",
4
    "in": "path",
5
    "description": "Internal item identifier",
6
    "required": true,
7
    "type": "integer"
8
  }
9
}
(-)a/api/v1/swagger/parameters/item.yaml (+7 lines)
Line 0 Link Here
1
---
2
item_id_pp:
3
  name: item_id
4
  in: path
5
  description: Internal item identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/library.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "library_id_pp": {
3
    "name": "library_id",
4
    "in": "path",
5
    "description": "Internal library identifier",
6
    "required": true,
7
    "type": "string"
8
  }
9
}
(-)a/api/v1/swagger/parameters/library.yaml (+7 lines)
Line 0 Link Here
1
---
2
library_id_pp:
3
  name: library_id
4
  in: path
5
  description: Internal library identifier
6
  required: true
7
  type: string
(-)a/api/v1/swagger/parameters/order.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "order_id_pp": {
3
      "name": "order_id",
4
      "in": "path",
5
      "description": "Internal order identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/order.yaml (+7 lines)
Line 0 Link Here
1
---
2
order_id_pp:
3
  name: order_id
4
  in: path
5
  description: Internal order identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/patron.json (-15 lines)
Lines 1-15 Link Here
1
{
2
  "patron_id_pp": {
3
    "name": "patron_id",
4
    "in": "path",
5
    "description": "Internal patron identifier",
6
    "required": true,
7
    "type": "integer"
8
  },
9
  "patron_id_qp": {
10
    "name": "patron_id",
11
    "in": "query",
12
    "description": "Internal patron identifier",
13
    "type": "integer"
14
  }
15
}
(-)a/api/v1/swagger/parameters/patron.yaml (+12 lines)
Line 0 Link Here
1
---
2
patron_id_pp:
3
  name: patron_id
4
  in: path
5
  description: Internal patron identifier
6
  required: true
7
  type: integer
8
patron_id_qp:
9
  name: patron_id
10
  in: query
11
  description: Internal patron identifier
12
  type: integer
(-)a/api/v1/swagger/parameters/quote.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "quote_id_pp": {
3
      "name": "quote_id",
4
      "in": "path",
5
      "description": "Quote internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/quote.yaml (+7 lines)
Line 0 Link Here
1
---
2
quote_id_pp:
3
  name: quote_id
4
  in: path
5
  description: Quote internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/smtp_server.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "smtp_server_id_pp": {
3
      "name": "smtp_server_id",
4
      "in": "path",
5
      "description": "SMTP server internal identifier",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/smtp_server.yaml (+7 lines)
Line 0 Link Here
1
---
2
smtp_server_id_pp:
3
  name: smtp_server_id
4
  in: path
5
  description: SMTP server internal identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/suggestion.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "suggestion_id_pp": {
3
    "name": "suggestion_id",
4
    "in": "path",
5
    "description": "Internal suggestion identifier",
6
    "required": true,
7
    "type": "integer"
8
  }
9
}
(-)a/api/v1/swagger/parameters/suggestion.yaml (+7 lines)
Line 0 Link Here
1
---
2
suggestion_id_pp:
3
  name: suggestion_id
4
  in: path
5
  description: Internal suggestion identifier
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/parameters/transfer_limit.json (-9 lines)
Lines 1-9 Link Here
1
{
2
  "transfer_limit_id_pp": {
3
    "name": "limit_id",
4
    "in": "path",
5
    "description": "Internal transfer limit identifier",
6
    "required": true,
7
    "type": "string"
8
  }
9
}
(-)a/api/v1/swagger/parameters/transfer_limit.yaml (+7 lines)
Line 0 Link Here
1
---
2
transfer_limit_id_pp:
3
  name: limit_id
4
  in: path
5
  description: Internal transfer limit identifier
6
  required: true
7
  type: string
(-)a/api/v1/swagger/parameters/vendor.json (-9 lines)
Lines 1-9 Link Here
1
{
2
    "vendoridPathParam": {
3
      "name": "vendor_id",
4
      "in": "path",
5
      "description": "Vendor id",
6
      "required": true,
7
      "type": "integer"
8
    }
9
}
(-)a/api/v1/swagger/parameters/vendor.yaml (+7 lines)
Line 0 Link Here
1
---
2
vendoridPathParam:
3
  name: vendor_id
4
  in: path
5
  description: Vendor id
6
  required: true
7
  type: integer
(-)a/api/v1/swagger/paths.json (-215 lines)
Lines 1-215 Link Here
1
{
2
  "/oauth/token": {
3
    "$ref": "paths/oauth.json#/~1oauth~1token"
4
  },
5
  "/acquisitions/orders": {
6
    "$ref": "paths/acquisitions_orders.json#/~1acquisitions~1orders"
7
  },
8
  "/acquisitions/orders/{order_id}": {
9
    "$ref": "paths/acquisitions_orders.json#/~1acquisitions~1orders~1{order_id}"
10
  },
11
  "/acquisitions/vendors": {
12
    "$ref": "paths/acquisitions_vendors.json#/~1acquisitions~1vendors"
13
  },
14
  "/acquisitions/vendors/{vendor_id}": {
15
    "$ref": "paths/acquisitions_vendors.json#/~1acquisitions~1vendors~1{vendor_id}"
16
  },
17
  "/acquisitions/funds": {
18
    "$ref": "paths/acquisitions_funds.json#/~1acquisitions~1funds"
19
  },
20
  "/article_requests/{article_request_id}": {
21
    "$ref": "paths/article_requests.yaml#/~1article_requests~1{article_request_id}"
22
  },
23
  "/biblios/{biblio_id}": {
24
    "$ref": "paths/biblios.json#/~1biblios~1{biblio_id}"
25
  },
26
  "/biblios/{biblio_id}/checkouts": {
27
    "$ref": "paths/biblios.json#/~1biblios~1{biblio_id}~1checkouts"
28
  },
29
  "/biblios/{biblio_id}/items": {
30
    "$ref": "paths/biblios.json#/~1biblios~1{biblio_id}~1items"
31
  },
32
  "/biblios/{biblio_id}/pickup_locations": {
33
    "$ref": "paths/biblios.json#/~1biblios~1{biblio_id}~1pickup_locations"
34
  },
35
  "/cash_registers/{cash_register_id}/cashups": {
36
    "$ref": "paths/cash_registers.json#/~1cash_registers~1{cash_register_id}~1cashups"
37
  },
38
  "/cashups/{cashup_id}": {
39
    "$ref": "paths/cash_registers.json#/~1cashups~1{cashup_id}"
40
  },
41
  "/checkouts": {
42
    "$ref": "paths/checkouts.json#/~1checkouts"
43
  },
44
  "/checkouts/{checkout_id}": {
45
    "$ref": "paths/checkouts.json#/~1checkouts~1{checkout_id}"
46
  },
47
  "/checkouts/{checkout_id}/renewal": {
48
    "$ref": "paths/checkouts.json#/~1checkouts~1{checkout_id}~1renewal"
49
  },
50
  "/circulation-rules/kinds": {
51
    "$ref": "paths/circulation-rules.json#/~1circulation-rules~1kinds"
52
  },
53
  "/cities": {
54
    "$ref": "paths/cities.yaml#/~1cities"
55
  },
56
  "/cities/{city_id}": {
57
    "$ref": "paths/cities.yaml#/~1cities~1{city_id}"
58
  },
59
  "/clubs/{club_id}/holds": {
60
    "$ref": "paths/clubs.json#/~1clubs~1{club_id}~1holds"
61
  },
62
  "/config/smtp_servers": {
63
    "$ref": "paths/config_smtp_servers.json#/~1config~1smtp_servers"
64
  },
65
  "/config/smtp_servers/{smtp_server_id}": {
66
    "$ref": "paths/config_smtp_servers.json#/~1config~1smtp_servers~1{smtp_server_id}"
67
  },
68
  "/holds": {
69
    "$ref": "paths/holds.json#/~1holds"
70
  },
71
  "/holds/{hold_id}": {
72
    "$ref": "paths/holds.json#/~1holds~1{hold_id}"
73
  },
74
  "/holds/{hold_id}/priority": {
75
    "$ref": "paths/holds.json#/~1holds~1{hold_id}~1priority"
76
  },
77
  "/holds/{hold_id}/suspension": {
78
    "$ref": "paths/holds.json#/~1holds~1{hold_id}~1suspension"
79
  },
80
  "/holds/{hold_id}/pickup_locations": {
81
    "$ref": "paths/holds.json#/~1holds~1{hold_id}~1pickup_locations"
82
  },
83
  "/holds/{hold_id}/pickup_location": {
84
    "$ref": "paths/holds.json#/~1holds~1{hold_id}~1pickup_location"
85
  },
86
  "/items": {
87
    "$ref": "paths/items.yaml#/~1items"
88
  },
89
  "/items/{item_id}": {
90
    "$ref": "paths/items.yaml#/~1items~1{item_id}"
91
  },
92
  "/items/{item_id}/pickup_locations": {
93
    "$ref": "paths/items.yaml#/~1items~1{item_id}~1pickup_locations"
94
  },
95
  "/libraries": {
96
    "$ref": "paths/libraries.json#/~1libraries"
97
  },
98
  "/libraries/{library_id}": {
99
    "$ref": "paths/libraries.json#/~1libraries~1{library_id}"
100
  },
101
  "/transfer_limits": {
102
    "$ref": "paths/transfer_limits.yaml#/~1transfer_limits"
103
  },
104
  "/transfer_limits/{limit_id}": {
105
    "$ref": "paths/transfer_limits.yaml#/~1transfer_limits~1{limit_id}"
106
  },
107
  "/transfer_limits/batch": {
108
    "$ref": "paths/transfer_limits.yaml#/~1transfer_limits~1batch"
109
  },
110
  "/checkouts/{checkout_id}/allows_renewal": {
111
    "$ref": "paths/checkouts.json#/~1checkouts~1{checkout_id}~1allows_renewal"
112
  },
113
  "/advanced_editor/macros": {
114
    "$ref": "paths/advancededitormacros.json#/~1advanced_editor~1macros"
115
  },
116
  "/advanced_editor/macros/{advancededitormacro_id}": {
117
    "$ref": "paths/advancededitormacros.json#/~1advanced_editor~1macros~1{advancededitormacro_id}"
118
  },
119
  "/advanced_editor/macros/shared": {
120
    "$ref": "paths/advancededitormacros.json#/~1advanced_editor~1macros~1shared"
121
  },
122
  "/advanced_editor/macros/shared/{advancededitormacro_id}": {
123
    "$ref": "paths/advancededitormacros.json#/~1advanced_editor~1macros~1shared~1{advancededitormacro_id}"
124
  },
125
  "/patrons": {
126
    "$ref": "paths/patrons.json#/~1patrons"
127
  },
128
  "/patrons/{patron_id}": {
129
    "$ref": "paths/patrons.json#/~1patrons~1{patron_id}"
130
  },
131
  "/patrons/{patron_id}/account": {
132
    "$ref": "paths/patrons_account.json#/~1patrons~1{patron_id}~1account"
133
  },
134
  "/patrons/{patron_id}/account/credits": {
135
    "$ref": "paths/patrons_account.json#/~1patrons~1{patron_id}~1account~1credits"
136
  },
137
  "/patrons/{patron_id}/extended_attributes": {
138
    "$ref": "paths/patrons_extended_attributes.json#/~1patrons~1{patron_id}~1extended_attributes"
139
  },
140
  "/patrons/{patron_id}/extended_attributes/{extended_attribute_id}": {
141
    "$ref": "paths/patrons_extended_attributes.json#/~1patrons~1{patron_id}~1extended_attributes~1{extended_attribute_id}"
142
  },
143
  "/patrons/{patron_id}/holds": {
144
    "$ref": "paths/patrons_holds.json#/~1patrons~1{patron_id}~1holds"
145
  },
146
  "/patrons/{patron_id}/password": {
147
    "$ref": "paths/patrons_password.json#/~1patrons~1{patron_id}~1password"
148
  },
149
  "/ill_backends": {
150
    "$ref": "paths/ill_backends.json#/~1ill_backends"
151
  },
152
  "/ill_backends/{ill_backend_id}": {
153
    "$ref": "paths/ill_backends.json#/~1ill_backends~1{ill_backend_id}"
154
  },
155
  "/illrequests": {
156
    "$ref": "paths/illrequests.json#/~1illrequests"
157
  },
158
  "/import_batch_profiles": {
159
    "$ref": "paths/import_batch_profiles.json#/~1import_batch_profiles"
160
  },
161
  "/import_batch_profiles/{import_batch_profile_id}": {
162
    "$ref": "paths/import_batch_profiles.json#/~1import_batch_profiles~1{import_batch_profile_id}"
163
  },
164
  "/rotas/{rota_id}/stages/{stage_id}/position": {
165
    "$ref": "paths/rotas.json#/~1rotas~1{rota_id}~1stages~1{stage_id}~1position"
166
  },
167
  "/public/biblios/{biblio_id}": {
168
    "$ref": "paths/biblios.json#/~1public~1biblios~1{biblio_id}"
169
  },
170
  "/public/biblios/{biblio_id}/items": {
171
    "$ref": "paths/biblios.json#/~1public~1biblios~1{biblio_id}~1items"
172
  },
173
  "/public/libraries": {
174
    "$ref": "paths/libraries.json#/~1public~1libraries"
175
  },
176
  "/public/libraries/{library_id}": {
177
    "$ref": "paths/libraries.json#/~1public~1libraries~1{library_id}"
178
  },
179
  "/public/patrons/{patron_id}/article_requests/{article_request_id}": {
180
    "$ref": "paths/article_requests.yaml#/~1public~1patrons~1{patron_id}~1article_requests~1{article_request_id}"
181
  },
182
  "/public/patrons/{patron_id}/password": {
183
    "$ref": "paths/public_patrons.json#/~1public~1patrons~1{patron_id}~1password"
184
  },
185
  "/public/patrons/{patron_id}/guarantors/can_see_charges": {
186
    "$ref": "paths/public_patrons.json#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_charges"
187
  },
188
  "/public/patrons/{patron_id}/guarantors/can_see_checkouts": {
189
    "$ref": "paths/public_patrons.json#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_checkouts"
190
  },
191
  "/quotes": {
192
    "$ref": "paths/quotes.json#/~1quotes"
193
  },
194
  "/quotes/{quote_id}": {
195
    "$ref": "paths/quotes.json#/~1quotes~1{quote_id}"
196
  },
197
  "/return_claims": {
198
    "$ref": "paths/return_claims.json#/~1return_claims"
199
  },
200
  "/return_claims/{claim_id}/notes": {
201
    "$ref": "paths/return_claims.json#/~1return_claims~1{claim_id}~1notes"
202
  },
203
  "/return_claims/{claim_id}/resolve": {
204
    "$ref": "paths/return_claims.json#/~1return_claims~1{claim_id}~1resolve"
205
  },
206
  "/return_claims/{claim_id}": {
207
    "$ref": "paths/return_claims.json#/~1return_claims~1{claim_id}"
208
  },
209
  "/suggestions": {
210
    "$ref": "paths/suggestions.yaml#/~1suggestions"
211
  },
212
  "/suggestions/{suggestion_id}": {
213
    "$ref": "paths/suggestions.yaml#/~1suggestions~1{suggestion_id}"
214
  }
215
}
(-)a/api/v1/swagger/paths.yaml (+143 lines)
Line 0 Link Here
1
---
2
/oauth/token:
3
  $ref: paths/oauth.yaml#/~1oauth~1token
4
/acquisitions/orders:
5
  $ref: paths/acquisitions_orders.yaml#/~1acquisitions~1orders
6
"/acquisitions/orders/{order_id}":
7
  $ref: paths/acquisitions_orders.yaml#/~1acquisitions~1orders~1{order_id}
8
/acquisitions/vendors:
9
  $ref: paths/acquisitions_vendors.yaml#/~1acquisitions~1vendors
10
"/acquisitions/vendors/{vendor_id}":
11
  $ref: paths/acquisitions_vendors.yaml#/~1acquisitions~1vendors~1{vendor_id}
12
/acquisitions/funds:
13
  $ref: paths/acquisitions_funds.yaml#/~1acquisitions~1funds
14
"/article_requests/{article_request_id}":
15
  $ref: paths/article_requests.yaml#/~1article_requests~1{article_request_id}
16
"/biblios/{biblio_id}":
17
  $ref: paths/biblios.yaml#/~1biblios~1{biblio_id}
18
"/biblios/{biblio_id}/checkouts":
19
  $ref: paths/biblios.yaml#/~1biblios~1{biblio_id}~1checkouts
20
"/biblios/{biblio_id}/items":
21
  $ref: paths/biblios.yaml#/~1biblios~1{biblio_id}~1items
22
"/biblios/{biblio_id}/pickup_locations":
23
  $ref: paths/biblios.yaml#/~1biblios~1{biblio_id}~1pickup_locations
24
"/cash_registers/{cash_register_id}/cashups":
25
  $ref: paths/cash_registers.yaml#/~1cash_registers~1{cash_register_id}~1cashups
26
"/cashups/{cashup_id}":
27
  $ref: paths/cash_registers.yaml#/~1cashups~1{cashup_id}
28
/checkouts:
29
  $ref: paths/checkouts.yaml#/~1checkouts
30
"/checkouts/{checkout_id}":
31
  $ref: paths/checkouts.yaml#/~1checkouts~1{checkout_id}
32
"/checkouts/{checkout_id}/renewal":
33
  $ref: paths/checkouts.yaml#/~1checkouts~1{checkout_id}~1renewal
34
/circulation-rules/kinds:
35
  $ref: paths/circulation-rules.yaml#/~1circulation-rules~1kinds
36
/cities:
37
  $ref: paths/cities.yaml#/~1cities
38
"/cities/{city_id}":
39
  $ref: paths/cities.yaml#/~1cities~1{city_id}
40
"/clubs/{club_id}/holds":
41
  $ref: paths/clubs.yaml#/~1clubs~1{club_id}~1holds
42
/config/smtp_servers:
43
  $ref: paths/config_smtp_servers.yaml#/~1config~1smtp_servers
44
"/config/smtp_servers/{smtp_server_id}":
45
  $ref: paths/config_smtp_servers.yaml#/~1config~1smtp_servers~1{smtp_server_id}
46
/holds:
47
  $ref: paths/holds.yaml#/~1holds
48
"/holds/{hold_id}":
49
  $ref: paths/holds.yaml#/~1holds~1{hold_id}
50
"/holds/{hold_id}/priority":
51
  $ref: paths/holds.yaml#/~1holds~1{hold_id}~1priority
52
"/holds/{hold_id}/suspension":
53
  $ref: paths/holds.yaml#/~1holds~1{hold_id}~1suspension
54
"/holds/{hold_id}/pickup_locations":
55
  $ref: paths/holds.yaml#/~1holds~1{hold_id}~1pickup_locations
56
"/holds/{hold_id}/pickup_location":
57
  $ref: paths/holds.yaml#/~1holds~1{hold_id}~1pickup_location
58
/items:
59
  $ref: paths/items.yaml#/~1items
60
"/items/{item_id}":
61
  $ref: paths/items.yaml#/~1items~1{item_id}
62
"/items/{item_id}/pickup_locations":
63
  $ref: paths/items.yaml#/~1items~1{item_id}~1pickup_locations
64
/libraries:
65
  $ref: paths/libraries.yaml#/~1libraries
66
"/libraries/{library_id}":
67
  $ref: paths/libraries.yaml#/~1libraries~1{library_id}
68
/transfer_limits:
69
  $ref: paths/transfer_limits.yaml#/~1transfer_limits
70
"/transfer_limits/{limit_id}":
71
  $ref: paths/transfer_limits.yaml#/~1transfer_limits~1{limit_id}
72
/transfer_limits/batch:
73
  $ref: paths/transfer_limits.yaml#/~1transfer_limits~1batch
74
"/checkouts/{checkout_id}/allows_renewal":
75
  $ref: paths/checkouts.yaml#/~1checkouts~1{checkout_id}~1allows_renewal
76
/advanced_editor/macros:
77
  $ref: paths/advancededitormacros.yaml#/~1advanced_editor~1macros
78
"/advanced_editor/macros/{advancededitormacro_id}":
79
  $ref: paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1{advancededitormacro_id}
80
/advanced_editor/macros/shared:
81
  $ref: paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1shared
82
"/advanced_editor/macros/shared/{advancededitormacro_id}":
83
  $ref: paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1shared~1{advancededitormacro_id}
84
/patrons:
85
  $ref: paths/patrons.yaml#/~1patrons
86
"/patrons/{patron_id}":
87
  $ref: paths/patrons.yaml#/~1patrons~1{patron_id}
88
"/patrons/{patron_id}/account":
89
  $ref: paths/patrons_account.yaml#/~1patrons~1{patron_id}~1account
90
"/patrons/{patron_id}/account/credits":
91
  $ref: paths/patrons_account.yaml#/~1patrons~1{patron_id}~1account~1credits
92
"/patrons/{patron_id}/extended_attributes":
93
  $ref: paths/patrons_extended_attributes.yaml#/~1patrons~1{patron_id}~1extended_attributes
94
"/patrons/{patron_id}/extended_attributes/{extended_attribute_id}":
95
  $ref: paths/patrons_extended_attributes.yaml#/~1patrons~1{patron_id}~1extended_attributes~1{extended_attribute_id}
96
"/patrons/{patron_id}/holds":
97
  $ref: paths/patrons_holds.yaml#/~1patrons~1{patron_id}~1holds
98
"/patrons/{patron_id}/password":
99
  $ref: paths/patrons_password.yaml#/~1patrons~1{patron_id}~1password
100
/ill_backends:
101
  $ref: paths/ill_backends.yaml#/~1ill_backends
102
"/ill_backends/{ill_backend_id}":
103
  $ref: paths/ill_backends.yaml#/~1ill_backends~1{ill_backend_id}
104
/illrequests:
105
  $ref: paths/illrequests.yaml#/~1illrequests
106
/import_batch_profiles:
107
  $ref: paths/import_batch_profiles.yaml#/~1import_batch_profiles
108
"/import_batch_profiles/{import_batch_profile_id}":
109
  $ref: paths/import_batch_profiles.yaml#/~1import_batch_profiles~1{import_batch_profile_id}
110
"/rotas/{rota_id}/stages/{stage_id}/position":
111
  $ref: paths/rotas.yaml#/~1rotas~1{rota_id}~1stages~1{stage_id}~1position
112
"/public/biblios/{biblio_id}":
113
  $ref: paths/biblios.yaml#/~1public~1biblios~1{biblio_id}
114
"/public/biblios/{biblio_id}/items":
115
  $ref: paths/biblios.yaml#/~1public~1biblios~1{biblio_id}~1items
116
/public/libraries:
117
  $ref: paths/libraries.yaml#/~1public~1libraries
118
"/public/libraries/{library_id}":
119
  $ref: paths/libraries.yaml#/~1public~1libraries~1{library_id}
120
"/public/patrons/{patron_id}/article_requests/{article_request_id}":
121
  $ref: paths/article_requests.yaml#/~1public~1patrons~1{patron_id}~1article_requests~1{article_request_id}
122
"/public/patrons/{patron_id}/password":
123
  $ref: paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1password
124
"/public/patrons/{patron_id}/guarantors/can_see_charges":
125
  $ref: paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_charges
126
"/public/patrons/{patron_id}/guarantors/can_see_checkouts":
127
  $ref: paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_checkouts
128
/quotes:
129
  $ref: paths/quotes.yaml#/~1quotes
130
"/quotes/{quote_id}":
131
  $ref: paths/quotes.yaml#/~1quotes~1{quote_id}
132
/return_claims:
133
  $ref: paths/return_claims.yaml#/~1return_claims
134
"/return_claims/{claim_id}/notes":
135
  $ref: paths/return_claims.yaml#/~1return_claims~1{claim_id}~1notes
136
"/return_claims/{claim_id}/resolve":
137
  $ref: paths/return_claims.yaml#/~1return_claims~1{claim_id}~1resolve
138
"/return_claims/{claim_id}":
139
  $ref: paths/return_claims.yaml#/~1return_claims~1{claim_id}
140
/suggestions:
141
  $ref: paths/suggestions.yaml#/~1suggestions
142
"/suggestions/{suggestion_id}":
143
  $ref: paths/suggestions.yaml#/~1suggestions~1{suggestion_id}
(-)a/api/v1/swagger/paths/acquisitions_funds.json (-94 lines)
Lines 1-94 Link Here
1
{
2
  "/acquisitions/funds": {
3
    "get": {
4
      "x-mojo-to": "Acquisitions::Funds#list",
5
      "operationId": "listFunds",
6
      "tags": ["funds"],
7
      "summary": "List funds",
8
      "produces": [
9
        "application/json"
10
      ],
11
      "parameters": [{
12
        "name": "name",
13
        "in": "query",
14
        "description": "Case insensitive search on fund name",
15
        "required": false,
16
        "type": "string"
17
      },
18
      {
19
        "name": "fund_owner_id",
20
        "in": "query",
21
        "description": "Display only the funds that belongs to the given patron ID",
22
        "required": false,
23
        "type": "integer"
24
      },
25
      {
26
        "$ref": "../parameters.json#/match"
27
      },
28
      {
29
        "$ref": "../parameters.json#/order_by"
30
      },
31
      {
32
        "$ref": "../parameters.json#/page"
33
      },
34
      {
35
        "$ref": "../parameters.json#/per_page"
36
      },
37
      {
38
        "$ref": "../parameters.json#/q_param"
39
      },
40
      {
41
          "$ref": "../parameters.json#/q_body"
42
      },
43
      {
44
          "$ref": "../parameters.json#/q_header"
45
      }],
46
      "responses": {
47
        "200": {
48
          "description": "A list of funds",
49
          "schema": {
50
            "type": "array",
51
            "items": {
52
              "$ref": "../definitions.json#/fund"
53
            }
54
          }
55
        },
56
        "401": {
57
          "description": "Authentication required",
58
          "schema": {
59
            "$ref": "../definitions.json#/error"
60
          }
61
        },
62
        "403": {
63
          "description": "Access forbidden",
64
          "schema": {
65
            "$ref": "../definitions.json#/error"
66
          }
67
        },
68
        "404": {
69
          "description": "Fund not found",
70
          "schema": {
71
            "$ref": "../definitions.json#/error"
72
          }
73
        },
74
        "500": {
75
          "description": "Internal server error",
76
          "schema": {
77
            "$ref": "../definitions.json#/error"
78
          }
79
        },
80
        "503": {
81
          "description": "Under maintenance",
82
          "schema": {
83
            "$ref": "../definitions.json#/error"
84
          }
85
        }
86
      },
87
      "x-koha-authorization": {
88
        "permissions": {
89
          "acquisition": "budget_manage_all"
90
        }
91
      }
92
    }
93
  }
94
}
(-)a/api/v1/swagger/paths/acquisitions_funds.yaml (+58 lines)
Line 0 Link Here
1
---
2
/acquisitions/funds:
3
  get:
4
    x-mojo-to: Acquisitions::Funds#list
5
    operationId: listFunds
6
    tags:
7
      - funds
8
    summary: List funds
9
    produces:
10
      - application/json
11
    parameters:
12
      - name: name
13
        in: query
14
        description: Case insensitive search on fund name
15
        required: false
16
        type: string
17
      - name: fund_owner_id
18
        in: query
19
        description: Display only the funds that belongs to the given patron ID
20
        required: false
21
        type: integer
22
      - $ref: ../parameters.yaml#/match
23
      - $ref: ../parameters.yaml#/order_by
24
      - $ref: ../parameters.yaml#/page
25
      - $ref: ../parameters.yaml#/per_page
26
      - $ref: ../parameters.yaml#/q_param
27
      - $ref: ../parameters.yaml#/q_body
28
      - $ref: ../parameters.yaml#/q_header
29
    responses:
30
      "200":
31
        description: A list of funds
32
        schema:
33
          type: array
34
          items:
35
            $ref: ../definitions.yaml#/fund
36
      "401":
37
        description: Authentication required
38
        schema:
39
          $ref: ../definitions.yaml#/error
40
      "403":
41
        description: Access forbidden
42
        schema:
43
          $ref: ../definitions.yaml#/error
44
      "404":
45
        description: Fund not found
46
        schema:
47
          $ref: ../definitions.yaml#/error
48
      "500":
49
        description: Internal server error
50
        schema:
51
          $ref: ../definitions.yaml#/error
52
      "503":
53
        description: Under maintenance
54
        schema:
55
          $ref: ../definitions.yaml#/error
56
    x-koha-authorization:
57
      permissions:
58
        acquisition: budget_manage_all
(-)a/api/v1/swagger/paths/acquisitions_orders.json (-395 lines)
Lines 1-395 Link Here
1
{
2
    "/acquisitions/orders": {
3
        "get": {
4
            "x-mojo-to": "Acquisitions::Orders#list",
5
            "operationId": "listOrders",
6
            "tags": ["orders"],
7
            "summary": "List orders",
8
            "produces": [
9
                "application/json"
10
            ],
11
            "parameters": [
12
                {
13
                    "name": "biblio_id",
14
                    "in": "query",
15
                    "description": "Identifier for a linked bibliographic record",
16
                    "required": false,
17
                    "type": "integer"
18
                },
19
                {
20
                    "name": "basket_id",
21
                    "in": "query",
22
                    "description": "Identifier for a linked acquisition basket",
23
                    "required": false,
24
                    "type": "integer"
25
                },
26
                {
27
                    "name": "fund_id",
28
                    "in": "query",
29
                    "description": "Identifier for the fund the order goes against",
30
                    "required": false,
31
                    "type": "integer"
32
                },
33
                {
34
                    "name": "status",
35
                    "in": "query",
36
                    "description": "Current status for the order. Can be 'new', 'ordered', 'partial', 'complete' or 'cancelled'",
37
                    "required": false,
38
                    "type": "string"
39
                },
40
                {
41
                    "name": "only_active",
42
                    "in": "query",
43
                    "description": "If only active orders should be listed",
44
                    "required": false,
45
                    "type": "boolean"
46
                },
47
                {
48
                    "$ref": "../parameters.json#/match"
49
                },
50
                {
51
                    "$ref": "../parameters.json#/order_by"
52
                },
53
                {
54
                    "$ref": "../parameters.json#/page"
55
                },
56
                {
57
                    "$ref": "../parameters.json#/per_page"
58
                },
59
                {
60
                    "$ref": "../parameters.json#/q_param"
61
                },
62
                {
63
                    "$ref": "../parameters.json#/q_body"
64
                },
65
                {
66
                    "$ref": "../parameters.json#/q_header"
67
                }
68
            ],
69
            "responses": {
70
                "200": {
71
                    "description": "A list of orders",
72
                    "schema": {
73
                        "type": "array",
74
                        "items": {
75
                            "$ref": "../definitions.json#/order"
76
                        }
77
                    }
78
                },
79
                "401": {
80
                    "description": "Authentication required",
81
                    "schema": {
82
                        "$ref": "../definitions.json#/error"
83
                    }
84
                },
85
                "403": {
86
                    "description": "Access forbidden",
87
                    "schema": {
88
                        "$ref": "../definitions.json#/error"
89
                    }
90
                },
91
                "404": {
92
                    "description": "Order not found",
93
                    "schema": {
94
                        "$ref": "../definitions.json#/error"
95
                    }
96
                },
97
                "500": {
98
                    "description": "Internal server error",
99
                    "schema": {
100
                        "$ref": "../definitions.json#/error"
101
                    }
102
                },
103
                "503": {
104
                    "description": "Under maintenance",
105
                    "schema": {
106
                        "$ref": "../definitions.json#/error"
107
                    }
108
                }
109
            },
110
            "x-koha-authorization": {
111
                "permissions": {
112
                    "acquisition": [ "order_manage", "order_manage_all" ]
113
                }
114
            },
115
            "x-koha-embed": [
116
                "basket",
117
                "basket.basket_group",
118
                "basket.creator",
119
                "biblio",
120
                "biblio.active_orders+count",
121
                "biblio.holds+count",
122
                "biblio.items+count",
123
                "biblio.suggestions.suggester",
124
                "fund",
125
                "current_item_level_holds+count",
126
                "invoice",
127
                "items",
128
                "subscription"
129
            ]
130
        },
131
        "post": {
132
            "x-mojo-to": "Acquisitions::Orders#add",
133
            "operationId": "addOrder",
134
            "tags": ["orders"],
135
            "summary": "Add order",
136
            "parameters": [
137
                {
138
                    "name": "body",
139
                    "in": "body",
140
                    "description": "A JSON object representing an order",
141
                    "required": true,
142
                    "schema": {
143
                        "$ref": "../definitions.json#/order"
144
                    }
145
                }
146
            ],
147
            "produces": [
148
                "application/json"
149
            ],
150
            "responses": {
151
                "201": {
152
                    "description": "Order added",
153
                    "schema": {
154
                        "$ref": "../definitions.json#/order"
155
                    }
156
                },
157
                "400": {
158
                    "description": "Bad request",
159
                    "schema": {
160
                        "$ref": "../definitions.json#/error"
161
                    }
162
                },
163
                "401": {
164
                    "description": "Authentication required",
165
                    "schema": {
166
                        "$ref": "../definitions.json#/error"
167
                    }
168
                },
169
                "403": {
170
                    "description": "Access forbidden",
171
                    "schema": {
172
                        "$ref": "../definitions.json#/error"
173
                    }
174
                },
175
                "409": {
176
                    "description": "Conflict in creating the resource",
177
                    "schema": {
178
                        "$ref": "../definitions.json#/error"
179
                    }
180
                },
181
                "500": {
182
                    "description": "Internal server error",
183
                    "schema": {
184
                        "$ref": "../definitions.json#/error"
185
                    }
186
                },
187
                "503": {
188
                    "description": "Under maintenance",
189
                    "schema": {
190
                        "$ref": "../definitions.json#/error"
191
                    }
192
                }
193
            },
194
            "x-koha-authorization": {
195
                "permissions": {
196
                    "acquisition": "order_manage"
197
                }
198
            }
199
        }
200
    },
201
    "/acquisitions/orders/{order_id}": {
202
        "get": {
203
            "x-mojo-to": "Acquisitions::Orders#get",
204
            "operationId": "getOrder",
205
            "tags": ["orders"],
206
            "summary": "Get order",
207
            "parameters": [
208
                {
209
                    "$ref": "../parameters.json#/order_id_pp"
210
                }
211
            ],
212
            "produces": [
213
                "application/json"
214
            ],
215
            "responses": {
216
                "200": {
217
                    "description": "An order",
218
                    "schema": {
219
                        "$ref": "../definitions.json#/order"
220
                    }
221
                },
222
                "401": {
223
                    "description": "Authentication required",
224
                    "schema": {
225
                        "$ref": "../definitions.json#/error"
226
                    }
227
                },
228
                "403": {
229
                    "description": "Access forbidden",
230
                    "schema": {
231
                        "$ref": "../definitions.json#/error"
232
                    }
233
                },
234
                "404": {
235
                    "description": "Order not found",
236
                    "schema": {
237
                        "$ref": "../definitions.json#/error"
238
                    }
239
                },
240
                "500": {
241
                    "description": "Internal server error",
242
                    "schema": {
243
                        "$ref": "../definitions.json#/error"
244
                    }
245
                },
246
                "503": {
247
                    "description": "Under maintenance",
248
                    "schema": {
249
                        "$ref": "../definitions.json#/error"
250
                    }
251
                }
252
            },
253
            "x-koha-authorization": {
254
                "permissions": {
255
                    "acquisition": "order_manage"
256
                }
257
            },
258
            "x-koha-embed": [
259
                "basket",
260
                "basket.basket_group",
261
                "basket.creator",
262
                "biblio",
263
                "biblio.active_orders+count",
264
                "biblio.holds+count",
265
                "biblio.items+count",
266
                "biblio.suggestions.suggester",
267
                "fund",
268
                "current_item_level_holds+count",
269
                "invoice",
270
                "items",
271
                "subscription"
272
            ]
273
        },
274
        "put": {
275
            "x-mojo-to": "Acquisitions::Orders#update",
276
            "operationId": "updateOrder",
277
            "tags": ["orders"],
278
            "summary": "Update order",
279
            "parameters": [
280
                {
281
                    "$ref": "../parameters.json#/order_id_pp"
282
                },
283
                {
284
                    "name": "body",
285
                    "in": "body",
286
                    "description": "A JSON object representing an order",
287
                    "required": true,
288
                    "schema": {
289
                        "$ref": "../definitions.json#/order"
290
                    }
291
                }
292
            ],
293
            "produces": [
294
                "application/json"
295
            ],
296
            "responses": {
297
                "200": {
298
                    "description": "An order",
299
                    "schema": {
300
                        "$ref": "../definitions.json#/order"
301
                    }
302
                },
303
                "401": {
304
                    "description": "Authentication required",
305
                    "schema": {
306
                        "$ref": "../definitions.json#/error"
307
                    }
308
                },
309
                "403": {
310
                    "description": "Access forbidden",
311
                    "schema": {
312
                        "$ref": "../definitions.json#/error"
313
                    }
314
                },
315
                "404": {
316
                    "description": "Order not found",
317
                    "schema": {
318
                        "$ref": "../definitions.json#/error"
319
                    }
320
                },
321
                "500": {
322
                    "description": "Internal server error",
323
                    "schema": {
324
                        "$ref": "../definitions.json#/error"
325
                    }
326
                },
327
                "503": {
328
                    "description": "Under maintenance",
329
                    "schema": {
330
                        "$ref": "../definitions.json#/error"
331
                    }
332
                }
333
            },
334
            "x-koha-authorization": {
335
                "permissions": {
336
                    "acquisition": "order_manage"
337
                }
338
            }
339
        },
340
        "delete": {
341
            "x-mojo-to": "Acquisitions::Orders#delete",
342
            "operationId": "deleteOrder",
343
            "tags": ["orders"],
344
            "summary": "Delete order",
345
            "parameters": [
346
                {
347
                    "$ref": "../parameters.json#/order_id_pp"
348
                }
349
            ],
350
            "produces": [
351
                "application/json"
352
            ],
353
            "responses": {
354
                "204": {
355
                    "description": "Order deleted"
356
                },
357
                "401": {
358
                    "description": "Authentication required",
359
                    "schema": {
360
                        "$ref": "../definitions.json#/error"
361
                    }
362
                },
363
                "403": {
364
                    "description": "Access forbidden",
365
                    "schema": {
366
                        "$ref": "../definitions.json#/error"
367
                    }
368
                },
369
                "404": {
370
                    "description": "Order not found",
371
                    "schema": {
372
                        "$ref": "../definitions.json#/error"
373
                    }
374
                },
375
                "500": {
376
                    "description": "Internal server error",
377
                    "schema": {
378
                        "$ref": "../definitions.json#/error"
379
                    }
380
                },
381
                "503": {
382
                    "description": "Under maintenance",
383
                    "schema": {
384
                        "$ref": "../definitions.json#/error"
385
                    }
386
                }
387
            },
388
            "x-koha-authorization": {
389
                "permissions": {
390
                    "acquisition": "order_manage"
391
                }
392
            }
393
        }
394
    }
395
}
(-)a/api/v1/swagger/paths/acquisitions_orders.yaml (+270 lines)
Line 0 Link Here
1
---
2
/acquisitions/orders:
3
  get:
4
    x-mojo-to: Acquisitions::Orders#list
5
    operationId: listOrders
6
    tags:
7
      - orders
8
    summary: List orders
9
    produces:
10
      - application/json
11
    parameters:
12
      - name: biblio_id
13
        in: query
14
        description: Identifier for a linked bibliographic record
15
        required: false
16
        type: integer
17
      - name: basket_id
18
        in: query
19
        description: Identifier for a linked acquisition basket
20
        required: false
21
        type: integer
22
      - name: fund_id
23
        in: query
24
        description: Identifier for the fund the order goes against
25
        required: false
26
        type: integer
27
      - name: status
28
        in: query
29
        description: Current status for the order. Can be 'new', 'ordered', 'partial',
30
          'complete' or 'cancelled'
31
        required: false
32
        type: string
33
      - name: only_active
34
        in: query
35
        description: If only active orders should be listed
36
        required: false
37
        type: boolean
38
      - $ref: ../parameters.yaml#/match
39
      - $ref: ../parameters.yaml#/order_by
40
      - $ref: ../parameters.yaml#/page
41
      - $ref: ../parameters.yaml#/per_page
42
      - $ref: ../parameters.yaml#/q_param
43
      - $ref: ../parameters.yaml#/q_body
44
      - $ref: ../parameters.yaml#/q_header
45
    responses:
46
      "200":
47
        description: A list of orders
48
        schema:
49
          type: array
50
          items:
51
            $ref: ../definitions.yaml#/order
52
      "401":
53
        description: Authentication required
54
        schema:
55
          $ref: ../definitions.yaml#/error
56
      "403":
57
        description: Access forbidden
58
        schema:
59
          $ref: ../definitions.yaml#/error
60
      "404":
61
        description: Order not found
62
        schema:
63
          $ref: ../definitions.yaml#/error
64
      "500":
65
        description: Internal server error
66
        schema:
67
          $ref: ../definitions.yaml#/error
68
      "503":
69
        description: Under maintenance
70
        schema:
71
          $ref: ../definitions.yaml#/error
72
    x-koha-authorization:
73
      permissions:
74
        acquisition:
75
          - order_manage
76
          - order_manage_all
77
    x-koha-embed:
78
      - basket
79
      - basket.basket_group
80
      - basket.creator
81
      - biblio
82
      - biblio.active_orders+count
83
      - biblio.holds+count
84
      - biblio.items+count
85
      - biblio.suggestions.suggester
86
      - fund
87
      - current_item_level_holds+count
88
      - invoice
89
      - items
90
      - subscription
91
  post:
92
    x-mojo-to: Acquisitions::Orders#add
93
    operationId: addOrder
94
    tags:
95
      - orders
96
    summary: Add order
97
    parameters:
98
      - name: body
99
        in: body
100
        description: A JSON object representing an order
101
        required: true
102
        schema:
103
          $ref: ../definitions.yaml#/order
104
    produces:
105
      - application/json
106
    responses:
107
      "201":
108
        description: Order added
109
        schema:
110
          $ref: ../definitions.yaml#/order
111
      "400":
112
        description: Bad request
113
        schema:
114
          $ref: ../definitions.yaml#/error
115
      "401":
116
        description: Authentication required
117
        schema:
118
          $ref: ../definitions.yaml#/error
119
      "403":
120
        description: Access forbidden
121
        schema:
122
          $ref: ../definitions.yaml#/error
123
      "409":
124
        description: Conflict in creating the resource
125
        schema:
126
          $ref: ../definitions.yaml#/error
127
      "500":
128
        description: Internal server error
129
        schema:
130
          $ref: ../definitions.yaml#/error
131
      "503":
132
        description: Under maintenance
133
        schema:
134
          $ref: ../definitions.yaml#/error
135
    x-koha-authorization:
136
      permissions:
137
        acquisition: order_manage
138
"/acquisitions/orders/{order_id}":
139
  get:
140
    x-mojo-to: Acquisitions::Orders#get
141
    operationId: getOrder
142
    tags:
143
      - orders
144
    summary: Get order
145
    parameters:
146
      - $ref: ../parameters.yaml#/order_id_pp
147
    produces:
148
      - application/json
149
    responses:
150
      "200":
151
        description: An order
152
        schema:
153
          $ref: ../definitions.yaml#/order
154
      "401":
155
        description: Authentication required
156
        schema:
157
          $ref: ../definitions.yaml#/error
158
      "403":
159
        description: Access forbidden
160
        schema:
161
          $ref: ../definitions.yaml#/error
162
      "404":
163
        description: Order not found
164
        schema:
165
          $ref: ../definitions.yaml#/error
166
      "500":
167
        description: Internal server error
168
        schema:
169
          $ref: ../definitions.yaml#/error
170
      "503":
171
        description: Under maintenance
172
        schema:
173
          $ref: ../definitions.yaml#/error
174
    x-koha-authorization:
175
      permissions:
176
        acquisition: order_manage
177
    x-koha-embed:
178
      - basket
179
      - basket.basket_group
180
      - basket.creator
181
      - biblio
182
      - biblio.active_orders+count
183
      - biblio.holds+count
184
      - biblio.items+count
185
      - biblio.suggestions.suggester
186
      - fund
187
      - current_item_level_holds+count
188
      - invoice
189
      - items
190
      - subscription
191
  put:
192
    x-mojo-to: Acquisitions::Orders#update
193
    operationId: updateOrder
194
    tags:
195
      - orders
196
    summary: Update order
197
    parameters:
198
      - $ref: ../parameters.yaml#/order_id_pp
199
      - name: body
200
        in: body
201
        description: A JSON object representing an order
202
        required: true
203
        schema:
204
          $ref: ../definitions.yaml#/order
205
    produces:
206
      - application/json
207
    responses:
208
      "200":
209
        description: An order
210
        schema:
211
          $ref: ../definitions.yaml#/order
212
      "401":
213
        description: Authentication required
214
        schema:
215
          $ref: ../definitions.yaml#/error
216
      "403":
217
        description: Access forbidden
218
        schema:
219
          $ref: ../definitions.yaml#/error
220
      "404":
221
        description: Order not found
222
        schema:
223
          $ref: ../definitions.yaml#/error
224
      "500":
225
        description: Internal server error
226
        schema:
227
          $ref: ../definitions.yaml#/error
228
      "503":
229
        description: Under maintenance
230
        schema:
231
          $ref: ../definitions.yaml#/error
232
    x-koha-authorization:
233
      permissions:
234
        acquisition: order_manage
235
  delete:
236
    x-mojo-to: Acquisitions::Orders#delete
237
    operationId: deleteOrder
238
    tags:
239
      - orders
240
    summary: Delete order
241
    parameters:
242
      - $ref: ../parameters.yaml#/order_id_pp
243
    produces:
244
      - application/json
245
    responses:
246
      "204":
247
        description: Order deleted
248
      "401":
249
        description: Authentication required
250
        schema:
251
          $ref: ../definitions.yaml#/error
252
      "403":
253
        description: Access forbidden
254
        schema:
255
          $ref: ../definitions.yaml#/error
256
      "404":
257
        description: Order not found
258
        schema:
259
          $ref: ../definitions.yaml#/error
260
      "500":
261
        description: Internal server error
262
        schema:
263
          $ref: ../definitions.yaml#/error
264
      "503":
265
        description: Under maintenance
266
        schema:
267
          $ref: ../definitions.yaml#/error
268
    x-koha-authorization:
269
      permissions:
270
        acquisition: order_manage
(-)a/api/v1/swagger/paths/acquisitions_vendors.json (-319 lines)
Lines 1-319 Link Here
1
{
2
  "/acquisitions/vendors": {
3
    "get": {
4
      "x-mojo-to": "Acquisitions::Vendors#list",
5
      "operationId": "listVendors",
6
      "tags": ["vendors"],
7
      "summary": "List vendors",
8
      "produces": [
9
        "application/json"
10
      ],
11
      "parameters": [{
12
        "name": "name",
13
        "in": "query",
14
        "description": "Case insensitive search on vendor name",
15
        "required": false,
16
        "type": "string"
17
      }, {
18
        "name": "accountnumber",
19
        "in": "query",
20
        "description": "Case insensitive search on vendor's account number",
21
        "required": false,
22
        "type": "string"
23
      }, {
24
        "$ref": "../parameters.json#/match"
25
      }, {
26
        "$ref": "../parameters.json#/order_by"
27
      }, {
28
        "$ref": "../parameters.json#/page"
29
      }, {
30
        "$ref": "../parameters.json#/per_page"
31
      }, {
32
        "$ref": "../parameters.json#/q_param"
33
      }, {
34
        "$ref": "../parameters.json#/q_body"
35
      }, {
36
        "$ref": "../parameters.json#/q_header"
37
      }],
38
      "responses": {
39
        "200": {
40
          "description": "A list of vendors",
41
          "schema": {
42
            "type": "array",
43
            "items": {
44
              "$ref": "../definitions.json#/vendor"
45
            }
46
          }
47
        },
48
        "401": {
49
          "description": "Authentication required",
50
          "schema": {
51
            "$ref": "../definitions.json#/error"
52
          }
53
        },
54
        "403": {
55
          "description": "Access forbidden",
56
          "schema": {
57
            "$ref": "../definitions.json#/error"
58
          }
59
        },
60
        "404": {
61
          "description": "Vendor not found",
62
          "schema": {
63
            "$ref": "../definitions.json#/error"
64
          }
65
        },
66
        "500": {
67
          "description": "Internal server error",
68
          "schema": {
69
            "$ref": "../definitions.json#/error"
70
          }
71
        },
72
        "503": {
73
          "description": "Under maintenance",
74
          "schema": {
75
            "$ref": "../definitions.json#/error"
76
          }
77
        }
78
      },
79
      "x-koha-authorization": {
80
        "permissions": {
81
          "acquisition": "vendors_manage"
82
        }
83
      }
84
    },
85
    "post": {
86
      "x-mojo-to": "Acquisitions::Vendors#add",
87
      "operationId": "addVendor",
88
      "tags": ["vendors"],
89
      "summary": "Add vendor",
90
      "parameters": [{
91
        "name": "body",
92
        "in": "body",
93
        "description": "A JSON object representing a vendor",
94
        "required": true,
95
        "schema": {
96
          "$ref": "../definitions.json#/vendor"
97
        }
98
      }],
99
      "produces": [
100
        "application/json"
101
      ],
102
      "responses": {
103
        "201": {
104
          "description": "Vendor added",
105
          "schema": {
106
            "$ref": "../definitions.json#/vendor"
107
          }
108
        },
109
        "401": {
110
          "description": "Authentication required",
111
          "schema": {
112
            "$ref": "../definitions.json#/error"
113
          }
114
        },
115
        "403": {
116
          "description": "Access forbidden",
117
          "schema": {
118
            "$ref": "../definitions.json#/error"
119
          }
120
        },
121
        "404": {
122
          "description": "Vendor not found",
123
          "schema": {
124
            "$ref": "../definitions.json#/error"
125
          }
126
        },
127
        "500": {
128
          "description": "Internal server error",
129
          "schema": {
130
            "$ref": "../definitions.json#/error"
131
          }
132
        },
133
        "503": {
134
          "description": "Under maintenance",
135
          "schema": {
136
            "$ref": "../definitions.json#/error"
137
          }
138
        }
139
      },
140
      "x-koha-authorization": {
141
        "permissions": {
142
          "acquisition": "vendors_manage"
143
        }
144
      }
145
    }
146
  },
147
  "/acquisitions/vendors/{vendor_id}": {
148
    "get": {
149
      "x-mojo-to": "Acquisitions::Vendors#get",
150
      "operationId": "getVendor",
151
      "tags": ["vendors"],
152
      "summary": "Get vendor",
153
      "parameters": [{
154
        "$ref": "../parameters.json#/vendoridPathParam"
155
      }],
156
      "produces": [
157
        "application/json"
158
      ],
159
      "responses": {
160
        "200": {
161
          "description": "A vendor",
162
          "schema": {
163
            "$ref": "../definitions.json#/vendor"
164
          }
165
        },
166
        "401": {
167
          "description": "Authentication required",
168
          "schema": {
169
            "$ref": "../definitions.json#/error"
170
          }
171
        },
172
        "403": {
173
          "description": "Access forbidden",
174
          "schema": {
175
            "$ref": "../definitions.json#/error"
176
          }
177
        },
178
        "404": {
179
          "description": "Vendor not found",
180
          "schema": {
181
            "$ref": "../definitions.json#/error"
182
          }
183
        },
184
        "500": {
185
          "description": "Internal server error",
186
          "schema": {
187
            "$ref": "../definitions.json#/error"
188
          }
189
        },
190
        "503": {
191
          "description": "Under maintenance",
192
          "schema": {
193
            "$ref": "../definitions.json#/error"
194
          }
195
        }
196
      },
197
      "x-koha-authorization": {
198
        "permissions": {
199
          "acquisition": "vendors_manage"
200
        }
201
      }
202
    },
203
    "put": {
204
      "x-mojo-to": "Acquisitions::Vendors#update",
205
      "operationId": "updateVendor",
206
      "tags": ["vendors"],
207
      "summary": "Update vendor",
208
      "parameters": [{
209
        "$ref": "../parameters.json#/vendoridPathParam"
210
      }, {
211
        "name": "body",
212
        "in": "body",
213
        "description": "A JSON object representing a vendor",
214
        "required": true,
215
        "schema": {
216
          "$ref": "../definitions.json#/vendor"
217
        }
218
      }],
219
      "produces": [
220
        "application/json"
221
      ],
222
      "responses": {
223
        "200": {
224
          "description": "A vendor",
225
          "schema": {
226
            "$ref": "../definitions.json#/vendor"
227
          }
228
        },
229
        "401": {
230
          "description": "Authentication required",
231
          "schema": {
232
            "$ref": "../definitions.json#/error"
233
          }
234
        },
235
        "403": {
236
          "description": "Access forbidden",
237
          "schema": {
238
            "$ref": "../definitions.json#/error"
239
          }
240
        },
241
        "404": {
242
          "description": "Vendor not found",
243
          "schema": {
244
            "$ref": "../definitions.json#/error"
245
          }
246
        },
247
        "500": {
248
          "description": "Internal server error",
249
          "schema": {
250
            "$ref": "../definitions.json#/error"
251
          }
252
        },
253
        "503": {
254
          "description": "Under maintenance",
255
          "schema": {
256
            "$ref": "../definitions.json#/error"
257
          }
258
        }
259
      },
260
      "x-koha-authorization": {
261
        "permissions": {
262
          "acquisition": "vendors_manage"
263
        }
264
      }
265
    },
266
    "delete": {
267
      "x-mojo-to": "Acquisitions::Vendors#delete",
268
      "operationId": "deleteVendor",
269
      "tags": ["vendors"],
270
      "summary": "Delete vendor",
271
      "parameters": [{
272
        "$ref": "../parameters.json#/vendoridPathParam"
273
      }],
274
      "produces": [
275
        "application/json"
276
      ],
277
      "responses": {
278
        "204": {
279
          "description": "Vendor deleted"
280
        },
281
        "401": {
282
          "description": "Authentication required",
283
          "schema": {
284
            "$ref": "../definitions.json#/error"
285
          }
286
        },
287
        "403": {
288
          "description": "Access forbidden",
289
          "schema": {
290
            "$ref": "../definitions.json#/error"
291
          }
292
        },
293
        "404": {
294
          "description": "Vendor not found",
295
          "schema": {
296
            "$ref": "../definitions.json#/error"
297
          }
298
        },
299
        "500": {
300
          "description": "Internal server error",
301
          "schema": {
302
            "$ref": "../definitions.json#/error"
303
          }
304
        },
305
        "503": {
306
          "description": "Under maintenance",
307
          "schema": {
308
            "$ref": "../definitions.json#/error"
309
          }
310
        }
311
      },
312
      "x-koha-authorization": {
313
        "permissions": {
314
          "acquisition": "vendors_manage"