Skip to main content

Publication

A publication is a work that can be shared and consumed in a particular format.

type Publication implements Node {
archivedFiles(
after: String
before: String
filterBy: FileFilter
first: Int
last: Int
orderBy: FileOrder
): FileConnection!
content: Link
contentSignedURL(
expires: DateTime!
webReaderProtection: Boolean
): ContentSignedLink
cover: Link
created: DateTime!
customAttributes: [Attribute!]!
extractedMetadata: PublicationMetadata
files(
after: String
before: String
filterBy: FileFilter
first: Int
last: Int
orderBy: FileOrder
): FileConnection!
fulfillmentMethods: [FulfillmentMethod!]!
id: ID!
isbn: PublicationIdentifier!
licenses(
after: String
filterBy: LicenseFilter
first: Int
namespaceIds: [ID!]!
orderBy: LicenseOrder
): LicenseConnection!
metadata: PublicationMetadata
namespace: Namespace
namespaceId: ID!
newWebReaderPreProdSignedURL(
expires: DateTime!
): URI!
newWebReaderSignedURL(
expires: DateTime!
): URI!
newWebReaderStagingSignedURL(
expires: DateTime!
): URI!
onlineSample: Link
protections: [Protection!]!
related: [RelationshipLink!]
sample: Link
updated: DateTime!
uploadUrl(
input: PublicationUploadUrlInput!
): URI!
webReaderPreProdSignedURL(
expires: DateTime!
): URI!
webReaderSignedURL(
expires: DateTime!
): URI!
webReaderStagingSignedURL(
expires: DateTime!
): URI!
}

Fields

Publication.archivedFiles ● FileConnection! non-null object

A list of archived files for the publication.

Publication.archivedFiles.after ● String scalar

Returns the elements in the list that come after the specified cursor.

Publication.archivedFiles.before ● String scalar

Returns the elements in the list that come before the specified cursor.

Publication.archivedFiles.filterBy ● FileFilter input

Filtering options for the archived files.

Publication.archivedFiles.first ● Int scalar

Returns the first n elements from the list.

Publication.archivedFiles.last ● Int scalar

Returns the last n elements from the list.

Publication.archivedFiles.orderBy ● FileOrder input

Ordering options for the files.

The link to the latest content file.

A time limited signed URL of the latest content file.

Publication.contentSignedURL.expires ● DateTime! non-null scalar

When should that link expire. It should always be in the future.

Publication.contentSignedURL.webReaderProtection ● Boolean scalar

Whether or not to use the WebReader protection (only accepts range requests and binary-not the content). False by default.

The link to the latest representation of the cover.

Publication.created ● DateTime! non-null scalar

The date and time at which the publication was first created.

Publication.customAttributes ● [Attribute!]! non-null object

A list of non typed attributes.

Publication.extractedMetadata ● PublicationMetadata object

The metadata that was automatically extracted from this publication.

Publication.files ● FileConnection! non-null object

A list of files for the publication.

Publication.files.after ● String scalar

Returns the elements in the list that come after the specified cursor.

Publication.files.before ● String scalar

Returns the elements in the list that come before the specified cursor.

Publication.files.filterBy ● FileFilter input

Filtering options for the files.

Publication.files.first ● Int scalar

Returns the first n elements from the list.

Publication.files.last ● Int scalar

Returns the last n elements from the list.

Publication.files.orderBy ● FileOrder input

Ordering options for the files.

Publication.fulfillmentMethods ● [FulfillmentMethod!]! non-null enum

The list of methods the content can be accessed with.

Publication.id ● ID! non-null scalar

The ID of the publication, as an URI.

Publication.isbn ● PublicationIdentifier! non-null scalar

The publicly-assigned identifier for this publication.

Publication.licenses ● LicenseConnection! non-null object

Get the licenses for this publication.

Publication.licenses.after ● String scalar

Returns the elements in the list that come after the specified cursor.

Publication.licenses.filterBy ● LicenseFilter input

Filtering options for the licenses.

Publication.licenses.first ● Int scalar

Returns the first n elements from the list.

Publication.licenses.namespaceIds ● [ID!]! non-null scalar

The namespaces to consider for the licenses' target.

Publication.licenses.orderBy ● LicenseOrder input

Ordering options for the licenses.

Publication.metadata ● PublicationMetadata object

The metadata that was registered to this publication. If null, this publication should be considered still partially created.

Publication.namespace ● Namespace object

The publication's namespace.

Publication.namespaceId ● ID! non-null scalar

The ID of the publication's namespace.

Publication.newWebReaderPreProdSignedURL ● URI! non-null scalar

Returns a link for the web-reader session that is valid only until the expiration date, IN PRE-PROD. NOTE: for testing purposes.

Publication.newWebReaderPreProdSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire.

Publication.newWebReaderSignedURL ● URI! non-null scalar

Returns a link for the web-reader session that is valid only until the expiration date. NOTE: this should replace 'webReaderSignedURL' after transition to web reader is completed.

Publication.newWebReaderSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire.

Publication.newWebReaderStagingSignedURL ● URI! non-null scalar

Returns a link for the web-reader session that is valid only until the expiration date, IN STAGING. NOTE: for testing purposes.

Publication.newWebReaderStagingSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire.

The link to the latest online-readable version of a freely-available sample of the publication.

Publication.protections ● [Protection!]! non-null object

The list of the latest protections that have been applied to this publication.

The list of links related to this publication. To help with the transition to the File Store.

The link to the latest downloadable version of a freely-available sample.

Publication.updated ● DateTime! non-null scalar

The date and time at which the publication was last updated.

Publication.uploadUrl ● URI! non-null scalar

Get a signed URL to upload different resources associated with this publication.

Publication.uploadUrl.input ● PublicationUploadUrlInput! non-null input

Publication.webReaderPreProdSignedURL ● URI! non-null scalar

Returns a link for the web-reader session that is valid only until the expiration date, IN PRE-PROD. NOTE: for testing purposes.

Publication.webReaderPreProdSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire.

Publication.webReaderSignedURL ● URI! non-null scalar

Returns a link for a web-reader session that is valid only until the expiration date.

Publication.webReaderSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire. (notice that the web reader url itself might have a shorter lifetime!)

Publication.webReaderStagingSignedURL ● URI! non-null scalar

Returns a link for the web-reader session that is valid only until the expiration date, IN STAGING. NOTE: for testing purposes.

Publication.webReaderStagingSignedURL.expires ● DateTime! non-null scalar

When the reading session shoud expire.

Interfaces

Node interface

An object with an ID.

Returned by

publication query ● publicationByISBN query ● publicationByISBNForNamespaces query ● publicationsByISBNs query ● pushPublicationMetadata mutation

Member of

CreatePublicationFromISBNPayload object ● CreatePublicationFromMetadataPayload object ● License object ● PublicationEdge object ● Share object ● UpdatePublicationMetadataPayload object

Implemented by

Entity union