Generic viewer

You are here

DLTS Viewer - Endpoints documentation

DLTS Viewer

Endpoints documentation

DLTS Collections

This endpoint retrieves a list of all collections currently available in the system. The response is formatted as a JSON object containing metadata about the collections. This endpoint does not accept any request parameters.

Endpoint: https://sites.dlib.nyu.edu/viewer/api/v1/collections

The response format is a JSON object with the following structure.

Response: application/json


{
  "response": {
    "numFound": "100",
    "start": 0,
    "docs": [
      {
        "title": "Arabic Collections Online",
        "code": "aco",
        "partners": [
          {
            "name": "New York University Libraries",
            "code": "nyu"
          }
        ],
        "iiif": {
          "presentation": "https://sites.dlib.nyu.edu/viewer/api/presentation/collections/aco:nyu/manifest.json"
        },
        "uri": "https://sites.dlib.nyu.edu/viewer/api/v1/collections/aco:nyu"
      },
      ...
    ]
  }
}

Notes:

  1. The numFound field indicates the total number of collections available.
  2. The start field is always 0 for this endpoint as it returns all results in a single response.
  3. A collection can be associated with multiple partner organizations.
  4. The code field is not guaranteed to be unique across all collections. Collections with the same code will have different unique partner associations.

DLTS Collection Resources

This endpoint retrieves detailed information about a specific collection, including the resources (items) it contains. You can use the uri value from the DLTS Collections endpoint to access this information.

Endpoint: The uri field returned in the DLTS Collections endpoint provides the specific endpoint for each collection. Following the example:

https://sites.dlib.nyu.edu/viewer/api/v1/collections/{collection_code}:{partner_code}

Path Parameters:

  1. collection_code: The code identifying the collection (e.g., aco). Note that this code is not guaranteed to be unique across all collections and should be used in conjunction with the partner_code.
  2. partner_code: The unique code identifying the partner organization associated with the collection (e.g., nyu). This helps to disambiguate collections with the same collection_code.

Example Request:

To retrieve information about the "Arabic Collections Online" from "New York University Libraries", you would use the following endpoint (taken from the uri field in the example response):

https://sites.dlib.nyu.edu/viewer/api/v1/collections/aco:nyu?rows=25&start=0

Response:

The response format is a JSON object containing metadata about the specific collection and a list of the resources within it. The exact structure of this response will vary depending on the collection, but you can expect to find information such as the collection's title, and an array of the items it contains.

{
  "response": {
    "numFound": 3669,
    "start": 0,
    "rows": 10,
    "collection": {
      "title": "Arabic Collections Online",
      "code": "aco",
      "partners": [
        {
          "name": "New York University Libraries",
          "code": "nyu"
        }
      ],
    },
    "docs": [
      {
        "nid": "530",
        "noid": "hdr7sv1z",
        "type": "book",
        "identifier": "nyu_aco000511",
        "title": "Madrasat al-shayṭān",
        "collections": {
          "code": "aco",
          "name": "Arabic Collections Online"
        },
        "partners": [
          {
            "code": "nyu",
            "name": "New York University Libraries"
          }
        ],
        "iiif": {
          "presentation": "https://sites.dlib.nyu.edu/viewer/api/presentation/books/nyu_aco000511/manifest.json"
        },
        "uri": "https://sites.dlib.nyu.edu/viewer/api/v1/books/nyu_aco000511"
      },
    ]
  }
}

Notes:

  1. The docs array in this response lists the individual resources (items) that belong to the specified collection.
  2. Each resource within the docs array may have its own metadata, including a unique identifier, type, and a uri for further details about that specific resource.
  3. The numFound field in this response indicates the total number of resources within the collection.
  4. The start Specifies an offset (by default, 0) into the responses at which should begin displaying content.
  5. The rows Controls how many rows of responses are displayed at a time (default value: 10).

DLTS Resources

Name Alias Machine name
Book books dlts_book
Map maps dlts_map
Photo Set photos dlts_photo_set
Collection collections dlts_collection
Partner partners dlts_partner

DLTS Discovery API

DLTS Discovery API can be use to find and filter by resource type, noid, identifier and others. The following resource are available:

Query parameters, which are supported by the DLTS Discovery API
Parameter Description
start Specifies an offset (by default, 0) into the responses at which Discovery should begin displaying content.
rows Controls how many rows of responses are displayed at a time (default value: 10)
collection Applies a filter to query by collection code to the search results.
partner Applies a filter to query by partner code to the search results.
type Applies a filter to query by resource type to the search results. Available types: dlts_book, dlts_photo_set, dlts_map
searchTerm Query argument to search by resource title, noid or identifier.
Sample URL

IIIF Presentation API 3.0

