openapi: 3.0.2 servers: - description: University of Vienna PHAIDRA url: https://services.phaidra.univie.ac.at/api/ - description: PHAIDRA Sandbox url: https://sandbox.phaidra.org/api/ info: title: PHAIDRA API version: '3.0' description: Documentation of the PHAIDRA API. license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html tags: - name: object-basics description: Most important requests you'll need to manage digital objects in PHAIDRA - name: object-advanced description: Additional requests for the manipulation of digital objects - name: relationships description: Requests for adding and removing object relationships - name: search description: '' - name: datastream description: Requests for transforming and validating datastreams - name: templates description: Requests for managing metadata templates - name: directory description: Requests related to users, user groups and organisation structure - name: imageserver description: Requests to the imageserver - name: lists description: Requests for manipulating object lists - name: stats description: '' - name: vocabularies description: Requests for controlled vocabularies - name: oai-pmh description: Look at the [OAI-PMH protocol](https://www.openarchives.org/pmh) used in this endpoint - name: session description: Session management - name: misc description: '' paths: /picture/create: post: summary: Creates a picture object description: Creates a simple data object with internal content model cmodel:Picture. See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for further details properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: Picture object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /audio/create: post: summary: Creates an audio object description: Creates a simple data object with internal content model cmodel:Audio. See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for further details properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: Audio object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /video/create: post: summary: Creates a video object description: Creates a simple data object with internal content model cmodel:Video. See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for further details properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: Video object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /document/create: post: summary: Creates a document object description: Creates a simple data object with internal content model cmodel:PDFDocument. See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for further details properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: Document object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /unknown/create: post: summary: Creates a data object description: Creates a simple data object with internal content model cmodel:Asset. See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) for further details properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: Data object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /collection/create: post: summary: Creates a collection description: Use to create collection object. The process is the same as for other simple objects (e.g. picture/create), just don't provide any file parameter. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object description: a structure containing metadata; refer to the wiki (see above) for further details. You can send members - as in the example, or not, and add members later using either the collection/{pid}/members/add request, or the relationships requests with the hasMember relationship. properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' members: $ref: '#/components/schemas/members' responses: '200': description: collection created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: string /container/create: post: summary: Creates a container object description: See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-container) for an example. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object description: JSON metadata example (see [creating a container example](https://github.com/phaidra/phaidra-api/wiki/Creating-a-container)) properties: metadata: $ref: '#/components/schemas/container_with_members' member_foo: type: string format: binary member_bar: type: string format: binary responses: '200': description: Container created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating container content: application/json: schema: type: object /state: get: description: Returns "remote_address". This method is used for monitoring. summary: Test api state tags: - misc responses: '200': description: The API is running! content: application/json: schema: {} /uwmetadata/tree: get: summary: Get uwmetadata structure. description: Returns the uwmetadata structure with all nodes, labels, dictionaries, etc. tags: - datastream responses: '200': description: Uwmetadata tree. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number languages: type: object tree: $ref: '#/components/schemas/uwmetadata' /uwmetadata/json2xml: post: summary: Transforms uwmetadata JSON to XML. description: Transforms uwmetadata structure from JSON to XML (see [examples of uwmetadata](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples)). tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: type: object properties: uwmetadata: $ref: '#/components/schemas/uwmetadata_min' description: example of uwmetadata JSON responses: '200': description: XML uwmetadata. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: uwmetadata: type: string /uwmetadata/xml2json: post: summary: Transforms uwmetadata XML to JSON. description: Transforms the uwmetadata structure from XML to JSON (see [examples of uwmetadata](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples)). tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: uwmetadata: type: string example: ' Title de 46 Brenda Walsh 1 ' parameters: - in: query name: mode schema: type: string required: false enum: - full - basic default: basic description: mode full or basic responses: '200': description: JSON uwmetadata. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: uwmetadata: $ref: '#/components/schemas/uwmetadata_min' /uwmetadata/validate: post: summary: Validates uwmetadata XML. description: Validates the uwmetadata structure in XML (see an [example of uwmetadata XML](https://github.com/phaidra/phaidra-api/wiki/Article-uwmetadata-in-xml-format)). The XML has to be sent in the request body as raw data. tags: - datastream requestBody: content: text/plain: schema: type: string format: binary description: uwmetadata XML, the XML has to be sent in the request body as raw data. responses: '200': description: Xml uwmetadata validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /uwmetadata/json2xml_validate: post: summary: Validates JSON uwmetadata. description: 'Transforms uwmetadata structure from JSON to XML, then validates the uwmetadata XML. See [examples of uwmetadata](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples). ' tags: - datastream requestBody: description: JSON uwmetadata. An example of article uwmetadata in basic mode is provided. content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/uwmetadata_article_basic' responses: '200': description: Json uwmetadata validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /mods/tree: get: summary: Get MODS tree. description: Returns the MODS structure with all nodes, dictionaries, etc. tags: - datastream responses: '200': description: Mods tree. content: application/json: schema: $ref: '#/components/schemas/mods_tree' /mods/json2xml: post: summary: Transforms MODS JSON to XML. description: Transforms the MODS from JSON to XML. tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/mods' description: example of mods JSON responses: '200': description: MODS XML. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: mods: type: string /mods/xml2json: post: summary: Transforms MODS XML to JSON. description: Transforms the MODS from XML to JSON. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: annotations: type: string example: AC04090285gerGustavFreytagedtKarte der Dachstein-Gruppefür TouristenTouristenkartenDeutschland, Österreich, Schweiz <Geographie>DachsteinKarte1931WienG. Freytag & Berndt1 Kt.mehrfarb.58 x 55 cmUniversitätsbibliothek WienMaschinell erzeugtgerrakwbBestand der Kartensammlung der Fachbereichsbibliothek Geographie und Regionalforschung, Universität Wienhttp://creativecommons.org/publicdomain/mark/1.0/ parameters: - in: query name: mode schema: type: string required: false enum: - full - basic default: basic description: mode full or basic responses: '200': description: MODS as JSON structure. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string mods: $ref: '#/components/schemas/mods' /mods/validate: post: summary: Validates the MODS XML. description: Validates the MODS structure in XML. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: annotations: type: string example: AC04090285gerGustavFreytagedtKarte der Dachstein-Gruppefür TouristenTouristenkartenDeutschland, Österreich, Schweiz <Geographie>DachsteinKarte1931WienG. Freytag & Berndt1 Kt.mehrfarb.58 x 55 cmUniversitätsbibliothek WienMaschinell erzeugtgerrakwbBestand der Kartensammlung der Fachbereichsbibliothek Geographie und Regionalforschung, Universität Wienhttp://creativecommons.org/publicdomain/mark/1.0/ responses: '200': description: XML validated. content: application/json: schema: $ref: '#/components/schemas/default' /mods/json2xml_validate: post: summary: Validates MODS JSON description: Transforms the MODS structure from JSON to XML and validates it. tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/mods' responses: '200': description: MODS JSON validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /rights/json2xml: post: summary: Transforms rights JSON to XML. description: Transforms the rights structure from JSON to XML (see [examples of rights structure](https://github.com/phaidra/phaidra-api/wiki/Example-of-rights)) tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: type: object properties: rights: $ref: '#/components/schemas/rights' description: example of rights JSON responses: '200': description: rights in XML. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: rights: type: string /rights/xml2json: post: summary: Transforms rights XML to JSON. description: Transforms the rights structure from XML to JSON (see [examples of rights structure](https://github.com/phaidra/phaidra-api/wiki/Example-of-rights)). tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: rights: type: string example: username123 responses: '200': description: rights in JSON content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number rights: $ref: '#/components/schemas/rights' /rights/validate: post: summary: Validates rights XML. description: Validates the rights structure in XML. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: rights: type: string example: username123 responses: '200': description: xml validated. content: application/json: schema: $ref: '#/components/schemas/default' /rights/json2xml_validate: post: summary: Validates rights JSON. description: Transforms the rights structure from JSON to XML and validates it (see [examples of rights structure](https://github.com/phaidra/phaidra-api/wiki/Example-of-rights)). tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: $ref: '#/components/schemas/rights' responses: '200': description: JSON validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /geo/json2xml: post: summary: Transforms the geo JSON to XML. description: Transforms the geo structure from JSON to XML (see [examples of geo datastream of a map object](https://github.com/phaidra/phaidra-api/wiki/GEO-datastream-of-a-map-object)). tags: - datastream requestBody: description: Geo JSON content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: $ref: '#/components/schemas/geo' description: example of geo JSON responses: '200': description: geolocation in XML. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: geo: type: string /geo/xml2json: post: summary: Transforms geo XML to JSON. description: Transforms the geo structure from XML to JSON (see [examples of geo datastream of a map object](https://github.com/phaidra/phaidra-api/wiki/GEO-datastream-of-a-map-object)). tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: geo: type: string example: Tiflis, Metechi-KircheTiflis, Georgien Tbilisi, Georgia44.8112504748688,41.6902784095934,0 responses: '200': description: geo in JSON content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string geo: $ref: '#/components/schemas/geo' /geo/validate: post: summary: Validates the geo XML. description: Validates the geo structure in XML. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: geo: type: string example: Tiflis, Metechi-KircheTiflis, Georgien Tbilisi, Georgia44.8112504748688,41.6902784095934,0 responses: '200': description: geo XML validated. content: application/json: schema: $ref: '#/components/schemas/default' /geo/json2xml_validate: post: summary: Validates the geo JSON. description: Transforms the geo structure from JSON to XML and validates it. See [examples of geo datastream of a map object](https://github.com/phaidra/phaidra-api/wiki/GEO-datastream-of-a-map-object). tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/geo' responses: '200': description: geo JSON validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /members/order/json2xml: post: summary: Transforms members JSON to XML. description: Transforms the members JSON structure to XML. See [example of members JSON structure](https://github.com/phaidra/phaidra-api/wiki/Collection-members-json-structure). tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: $ref: '#/components/schemas/members' responses: '200': description: Members JSON in XML format. content: application/json: schema: type: object properties: alerts: type: array metadata: type: string /members/order/xml2json: post: summary: Transforms the members XML structure to JSON. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: geo: type: string example: o:98079o:97973o:98109o:98074o:16066o:16083o:98076o:26111o:18o:62026 responses: '200': description: Collection members in JSON content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: $ref: '#/components/schemas/members' /annotations/json2xml: post: summary: Transforms annotations JSON to XML. description: Transforms the annotations JSON structure to XML (see an [example of annotation JSON structure](https://github.com/phaidra/phaidra-api/wiki/Annotations)). tags: - datastream requestBody: description: Annotations JSON content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: $ref: '#/components/schemas/annotations' description: example of annotation JSON responses: '200': description: Annotations in XML. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string annotations: type: object /annotations/xml2json: post: summary: Transforms annotations XML to JSON. description: Transforms the XML annotations structure to JSON. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: annotations: type: string example: 0.70.60.20.18pigmentsprussian blue0.70.40.10.1peopleMary0.10.80.150.1pigmentsazurite responses: '200': description: annotations in JSON content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: $ref: '#/components/schemas/annotations' /annotations/validate: post: summary: Validates the annotations XML. description: Validates the annotations structure in XML. tags: - datastream requestBody: content: application/json: schema: type: object properties: metadata: type: object properties: annotations: type: string example: 0.70.60.20.18pigmentsprussian blue0.70.40.10.1peopleMary0.10.80.150.1pigmentsazurite responses: '200': description: Annotations XML validated. content: application/json: schema: $ref: '#/components/schemas/default' /annotations/json2xml_validate: post: summary: Validates the annotations JSON. description: 'Transforms the annotations structure from JSON to XML and validates it. ' tags: - datastream requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/annotations' responses: '200': description: annotations JSON validated. content: application/json: schema: $ref: '#/components/schemas/default' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/default' /directory/org_get_subunits: get: summary: Get subunits. description: Retrieves the subunits of an organization. tags: - directory parameters: - in: query name: id schema: type: string required: false description: unit id responses: '200': description: subunits content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number subunits: type: array items: $ref: '#/components/schemas/units' /directory/org_get_superunits: get: summary: Get superunits. description: Retrieves the superunits of an organization. tags: - directory parameters: - in: query name: id schema: type: string required: false description: unit id responses: '200': description: Units which are parent of the org unit. content: application/json: schema: type: object properties: status: type: number parent_id: type: string /directory/org_get_parentpath: get: summary: Get the parent path. description: Retrieves the parent path of an organisation unit tags: - directory parameters: - in: query name: id schema: type: string required: false description: Parent id responses: '200': description: parent path content: application/json: schema: type: object properties: status: type: number alerts: type: array items: type: object properties: msg: type: string type: type: string parentpath: type: array /directory/org_get_units: get: summary: Get organisation units description: Get the list of the organisation units. They can then be used for example to find objects explicitly associated to, or to restrict rights for, a particular organisation unit. tags: - directory parameters: - in: query name: parent_id schema: type: string required: false description: Id of the parent unit. If not set, returns the top-level units. - in: query name: values_namespace schema: type: string required: false description: If provided, the values returned (in the 'uri' field) will be prefixed with the value of this parameter. responses: '200': description: units content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number terms: type: array /utils/get_all_pids: get: summary: Get all pids tags: - misc responses: '200': description: pids content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number pids: type: array items: type: string /vocabulary: get: summary: Get controlled vocabulary description: Get vocabulary which was saved in API in vocabulary folder. tags: - vocabularies parameters: - in: query name: uri schema: type: string description: vocabulary ID examples: http://id.loc.gov/vocabulary/iso639-2: value: http://id.loc.gov/vocabulary/iso639-2 summary: Vocabulary of languages oefos2012: value: oefos2012 summary: OEFOS 2012 classification - in: query name: nocache schema: type: boolean required: false description: cache responses: '200': description: JSON representation of the controlled vocabulary content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /terms/label: get: summary: Get term labels. description: Retrieves the labels for a particular term using its URI as a parameter. It could be a term of a classification or a vocabulary (any type, even licenses and organisational units). tags: - vocabularies parameters: - in: query name: uri schema: type: string required: false examples: voc_faculty: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A150 summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A150 voc_department: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A767 summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A767 voc_17: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253 summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253 cls_1: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347 summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347 description: URI of term responses: '200': description: labels content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string nonpreferred: type: array items: {} upstream_identifier: type: number term_id: type: string labels: type: object properties: labels: type: object properties: en: type: string de: type: string status: type: number /terms/children: get: summary: Get children. description: Retrieve the children for a term URI. tags: - vocabularies parameters: - in: query name: uri schema: type: string required: false examples: Bibliotheks- und Archivwesen: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347 summary: URI for the Vienna University Library and Archive Services description: URI of term responses: '200': description: terms content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string terms: type: object properties: nonpreferred: type: array items: type: string upstream_identifier: type: string term_id: type: string labels: type: object properties: en: type: string de: type: string status: type: number /terms/taxonpath: get: summary: Get the taxon path. tags: - vocabularies parameters: - in: query name: uri schema: type: string required: false examples: BibliotheksundArchivwesen: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347 summary: URI for the Vienna University Library and Archive Services description: URI of term responses: '200': description: taxonpath content: application/json: schema: type: object properties: taxonpath: type: object properties: uri: type: string nonpreferred: type: array upstream_identifier: type: string term_id: type: string labels: type: object properties: en: type: string de: type: string status: type: number /terms/parent: get: summary: Get parent. description: Retrieve the parent of a term, using its URI. tags: - vocabularies parameters: - in: query name: uri schema: type: string required: false examples: Tieranatomie: value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/540 summary: URI for the term "Animal anatomy" description: URI of term responses: '200': description: parents content: application/json: schema: type: object properties: parent: type: string /resolve: get: summary: Resolve an URI description: The resolver must be known/configured. tags: - vocabularies parameters: - in: query name: uri schema: type: string required: false example: http://d-nb.info/gnd/4000044-8 description: URI of term responses: '200': description: Depends on the vocabulary content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /signin: get: summary: Sign in description: Authenticate with the api to get an XSFR token back (a cookie with the same name will be set as well). You then have to send this token back in an X-XSRF-TOKEN header for each authenticated call. tags: - session security: - basicAuth: [] responses: '200': description: a JSON object with an XSRF-Token content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number XSRF-TOKEN: type: string '403': description: credentials invalid /signout: get: summary: Sign out tags: - session security: - tokenAuth: [] responses: '200': description: '' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string sid: type: string status: type: number '403': description: credentials invalid /keepalive: get: summary: Extends session expiration time description: Extends the expiration time of the session token (the session is identified by the token). tags: - session security: - tokenAuth: [] responses: '200': description: a JSON object with an XSRF-Token and a new expiration time content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string sid: type: string expires: type: number status: type: number '403': description: credentials invalid /collection/{pid}/members: get: summary: Get pids of collection members. description: 'Returns the pids of the members of a collection. ' tags: - relationships parameters: - in: path name: pid schema: type: string required: false description: pid responses: '200': description: members (ordered if the COLLECTIONORDER datastream is available). content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: members: type: object properties: pid: type: string pos: type: string /collection/{pid}/descendants: get: description: Get descendants. summary: Returns descendants of collection. tags: - relationships parameters: - in: path name: pid schema: type: string required: false description: collection pid responses: '200': description: descendants content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string descendants: $ref: '#/components/schemas/collection' /collection/{pid}/members/remove: post: summary: Remove collection members. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: false description: pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: members: $ref: '#/components/schemas/members' description: Should contain 'members' with an array of members to remove (see [collection members example](https://github.com/phaidra/phaidra-api/wiki/Collection-members-json-structure)). responses: '200': description: collection members removed. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: members: type: object properties: pid: type: string pos: type: string /collection/{pid}/members/add: post: summary: Add collection members. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: collection pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: members: $ref: '#/components/schemas/members' description: Should contain 'members' with an array of members to add (see [collection members example](https://github.com/phaidra/phaidra-api/wiki/Collection-members-json-structure)). responses: '200': description: collection members added. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: members: type: object properties: pid: type: string pos: type: string /collection/{pid}/members/order: post: summary: Orders collection members tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: collection pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: members: $ref: '#/components/schemas/members' description: Should contain 'members' with an array of members to order, with positions defined (see [collection members example](https://github.com/phaidra/phaidra-api/wiki/Collection-members-json-structure)). responses: '200': description: collection members ordered. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: members: type: object properties: pid: type: string pos: type: string /collection/{pid}/members/{itempid}/order/{position}: post: summary: Changes order of single member. description: Changes order of a single collection member. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: collection pid - in: path name: itempid schema: type: string required: true description: member pid - in: path name: position schema: type: string required: true description: position responses: '200': description: order changed content: application/json: schema: type: object properties: alerts: type: array status: type: string /container/{pid}/members/order: post: summary: Orders members of a container. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: container pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: members: $ref: '#/components/schemas/members' description: Should contain 'members' with an array of members to order (similar to collections, see [collection members example](https://github.com/phaidra/phaidra-api/wiki/Collection-members-json-structure) with positions defined responses: '200': description: container members ordered content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: members: type: object properties: pid: type: string pos: type: string /container/{pid}/members/{itempid}/order/{position}: post: summary: Changes order of single member. description: Changes order of a single container member. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: container pid - in: path name: itempid schema: type: string required: true description: member pid - in: path name: position schema: type: string required: true description: position responses: '200': description: order changed content: application/json: schema: type: object properties: alerts: type: array status: type: string /object/{pid}/related: get: summary: Get related objects. description: This method returns all objects which are in some relation to the object specified in URL. tags: - relationships parameters: - in: path name: pid schema: type: string required: true description: the requested object id - in: query name: relation schema: type: string enum: - http://pcdm.org/models#hasMember - http://purl.org/dc/terms/references - http://phaidra.org/ontology/isInAdminSet - http://phaidra.org/XML/V1.0/relations#isBackSideOf - http://phaidra.univie.ac.at/XML/V1.0/relations#hasSuccessor - http://phaidra.org/XML/V1.0/relations#isAlternativeFormatOf - http://phaidra.org/XML/V1.0/relations#isAlternativeVersionOf - http://phaidra.org/XML/V1.0/relations#isThumbnailFor required: false description: Specifies the relation which should be returned, see [relations](https://github.com/phaidra/phaidra-api/wiki/Relations) - in: query name: from schema: type: number required: false description: nr of entries to skip (paging) - in: query name: limit schema: type: number required: false description: nr of entries to return (paging) - in: query name: right schema: type: number required: false enum: - 0 - 1 description: 'searches for the relation in opposite direction (e.g. for `hasCollectionMember`: 0 will return a list of objects which are members of this object/collection, 1 will return a list of objects/collections where the object is a member)' - in: query name: fields schema: type: string required: false description: fields from the index which should be returned. Only works for `fields=dc.description`. The title field is returned by default. Preferred title and description fields are the English ones. responses: '200': description: The requested objects Dublin Core datastream. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string hits: type: number objects: type: array items: type: object properties: cmodel: type: string pid: type: string title: type: string titles: type: array items: type: object properties: lang: type: string text: type: string status: type: string '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/uwmetadata: get: summary: Get uwmetadata. description: Retrieves the object uwmetadata datastream. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id - in: query name: format schema: type: string enum: - xml required: false description: Specifies the format to be returned. If the format param is set to 'xml', the datastream would be returned as it is saved in Fedora. - in: query name: mode schema: type: string enum: - full - basic - resoved required: false description: If the mode is 'full', the whole tree with filled-in values will be returned. If the mode is 'basic' (default), only the filled-in nodes are returned. If the mode is 'resolved', the same JSON as in 'basic' mode will be returned, but all IDs will be resolved to labels. If format param and mode param are both used, only format param will be considered. responses: '200': description: JSON of uwmetadata datastream content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string metadata: type: object properties: uwmetadata: $ref: '#/components/schemas/uwmetadata_min' status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object post: summary: Saves uwmetadata. description: This method saves the object's metadata if you are using the uwmetadata as a metadata structure. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: type: object properties: uwmetadata: $ref: '#/components/schemas/uwmetadata_min' description: See [datastream examples](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples) for the the metadata.json. responses: '200': description: uwmetadata saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/mods: get: summary: Get mods. description: Retrieves object mods datastream. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id - in: query name: format schema: type: string enum: - xml required: false description: Specifies the format to be returned. If the format param is set to 'xml', the datastream would be returned as it is saved in Fedora. - in: query name: mode schema: type: string enum: - full - basic required: false description: If the mode is 'full', the whole tree with filled-in values will be returned. If the mode is 'basic' (default), only the filled-in nodes are returned. If the mode is 'resolved', the same JSON as in 'basic' mode will be returned, but all IDs will be resolved to labels. If format param and mode param are both used, only format param will be considered. responses: '200': description: mods JSON content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string mods: $ref: '#/components/schemas/mods' status: type: string '404': description: failed to fetch data content: application/json: schema: type: object post: summary: Saves mods. description: 'This method saves the object''s metadata if you are using the mods as a metadata structure. ' tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/mods' description: example of mods JSON responses: '200': description: mods metadata saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/jsonld: get: description: Retrieve object JSON-LD metadata. summary: Get JSON-LD. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id responses: '200': description: JSON-LD metadata content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string jsonld: $ref: '#/components/schemas/jsonld' status: type: string '404': description: failed to fetch data content: application/json: schema: type: object post: summary: Saves JSON-LD. description: This method saves the metadata if you are using JSON-LD as a metadata structure. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: type: object properties: json-ld: $ref: '#/components/schemas/json-ld' responses: '200': description: JSON-LD metadata saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/json-ld: get: summary: Get full JSON-LD. description: Retrieve full object JSON-LD, with `@context` header, etc. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id responses: '200': description: JSON-LD metadata content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string jsonld: $ref: '#/components/schemas/json-ld' status: type: string '404': description: failed to fetch data content: application/json: schema: type: object /object/{pid}/geo: get: summary: Get geo. description: Retrieves geo datastream of object. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id responses: '200': description: JSON of geo metadata. The datastream is saved as OGC-KML XML but currently only returned as JSON. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string geo: $ref: '#/components/schemas/geo' status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object post: summary: Saves geo. description: This method saves information about the object's geolocation. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/geo' responses: '200': description: geolocation data saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/members/order: get: summary: Retrieve members tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id responses: '200': description: '...' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/annotations: get: summary: Get annotations. description: Retrieve annotations datastream. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: the requested object id responses: '200': description: JSON with annotations (saved as XML but currently only returned as JSON) content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string annotations: $ref: '#/components/schemas/annotations' status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object post: summary: Saves annotations. description: This method can save annotations to an object. The format chosen is taken from IIPMooViewer. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: description: Adds annotation JSON. See datastream examples for the [annotations.json](https://github.com/phaidra/phaidra-api/wiki/Annotations). content: multipart/form-data: schema: type: object properties: metadata: $ref: '#/components/schemas/annotations' responses: '200': description: Annotation saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/index/dc: get: summary: Get DC description: Get metadata exported (and significantly reduced) in Dublin Core standard tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: dc - in XML content: text/xml: schema: type: string example: '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/index/relationships: get: description: Retrieves the object's relationships using indexed data. summary: Get relationships, from index. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: relationships, from index content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string relationships: $ref: '#/components/schemas/index_relationship' alternativeformats: type: array items: type: string alternativeversions: type: array items: type: string versions: type: array items: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/index/members: get: summary: Get object's members. description: Get object's members using indexed data. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: members content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string members: type: array '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/datacite: get: summary: Transforms metadata to DataCite. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: DataCite metadata content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string datacite: $ref: '#/components/schemas/datacite' status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/state: get: summary: Get state description: Returns the state of the object. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: state of object, Active/Inactive/Deleted content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string state: type: string status: type: number /object/{pid}/cmodel: get: summary: Get cmodel description: Returns the object cmodel tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: cmodel (e.g. collection) content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string cmodel: type: string status: type: number /object/{pid}/relationships: get: summary: Get relationships. description: Returns the object relationships (triplestore). tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: Relationships content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string relationships: type: object properties: haspart: type: array items: type: string status: type: string /object/{pid}/iiifmanifest: get: summary: Get iiifmanifest. description: Retrieves the iiifmanifest datastream. tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: requested pid responses: '200': description: iiifmanifest data content: application/json: schema: $ref: '#/components/schemas/iiifmanifest' post: summary: Saves the iiifmanifest. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: metadata: type: object properties: IIIF-MANIFEST: $ref: '#/components/schemas/iiifmanifest' responses: '200': description: '' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/id: get: summary: Get Dublin Core identifiers. description: Get a list of identifiers that are saved in Dublin Core as [http://purl.org/dc/terms/identifier](http://purl.org/dc/terms/identifier). tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: ids content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string ids: type: array items: type: string status: type: string /stats/{pid}: get: summary: Get usage statistics description: Returns object's usage statistics tags: - stats parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: Usage statistics content: application/json: schema: type: object properties: stats: type: object properties: downloads: type: string detail_page: type: string /stats/{pid}/downloads: get: summary: Get downloads count. tags: - stats parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: Download count (integer). Useful e.g. for ajax content update without any response parsing necessary. content: text/plain: schema: type: number /stats/{pid}/detail_page: get: summary: Get number of /info calls. description: Returns the number of /info calls, which are typically used when accessing the detail page. tags: - stats parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: /info calls count (integer) content: text/plain: schema: type: number /stats/{pid}/chart: get: summary: Get timestamped /info and download count. description: Get /info and download count, with detailed timestamps. tags: - stats parameters: - in: path name: pid schema: type: string required: true description: object id responses: '200': description: details on object (download, detail_page, etc.) content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string stats: type: object properties: detail_page: type: object properties: at: type: object downloads: type: number status: type: number /directory/user/{username}/data: get: summary: Get user's basic data. description: Returns basic data about the specified user (such as name, affiliation and organization unit). tags: - directory parameters: - in: path name: username schema: type: string required: true description: the user username responses: '200': description: user's details (name, affiliation, etc.) content: application/json: schema: type: object properties: status: type: number user_data: $ref: '#/components/schemas/user_data' /directory/user/{username}/name: get: summary: Get user's full name. description: Returns the name of a user. tags: - directory parameters: - in: path name: username schema: type: string required: true description: the user's username responses: '200': description: user's name content: application/json: schema: type: object properties: name: type: object status: type: number /directory/user/{username}/email: get: summary: Get user's email description: Returns the user's email tags: - directory parameters: - in: path name: username schema: type: string required: true description: the user username responses: '200': description: user's email content: application/json: schema: type: object properties: email: type: string status: type: number /oai: get: summary: OAI-PMH endpoint. tags: - oai-pmh parameters: - in: query name: verb schema: type: number description: See [the OAI-PMH protocol](https://www.openarchives.org/pmh/) examples: Identify: value: Identify summary: Identify ListIdentifiers: value: ListIdentifiers summary: ListIdentifiers ListRecords: value: ListRecords summary: ListRecords GetRecord: value: GetRecord summary: GetRecord responses: '200': description: '' content: text/xml: schema: type: string post: summary: Same as GET. tags: - oai-pmh responses: '200': description: See [the OAI-PMH protocol](https://www.openarchives.org/pmh/) content: application/json: schema: type: object /termsofuse: get: summary: Get terms of use tags: - misc responses: '200': description: Terms of use content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number added: type: string terms: type: string version: type: string /termsofuse/agree/{version}: post: summary: Agree to terms of use description: Record the user agreement to a particular version of the terms of use. tags: - misc security: - basicAuth: [] parameters: - in: path name: version schema: type: number required: true description: version of the terms of use responses: '200': description: Terms of use content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /list/token/{token}: get: summary: Get object list exposed under specified token. tags: - lists parameters: - in: path name: token schema: {} description: the requested token no responses: '200': description: list detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string list: $ref: '#/components/schemas/group' /directory/user/search: get: summary: Searches the user database. tags: - directory security: - basicAuth: [] parameters: - in: query name: q schema: type: string required: true description: query (it will be automatically suffixed with *) responses: '200': description: returns accounts details. Only the first 50 results are returned content: application/json: schema: type: object properties: hits: type: number accounts: type: array items: type: object properties: uid: type: string value: type: string type: type: string status: type: number /directory/user/data: get: summary: Returns current user's data. tags: - directory security: - basicAuth: [] responses: '200': description: returns account details of user (from credentials) content: application/json: schema: type: object properties: user_data: $ref: '#/components/schemas/user_data' status: type: number /settings: post: summary: Save user's settings. description: Currently only used to set default metadata template in some external UIs. tags: - misc security: - basicAuth: [] responses: '200': description: '' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string settings: type: object get: summary: Get user's settings description: Currently only used to set default metadata template in some external UIs. tags: - misc security: - basicAuth: [] responses: '200': description: '' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string settings: type: object /groups: get: summary: Get user's groups. description: Retrieves all user's groups. tags: - directory security: - basicAuth: [] responses: '200': description: returns the user's groups (user credentials needed) content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/groups' /group/{gid}: get: summary: Get group detail tags: - directory security: - basicAuth: [] parameters: - in: path name: gid schema: type: string description: gid - group id responses: '200': description: group detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/group' /group/add: post: summary: Create new group tags: - directory security: - basicAuth: [] parameters: - in: query name: name schema: type: string required: true description: name of the group responses: '200': description: group detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/group' /group/{gid}/remove: post: summary: Delete specified group tags: - directory security: - basicAuth: [] parameters: - in: path name: gid schema: type: string required: false description: gid - group id responses: '200': description: group removed content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/group' /group/{gid}/members/add: post: summary: Add group members tags: - directory security: - basicAuth: [] parameters: - in: path name: gid schema: type: string required: false description: gid - group id requestBody: description: JSON containing usernames to add, {"members":["username"]} content: multipart/form-data: schema: type: object properties: members: type: object properties: members: type: array items: type: string example: username1 description: members JSON responses: '200': description: group detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/group' /group/{gid}/members/remove: post: summary: Remove group members tags: - directory security: - basicAuth: [] parameters: - in: path name: gid schema: type: string required: false description: gid - group id requestBody: description: JSON containing usernames to remove, {"members":["username"]} content: multipart/form-data: schema: type: object properties: members: type: object properties: members: type: array items: type: string example: username1 responses: '200': description: group detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string groups: $ref: '#/components/schemas/group' /lists: get: summary: Get user's object lists tags: - lists security: - basicAuth: [] responses: '200': description: lists content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string lists: $ref: '#/components/schemas/members' /list/{lid}: get: summary: Get list detail tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id responses: '200': description: list detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string list: $ref: '#/components/schemas/group' /list/add: post: summary: Add list description: Add a list to the user (from credentials). tags: - lists security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: name: type: string description: List name. responses: '200': description: list added, returns list id ('lid') content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string lid: type: string /list/{lid}/token/create: post: summary: Create a list token description: The token can be used in the /list/token/{token} request to create a URL under which the list can be publicly displayed. tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id responses: '200': description: Returns the list token. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string token: type: string alert: type: number /list/{lid}/token/delete: post: summary: Delete list token tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id responses: '200': description: list detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /list/{lid}/remove: post: summary: Remove list description: Remove list (input list id). tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id responses: '200': description: list detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string /list/{lid}/members/add: post: summary: Add objects to list tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id requestBody: description: 'JSON object containing the pids and titles to add, {"members":[{"pid": "o:1","title": "Title"}]}' content: multipart/form-data: schema: type: object properties: members: type: object properties: members: $ref: '#/components/schemas/lists' responses: '200': description: Objects added to list content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /list/{lid}/members/remove: post: summary: Remove objects from list tags: - lists security: - basicAuth: [] parameters: - in: path name: lid schema: type: string required: false description: lid - list id requestBody: description: JSON object containing an array of objects' pids to remove, {"members":[ "o:1","o:2"]} content: multipart/form-data: schema: type: object properties: members: type: object properties: members: type: array items: type: string example: o:1 responses: '200': description: Objects removed from list. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /jsonld/templates: get: summary: Get user's JSON-LD templates description: Retrieves the user's saved JSON-LD templates tags: - templates security: - basicAuth: [] responses: '200': description: lists JSON-LD templates content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string templates: $ref: '#/components/schemas/templates' /jsonld/template/add: post: summary: Adds JSON-LD templates description: Adds JSON-LD templates tags: - templates security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: name: type: string description: New template name form: $ref: '#/components/schemas/json-ld' tag: type: string responses: '200': description: Template created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string tid: type: string /jsonld/template/{tid}: get: summary: Get template detail tags: - templates security: - basicAuth: [] parameters: - in: path name: tid schema: type: string required: false description: template id responses: '200': description: template detail content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string template: $ref: '#/components/schemas/template' /jsonld/template/{tid}/remove: post: summary: Remove template tags: - templates security: - basicAuth: [] parameters: - in: path name: tid schema: type: string required: false description: template id responses: '200': description: template removed content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /authz/check/{pid}/{op}: get: summary: Checks rights description: Checks if the authenticated user has appropriate rights for an operation on the object (readable/writable). Can also be checked for unauthenticated user. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: false description: pid - object id - in: path name: op schema: type: string enum: - ro - rw required: true description: rights for operation responses: '200': description: readable/writable, depending on parameter 'op'. This method can be used to check if an object is readable/writable. The authentication is optional, as you might want to know if an object is readable for an unauthenticated user. An object is never writable for an unauthenticated user, so checking 'rw' only makes sense with authentication. Typically, an object is only writable for its owner. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '403': description: not op content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /streaming/{pid}/key: get: summary: Get streaming key description: The streaming key can be used when building your own video player. If you want the full video player, use /object/{pid}/preview instead. tags: - misc security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: false description: pid - object id responses: '200': description: Streaming key. content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number '503': description: Service Unavailable content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number /imageserver: get: summary: Proxy for the imageserver. description: Proxy for the [imageserver API](http://www.hexaplant.com/pixeldragon/3-access-images.html). This is necessary for the frontend. The images at the image server are hashed so that it's possible to restrict access to them. This method checks if the user (if credentials are provided) is authorized to access the image and if it is, it uses the configured secret to create the hash under which image server knows the image. It then accesses the image server proxying all the parameters and proxies back the response. tags: - imageserver parameters: - in: query name: IIIF schema: type: string required: false example: o:440180.tif/full/256,256/0/default.jpg description: IIIF request responses: '200': description: Returns the data needed by the IIP-compatible viewers content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string streaming: type: object status: type: number '404': description: object has not been found content: application/json: schema: type: object /imageserver/{pid}/status: get: summary: Get imageserver job status description: If imageserver is configured, returns the record from the imageserver job database for the pid specified. Read rights are needed. tags: - imageserver security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: record from the imageserver job database content: application/json: schema: type: object properties: conversion: type: string example: ok status: type: string example: finished '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/info: get: summary: Get object info description: This method returns metadata (UWMETADATA, MODS, JSON-LD, etc., depending on the metadata datastream), as well as indexed data about the object and its related objects. It's the primary method of getting as much information about an object as possible. tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: object info content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string info: $ref: '#/components/schemas/object_info' status: type: number '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/thumbnail: get: summary: Get the thumbnail image tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: Thumbnail image in jpeg or png format '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/preview: get: summary: Get preview page description: Retrieves the preview page, for example for embedding in an iframe. Image viewer for supported image formats, PDF viewer for PDFs, audio/video player for media, etc. tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: html page preview content: text/html: schema: type: string '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/download: get: summary: Download object's data description: 'Receive data as Content-Disposition: attachment. Use this link if you want the browser to download a file.' tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: Object's data '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/get: get: summary: Get object's data description: Receive data as a stream. Use this link if you want to embed the data, e.g. in a player/viewer. tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: Object's data '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/metadata: get: summary: Get object's metadata description: Retrieve the object metadata (UWMETADATA, MODS, JSON-LD, etc., depending on the metadata datastream). tags: - object-advanced parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: object metadata content: application/json: schema: type: object properties: metadata: type: object '404': description: object has not been found content: application/json: schema: type: object post: summary: Edit object's metadata description: 'Supported elements (in JSON format) are: json-ld, json-ld-private, mods, uwmetadata, rights, geo, members, membersorder and relationships.' tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: description: Object metadata content: multipart/form-data: schema: type: object properties: metadata: oneOf: $ref: '#/components/schemas/json-ld' responses: '200': description: metadata added content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error content: application/json: schema: type: object /object/{pid}/index: post: summary: Re-indexes object. description: Triggers the update of the object's index (Solr). Need admin authentication tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object id - in: path name: ignorestatus schema: type: boolean required: false description: ignore object status, i.e. include inactive objects - in: path name: norecursion schema: type: boolean required: false description: skip re-indexing of the parent object responses: '200': description: object indexed content: application/json: schema: type: object '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/fulltext: get: summary: 'Retrieves the FULLTEXT datastream of a specified object. It returns this datastream as it was saved: this is not a method which extracts fulltext from object''s data.' tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: requested pid - object id - in: query name: format schema: type: string required: false default: txt description: specifies the desired format for the return responses: '200': description: requested objects fulltext data content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string streaming: type: object status: type: number '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/jsonldprivate: get: summary: Get the non-public JSON-LD-PRIVATE datastream. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: JSON-LD-PRIVATE datastream content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number '404': description: object has not been found content: application/json: schema: type: object post: summary: Save JSON-LD-PRIVATE datastream description: This method saves the object's metadata if you are using jsonld as a metadata structure. Unlike JSON-LD which is always visible, JSON-LD-PRIVATE is only available to the owner/admin. tags: - object-advanced security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: string format: binary responses: '200': description: jsonld metadata saved content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /object/{pid}/rights: get: summary: Retrieves the object access restrictions. This method expects authentication. tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: Access rights content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string rights: type: object properties: metadata: type: object properties: username: type: array items: type: object properties: value: type: string expires: type: string status: type: number '404': description: object has not been found content: application/json: schema: type: object post: summary: Saves the object's access restrictions description: Leave the rights empty (rights:{}) to remove restrictions from object. tags: - object-basics security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: metadata: type: object properties: rights: $ref: '#/components/schemas/rights' description: Example of user rights. responses: '200': description: '' content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string /termsofuse/getagreed: get: summary: Checks if the current user agreed to the terms of use. tags: - misc security: - basicAuth: [] responses: '200': description: object info content: application/json: schema: {} '/index ': post: summary: Re-index multiple objects at once description: Post a list of objects which should be re-indexed - needs admin credentials tags: - object-advanced security: - basicAuth: [] responses: '200': description: object info content: application/json: schema: {} /imageserver/process: post: summary: Let imageserver process multiple objects. description: If an image server is configured, creates a job in the image server's database to process all the pids from the provided list. Needs admin credentials. tags: - imageserver security: - basicAuth: [] parameters: - in: query name: skipexisting schema: type: number required: false enum: - 1 description: Value 1 to skip creating a job for this pid if a job for a pid already exists. requestBody: content: multipart/form-data: schema: type: object properties: pids: type: object properties: pids: type: array items: type: string example: pids responses: '200': description: processed content: application/json: schema: type: array items: type: object properties: idhash: type: string pid: type: string tmp_hash: type: string '404': description: Failed content: application/json: schema: type: object /imageserver/{pid}/process: post: summary: Post to (re-)process one pid on imageserver. description: Post an object to be processed to the imageserver. Needs admin credentials tags: - imageserver security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid - in: query name: skipexisting schema: type: number required: false enum: - 1 description: Value 1 to skip creating a job for this pid if a job for a pid already exists. - in: query name: ds schema: type: string required: false enum: - USERTHUMB description: By default, OCTETS is processed. This is a possibility to define another datastream. responses: '200': description: processed content: application/json: schema: type: array items: type: object properties: idhash: type: string pid: type: string '404': description: Failed content: application/json: schema: type: object /object/{pid}/modify: post: summary: Modify object properties description: Modify the basic properties of an object (the parameters are all optional). Admin credentials are needed. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid requestBody: content: multipart/form-data: schema: type: object properties: state: type: string enum: - A - I - D required: false default: A description: The state of the object can be changed toA (= Active), I (= Inactive), D (= Deleted) label: type: string required: false description: some string (currently not used in PHAIDRA) ownerid: type: string required: false description: owner's username logmessage: type: string required: false description: log message, string lastmodifieddate: type: string required: false description: a date in ISO format responses: '200': description: object modified content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: object has not been found content: application/json: schema: type: object /object/{pid}/delete: post: summary: Delete object. description: This method permanently deletes the object from the repository. In case Fedora 6+ is the backend repository, a tombstone will be created in object's place. tags: - object-basics security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid responses: '200': description: status of delete request content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: integer /object/{pid}/relationship/add: post: summary: Add a relationship. description: Add a triple. It is then available in the triplestore and indexed automatically. Adding some system relationships (like hasModel) might be restricted. See the [list of supported relationships](https://github.com/phaidra/phaidra-api/wiki/Relations). tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object id - in: query name: predicate schema: type: string required: true description: the relationship [list of supported relationships](https://github.com/phaidra/phaidra-api/wiki/Relations) examples: hasModel: value: info:fedora/fedora-system:def/model#hasModel summary: hasModel relationship hasCollectionMember: value: info:fedora/fedora-system:def/relations-external#hasCollectionMember summary: hasCollectionMember isThumbnailFor: value: http://phaidra.org/XML/V1.0/relations#isThumbnailFor summary: isThumbnailFor - in: query name: object schema: type: string required: false examples: Page: value: info:fedora/cmodel:Page summary: Page model Picture: value: info:fedora/cmodel:Picture summary: Picture Model description: the model of the related object in the repository. A list of possible content models is found [here](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) responses: '200': description: relationship added content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/relationship/remove: post: summary: Remove a relationship from RELS-EXT. description: Remove a relationship from the RELS-EXT datastream. Removing some [system relationships](https://github.com/phaidra/phaidra-api/wiki/Relations) (like hasModel) might be restricted. tags: - relationships security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: the requested object id - in: query name: predicate schema: type: string required: true description: the relationship [list of supported relationships](https://github.com/phaidra/phaidra-api/wiki/Relations) examples: hasModel: value: info:fedora/fedora-system:def/model#hasModel summary: hasModel relationship hasCollectionMember: value: info:fedora/fedora-system:def/relations-external#hasCollectionMember summary: hasCollectionMember isThumbnailFor: value: http://phaidra.org/XML/V1.0/relations#isThumbnailFor summary: isThumbnailFor - in: query name: object schema: type: string required: false examples: Page: value: info:fedora/cmodel:Page summary: Page model Picture: value: info:fedora/cmodel:Picture summary: Picture Model description: the model of the related object in the repository. A list of possible content models is found [here](https://github.com/phaidra/phaidra-api/wiki/Creating-a-simple-object) responses: '200': description: removed relationship content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/id/add: post: summary: Add an identifier triple description: Add an identifier to the triples (as a relationship with the predicate 'http://purl.org/dc/terms/identifier'). It is then available in the triplestore, Dublin Core and index automatically, but will not be added to metadata. IDs added this way are usually added by PHAIDRA (for Handles), while the IDs in metadata are added and controlled by the user. tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: the requested object id requestBody: content: multipart/form-data: schema: type: object properties: hdl: type: string required: false example: 11353/10.448537 description: 'the handle identifier ' doi: type: string required: false example: 10.5194/bg-11-1491-2014 description: the DOI identifier urn: type: string required: false example: urn:nbn:at:at-ubw-30020.78240.320264-3 description: the URN identifier responses: '200': description: Identifyer added content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/id/remove: post: summary: Remove identifier from triples tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: the requested object id requestBody: content: multipart/form-data: schema: type: object properties: hdl: type: string required: false example: 11353/10.448537 description: 'the handle identifier ' doi: type: string required: false example: 10.5194/bg-11-1491-2014 description: the DOI identifier urn: type: string required: false example: urn:nbn:at:at-ubw-30020.78240.320264-3 description: the URN identifier responses: '200': description: Identifyer removed content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/datastream/{dsid}: post: summary: Add or modify datastream tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: the requested object id - in: path name: dsid schema: type: string required: true example: IIIF-MANIFEST description: datastream id requestBody: content: multipart/form-data: schema: type: object properties: dscontent: type: string format: binary mimetype: type: string example: application/json required: false location: type: string description: location of managed or external datastream content required: false dslabel: type: string required: false description: For OCTETS datastream it should be the original filename (e.g. my_test.pdf). For other datastreams any string, it's not used by PHAIDRA. controlgroup: type: string required: true enum: - X - M - R - E description: One of X, M, R, or E (Inline XML, Managed Content, Redirect, or External Referenced) responses: '200': description: Datastream added or modified content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: string '404': description: Failed to fetch data content: application/json: schema: type: object /object/{pid}/data: post: summary: Replace data (add a new version of OCTETS datastream) tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: pid schema: type: string required: true description: object pid - in: query name: mimetype schema: type: string required: false description: object mimetype requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary responses: '200': description: data added to object content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error content: application/json: schema: type: object /resource/create: post: summary: Creates a resource(-link) object tags: - object-advanced security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the wiki (see above) for further details required: true example: json-ld: dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Title '@language': deu role:aut: - '@type': schema:Person schema:givenName: - '@value': First name schema:familyName: - '@value': Last Name edm:rights: - https://rightsstatements.org/page/InC/1.0/ responses: '200': description: Resource object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /page/create: post: summary: Creates a page object tags: - object-advanced security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the wiki (see above) for further details required: true example: json-ld: dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Title '@language': deu role:aut: - '@type': schema:Person schema:givenName: - '@value': First name schema:familyName: - '@value': Last Name edm:rights: - https://rightsstatements.org/page/InC/1.0/ responses: '200': description: Page object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /object/create: post: summary: Create empty object, without a specified cmodel tags: - object-advanced security: - basicAuth: [] requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true mimetype: type: string example: application/json description: 'mimetype is optional: if not provided, heuristics is used on server side' required: false metadata: type: object description: a structure containing metadata; refer to the wiki (see above) for further details required: true example: json-ld: dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Title '@language': deu role:aut: - '@type': schema:Person schema:givenName: - '@value': First name schema:familyName: - '@value': Last Name edm:rights: - https://rightsstatements.org/page/InC/1.0/ responses: '200': description: empty object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /object/create/{cmodel}: post: summary: Create empty object, with cmodel tags: - object-advanced security: - basicAuth: [] parameters: - in: path name: cmodel schema: type: string required: true enum: - cmodel:Picture - cmodel:PDFDocument - cmodel:Video - cmodel:Audio - cmodel:Collection - cmodel:Asset - cmodel:Container - cmodel:Paper - cmodel:Collection - cmodel:LaTeXDocument - cmodel:Resource - cmodel:Book - cmodel:Page description: object cmodel responses: '200': description: empty object created content: application/json: schema: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string pid: type: string status: type: number '404': description: error creating object content: application/json: schema: type: object /search/select: post: summary: Search query description: Solr query, for the query parameters see [Solr common query parameters](https://solr.apache.org/guide/solr/latest/query-guide/common-query-parameters.html) tags: - search parameters: - in: query name: q schema: type: string required: true description: query string responses: '200': description: search response content: application/json: schema: type: object properties: responseHeader: type: array items: type: object properties: status: type: number QTime: type: number params: type: object response: type: object properties: numFound: type: number start: type: number numFoundExact: type: boolean docs: type: array facet_counts: type: object properties: facet_querie: type: object facet_fields: type: object facet_ranges: type: object facet_intervals: type: object facet_heatmaps: type: object '404': description: object has not been found content: application/json: schema: type: object components: securitySchemes: tokenAuth: type: apiKey in: header name: X-XSRF-TOKEN basicAuth: type: http scheme: basic responses: UnauthorizedError: description: Access token is missing or invalid schemas: default: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string status: type: number languages: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string languages: type: object languagesExample: type: object properties: alerts: type: array items: {} languages: type: object ne: en: Nepali de: Nepalisch it: Nepalese sr: nepalski licences: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string licences: type: array items: type: object properties: link_info: type: string descriptions: type: object properties: en: type: string de: type: string link_uri: type: string lid: type: integer link_text: type: string labels: type: object properties: en: type: string de: type: string uwmetadata_min: type: array items: type: object properties: xmlns: type: string xmlname: type: string datatype: type: string input_type: type: string children: type: array items: type: object properties: ui_value: type: string input_type: type: string value_lang: type: string datatype: type: string xmlns: type: string xmlname: type: string example: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: general children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: title ui_value: Title value_lang: de - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: language ui_value: de datatype: Language - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: lifecycle children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute data_order: '0' ordered: 1 children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: role ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46 datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity data_order: '0' ordered: 1 children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity xmlname: firstname ui_value: Brenda datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity xmlname: lastname ui_value: Walsh datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: rights children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: license ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_21/1 datatype: License uwmetadata: type: array items: type: object properties: cardinality: type: integer children: type: array items: type: object data_order: type: string datatype: type: string disabled: type: integer field_order: type: integer help_id: type: string hidden: type: integer input_regex: type: string input_type: type: string labels: type: object loaded: type: integer mandatory: type: integer ordered: type: integer ui_value: type: string value: type: string value_lang: type: string xmlname: type: string xmlns: type: string uwmetadata_article_basic: type: object example: metadata: uwmetadata: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: general input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: o:454073 xmlname: identifier input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: Tolerance and reward equity predict cooperation in ravens (Corvus corax) xmlname: title input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: en xmlname: language input_type: select datatype: Language - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: Cooperative decision rules have so far been shown experimentally mainly in mammal species that have variable and complex social networks. However, these traits should not necessarily be restricted to mammals. Therefore, we tested cooperative problem solving in ravens. We showed that, without training, nine ravens spontaneously cooperated in a loose-string task. Corroborating findings in several species, ravensâ�� cooperative success increased with increasing inter-individual tolerance levels. Importantly, we found this in both a forced dyadic setting, and in a group setting where individuals had an open choice to cooperate with whomever. The ravens, moreover, also paid attention to the resulting reward distribution and ceased cooperation when being cheated upon. Nevertheless, the ravens did not seem to pay attention to the behavior of their partners while cooperating, and future research should reveal whether this is task specific or a general pattern. Given their natural propensity to cooperate and the results we present here, we consider ravens as an interesting model species to study the evolution of, and the mechanisms underlying cooperation. xmlname: description input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: Animal behaviour xmlname: keyword input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: Behavioural ecology xmlname: keyword input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: Social evolution xmlname: keyword input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: 'yes' xmlname: irdata input_type: select datatype: Boolean - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 xmlname: identifiers input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_31/1552099 xmlname: resource input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: 10.1038/srep15021 xmlname: identifier input_type: input_text datatype: CharacterString datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 xmlname: identifiers input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_31/1552101 xmlname: resource input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: 2045-2322 xmlname: identifier input_type: input_text datatype: CharacterString datatype: Node datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: lifecycle input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: '2016-08-23T11:53:04.000Z' xmlname: upload_date input_type: input_text datatype: DateTime - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_2/44 xmlname: status input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: 'yes' xmlname: peer_reviewed input_type: select datatype: Boolean - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46 xmlname: role input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Jorg J. M. xmlname: firstname input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Massen xmlname: lastname input_type: input_text datatype: CharacterString attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: '761' xmlname: institution input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: institution xmlname: type input_type: input_text datatype: CharacterString attributes: - ui_value: '1' xmlname: data_order input_type: input_text datatype: Node attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46 xmlname: role input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Caroline xmlname: firstname input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Ritter xmlname: lastname input_type: input_text datatype: CharacterString attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: '761' xmlname: institution input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: institution xmlname: type input_type: input_text datatype: CharacterString attributes: - ui_value: '1' xmlname: data_order input_type: input_text datatype: Node attributes: - ui_value: '1' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46 xmlname: role input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Thomas xmlname: firstname input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Bugnyar xmlname: lastname input_type: input_text datatype: CharacterString attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: '761' xmlname: institution input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: institution xmlname: type input_type: input_text datatype: CharacterString attributes: - ui_value: '1' xmlname: data_order input_type: input_text datatype: Node attributes: - ui_value: '2' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/1557146 xmlname: role input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Institutional xmlname: firstname input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Repository xmlname: lastname input_type: input_text datatype: CharacterString attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node attributes: - ui_value: '3' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: contribute input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/47 xmlname: role input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: entity input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: Nature Publishing Group xmlname: institution input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity ui_value: institution xmlname: type input_type: input_text datatype: CharacterString attributes: - ui_value: '0' xmlname: data_order input_type: input_text datatype: Node attributes: - ui_value: '4' xmlname: data_order input_type: input_text datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_38/1556250 xmlname: infoeurepoversion input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_40/1557088 xmlname: metadataqualitycheck input_type: select datatype: Vocabulary datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: technical input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: application/pdf xmlname: format input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: '650007' xmlname: size input_type: input_text datatype: FileSize datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: rights input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: 'no' xmlname: cost input_type: select datatype: Boolean - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: 'yes' xmlname: copyright input_type: select datatype: Boolean - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_21/16 xmlname: license input_type: select datatype: License - xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_36/1556227 xmlname: infoeurepoaccess input_type: select datatype: Vocabulary datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: classification input_type: node datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0 xmlname: organization input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253 xmlname: hoschtyp input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization xmlname: orgassignment input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50 xmlname: faculty input_type: select datatype: Faculty - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761 xmlname: department input_type: select datatype: Department datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization xmlname: orgassignment input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50 xmlname: faculty input_type: select datatype: Faculty - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761 xmlname: department input_type: select datatype: Department datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization xmlname: orgassignment input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50 xmlname: faculty input_type: select datatype: Faculty - xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761 xmlname: department input_type: select datatype: Department datatype: Node datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0 xmlname: histkult input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0 xmlname: reference_number input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0 ui_value: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0/voc_25/1557094 xmlname: reference input_type: select datatype: Vocabulary - xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0 ui_value: M1351-B17 xmlname: number input_type: input_text datatype: CharacterString datatype: Node datatype: Node - xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0 xmlname: digitalbook input_type: node children: - xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0 ui_value: Scientific Reports xmlname: name_magazine input_type: input_text attributes: - ui_value: en xmlname: lang input_type: select datatype: LangString - xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0 ui_value: '5' xmlname: volume input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0 ui_value: '15021' xmlname: from_page input_type: input_text datatype: CharacterString - xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0 ui_value: '2015' xmlname: releaseyear input_type: input_text datatype: DateTime datatype: Node mods_tree: type: object properties: alerts: type: array items: type: object properties: msg: type: string type: type: string languages: type: object status: type: number tree: $ref: '#/components/schemas/mods' vocabularies: $ref: '#/components/schemas/vocabularies' vocabularies_mapping: $ref: '#/components/schemas/vocabularies_mapping' mods: type: object properties: metadata: type: object properties: mods: type: array items: type: object properties: attributes: type: array items: type: object properties: input_type: type: string label: type: string xmlname: type: string ui_value: type: string children: type: array items: type: object label: type: string ui_value: type: string xmlname: type: string input_type: type: string extensible: type: number example: - ui_value: AC04090285 xmlname: identifier input_type: input_text label: Identifier attributes: - ui_value: ac-number xmlname: type input_type: select label: Type - xmlname: lang input_type: input_text label: Language - xmlname: script input_type: input_text label: Script - xmlname: transliteration input_type: input_text label: Transliteration - xmlname: typeURI input_type: input_text label: Type URI - xmlname: displayLabel input_type: input_text label: Display label - xmlname: invalid input_type: select label: Invalid - xmlname: altRepGroup input_type: input_text label: Alternative representation group - xmlname: language input_type: node label: Language children: - ui_value: ger xmlname: languageTerm input_type: input_text label: Language term attributes: - ui_value: code xmlname: type input_type: select label: Type - ui_value: iso639-2b xmlname: authority input_type: select label: Authority - xmlname: authorityURI input_type: input_text label: Authority URI - xmlname: valueURI input_type: input_text label: Value URI - xmlname: lang input_type: input_text label: Language - xmlname: script input_type: input_text label: Script - xmlname: transliteration input_type: input_text label: Transliteration attributes: - xmlname: objectPart input_type: input_text label: Object part - xmlname: lang input_type: input_text label: Language - xmlname: script input_type: input_text label: Script - xmlname: transliteration input_type: input_text label: Transliteration - xmlname: displayLabel input_type: input_text label: Display label - xmlname: usage input_type: select label: Usage - xmlname: altRepGroup input_type: input_text label: Alternative representation group members: type: array items: type: object properties: pid: type: string pos: type: string example: - pid: o:1 pos: 1 - pid: o:2 pos: 2 lists: type: array items: type: object properties: pid: type: string title: type: string example: - pid: o:1 title: Title 1 - pid: o:2 title: Title 2 lists_details: type: array items: type: object properties: _id: type: object properties: $oid: type: string created: type: number listid: type: string name: type: string updated: type: number vocabularies_mapping: type: object properties: abstract_shareable: type: string abstract_type: type: string accessCondition_type: type: string classification_authority: type: string classification_usage: type: string genre_authority: type: string genre_type: type: string genre_usage: type: string identifier_invalid: type: string identifier_type: type: string language_languageTerm_authority: type: string language_languageTerm_type: type: string language_scriptTerm_type: type: string language_usage_primary: type: string location_holdingSimple_copyInformation_enumerationAndChronology_unitType: type: string location_physicalLocation_authority: type: string location_physicalLocation_type: type: string location_url_access: type: string location_url_usage: type: string name_authority: type: string name_namePart_type: type: string name_role_roleTerm_authority: type: string name_role_roleTerm_type: type: string name_type: type: string name_usage: type: string note_type: type: string originInfo_copyrightDate_encoding: type: string originInfo_copyrightDate_keyDate: type: string originInfo_copyrightDate_point: type: string originInfo_copyrightDate_qualifier: type: string originInfo_dateCaptured_encoding: type: string originInfo_dateCaptured_keyDate: type: string originInfo_dateCaptured_point: type: string originInfo_dateCaptured_qualifier: type: string originInfo_dateCreated_encoding: type: string originInfo_dateCreated_keyDate: type: string originInfo_dateCreated_point: type: string originInfo_dateCreated_qualifier: type: string originInfo_dateIssued_encoding: type: string originInfo_dateIssued_keyDate: type: string originInfo_dateIssued_point: type: string originInfo_dateIssued_qualifier: type: string originInfo_dateModified_encoding: type: string originInfo_dateModified_keyDate: type: string originInfo_dateModified_point: type: string originInfo_dateModified_qualifier: type: string originInfo_dateOther_encoding: type: string originInfo_dateOther_keyDate: type: string originInfo_dateOther_point: type: string originInfo_dateOther_qualifier: type: string originInfo_dateValid_encoding: type: string originInfo_dateValid_keyDate: type: string originInfo_dateValid_point: type: string originInfo_dateValid_qualifier: type: string originInfo_edition_supplied: type: string originInfo_eventType: type: string originInfo_frequency_authority: type: string originInfo_issuance: type: string originInfo_place_placeTerm_authority: type: string originInfo_place_placeTerm_type: type: string originInfo_place_supplied: type: string originInfo_publisher_supplied: type: string part_date_encoding: type: string part_date_keyDate: type: string part_date_point: type: string part_date_qualifier: type: string part_detail_type: type: string part_extent_unit: type: string part_text_type: type: string part_type: type: string physicalDescription_digitalOrigin: type: string physicalDescription_extent_supplied: type: string physicalDescription_form_authority: type: string physicalDescription_form_type: type: string physicalDescription_note_type: type: string physicalDescription_reformattingQuality: type: string recordInfo_descriptionStandard: type: string recordInfo_descriptionStandard_authority: type: string recordInfo_languageOfCataloging_languageTerm_authority: type: string recordInfo_languageOfCataloging_languageTerm_type: type: string recordInfo_languageOfCataloging_scriptTerm_type: type: string recordInfo_languageOfCataloging_usage: type: string recordInfo_recordChangeDate_encoding: type: string recordInfo_recordChangeDate_keyDate: type: string recordInfo_recordChangeDate_point: type: string recordInfo_recordChangeDate_qualifier: type: string recordInfo_recordContentSource_authority: type: string recordInfo_recordCreationDate_encoding: type: string recordInfo_recordCreationDate_keyDate: type: string recordInfo_recordCreationDate_point: type: string recordInfo_recordCreationDate_qualifier: type: string recordInfo_recordIdentifier_source: type: string relatedItem_type: type: string subject_authority: type: string subject_geographicCode_authority: type: string subject_name_authority: type: string subject_name_namePart_type: type: string subject_name_role_roleTerm_authority: type: string subject_name_role_roleTerm_type: type: string subject_name_type: type: string subject_temporal_encoding: type: string subject_temporal_keyDate: type: string subject_temporal_point: type: string subject_temporal_qualifier: type: string subject_titleInfo_authority: type: string subject_titleInfo_type: type: string subject_usage: type: string tableOfContents_shareable: type: string tableOfContents_type: type: string targetAudience_authority: type: string titleInfo_authority: type: string titleInfo_supplied: type: string titleInfo_type: type: string titleInfo_usage: type: string typeOfResource: type: string typeOfResource_collection: type: string typeOfResource_manuscript: type: string typeOfResource_usage: type: string vocabularies: type: object properties: abstract_type: type: array items: type: string accessCondition_type: type: array items: type: string authority_genre_form: type: array items: type: string authority_name_title: type: array items: type: string authority_relator_role: type: array items: type: string classification_authority: type: array items: type: string date_encoding: type: array items: type: string date_point: type: array items: type: string date_qualifier: type: array items: type: string descriptionStandard: type: array items: type: string description_authority: type: array items: type: string description_form_type: type: array items: type: string digital_origin: type: array items: type: string event_type: type: array items: type: string frequency: type: array items: type: string identifier_type: type: array items: type: string issuance: type: array items: type: string item_type: type: array items: type: string language_authority: type: array items: type: string location_type: type: array items: type: string location_url_type: type: array items: type: string location_url_usage: type: array items: type: string 'no': type: array items: type: string note_type: type: array items: type: string org_authority: type: array items: type: string part_detail_title_type: type: array items: type: string part_extent_unit: type: array items: type: string part_text_type: type: array items: type: string part_type: type: array items: type: string physdesc_note_type: type: array items: type: string primary: type: array items: type: string reformatting_quality: type: array items: type: string subject_authority: type: array items: type: string target_authority: type: array items: type: string thority: type: array items: type: string toc_type: type: array items: type: string type_1: type: array items: type: string type_2: type: array items: type: string type_3: type: array items: type: string type_4: type: array items: type: string type_5: type: array items: type: string type_of_resource: type: array items: type: string unitType_type: type: array items: type: string 'yes': type: array items: type: string rights: type: object properties: username: type: array items: type: object properties: value: type: string expires: type: string example: value: user123 expires: '2016-08-25T14:31:34Z' geo: type: object properties: metadata: type: object properties: geo: type: object example: kml: document: placemark: - point: coordinates: longitude: '44.8112504748688' latitude: '41.6902784095934' name: Name of geo datastream description: Json example of a point geo datastream annotations: type: object properties: metadata: type: object properties: annotations: type: object example: '1': x: 0.7 y: 0.6 w: 0.2 h: 0.18 category: place text: First example of annotation '2': x: 0.1 y: 0.8 w: 0.15 h: 0.1 category: place text: Second example of annotation '3': x: 0.7 y: 0.4 w: 0.1 h: 0.1 category: people text: Third example of annotation study: type: object properties: labels: type: object properties: de: type: string uri: type: string study_plans: type: object properties: name: type: string value: type: string units: type: object properties: '@id': type: string '@type': type: string skos:notation: type: string skos:prefLabel: type: object properties: deu: type: string eng: type: string collection: type: object properties: root: type: object properties: _updated: type: array items: type: number _version_: type: number bib_ir: type: array items: type: string bib_roles_pers_aut: type: array items: type: string children: type: array items: type: string cmodel: type: string created: type: string datastreams: type: array items: type: string dc_creator: type: array items: type: string dc_description: type: array items: type: string dc_description_eng: type: array items: type: string dc_identifier: type: array items: type: string dc_language: type: array items: type: string dc_title: type: array items: type: string dc_title_eng: type: array items: type: string dc_type: type: array items: type: string dc_type_eng: type: array items: type: string ispartof: type: array items: type: string owner: type: string pid: type: string resourcetype: type: string size: type: number sort_dc_title: type: string sort_eng_dc_title: type: string tcreated: type: array items: type: string tsize: type: array items: type: string uwm_roles_json: type: array items: type: string container_with_members: type: object example: metadata: json-ld: container: dcterms:type: - '@type': skos:Concept skos:exactMatch: - https://pid.phaidra.org/vocabulary/8MY0-BQDQ skos:prefLabel: - '@language': eng '@value': container edm:hasType: - '@type': skos:Concept skos:prefLabel: - '@value': interview '@language': eng skos:exactMatch: - https://pid.phaidra.org/vocabulary/8KGA-CH97 dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Example container title '@language': eng member_bar: dcterms:type: - '@type': skos:Concept skos:exactMatch: - https://pid.phaidra.org/vocabulary/8YB5-1M0J skos:prefLabel: - '@language': eng '@value': sound dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Member 'bar' title '@language': eng schema:duration: - PTOH1M30S ebucore:filename: - test.wav ebucore:hasMimeType: - audio/wav edm:rights: - http://rightsstatements.org/vocab/InC/1.0/ member_foo: dcterms:type: - '@type': skos:Concept skos:exactMatch: - https://pid.phaidra.org/vocabulary/8YB5-1M0J skos:prefLabel: - '@language': eng '@value': sound dce:title: - '@type': bf:Title bf:mainTitle: - '@value': member 'foo' title '@language': deu schema:duration: - PTOH1M30S ebucore:filename: - test2.wav ebucore:hasMimeType: - audio/wav edm:rights: - http://rightsstatements.org/vocab/InC/1.0/ container_empty: type: object example: metadata: json-ld: dcterms:type: - '@type': skos:Concept skos:exactMatch: - https://pid.phaidra.org/vocabulary/8MY0-BQDQ skos:prefLabel: - '@language': eng '@value': container edm:hasType: - '@type': skos:Concept skos:prefLabel: - '@value': interview '@language': eng skos:exactMatch: - https://pid.phaidra.org/vocabulary/8KGA-CH97 dce:title: - '@type': bf:Title bf:mainTitle: - '@value': test container '@language': eng dc: type: object properties: ui_value: type: string xmlname: type: string attributes: type: array items: {} index: type: object properties: datastreams: type: array items: type: string dc_description_: type: array items: type: string dc_publisher: type: array items: type: string dc_description_eng: type: array items: type: string dc_creator: type: array items: type: string dc_identifier: type: array items: type: string size: type: number pid: type: string _updated: type: number cmodel: type: string bbox: type: array items: type: string bib_roles_pers_aut: type: array items: type: string dc_relation: type: array items: type: string bib_publisherlocation: type: array items: type: string owner: type: string dc_rights: type: array items: type: string dc_title: type: array items: type: string resourcetype: type: string dc_date: type: array items: type: string latlon: type: array items: type: string dc_language: type: array items: type: string modified: type: string dc_subject: type: array items: type: string bib_published: type: array items: type: string created: type: string ispartof: type: array items: type: string bib_publisher: type: array items: type: string dc_description: type: array items: type: string dc_description_deu: type: array items: type: string index_relationship: type: object properties: hasalternativeformat: type: array items: type: string hasalternativeversion: type: array items: type: string hasbackside: type: array items: type: string hassuccessor: type: array items: type: string hasthumbnail: type: array items: type: string isalternativeformatof: type: array items: type: string isalternativeversionof: type: array items: type: string isbacksideof: type: array items: type: string ismemberof: type: array items: type: string ispartof: type: array items: type: object isreferencedby: type: array items: type: string issuccessorof: type: array items: type: string isthumbnailfor: type: array items: type: string references: type: array items: type: string datacite: type: object properties: data: type: object properties: contributors: type: array items: type: string creators: type: array items: type: object properties: firstname: type: string institution: type: string lastname: type: string value: type: string descriptions: type: array items: type: object properties: lang: type: string ns: type: string value: type: string embargodates: type: array items: type: string filesizes: type: array items: type: object properties: value: type: string formats: type: array items: type: string identifiers: type: array items: type: object properties: type: type: string value: type: string langs: type: array items: type: object properties: value: type: string licenses: type: array items: type: object properties: value: type: string publicationYear: type: array items: type: string publishers: type: array items: type: string pubyears: type: array items: type: string titles: type: array items: type: object properties: lang: type: string title: type: string value: type: string upload_date: type: array items: type: string uploaddates: type: array items: type: object properties: ns: type: string value: type: string datacite_elements: type: array items: type: object properties: children: type: array items: type: object properties: value: type: string xmlname: type: string xmlname: type: string errors: type: array items: type: string status: type: string stats: type: array items: type: object properties: _id: type: object properties: $oid: type: string detail: type: string ds_count: type: number model: type: string obj_count: type: number size: type: number time_scale: type: string ts_refreshed: type: number upload_date: type: string user_data: type: object properties: org_units_l1: type: array items: type: string firstname: type: string lastname: type: string username: type: string email: type: string org_units_l2: type: array items: type: string groups: type: array items: type: object properties: created: type: number name: type: string updated: type: number groupid: type: string group: type: object properties: owner: type: string members: type: array items: type: object properties: name: type: string username: type: string created: type: number name: type: string updated: type: number groupid: type: string _id: type: object properties: $oid: type: string templates: type: array items: type: object properties: created: type: number name: type: string updated: type: number tid: type: string template: type: object properties: owner: type: string form: type: object properties: sections: type: array items: type: object properties: fields: type: array items: type: object properties: component: type: string definition: type: string fieldname: type: string id: type: string label: type: string predicate: type: string value: type: string vocabulary: type: string disabled: type: boolean multiplicable: type: boolean required: type: boolean skos:prefLabel: type: array items: type: object properties: '@language': type: string '@value': type: string created: type: number name: type: string updated: type: number tid: type: string tag: type: string _id: type: object properties: $oid: type: string object_info: type: object properties: _updated: type: array items: type: string _version_: type: number alternativeformats: type: array items: type: string alternativeversions: type: array items: type: string bbox: type: array items: type: string bib_published: type: array items: type: string bib_publisher: type: array items: type: string bib_publisherlocation: type: array items: type: string bib_roles_pers_aut: type: array items: type: string cmodel: type: string created: type: string datastreams: type: array items: type: string dc_creator: type: array items: type: string dc_date: type: array items: type: string dc_description: type: array items: type: string dc_description_: type: array items: type: string dc_identifier: type: array items: type: string dc_language: type: array items: type: string dc_license: type: array items: type: string dc_publisher: type: array items: type: string dc_relation: type: array items: type: string dc_rights: type: array items: type: string dc_subject: type: array items: type: string dc_subject_: type: array items: type: string dc_title: type: array items: type: string ispartof: type: array items: type: string dshash: type: object latlon: type: string metadata: type: object properties: geo: $ref: '#/components/schemas/geo' mods: $ref: '#/components/schemas/mods' metatags: type: object properties: DC.identifier: type: string DC.rights: type: array items: type: string md5: type: array items: type: object properties: _id: type: object properties: $oid: type: string c_size: type: number fileinfo: type: string fs_size: type: number ino: type: number key: type: string md5: type: string mtime: type: number path: type: string seq: type: number store: type: string type: type: string user_objects: type: object properties: PID: type: string dc.creator: type: array items: type: string fgs.contentModel: type: string fgs.createdDate: type: string fgs.lastModifiedDate: type: string uw.general.description: type: string uw.general.description.en: type: string uw.general.title: type: string uw.general.title.en: type: string uw.lifecycle.contribute.entity.firstname: type: string uw.digitalbook.booklet: type: string uw.digitalbook.from_page: type: string uw.digitalbook.name_magazine: type: string uw.digitalbook.releaseyear: type: string uw.digitalbook.to_page: type: string uw.digitalbook.volume: type: string uw.lifecycle.contribute.entity.institution: type: string curl_lines: type: array items: type: string vips_lines: type: array items: type: string imageserver_job_status: type: object properties: image: type: string created: type: number idhash: type: string _id: type: object properties: $oid: type: string pid: type: string ts_iso: type: string agent: type: string conversion: type: string status: type: string curl_lines: type: array vips_lines: type: array cast_lines: type: array tr_lines: type: array jsonld: type: object json-ld: type: object properties: dcterms:type: type: array items: type: object properties: '@type': type: string skos:exactMatch: type: array items: type: string skos:prefLabel: type: array items: type: object properties: '@language': type: string '@value': type: string edm:hasType: type: array items: type: object properties: '@type': type: string skos:exactMatch: type: array items: type: string skos:prefLabel: type: array items: type: object properties: '@language': type: string '@value': type: string dce:title: type: array items: type: object properties: '@type': type: string bf:mainTitle: type: array items: type: object properties: '@value': type: string '@language': type: string role:aut: type: array items: type: object properties: '@type': type: string schema:familyName: type: array items: type: object properties: '@value': type: string schema:givenName: type: array items: type: object properties: '@value': type: string dce:subject: type: array items: type: object properties: '@type': type: string skos:prefLabel: type: array items: type: object properties: '@value': type: string '@language': type: string bf:note: type: array items: type: object properties: skos:prefLabel: type: array items: type: object properties: '@value': type: string '@language': type: string '@type': type: string vra:hasInscription: type: array items: type: object properties: '@type': type: string skos:prefLabel: type: array items: type: object properties: '@value': type: string '@language': type: string dcterms:language: type: array items: type: string ebucore:filename: type: array items: type: string ebucore:hasMimeType: type: array items: type: string edm:rights: type: array items: type: string example: dce:title: - '@type': bf:Title bf:mainTitle: - '@value': Title '@language': deu role:aut: - '@type': schema:Person schema:givenName: - '@value': First name schema:familyName: - '@value': Last Name edm:rights: - https://rightsstatements.org/page/InC/1.0/ iiifmanifest: type: object properties: behavior: type: array items: type: string viewingDirection: type: string '@context': type: string label: type: object properties: en: type: array items: type: string type: type: string id: type: string requiredStatement: type: object properties: value: type: object properties: none: type: array items: type: string label: type: object properties: en: type: array items: type: string items: type: array items: type: object properties: width: type: number id: type: string type: type: string label: type: object properties: none: type: array items: type: string height: type: number items: type: array items: type: object properties: id: type: string type: type: string items: type: array items: type: object properties: body: type: object properties: width: type: number format: type: string type: type: string id: type: string height: type: number service: type: array items: type: object properties: profile: type: string id: type: string type: type: string target: type: string id: type: string type: type: string motivation: type: string start: type: object properties: id: type: string type: type: string example: behavior: - facing-pages viewingDirection: left-to-right '@context': http://iiif.io/api/presentation/3/context.json label: en: - Book type: Manifest id: https://sandbox.phaidra.org/api/object/o:***/iiifmanifest requiredStatement: value: none: - http://creativecommons.org/licenses/by-nc-sa/4.0/ label: en: - Rights items: - width: 2100 id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1 type: Canvas label: none: - 0r height: 2500 items: - id: https://sandbox.phaidra.org/api/iiif/o:***/page/p1/1 type: AnnotationPage items: - body: width: 2500 format: image/jpeg type: Image id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069684.tif/full/full/0/default.jpg height: 2000 service: - profile: level2 id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069684.tif type: ImageService3 target: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1 id: https://sandbox.phaidra.org/api/iiif/o:***/annotation/p1-image type: Annotation motivation: painting - width: 2100 id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/2 type: Canvas label: none: - fol. 1r-v (r) height: 2500 items: - id: https://sandbox.phaidra.org/api/iiif/o:***/page/p2/1 type: AnnotationPage items: - body: width: 2500 format: image/jpeg type: Image id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069685.tif/full/full/0/default.jpg height: 2000 service: - profile: level2 id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069685.tif type: ImageService3 target: https://sandbox.phaidra.org/api/iiif/o:***/canvas/2 id: https://sandbox.phaidra.org/api/iiif/o:***/annotation/p2-image type: Annotation motivation: painting start: id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1 type: Canvas