Catalogue

Retrieve availability and circulation details for a specific title.

This endpoint returns the current availability status and circulation information for a title at the selected library location.

You must provide at least one search identifier either BRN or ISBN to look up the title.

get
https://openweb-api.nlb.gov.sg/api/v2/Catalogue/GetAvailabilityInfo

Query Parameters

LocationCodestring

Location code please refer to table T001.

Match pattern:^(TRL|WRL|CMPL|LKCRL|AMKPL|BBPL|BPPL|BMPL|CLL|CSPL|CCKPL|GEPL|JRL|JWPL|QUPL|TPPL|YIPL|OCPL|CNPL|SBPL|LSC|SRPL|LOLC|MPPL|BEPL|SKPL|EPPL|MOLLEY|PRPL|BIPL|LSCAV|07LKCRL|08LKCRL|09LKCRL|11LKCRL|HBPL|PRL)$

Limitinteger(int32)

Default:20

>= 1<= 100

SortFieldsstring

Note: Do URL encode the value.

  • Use prefix + or - to sort by ascending or descending and comma(,) separated for multiple sort fields.
  • +locationCode
  • -locationCode
SetIdinteger(int32)

Default:0

Offsetinteger(int32)

Default:0

BRNinteger(int32)
ISBNstring

The standardised 10-digit or 13-digit international number that uniquely identifies a monographic publication

Match pattern:^(?:\d{9}[\dXx]|97[89]\d{10})$

Response

application/json

OK

GetAvailabilityInfoResponseV2

* Additional properties are NOT allowed.
setIdinteger(int32)

Search result dataset id.

totalRecordsinteger(int32)

Total number of records for this search(dataset).

Example:999

countinteger(int32)

Number of records returned in the response.

Example:999

hasMoreRecordsboolean

Indicator - if dataset has more records or not for pagination.

Default:false

nextRecordsOffsetinteger(int32)

Value to pass in Offset parameter to navigate to next page.

Example:20

itemsarray[object]
* Additional properties are NOT allowed.
Show Child Parameters
get/GetAvailabilityInfo
 
application/json

Retrieve newly arrived library titles based on a specified date range.

This endpoint returns a list of new arrival titles added to the library collection within a selected date range.

get
https://openweb-api.nlb.gov.sg/api/v2/Catalogue/GetNewTitles

Query Parameters

DateRangestringrequired

Supported values are Quarterly, Monthly, Weekly.

Match pattern:^(Quarterly|Monthly|Weekly)$

Default:Weekly

Limitinteger(int32)

Default:200

>= 1<= 200

SortFieldsstring

Supported values are relevancy, newmaterial, publicationDate.

Note: Do URL encode the value.

  • Use prefix + or - to sort by ascending or descending and comma(,) separated for multiple sort fields.
  • relevancy
  • newmaterial
  • +publicationDate
  • -publicationDate
SetIdinteger(int32)

Default:0

Offsetinteger(int32)

Default:0

MaterialTypesarray[string]
Please refer to the response "facets" and get the id values to pass in the parameter.

Sample Value:

  • bks
  • ebk
  • dvd
IntendedAudiencesarray[string]
Please refer to the response "facets" and get the id values to pass in the parameter.

Sample Value:

  • adult
  • junior
DateFrominteger(int32)
DateTointeger(int32)
Locationsarray[string]
Please refer to the response "facets" and get the id values to pass in the parameter.

Sample Value:

  • amkpl
  • sbpl
  • trl
Languagesarray[string]
Please refer to the response "facets" and get the id values to pass in the parameter.

Sample Value:

  • eng
  • chi
Availabilityboolean
Fictionboolean

Response

application/json

OK

SearchNewTitlesResponseV2

* Additional properties are NOT allowed.
totalRecordsinteger(int32)

Total number of records for this search(dataset).

Example:999

countinteger(int32)

Number of records returned in the response.

Example:999

nextRecordsOffsetinteger(int32)

Value to pass in Offset parameter to navigate to next page.

Example:20

hasMoreRecordsboolean

Indicator - if dataset has more records or not for pagination.

Default:false

titlesarray[object]
* Additional properties are NOT allowed.
Show Child Parameters
get/GetNewTitles
 
application/json

Retrieve trending titles based on checkout activity for a specific library location.

This endpoint returns the most frequently checked-out titles within a selected time period for a given library location.

get
https://openweb-api.nlb.gov.sg/api/v2/Catalogue/GetMostCheckoutsTrendsTitles

Query Parameters

LocationCodestringrequired

Location code to return most Checkouts titles from this location. Refer to table T001.

Match pattern:^(TRL|WRL|CMPL|LKCRL|AMKPL|BBPL|BPPL|BMPL|CLL|CSPL|CCKPL|GEPL|JRL|JWPL|QUPL|TPPL|YIPL|OCPL|CNPL|SBPL|LSC|SRPL|LOLC|MPPL|BEPL|SKPL|EPPL|MOLLEY|PRPL|BIPL|LSCAV|07LKCRL|08LKCRL|09LKCRL|11LKCRL|HBPL|PRL)$

Example:AMKPL

Durationstring

Duration to return most Checkouts titles.

Available values : past30days, pastmonth

Match pattern:^(pastmonth|past30days)$

Default:past30days

Example:past30days

Response

application/json

OK

SearchMostCheckoutsTitlesResponse

* Additional properties are NOT allowed.
checkoutsTrendsarray[object]
* Additional properties are NOT allowed.
Show Child Parameters
get/GetMostCheckoutsTrendsTitles
 
application/json

Retrieve detailed information for a specific item.

This endpoint retrieves detailed information for the item identified by the provided item id.

get
https://openweb-api.nlb.gov.sg/api/v2/Catalogue/GetItem

Query Parameters

ItemIdstringrequired

Item accession number.

Response

application/json

OK

GetItemResponseModel

* Additional properties are NOT allowed.
irninteger(int32)

Item Internal Identifier.

Example:99999999

itemIdstring

Item Id.

Example:BxxxxxxxJ

brninteger(int32)

Title record Book Reference Number.

Example:99999999

volumeNamestring | null

Volume Identifier.

Example:2023 issue 1

callNumberstring

Call Number.

Example:123.123 ART

formattedCallNumberstring

Formatted Call Number.

Example:English 123.123 -[ART]

mediaobjectrequired

Item Material Type. Please refer to code list C002.

* Additional properties are NOT allowed.
Show Child Parameters
usageLevelobjectrequired

Usage Level. Please refer to code list C004.

* Additional properties are NOT allowed.
Show Child Parameters
locationobjectrequired

Library Location. Please refer to code list C005.

* Additional properties are NOT allowed.
Show Child Parameters
courseCodeobject

Course Code.

* Additional properties are NOT allowed.
Show Child Parameters
languagestring

Language.

Example:English

suffixstring | null

Suffix.

Example:-[ART]

donorstring | null

Item donated by information.

Example:Donated by abc

pricenumber | null(double)

Item price.

Example:9999.99

statusobject

Item Status.

* Additional properties are NOT allowed.
Show Child Parameters
transactionStatusobjectrequired

Item Transactional Status. Please refer to code list C003.

* Additional properties are NOT allowed.
Show Child Parameters
minAgeLimitinteger(int32)

Title age limit.

Example:13

get/GetItem
 
application/json

BadRequestError

object

Error contents including the specific error

* Additional properties are NOT allowed.
statusCodeinteger(int32)

The status code of the error.

Example:400

errorstringrequired

The type of the error.

>= 1 characters

Example:Bad Request

messagestringrequired

The message of the error.

>= 1 characters

Example:FieldName is missing.

Example