Waiver Requests

Get Waiver Request

GET /api/.../waiverrequests/{id}

Return properties of a waiver request.

Request Information

Parameters
Name Type Required Description
id Integer Yes The id of the waiver request.

Response Information

Example
application/json, text/json
{
    "WaiverRequestID": 328,
    "PatronID": 802118,
    "PatronBarcode": "barcode-802118",
    "PatronName": "Harold Thompson VII"
    "PatronBranchID": 90,
    "PatronBranchName": "Saratoga",
    "WaiverReasonID": 14,
    "WaiverReason": "On a budget",
    "WaiverRequestStatusID": 1,
    "WaiverRequestStatus": "Pending",
    "Amount": 18.24,
    "TotalAmount": 18.24,
    "IsDistributed": false,
    "RequestNote": "I always pay my dues on time.",
    "DecisionNote": null,
    "CreatorID": 1828,
    "CreatorName": "jane.smith",
    "CreationDate": "2021-06-14T16:37:08.077-04:00",
    "ModifierID": null,
    "ModifierName": null,
    "ModificationDate": null,
    "PatronAccountDataRecords": [
        {
            "ItemRecordID": 10,
            "TxnID": 2,
            "TxnCodeID": 4,
            "CallNumber": "sample string 4",
            "MaterialType": "sample string 5",
            "TxnDate": "2013-02-28T17:20:57.4095989-05:00",
            "Type": "sample string 7",
            "FeeDescription": "sample string 8",
            "BrowseTitle": "sample string 9",
            "BrowseTitleNonFilingCount": 0,
            "Barcode": "sample string 10",
            "TxnAmount": 11.0,
            "OutstandingAmount": 11.0,
            "Organization": "sample string 12",
            "TxnOrgID": 1,
            "FreeTextNote": "sample string 13",
            "WaiverRequestID": 328,
            "HasPendingWaiverRequest": true,
            "WaiveAmount": 11.0
        },
        {
            "ItemRecordID": 11,
            "TxnID": 2,
            "TxnCodeID": 8,
            "CallNumber": "sample string 4",
            "MaterialType": "sample string 5",
            "TxnDate": "2013-02-28T17:20:57.4095989-05:00",
            "Type": "sample string 7",
            "FeeDescription": "sample string 8",
            "BrowseTitle": "sample string 9",
            "BrowseTitleNonFilingCount": 0,
            "Barcode": "sample string 10",
            "TxnAmount": 11.0,
            "OutstandingAmount": 10.0,
            "Organization": "sample string 12",
            "TxnOrgID": 1,
            "FreeTextNote": "sample string 13",
            "WaiverRequestID": 328,
            "HasPendingWaiverRequest": true,
            "WaiveAmount": 7.24
        }
    ]
}

HTTP Response Codes

Code Description
200 OK. Success
404 Not Found


Get All Waiver Requests

GET /api/.../waiverrequests

Return all waiver requests.

Response Information

