Publication
A publication is a work that can be shared and consumed in a particular format.
type Publication implements Node {
id: ID!
content: Link
cover: Link
sample: Link
onlineSample: Link
protections: [Protection!]!
fulfillmentMethods: [FulfillmentMethod!]!
related: [RelationshipLink!]
contentSignedURL(
expires: DateTime!
webReaderProtection: Boolean
): ContentSignedLink
files(
orderBy: FileOrder
filterBy: FileFilter
first: Int
after: String
last: Int
before: String
): FileConnection!
archivedFiles(
orderBy: FileOrder
filterBy: FileFilter
first: Int
after: String
last: Int
before: String
): FileConnection!
licenses(
namespaceIds: [ID!]
filterBy: LicenseFilter
orderBy: LicenseOrder
first: Int
after: String
): LicenseConnection!
isbn: PublicationIdentifier!
created: DateTime!
updated: DateTime!
extractedMetadata: PublicationMetadata
metadata: PublicationMetadata
webReaderSignedURL(
expires: DateTime!
): URI!
newWebReaderSignedURL(
expires: DateTime!
): URI!
webReaderStagingSignedURL(
expires: DateTime!
): URI!
newWebReaderStagingSignedURL(
expires: DateTime!
): URI!
webReaderPreProdSignedURL(
expires: DateTime!
): URI!
newWebReaderPreProdSignedURL(
expires: DateTime!
): URI!
uploadUrl(
input: PublicationUploadUrlInput!
): URI!
namespaceId: ID!
namespace: Namespace
customAttributes: [Attribute!]!
}
Fields
Publication.id ● ID! non-null scalar
The ID of the publication, as an URI.
Publication.content ● Link object
The link to the latest content file.
Publication.cover ● Link object
The link to the latest representation of the cover.
Publication.sample ● Link object
The link to the latest downloadable version of a freely-available sample.
Publication.onlineSample ● Link object
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.
Publication.fulfillmentMethods ● [FulfillmentMethod!]! non-null enum
The list of methods the content can be accessed with.
Publication.related ● [RelationshipLink!] list object
The list of links related to this publication. To help with the transition to the File Store.
Publication.contentSignedURL ● ContentSignedLink object
A time limited signed URL of the latest content file.
Publication.contentSignedURL.expires●DateTime!non-null scalarWhen 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.
Publication.files ● FileConnection! non-null object
A list of files for the publication.
Publication.files.orderBy●FileOrderinputOrdering options for the files.
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.after ● String scalar
Returns the elements in the list that come after the specified cursor.
Publication.files.last ● Int scalar
Returns the last n elements from the list.
Publication.files.before ● String scalar
Returns the elements in the list that come before the specified cursor.
Publication.archivedFiles ● FileConnection! non-null object
A list of archived files for the publication.
Publication.archivedFiles.orderBy●FileOrderinputOrdering options for the files.
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.after ● String scalar
Returns the elements in the list that come after the specified cursor.
Publication.archivedFiles.last ● Int scalar
Returns the last n elements from the list.
Publication.archivedFiles.before ● String scalar
Returns the elements in the list that come before the specified cursor.
Publication.licenses ● LicenseConnection! non-null object
Get the licenses for this publication.
Publication.licenses.namespaceIds●[ID!]list scalarThe namespaces to consider for the licenses' target.
Publication.licenses.filterBy ● LicenseFilter input
Filtering options for the licenses.
Publication.licenses.orderBy ● LicenseOrder input
Ordering options for the licenses.
Publication.licenses.first ● Int scalar
Returns the first n elements from the list.
Publication.licenses.after ● String scalar
Returns the elements in the list that come after the specified cursor.
Publication.isbn ● PublicationIdentifier! non-null scalar
The publicly-assigned identifier for this publication.
Publication.created ● DateTime! non-null scalar
The date and time at which the publication was first created.
Publication.updated ● DateTime! non-null scalar
The date and time at which the publication was last updated.
Publication.extractedMetadata ● PublicationMetadata object
The metadata that was automatically extracted from this publication.
Publication.metadata ● PublicationMetadata object
The metadata that was registered to this publication. If null, this publication should be considered still partially created.
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 scalarWhen the reading session shoud expire. (notice that the web reader url itself might have a shorter lifetime!)
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 scalarWhen the reading session shoud expire.
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 scalarWhen 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 scalarWhen the reading session shoud expire.
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 scalarWhen the reading session shoud expire.
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 scalarWhen the reading session shoud expire.
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.namespaceId ● ID! non-null scalar
The ID of the publication's namespace.
Publication.namespace ● Namespace object
The publication's namespace.
Publication.customAttributes ● [Attribute!]! non-null object
A list of non typed attributes.
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