Convert Hold Request to ILL Request

Start Conversion Process

POST /api/.../workflow

This method allows the caller to convert a local hold request to an ILL request.

Request Information

Parameters
Name Type Required Description
WorkflowRequest DtoWorkflowRequest Yes Define this parameter in the request body.
DtoWorkflowRequest
Property Type Nullable Description
WorkflowRequestType Integer No Required. For convert to ILL request, this must be set to 20.
TxnBranchID Integer No Transacting branch ID. This should represent where the request originated from. Typically the same as the logged on branch, but in the case of offline processing it would be the branch that was logged into during offline processing.
TxnUserID Integer No Transacting Polaris user ID. This should represent who originally created this request. Typically the same as the logged on user, but in the case of offline processing it would be the user that was logged on during offline processing.
TxnWorkstationID Integer No Transacting workstation ID. This should represent where the request originated from. Typically the same as the logged on workstation, but in the case of offline processing it would be the workstation that was logged into during offline processing.
RequestExtension DtoWorkflowRequestExtension No Convert to ILL request requires a DtoWorkflowRequestExtension that contains a DtoConvertHoldToILLExtensionData object.
WorkflowReplies List of DtoWorkflowReply Yes It is possible to pass in a list of replies for automated processing.
DtoWorkflowRequestExtension
Property Type Nullable Description
WorkflowRequestExtensionType Integer No To convert to an ILL request, the extension type must be a 16 (ConvertHoldToILLExtensionData).
Data Object No This must be an extension data object of type DtoConvertHoldToILLExtensionData
DtoConvertHoldToILLExtensionData
Property Type Nullable Description
SysHoldRequestID Integer No Hold request identifier.
SkipTotalILLLimitExceededPrompt Boolean No False will check if the Patron has exceeded their ILL limit. True will skip that check.
Request body
application/json, text/json
{
    "WorkflowRequestType":20,
    "TxnBranchID":"3",
    "TxnUserID":"1",
    "TxnWorkstationID":"1205",
    "WorkflowReplies":null,
    "RequestExtension":
    {
        "WorkflowRequestExtensionType":16,
        "Data":
        {
            "SysHoldRequestID":818025,
            "SkipTotalILLLimitExceededPrompt": false
        }
    }
}

Response Information

Example: DtoWorkflowAnswer - convert hold to ILL request successfully
application/json, text/json
{
    "WorkflowRequestGuid":"cbcf67f3-48ee-4609-8187-a3f17d94eda4",
    "WorkflowRequestType":20,
    "WorkflowStatus":1,
    "Prompt":null,
    "InformationMessages":
    [
        {
            "Type":1,
            "Title":"",
            "Message":"Hold request is converted successfully"
        }
    ],
    "AnswerExtension":null,
    "CircTranType":0,
    "ReceiptType":0,
    "ReceiptUrl":"",
    "FineEReceiptSent":false
}
Example: DtoWorkflowAnswer - convert hold request failed with prompt
application/json, text/json
{   
    "WorkflowRequestGuid":"00000000-0000-0000-0000-000000000000",
    "WorkflowRequestType":20,
    "WorkflowStatus":2,
    "Prompt":null,
    "InformationMessages":
    [
        {
            "Type":5,
            "Title":"Unsupported",
            "Message":"ILL requests are not permitted by the patron's library"
        }
    ],
    "AnswerExtension":null,
    "CircTranType":0,
    "ReceiptType":0,
    "ReceiptUrl":"",
    "FineEReceiptSent":false
}
Example: DtoWorkflowAnswer - prompt for ILL requests are exceeded
application/json, text/json
{
    "WorkflowRequestGuid":"6ca33d65-fc58-4ee8-b0ba-9a6dbfbf2dc1",
    "WorkflowRequestType":20,
    "WorkflowStatus":-3,
    "Prompt":
    {
        "WorkflowPromptID":91,
        "Name":null,
        "Description":null,
        "WorkflowPromptType":1,
        "WorkflowPromptOptions":6,
        "DefaultPromptOption":5,
        "Title":"Exceeded total ILL request limit",
        "Message":"Patron (Vanaja2 5.2 Ramarao) has exceeded the maximum number of ILL requests permitted.
            Title: Cinnamon cane
                    Do you want to place this ILL request?",
        "AlternateYesText":"",
        "AlternateNoText":"",
        "AlternateCancelText":"",
        "AlternateContinueText":"",
        "PromptExtension":null
    },
    "InformationMessages":[],
    "AnswerExtension":null,
    "CircTranType":0,
    "ReceiptType":0,
    "ReceiptUrl":"",
    "FineEReceiptSent":false
}
Example: DtoWorkflowAnswer - prompt for duplicate requests
application/json, text/json
    {
        "WorkflowRequestGuid":"b7597961-ca94-45ed-9da3-eb10ae0f3699",
        "WorkflowRequestType":20,"WorkflowStatus":-3,
        "Prompt":{
        "WorkflowPromptID":77,
        "Name":null,
        "Description":null,
        "WorkflowPromptType":29,
        "WorkflowPromptOptions":6,
        "DefaultPromptOption":4,
        "Title":"Duplicate hold requests exist",
        "Message":null,"AlternateYesText":"",
        "AlternateNoText":"","AlternateCancelText":"",
        "AlternateContinueText":"",
        "PromptExtension":
        {
            "WorkflowPromptExtensionType":31,
            "Data":
            {
                "DuplicateHolds":
                [
                    {
                    "SysHoldRequestID":817945,
                    "BrowseAuthor":"Pollowitz, Melinda.",
                    "BrowseTitle":"Cinnamon cane",
                    "FormatDescription":"Book",
                    "CreationDate":"2017-07-19T14:36:07.213-04:00",
                    "PickupBranch":"Argyle Free Library"
                    }
                ]
            }
        }
    },
    "InformationMessages":[],
    "AnswerExtension":null,
    "CircTranType":0,
    "ReceiptType":0,
    "ReceiptUrl":"",
    "FineEReceiptSent":false
}

HTTP Response Codes

Code Description
200 OK. Success
403 Not permitted.

Required Permissions

Permission IDs found here.

    CR_HoldRequests_Delete
    CR_ILLRequests_ConvertHolds
    CR_OverrideRequestLimits_Allow
    CR_OverrideRequestBlocks_Allow