DLTS Viewer resources are available as IIIF Presentation API 3.0 manifest via URI paths. URIs for DLTS Viewer API resource have the following structure.

https://sites.dlib.nyu.edu/viewer/api/presentation/{resource-type}/{resource-identifier}/manifest.json
Sample URL

IIIF Image API 2.1.1

DLTS Viewer rely on Cantaloupe as it's image server.

The IIIF Image API can be called in two ways:

1. Request information about the image, including characteristics, functionality available, and related services.

https://sites.dlib.nyu.edu/viewer/api/image/{resource-type}/{resource-identifier}/{resource-sequence}/info.json
Sample URL

2. Request an image, which may be part of a larger image.

https://sites.dlib.nyu.edu/viewer/api/image/{resource-type}/{resource-identifier}/{resource-sequence}/{resource-region}/{resource-size}/{resource-rotation}/{resource-quality}.{resource-format}
Parameter Canonical value
resource-region “full” if the whole image is requested, (including a “square” region of a square image)
otherwise the x,y,w,h syntax.
resource-size “full” if the default size is requested,
the w, syntax for images that should be scaled maintaining the aspect ratio,
and the w,h syntax for explicit sizes that change the aspect ratio.
Note: The size keyword “full” will be replaced with “max” in version 3.0.
resource-rotation ”!” if the image is mirrored, followed by an integer if possible, and trimming any trailing zeros in a decimal value, and a leading 0 if the value is below 1.
resource-quality “default” if the server’s default quality is requested,
otherwise the quality string.
resource-format The explicit format string is always required. The format of the returned image is expressed as an extension at the end of the URI.
Resource format
Extension MIME Type
jpg image/jpeg
tif image/tiff
png image/png
gif image/gif
jp2 image/jp2
pdf application/pdf
webp image/webp
Sample URL
Image URL
https://sites.dlib.nyu.edu/viewer/api/image/books/tamwag_palante000011/1/full/150,/0/default.jpg
https://sites.dlib.nyu.edu/viewer/api/image/photos/AD-MC-016_ref52/1/full/150,/0/default.jpg
https://sites.dlib.nyu.edu/viewer/api/image/maps/fales_io_map000031/1/full/150,/0/default.jpg

For more information about URI syntax and others, please refer to IIIF Image API 2.1.1

Open Access Books API

This API allows users to retrieve information about open access books, including lists of publishers, books by a specific publisher, and detailed metadata for a specific book.

1. List All Publishers

Endpoint: https://sites.dlib.nyu.edu/viewer/api/v1/epubs

HTTP Method: GET

Description:

This endpoint retrieves a list of all publishers that have open access books available through this API.

Request: No request body is required.

Response: application/json


{
  "response": {
    "start": 0,
    "numFound": 1,
    "docs": [
      {
        "identifier": "nyu-press",
        "label": "New York University Press",
        "uri": "https://sites.dlib.nyu.edu/viewer/api/v1/epubs/nyu-press"
      }
    ]
  }
}

2. List Books by Publisher

Endpoint: https://sites.dlib.nyu.edu/viewer/api/v1/epubs/:publisher

Example: https://sites.dlib.nyu.edu/viewer/api/v1/epubs/nyu-press

HTTP Method: GET

Description:

This endpoint retrieves a list of all open access books published by a specific publisher. The publisher is identified by the :publisher path parameter.

Path Parameters:

  1. :publisher (string, required): The name or identifier of the publisher. The exact format of this identifier should be consistent with how publishers are listed in the /epubs endpoint (e.g., the name field).

Request: No request body is required.

Response: application/json


{
  "response": {
    "start": 0,
    "numFound": 272,
    "docs": {
      "9781479842865": {
        "label": "Undisciplined",
        "identifier": "9781479842865",
        "modified": "2024-12-05",
        "status": "1",
        "uri": "https://sites.dlib.nyu.edu/viewer/api/v1/epubs/nyu-press/9781479842865",
        "tid": ""
      },
      "9781479871247": {
        "label": "The Sex Offender Housing Dilemma",
        "identifier": "9781479871247",
        "modified": "2024-12-05",
        "status": "1",
        "uri": "https://sites.dlib.nyu.edu/viewer/api/v1/epubs/nyu-press/9781479871247",
        "tid": ""
      },
      ...
    }
  }
}

Response Codes:

  1. 200 OK: A list of books by the specified publisher is successfully returned.
  2. 404 Not Found: No publisher with the provided identifier was found.
  3. 500 Internal Server Error: An unexpected error occurred on the server.

Note: Ensure that the publisher name in the URL is URL-encoded if it contains spaces or special characters.

3. Get Book Metadata by publisher and library ISBN-13

Endpoint: https://sites.dlib.nyu.edu/viewer/api/v1/epubs/:publisher/:isbn13

