Onboarding a Polaris library
Polaris library codes
Polaris library codes are numeric and will need to be entered into the mappings tables.
Example mappings rows for Polaris are:
STLOUIS | Location | 61 | DCB | AGENCY | 6slou |
STLOUIS | Location | 62 | DCB | AGENCY | 6slou |
STLOUIS | Location | 63 | DCB | AGENCY | 6slou |
STLOUIS | Location | 64 | DCB | AGENCY | 6slou |
STLOUIS | Location | 65 | DCB | AGENCY | 6slou |
These can be loaded via the /admin/cfg
endpoint. For example, if the above mappings are in a Google sheet
curl -X POST $TARGET/admin/cfg -H "Accept-Language: en" -H "Content-Type: application/json" -H "Authorization: Bearer $TOKEN" -d '{
"profile":"referenceValueMappingImport",
"url":"https://docs.google.com/spreadsheets/d/e/2PACX-1vTbJ3CgU6WYT4t5njNZPYHS8xjhjD8mevHVJK2oUWe5Zqwuwm_fbvv58hypPgDjXKlbr9G-8gVJz4zt/pub?gid=480381709&single=true&output=tsv "
}'
Sample Polaris Host LMS Configuration
Here is a sample HostLMS configuration for POLARIS.
curl -X POST $TARGET/hostlmss -H "Content-Type: application/json" -H "Authorization: Bearer $TOKEN" -d '{
"id":"'`uuidgen --sha1 -n $HOSTLMS_NS_UUID --name YOURCODE`'",
"code":"YOURCODE",
"name":"your name",
"lmsClientClass": "org.olf.dcb.core.interaction.polaris.PolarisLmsClient",
"clientConfig": {
"logon-branch-id": "LOGON-BRANCH-ID",
"logon-user-id": "LOGON-USER-ID",
"ingest": "true",
"base-url": "your-base-url",
"page-size":100,
"staff-username": "STAFF-USERNAME",
"staff-password": "STAFF-PASSWORD",
"domain-id": "DOMAIN",
"access-id": "DCB",
"access-key": "YOUR-ACCESS-KEY",
"contextHierarchy": [ "YOURCODE", "MOBIUS", "GLOBAL" ],
"papi": {
"papi-version": "v1",
"lang-id": "1033",
"app-id": "100",
"org-id": "1"
},
"services": {
"patron-barcode-prefix": "OpenRs-",
"default-patron-home-location-code": "1",
"services-version": "v1",
"language": "eng",
"product-id": "20",
"site-domain": "polaris",
"organisation-id": "ORG-ID",
"workstation-id": "1"
},
"item": {
"renewal-limit": "0",
"fine-code-id": "1",
"history-action-id": "6",
"loan-period-code-id": "9",
"shelving-scheme-id": "3",
"barcode-prefix": "",
"ill-location-id": "VIRTUAL-ITEM-LOCATION-ID"
}
}
}'
Important things to note
Documentation
See also documentation for PAPI Service URI Parameters.
papi.org-id
The root organisation id for the server that Polaris API is run from
Typically a server will only support a single api organisation, and this will be the root system organisation (1)
Used for API authentication
client-config.logon-branch-id
Used for staff logon
Can be any valid branch of the organisation represented by
services.organisation-id
.Should not be the same as the
services.organisation-id
. TBCCurrent usages in the PAPI Service API: https://documentation.iii.com/polaris/PAPI/current/PAPIService/PAPIServicePatronRegistrationCreate.htm#papiservicepatronregistrationcreate_2842942390_1220089 , https://documentation.iii.com/polaris/PAPI/current/PAPIService/PAPIServicePatronRegistrationUpdate.htm and ItemCheckoutPost .
Current usages in the Application Services API: “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.“
services.organisation-id
Defines the root id of the logged-on organisation.
There will be multiple organisations that can be logged in as on a shared server
This is not typically a branch or pickup location, but the library organisation under which pickup locations are defined
item.ill-location-id
needs to be set to the location which will be used as the home for any virtual items created. This location MUST
be able to supply all the pickup locations in your network
be select-able as a pickup location in order for the supplying flow to indicate to staff that DCB loans should be placed in transit.
is set at a library level, rather than a server level
Operated as a Community Resource by the Open Library Foundation