Example
application/json, text/json
[
    {
        "WaiverRequestID": 328,
        "PatronID": 802118,
        "PatronBarcode": "barcode-802118",
        "PatronName": "Harold Thompson VII"
        "PatronBranchID": 90,
        "PatronBranchName": "Saratoga",
        "WaiverReasonID": 14,
        "WaiverReason": "On a budget",
        "WaiverRequestStatusID": 1,
        "WaiverRequestStatus": "Pending",
        "Amount": 18.24,
        "TotalAmount": 18.24,
        "IsDistributed": false,
        "RequestNote": "I always pay my dues on time.",
        "DecisionNote": null,
        "CreatorID": 1828,
        "CreatorName": "jane.smith",
        "CreationDate": "2021-06-14T16:37:08.077-04:00",
        "ModifierID": null,
        "ModifierName": null,
        "ModificationDate": null,
        "PatronAccountDataRecords": [
            {
                "ItemRecordID": 10,
                "TxnID": 2,
                "TxnCodeID": 4,
                "CallNumber": "sample string 4",
                "MaterialType": "sample string 5",
                "TxnDate": "2013-02-28T17:20:57.4095989-05:00",
                "Type": "sample string 7",
                "FeeDescription": "sample string 8",
                "BrowseTitle": "sample string 9",
                "BrowseTitleNonFilingCount": 0,
                "Barcode": "sample string 10",
                "TxnAmount": 11.0,
                "OutstandingAmount": 11.0,
                "Organization": "sample string 12",
                "TxnOrgID": 1,
                "FreeTextNote": "sample string 13",
                "WaiverRequestID": 328,
                "HasPendingWaiverRequest": true,
                "WaiveAmount": 11.0
            },
            {
                "ItemRecordID": 11,
                "TxnID": 2,
                "TxnCodeID": 8,
                "CallNumber": "sample string 4",
                "MaterialType": "sample string 5",
                "TxnDate": "2013-02-28T17:20:57.4095989-05:00",
                "Type": "sample string 7",
                "FeeDescription": "sample string 8",
                "BrowseTitle": "sample string 9",
                "BrowseTitleNonFilingCount": 0,
                "Barcode": "sample string 10",
                "TxnAmount": 11.0,
                "OutstandingAmount": 10.0,
                "Organization": "sample string 12",
                "TxnOrgID": 1,
                "FreeTextNote": "sample string 13",
                "WaiverRequestID": null,
                "HasPendingWaiverRequest": false,
                "WaiveAmount": 7.24
            }
        ]
    },
    {
        "WaiverRequestID": 329,
        "PatronID": 118802,
        "PatronBarcode": "barcode-118802",
        "PatronName": "Thomas Harolds Jr."
        "PatronBranchID": 90,
        "PatronBranchName": "Saratoga",
        "WaiverReasonID": 17,
        "WaiverReason": "In college",
        "WaiverRequestStatusID": 3,
        "WaiverRequestStatus": "Approved",
        "Amount": 5.15,
        "TotalAmount": 5.15,
        "IsDistributed": false,
        "RequestNote": "I am a sophomore in college.",
        "DecisionNote": "Students are the future.",
        "CreatorID": 1828,
        "CreatorName": "jane.smith",
        "CreationDate": "2021-06-14T16:37:08.077-04:00",
        "ModifierID": 2811,
        "ModifierName": "harold.stevens",
        "ModificationDate": "2022-11-08T09:23:04.504-04:00",
        "PatronAccountDataRecords": [
            {
                "ItemRecordID": 100,
                "TxnID": 2000,
                "TxnCodeID": 1,
                "CallNumber": "sample string 4",
                "MaterialType": "sample string 5",
                "TxnDate": "2013-02-28T17:20:57.4095989-05:00",
                "Type": "sample string 7",
                "FeeDescription": "sample string 8",
                "BrowseTitle": "sample string 9",
                "BrowseTitleNonFilingCount": 0,
                "Barcode": "sample string 10",
                "TxnAmount": 11.0,
                "OutstandingAmount": 8.20,
                "Organization": "sample string 12",
                "TxnOrgID": 1,
                "FreeTextNote": "sample string 13",
                "WaiverRequestID": 329,
                "HasPendingWaiverRequest": true,
                "WaiveAmount": 5.15
            }
        ]
    }
]

HTTP Response Codes

Code Description
200 OK. Success


Get All Waiver Reasons

GET /api/.../waiverrequests?type=reasons

Return all wavier reasons.

Response Information

Example
application/json, text/json
[
    {
        "WaiverReasonID": 13,
        "Description": "Circulation Supervisor escalation"
    },
    {
        "WaiverReasonID": 2,
        "Description": "My dog ate the fine receipt."
    },
    {
        "WaiverReasonID": 4,
        "Description": "No email address for notice"
    },
    {
        "WaiverReasonID": 12,
        "Description": "Patron moved to new address"
    },
    {
        "WaiverReasonID": 1,
        "Description": "Reasonable excuse"
    }
]

HTTP Response Codes

Code Description
200 OK. Success


Create Waiver Request

POST /api/.../waiverrequests

Create a new waiver request.

Request Information

Parameters
Name Type Required Description
DtoWaiverRequestCreateData WaiverRequest Yes Define this parameter in the request body.
DtoWaiverRequestCreateData
Property Type Nullable Description
PatronID number No The unique id assigned to the patron.
WaiverReasonID number No The id assigned to the waiver reason.
WaiverRequestStatusID number Yes The id assigned to the waiver request status. Accepts: 1 (Pending)
Amount decimal No The amount requested to be waived.
Distributed waives will repeat this amount per transaction.
TotalAmount decimal No The total amount expected to be waived.
IsDistributed boolean No Should the amount be distributed to each transaction.
Accepts: 0 (apply starting at oldest transaction), 1 (amount distributed per transaction)
RequestNote string Yes The optional text note of the request.
PatronAccountTxnIDs List of numbers No The list of patron account transaction ids assigned to the patron that to include in the waiver request status.

Response Information

Example
application/json, text/json

Waiver request ID is returned upon success.

55

HTTP Response Codes

Code Description
200 OK. Success
400 Failure
404 Not Found


Update Waiver Request

PUT /api/.../waiverrequests/{id}

Update a waiver request.

Request Information

Parameters
Name Type Required Description
DtoWaiverRequestUpdateData WaiverRequest Yes Define this parameter in the request body.
DtoWaiverRequestUpdateData
Property Type Nullable Description
WaiverRequestID number No The unique id assigned to the waiver request.
PatronID number No The unique id assigned to the patron.
WaiverRequestStatusID number No The id assigned to the waiver request status. Accepts:
2 (Declined), 3 (Approved)
DecisionNote string Yes The optional text note of the decision.

Response Information

Example
application/json, text/json

True is returned upon success.

true

HTTP Response Codes

Code Description
200 OK. Success
400 Failure
404 Not Found