GOBI® (Global Online Bibliographic Information) Integration version v1
https://github.com/folio-org/mod-gobi
GOBI® (Global Online Bibliographic Information) Integration
GOBI® (Global Online Bibliographic Information) is the leading web-based acquisitions tool for finding, ordering and managing e-books and print books for libraries. This module allows GOBI initiated orders to be fulfilled by FOLIO.
Acquisition methods
Acquisition methods APIs
Get list of acquisition methods
Create a new custom-mapping item.
get /gobi/orders/custom-mappings
Get list of acquisition methods
Query Parameters
- query: (string)
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example code
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode ["value", "Purchase At Vendor System", "="]
- totalRecords: (string - default: auto - pattern: exact|estimated|none|auto)
How to calculate the totalRecords property. "exact" for the correct number, "estimated" for an estimation, "auto" to automatically select "exact" or "estimated", "none" for suppressing the totalRecords property. For details see https://github.com/folio-org/raml-module-builder#estimated-totalrecords
Example:
none
- offset: (integer - default: 0 - minimum: 0 - maximum: 2147483647)
Skip over a number of elements by specifying an offset value for the query
Example:
0
- limit: (integer - default: 10 - minimum: 0 - maximum: 2147483647)
Limit the number of elements returned in the response
Example:
10
HTTP status code 200
Returns a list of custom-mapping items
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of the order mapping view",
"type": "object",
"properties": {
"orderMappingsViews": {
"description": "Collection of the order mapping view",
"type": "array",
"id": "orderMappingsViews",
"items": {
"type": "object",
"$ref": "order_mappings_view.json"
}
},
"totalRecords": {
"description": "The number of objects contained in this collection",
"type": "integer"
}
},
"additionalProperties": false,
"required": [
"orderMappingsViews",
"totalRecords"
]
}
Example:
{
"orderType": "ListedPrintMonograph",
"mappings": [
{
"field": "ACQUISITION_METHOD",
"dataSource": {
"default": "Purchase At Vendor System"
}
},
{
"field": "APPROVED",
"dataSource": {
"default": "true",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "COLLECTION",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "CONTRIBUTOR",
"dataSource": {
"from": "//datafield[@tag='100']/*",
"combinator": "concat"
}
},
{
"field": "CONTRIBUTOR_NAME_TYPE",
"dataSource": {
"default": "Personal name",
"translation": "lookupContributorNameTypeId",
"translateDefault": true
}
},
{
"field": "CURRENCY",
"dataSource": {
"from": "//ListPrice/Currency",
"default": "USD"
}
},
{
"field": "FUND_ID",
"dataSource": {
"from": "//FundCode",
"translation": "lookupFundId"
}
},
{
"field": "FUND_CODE",
"dataSource": {
"from": "//FundCode"
}
},
{
"field": "FUND_PERCENTAGE",
"dataSource": {
"default": "100",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "VENDOR_INSTRUCTIONS",
"dataSource": {
"from": "//OrderNotes",
"default" : "N/A"
}
},
{
"field": "LIST_UNIT_PRICE",
"dataSource": {
"from": "//ListPrice/Amount",
"default": "0",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "LOCATION",
"dataSource": {
"from": "//Location",
"default": "*",
"translation": "lookupLocationId",
"translateDefault": true
}
},
{
"field": "MANUAL_PO",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "ORDER_TYPE",
"dataSource": {
"default": "One-Time"
}
},
{
"field": "PO_LINE_ORDER_FORMAT",
"dataSource": {
"default": "Physical Resource"
}
},
{
"field": "PO_LINE_PAYMENT_STATUS",
"dataSource": {
"default": "Awaiting Payment"
}
},
{
"field": "PO_LINE_RECEIPT_STATUS",
"dataSource": {
"default": "Awaiting Receipt"
}
},
{
"field": "PRODUCT_ID",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "truncateISBNQualifier"
}
},
{
"field": "PRODUCT_ID_TYPE",
"dataSource": {
"default": "ISBN",
"translation": "lookupProductIdType",
"translateDefault": true
}
},
{
"field": "PRODUCT_QUALIFIER",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='q']",
"defaultMapping": {
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "separateISBNQualifier"
}
}
}
},
{
"field": "PUBLICATION_DATE",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='c']"
}
},
{
"field": "PUBLISHER",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='b']"
}
},
{
"field": "QUANTITY_PHYSICAL",
"dataSource": {
"from": "//Quantity",
"default": "1",
"translation": "toInteger"
}
},
{
"field": "SOURCE",
"dataSource": {
"default": "API"
}
},
{
"field": "TITLE",
"dataSource": {
"from": "//datafield[@tag='245']/*",
"combinator": "concat"
}
},
{
"field": "VENDOR",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "MATERIAL_SUPPLIER",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "VENDOR_ACCOUNT",
"dataSource": {
"from": "//SubAccount",
"default": "0"
}
},
{
"field": "VENDOR_REF_NO",
"dataSource": {
"from": "//YBPOrderKey"
}
},
{
"field": "VENDOR_REF_NO_TYPE",
"dataSource": {
"default": "Vendor order reference number"
}
},
{
"field": "WORKFLOW_STATUS",
"dataSource": {
"default": "Open"
}
},
{
"field": "SUPPRESS_INSTANCE_FROM_DISCOVERY",
"dataSource": {
"from": "//SuppressInstanceFromDiscovery"
}
},
{
"field": "LINKED_PACKAGE",
"dataSource": {
"from": "//LocalData[Description='LocalData1']/Value",
"translation": "lookupLinkedPackage"
}
},
{
"field": "SUFFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData4']/Value",
"translation": "lookupSuffix"
}
},
{
"field": "PREFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData5']/Value",
"translation": "lookupPrefix"
}
},
{
"field": "EXCHANGE_RATE",
"dataSource": {
"from": "//LocalData[Description='LocalData6']/Value"
}
},
{
"field": "URL",
"dataSource": {
"from": "//LocalData[Description='LocalData7']/Value"
}
}
]
}
HTTP status code 400
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
unable to list custom-mappings -- malformed parameter 'query', syntax error at column 6
HTTP status code 401
Not authorized to perform requested action
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
unable to list custom-mappings -- unauthorized
HTTP status code 500
Internal server error, e.g. due to misconfiguration
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
post /gobi/orders/custom-mappings
Create a new custom-mapping item.
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Set of order mappings",
"type": "object",
"properties": {
"orderType": {
"type": "string",
"description": "The type of the GOBI order",
"enum": [
"ListedElectronicMonograph",
"ListedElectronicSerial",
"ListedPrintMonograph",
"ListedPrintSerial",
"UnlistedPrintMonograph",
"UnlistedPrintSerial"
]
},
"mappings": {
"description": "Collection of the order mappings",
"type": "array",
"items": {
"type": "object",
"$ref": "mapping.json"
}
}
},
"additionalProperties": false,
"required": [
"orderType",
"mappings"
]
}
Example:
{
"orderType": "ListedPrintMonograph",
"mappings": [
{
"field": "ACQUISITION_METHOD",
"dataSource": {
"default": "Purchase At Vendor System"
}
},
{
"field": "APPROVED",
"dataSource": {
"default": "true",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "COLLECTION",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "CONTRIBUTOR",
"dataSource": {
"from": "//datafield[@tag='100']/*",
"combinator": "concat"
}
},
{
"field": "CONTRIBUTOR_NAME_TYPE",
"dataSource": {
"default": "Personal name",
"translation": "lookupContributorNameTypeId",
"translateDefault": true
}
},
{
"field": "CURRENCY",
"dataSource": {
"from": "//ListPrice/Currency",
"default": "USD"
}
},
{
"field": "FUND_ID",
"dataSource": {
"from": "//FundCode",
"translation": "lookupFundId"
}
},
{
"field": "FUND_CODE",
"dataSource": {
"from": "//FundCode"
}
},
{
"field": "FUND_PERCENTAGE",
"dataSource": {
"default": "100",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "VENDOR_INSTRUCTIONS",
"dataSource": {
"from": "//OrderNotes",
"default" : "N/A"
}
},
{
"field": "LIST_UNIT_PRICE",
"dataSource": {
"from": "//ListPrice/Amount",
"default": "0",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "LOCATION",
"dataSource": {
"from": "//Location",
"default": "*",
"translation": "lookupLocationId",
"translateDefault": true
}
},
{
"field": "MANUAL_PO",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "ORDER_TYPE",
"dataSource": {
"default": "One-Time"
}
},
{
"field": "PO_LINE_ORDER_FORMAT",
"dataSource": {
"default": "Physical Resource"
}
},
{
"field": "PO_LINE_PAYMENT_STATUS",
"dataSource": {
"default": "Awaiting Payment"
}
},
{
"field": "PO_LINE_RECEIPT_STATUS",
"dataSource": {
"default": "Awaiting Receipt"
}
},
{
"field": "PRODUCT_ID",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "truncateISBNQualifier"
}
},
{
"field": "PRODUCT_ID_TYPE",
"dataSource": {
"default": "ISBN",
"translation": "lookupProductIdType",
"translateDefault": true
}
},
{
"field": "PRODUCT_QUALIFIER",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='q']",
"defaultMapping": {
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "separateISBNQualifier"
}
}
}
},
{
"field": "PUBLICATION_DATE",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='c']"
}
},
{
"field": "PUBLISHER",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='b']"
}
},
{
"field": "QUANTITY_PHYSICAL",
"dataSource": {
"from": "//Quantity",
"default": "1",
"translation": "toInteger"
}
},
{
"field": "SOURCE",
"dataSource": {
"default": "API"
}
},
{
"field": "TITLE",
"dataSource": {
"from": "//datafield[@tag='245']/*",
"combinator": "concat"
}
},
{
"field": "VENDOR",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "MATERIAL_SUPPLIER",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "VENDOR_ACCOUNT",
"dataSource": {
"from": "//SubAccount",
"default": "0"
}
},
{
"field": "VENDOR_REF_NO",
"dataSource": {
"from": "//YBPOrderKey"
}
},
{
"field": "VENDOR_REF_NO_TYPE",
"dataSource": {
"default": "Vendor order reference number"
}
},
{
"field": "WORKFLOW_STATUS",
"dataSource": {
"default": "Open"
}
},
{
"field": "SUPPRESS_INSTANCE_FROM_DISCOVERY",
"dataSource": {
"from": "//SuppressInstanceFromDiscovery"
}
},
{
"field": "LINKED_PACKAGE",
"dataSource": {
"from": "//LocalData[Description='LocalData1']/Value",
"translation": "lookupLinkedPackage"
}
},
{
"field": "SUFFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData4']/Value",
"translation": "lookupSuffix"
}
},
{
"field": "PREFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData5']/Value",
"translation": "lookupPrefix"
}
},
{
"field": "EXCHANGE_RATE",
"dataSource": {
"from": "//LocalData[Description='LocalData6']/Value"
}
},
{
"field": "URL",
"dataSource": {
"from": "//LocalData[Description='LocalData7']/Value"
}
}
]
}
HTTP status code 201
Returns a newly created item, with server-controlled fields like 'id' populated
Headers
- Location: required(string)
URI to the created custom-mapping item
Body
Media type: application/json
Type: any
Example:
{
"orderType": "ListedPrintMonograph",
"mappings": [
{
"field": "ACQUISITION_METHOD",
"dataSource": {
"default": "Purchase At Vendor System"
}
},
{
"field": "APPROVED",
"dataSource": {
"default": "true",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "COLLECTION",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "CONTRIBUTOR",
"dataSource": {
"from": "//datafield[@tag='100']/*",
"combinator": "concat"
}
},
{
"field": "CONTRIBUTOR_NAME_TYPE",
"dataSource": {
"default": "Personal name",
"translation": "lookupContributorNameTypeId",
"translateDefault": true
}
},
{
"field": "CURRENCY",
"dataSource": {
"from": "//ListPrice/Currency",
"default": "USD"
}
},
{
"field": "FUND_ID",
"dataSource": {
"from": "//FundCode",
"translation": "lookupFundId"
}
},
{
"field": "FUND_CODE",
"dataSource": {
"from": "//FundCode"
}
},
{
"field": "FUND_PERCENTAGE",
"dataSource": {
"default": "100",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "VENDOR_INSTRUCTIONS",
"dataSource": {
"from": "//OrderNotes",
"default" : "N/A"
}
},
{
"field": "LIST_UNIT_PRICE",
"dataSource": {
"from": "//ListPrice/Amount",
"default": "0",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "LOCATION",
"dataSource": {
"from": "//Location",
"default": "*",
"translation": "lookupLocationId",
"translateDefault": true
}
},
{
"field": "MANUAL_PO",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "ORDER_TYPE",
"dataSource": {
"default": "One-Time"
}
},
{
"field": "PO_LINE_ORDER_FORMAT",
"dataSource": {
"default": "Physical Resource"
}
},
{
"field": "PO_LINE_PAYMENT_STATUS",
"dataSource": {
"default": "Awaiting Payment"
}
},
{
"field": "PO_LINE_RECEIPT_STATUS",
"dataSource": {
"default": "Awaiting Receipt"
}
},
{
"field": "PRODUCT_ID",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "truncateISBNQualifier"
}
},
{
"field": "PRODUCT_ID_TYPE",
"dataSource": {
"default": "ISBN",
"translation": "lookupProductIdType",
"translateDefault": true
}
},
{
"field": "PRODUCT_QUALIFIER",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='q']",
"defaultMapping": {
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "separateISBNQualifier"
}
}
}
},
{
"field": "PUBLICATION_DATE",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='c']"
}
},
{
"field": "PUBLISHER",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='b']"
}
},
{
"field": "QUANTITY_PHYSICAL",
"dataSource": {
"from": "//Quantity",
"default": "1",
"translation": "toInteger"
}
},
{
"field": "SOURCE",
"dataSource": {
"default": "API"
}
},
{
"field": "TITLE",
"dataSource": {
"from": "//datafield[@tag='245']/*",
"combinator": "concat"
}
},
{
"field": "VENDOR",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "MATERIAL_SUPPLIER",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "VENDOR_ACCOUNT",
"dataSource": {
"from": "//SubAccount",
"default": "0"
}
},
{
"field": "VENDOR_REF_NO",
"dataSource": {
"from": "//YBPOrderKey"
}
},
{
"field": "VENDOR_REF_NO_TYPE",
"dataSource": {
"default": "Vendor order reference number"
}
},
{
"field": "WORKFLOW_STATUS",
"dataSource": {
"default": "Open"
}
},
{
"field": "SUPPRESS_INSTANCE_FROM_DISCOVERY",
"dataSource": {
"from": "//SuppressInstanceFromDiscovery"
}
},
{
"field": "LINKED_PACKAGE",
"dataSource": {
"from": "//LocalData[Description='LocalData1']/Value",
"translation": "lookupLinkedPackage"
}
},
{
"field": "SUFFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData4']/Value",
"translation": "lookupSuffix"
}
},
{
"field": "PREFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData5']/Value",
"translation": "lookupPrefix"
}
},
{
"field": "EXCHANGE_RATE",
"dataSource": {
"from": "//LocalData[Description='LocalData6']/Value"
}
},
{
"field": "URL",
"dataSource": {
"from": "//LocalData[Description='LocalData7']/Value"
}
}
]
}
HTTP status code 400
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"unable to add custom-mapping -- malformed JSON at 13:3"
HTTP status code 401
Not authorized to perform requested action
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
unable to create custom-mappings -- unauthorized
HTTP status code 500
Internal server error, e.g. due to misconfiguration
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Get, Delete or Update a specific acquisition method
Retrieve custom-mapping item with given {custom-mappingId}
Delete custom-mapping item with given {custom-mappingId}
Update custom-mapping item with given {custom-mappingId}
get /gobi/orders/custom-mappings/{orderType}
Retrieve custom-mapping item with given {custom-mappingId}
URI Parameters
- orderType: required(string)
The order type
HTTP status code 200
Returns item with a given ID
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Set of order mappings",
"type": "object",
"properties": {
"orderType": {
"type": "string",
"description": "The type of the GOBI order",
"enum": [
"ListedElectronicMonograph",
"ListedElectronicSerial",
"ListedPrintMonograph",
"ListedPrintSerial",
"UnlistedPrintMonograph",
"UnlistedPrintSerial"
]
},
"mappings": {
"description": "Collection of the order mappings",
"type": "array",
"items": {
"type": "object",
"$ref": "mapping.json"
}
}
},
"additionalProperties": false,
"required": [
"orderType",
"mappings"
]
}
Example:
{
"orderType": "ListedPrintMonograph",
"mappings": [
{
"field": "ACQUISITION_METHOD",
"dataSource": {
"default": "Purchase At Vendor System"
}
},
{
"field": "APPROVED",
"dataSource": {
"default": "true",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "COLLECTION",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "CONTRIBUTOR",
"dataSource": {
"from": "//datafield[@tag='100']/*",
"combinator": "concat"
}
},
{
"field": "CONTRIBUTOR_NAME_TYPE",
"dataSource": {
"default": "Personal name",
"translation": "lookupContributorNameTypeId",
"translateDefault": true
}
},
{
"field": "CURRENCY",
"dataSource": {
"from": "//ListPrice/Currency",
"default": "USD"
}
},
{
"field": "FUND_ID",
"dataSource": {
"from": "//FundCode",
"translation": "lookupFundId"
}
},
{
"field": "FUND_CODE",
"dataSource": {
"from": "//FundCode"
}
},
{
"field": "FUND_PERCENTAGE",
"dataSource": {
"default": "100",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "VENDOR_INSTRUCTIONS",
"dataSource": {
"from": "//OrderNotes",
"default" : "N/A"
}
},
{
"field": "LIST_UNIT_PRICE",
"dataSource": {
"from": "//ListPrice/Amount",
"default": "0",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "LOCATION",
"dataSource": {
"from": "//Location",
"default": "*",
"translation": "lookupLocationId",
"translateDefault": true
}
},
{
"field": "MANUAL_PO",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "ORDER_TYPE",
"dataSource": {
"default": "One-Time"
}
},
{
"field": "PO_LINE_ORDER_FORMAT",
"dataSource": {
"default": "Physical Resource"
}
},
{
"field": "PO_LINE_PAYMENT_STATUS",
"dataSource": {
"default": "Awaiting Payment"
}
},
{
"field": "PO_LINE_RECEIPT_STATUS",
"dataSource": {
"default": "Awaiting Receipt"
}
},
{
"field": "PRODUCT_ID",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "truncateISBNQualifier"
}
},
{
"field": "PRODUCT_ID_TYPE",
"dataSource": {
"default": "ISBN",
"translation": "lookupProductIdType",
"translateDefault": true
}
},
{
"field": "PRODUCT_QUALIFIER",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='q']",
"defaultMapping": {
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "separateISBNQualifier"
}
}
}
},
{
"field": "PUBLICATION_DATE",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='c']"
}
},
{
"field": "PUBLISHER",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='b']"
}
},
{
"field": "QUANTITY_PHYSICAL",
"dataSource": {
"from": "//Quantity",
"default": "1",
"translation": "toInteger"
}
},
{
"field": "SOURCE",
"dataSource": {
"default": "API"
}
},
{
"field": "TITLE",
"dataSource": {
"from": "//datafield[@tag='245']/*",
"combinator": "concat"
}
},
{
"field": "VENDOR",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "MATERIAL_SUPPLIER",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "VENDOR_ACCOUNT",
"dataSource": {
"from": "//SubAccount",
"default": "0"
}
},
{
"field": "VENDOR_REF_NO",
"dataSource": {
"from": "//YBPOrderKey"
}
},
{
"field": "VENDOR_REF_NO_TYPE",
"dataSource": {
"default": "Vendor order reference number"
}
},
{
"field": "WORKFLOW_STATUS",
"dataSource": {
"default": "Open"
}
},
{
"field": "SUPPRESS_INSTANCE_FROM_DISCOVERY",
"dataSource": {
"from": "//SuppressInstanceFromDiscovery"
}
},
{
"field": "LINKED_PACKAGE",
"dataSource": {
"from": "//LocalData[Description='LocalData1']/Value",
"translation": "lookupLinkedPackage"
}
},
{
"field": "SUFFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData4']/Value",
"translation": "lookupSuffix"
}
},
{
"field": "PREFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData5']/Value",
"translation": "lookupPrefix"
}
},
{
"field": "EXCHANGE_RATE",
"dataSource": {
"from": "//LocalData[Description='LocalData6']/Value"
}
},
{
"field": "URL",
"dataSource": {
"from": "//LocalData[Description='LocalData7']/Value"
}
}
]
}
HTTP status code 404
Item with a given ID not found
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"custom-mapping not found"
HTTP status code 500
Internal server error, e.g. due to misconfiguration
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
delete /gobi/orders/custom-mappings/{orderType}
Delete custom-mapping item with given {custom-mappingId}
URI Parameters
- orderType: required(string)
The order type
HTTP status code 204
Item deleted successfully
HTTP status code 400
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"unable to delete custom-mapping -- constraint violation"
HTTP status code 404
Item with a given ID not found
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"custom-mapping not found"
HTTP status code 500
Internal server error, e.g. due to misconfiguration
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
put /gobi/orders/custom-mappings/{orderType}
Update custom-mapping item with given {custom-mappingId}
URI Parameters
- orderType: required(string)
The order type
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Set of order mappings",
"type": "object",
"properties": {
"orderType": {
"type": "string",
"description": "The type of the GOBI order",
"enum": [
"ListedElectronicMonograph",
"ListedElectronicSerial",
"ListedPrintMonograph",
"ListedPrintSerial",
"UnlistedPrintMonograph",
"UnlistedPrintSerial"
]
},
"mappings": {
"description": "Collection of the order mappings",
"type": "array",
"items": {
"type": "object",
"$ref": "mapping.json"
}
}
},
"additionalProperties": false,
"required": [
"orderType",
"mappings"
]
}
Example:
{
"orderType": "ListedPrintMonograph",
"mappings": [
{
"field": "ACQUISITION_METHOD",
"dataSource": {
"default": "Purchase At Vendor System"
}
},
{
"field": "APPROVED",
"dataSource": {
"default": "true",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "COLLECTION",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "CONTRIBUTOR",
"dataSource": {
"from": "//datafield[@tag='100']/*",
"combinator": "concat"
}
},
{
"field": "CONTRIBUTOR_NAME_TYPE",
"dataSource": {
"default": "Personal name",
"translation": "lookupContributorNameTypeId",
"translateDefault": true
}
},
{
"field": "CURRENCY",
"dataSource": {
"from": "//ListPrice/Currency",
"default": "USD"
}
},
{
"field": "FUND_ID",
"dataSource": {
"from": "//FundCode",
"translation": "lookupFundId"
}
},
{
"field": "FUND_CODE",
"dataSource": {
"from": "//FundCode"
}
},
{
"field": "FUND_PERCENTAGE",
"dataSource": {
"default": "100",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "VENDOR_INSTRUCTIONS",
"dataSource": {
"from": "//OrderNotes",
"default" : "N/A"
}
},
{
"field": "LIST_UNIT_PRICE",
"dataSource": {
"from": "//ListPrice/Amount",
"default": "0",
"translation": "toDouble",
"translateDefault": true
}
},
{
"field": "LOCATION",
"dataSource": {
"from": "//Location",
"default": "*",
"translation": "lookupLocationId",
"translateDefault": true
}
},
{
"field": "MANUAL_PO",
"dataSource": {
"default": "false",
"translation": "toBoolean",
"translateDefault": true
}
},
{
"field": "ORDER_TYPE",
"dataSource": {
"default": "One-Time"
}
},
{
"field": "PO_LINE_ORDER_FORMAT",
"dataSource": {
"default": "Physical Resource"
}
},
{
"field": "PO_LINE_PAYMENT_STATUS",
"dataSource": {
"default": "Awaiting Payment"
}
},
{
"field": "PO_LINE_RECEIPT_STATUS",
"dataSource": {
"default": "Awaiting Receipt"
}
},
{
"field": "PRODUCT_ID",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "truncateISBNQualifier"
}
},
{
"field": "PRODUCT_ID_TYPE",
"dataSource": {
"default": "ISBN",
"translation": "lookupProductIdType",
"translateDefault": true
}
},
{
"field": "PRODUCT_QUALIFIER",
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='q']",
"defaultMapping": {
"dataSource": {
"from": "//datafield[@tag='020']/subfield[@code='a']",
"translation": "separateISBNQualifier"
}
}
}
},
{
"field": "PUBLICATION_DATE",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='c']"
}
},
{
"field": "PUBLISHER",
"dataSource": {
"from": "//datafield[@tag='260']/subfield[@code='b']"
}
},
{
"field": "QUANTITY_PHYSICAL",
"dataSource": {
"from": "//Quantity",
"default": "1",
"translation": "toInteger"
}
},
{
"field": "SOURCE",
"dataSource": {
"default": "API"
}
},
{
"field": "TITLE",
"dataSource": {
"from": "//datafield[@tag='245']/*",
"combinator": "concat"
}
},
{
"field": "VENDOR",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "MATERIAL_SUPPLIER",
"dataSource": {
"default": "GOBI",
"translation": "lookupOrganization",
"translateDefault": true
}
},
{
"field": "VENDOR_ACCOUNT",
"dataSource": {
"from": "//SubAccount",
"default": "0"
}
},
{
"field": "VENDOR_REF_NO",
"dataSource": {
"from": "//YBPOrderKey"
}
},
{
"field": "VENDOR_REF_NO_TYPE",
"dataSource": {
"default": "Vendor order reference number"
}
},
{
"field": "WORKFLOW_STATUS",
"dataSource": {
"default": "Open"
}
},
{
"field": "SUPPRESS_INSTANCE_FROM_DISCOVERY",
"dataSource": {
"from": "//SuppressInstanceFromDiscovery"
}
},
{
"field": "LINKED_PACKAGE",
"dataSource": {
"from": "//LocalData[Description='LocalData1']/Value",
"translation": "lookupLinkedPackage"
}
},
{
"field": "SUFFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData4']/Value",
"translation": "lookupSuffix"
}
},
{
"field": "PREFIX",
"dataSource": {
"from": "//LocalData[Description='LocalData5']/Value",
"translation": "lookupPrefix"
}
},
{
"field": "EXCHANGE_RATE",
"dataSource": {
"from": "//LocalData[Description='LocalData6']/Value"
}
},
{
"field": "URL",
"dataSource": {
"from": "//LocalData[Description='LocalData7']/Value"
}
}
]
}
HTTP status code 204
Item successfully updated
HTTP status code 400
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"unable to update custom-mapping -- malformed JSON at 13:4"
HTTP status code 404
Item with a given ID not found
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
"custom-mapping not found"
HTTP status code 409
Optimistic locking version conflict
Body
Media type: text/plain
Type: any
Example:
version conflict
HTTP status code 500
Internal server error, e.g. due to misconfiguration
Body
Media type: application/json
Type: any
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Media type: text/plain
Type: any
Example:
internal server error, contact administrator