Example: https://sites.dlib.nyu.edu/viewer/api/v1/epubs/nyu-press/9781479842865

HTTP Method: GET

Description:

This endpoint retrieves the complete metadata for a specific open access book, identified by its ISBN-13.

Path Parameters:

  1. :publisher (string, required): The name or identifier of the publisher. The exact format of this identifier should be consistent with how publishers are listed in the /epubs endpoint (e.g., the name field).

  2. :isbn13 (string, required): The 13-digit ISBN of the book.

Request: No request body is required.

Response: application/json


{
  "contributors": [
    {
      "bio": "Nihad M. Farooq is Associate Professor of American & Atlantic Studies and Director of Undergraduate Studies in the School of Literature, Media, and Communication at the Georgia Institute of Technology.",
      "name": "Nihad Farooq",
      "nameSort": "Farooq, Nihad",
      "order": 1,
      "role": "By (author)"
    }
  ],
  "dateBook": "2016-07-19",
  "dateOpenAccess": "2022-04-15",
  "description": "In the 19th century, personhood was a term of regulation and discipline in which slaves, criminals, and others, could be “made and unmade.\" Yet it was precisely the fraught, uncontainable nature of personhood that necessitated its constant legislation, wherein its meaning could be both contested and controlled.Examining scientific and literary narratives, Nihad M. Farooq’s Undisciplined encourages an alternative consideration of personhood, one that emerges from evolutionary and ethnographic discourse. Moving chronologically from 1830 to 1940, Farooq explores the scientific and cultural entanglements of Atlantic travelers in and beyond the Darwin era, and invites us to attend more closely to the consequences of mobility and contact on disciplines and persons. Bringing together an innovative group of readings—from field journals, diaries, letters, and testimonies to novels, stage plays, and audio recordings—Farooq advocates for a reconsideration of science, personhood, and the priority of race for the field of American studies.  Whether expressed as narratives of acculturation, or as acts of resistance against the camera, the pen, or the shackle, these stories of the studied subjects of the Atlantic world add a new chapter to debates about personhood and disciplinarity in this era that actively challenged legal, social, and scientific categorizations.",
  "descriptionHtml": "

In the 19th century, personhood was a term of regulation and discipline in which slaves, criminals, and others, could be “made and unmade.\" Yet it was precisely the fraught, uncontainable nature of personhood that necessitated its constant legislation, wherein its meaning could be both contested and controlled.

Examining scientific and literary narratives, Nihad M. Farooq’s Undisciplined encourages an alternative consideration of personhood, one that emerges from evolutionary and ethnographic discourse. Moving chronologically from 1830 to 1940, Farooq explores the scientific and cultural entanglements of Atlantic travelers in and beyond the Darwin era, and invites us to attend more closely to the consequences of mobility and contact on disciplines and persons. Bringing together an innovative group of readings—from field journals, diaries, letters, and testimonies to novels, stage plays, and audio recordings—Farooq advocates for a reconsideration of science, personhood, and the priority of race for the field of American studies. Whether expressed as narratives of acculturation, or as acts of resistance against the camera, the pen, or the shackle, these stories of the studied subjects of the Atlantic world add a new chapter to debates about personhood and disciplinarity in this era that actively challenged legal, social, and scientific categorizations.

", "doi": "https://doi.org/10.18574/nyu/9781479842865.001.0001", "handle": "https://doi.org/10.18574/nyu/9781479842865.001.0001", ... }

Response Codes:

  1. 200 OK: A list of books by the specified publisher is successfully returned.
  2. 400 Bad Request: The provided ISBN-13 is not in a valid format.
  3. 404 Not Found: No publisher with the provided identifier was found.
  4. 500 Internal Server Error: An unexpected error occurred on the server.

Note: Ensure that the publisher name in the URL is URL-encoded if it contains spaces or special characters.

Summary

This document serves as the endpoints documentation for the DLTS Viewer, outlining the various ways users and applications can interact with the digital collections held within. It meticulously details specific API endpoints, categorized by the type of data or functionality they provide, such as listing collections, accessing individual resources, performing searches via Apache Solr, and utilizing IIIF standards for image and presentation data. Furthermore, it includes information on a dedicated Open Access books API, enabling retrieval of publisher and book-specific metadata. The purpose of this documentation is to provide developers with the necessary information to programmatically access and integrate DLTS Viewer content into other systems.

How can we help?

If you have any questions, feedback, or need support regarding this API, please feel free to reach out through the following channels:

Maintainer/Developer: Alberto Ortiz Flores, Senior Software Developer

Email: aortiz@nyu.edu, dlts.pa@nyu.edu

Website: https://wp.nyu.edu/library-dlts/staff/

We aim to respond to your inquiries in a timely manner. Thank you for using our API!