components:
responses:
UnauthorizedError:
description: Access token is missing or invalid
schemas:
annotations:
properties:
metadata:
properties:
annotations:
example:
'1':
category: place
h: 0.18
text: First example of annotation
w: 0.2
x: 0.7
y: 0.6
'2':
category: place
h: 0.1
text: Second example of annotation
w: 0.15
x: 0.1
y: 0.8
'3':
category: people
h: 0.1
text: Third example of annotation
w: 0.1
x: 0.7
y: 0.4
type: object
type: object
type: object
collection:
properties:
root:
properties:
_updated:
items:
type: number
type: array
_version_:
type: number
bib_ir:
items:
type: string
type: array
bib_roles_pers_aut:
items:
type: string
type: array
children:
items:
type: string
type: array
cmodel:
type: string
created:
type: string
datastreams:
items:
type: string
type: array
dc_creator:
items:
type: string
type: array
dc_description:
items:
type: string
type: array
dc_description_eng:
items:
type: string
type: array
dc_identifier:
items:
type: string
type: array
dc_language:
items:
type: string
type: array
dc_title:
items:
type: string
type: array
dc_title_eng:
items:
type: string
type: array
dc_type:
items:
type: string
type: array
dc_type_eng:
items:
type: string
type: array
ispartof:
items:
type: string
type: array
owner:
type: string
pid:
type: string
resourcetype:
type: string
size:
type: number
sort_dc_title:
type: string
sort_eng_dc_title:
type: string
tcreated:
items:
type: string
type: array
tsize:
items:
type: string
type: array
uwm_roles_json:
items:
type: string
type: array
type: object
type: object
container_empty:
example:
metadata:
json-ld:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': eng
'@value': test 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:exactMatch:
- https://pid.phaidra.org/vocabulary/8KGA-CH97
skos:prefLabel:
- '@language': eng
'@value': interview
type: object
container_with_members:
example:
metadata:
json-ld:
container:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': eng
'@value': Example container title
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:exactMatch:
- https://pid.phaidra.org/vocabulary/8KGA-CH97
skos:prefLabel:
- '@language': eng
'@value': interview
member_bar:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': eng
'@value': Member 'bar' title
dcterms:type:
- '@type': skos:Concept
skos:exactMatch:
- https://pid.phaidra.org/vocabulary/8YB5-1M0J
skos:prefLabel:
- '@language': eng
'@value': sound
ebucore:filename:
- test.wav
ebucore:hasMimeType:
- audio/wav
edm:rights:
- http://rightsstatements.org/vocab/InC/1.0/
schema:duration:
- PTOH1M30S
member_foo:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': deu
'@value': member 'foo' title
dcterms:type:
- '@type': skos:Concept
skos:exactMatch:
- https://pid.phaidra.org/vocabulary/8YB5-1M0J
skos:prefLabel:
- '@language': eng
'@value': sound
ebucore:filename:
- test2.wav
ebucore:hasMimeType:
- audio/wav
edm:rights:
- http://rightsstatements.org/vocab/InC/1.0/
schema:duration:
- PTOH1M30S
type: object
datacite:
properties:
data:
properties:
contributors:
items:
type: string
type: array
creators:
items:
properties:
firstname:
type: string
institution:
type: string
lastname:
type: string
value:
type: string
type: object
type: array
descriptions:
items:
properties:
lang:
type: string
ns:
type: string
value:
type: string
type: object
type: array
embargodates:
items:
type: string
type: array
filesizes:
items:
properties:
value:
type: string
type: object
type: array
formats:
items:
type: string
type: array
identifiers:
items:
properties:
type:
type: string
value:
type: string
type: object
type: array
langs:
items:
properties:
value:
type: string
type: object
type: array
licenses:
items:
properties:
value:
type: string
type: object
type: array
publicationYear:
items:
type: string
type: array
publishers:
items:
type: string
type: array
pubyears:
items:
type: string
type: array
titles:
items:
properties:
lang:
type: string
title:
type: string
value:
type: string
type: object
type: array
upload_date:
items:
type: string
type: array
uploaddates:
items:
properties:
ns:
type: string
value:
type: string
type: object
type: array
type: object
datacite_elements:
items:
properties:
children:
items:
properties:
value:
type: string
xmlname:
type: string
type: object
type: array
xmlname:
type: string
type: object
type: array
errors:
items:
type: string
type: array
status:
type: string
type: object
dc:
properties:
attributes:
items: {}
type: array
ui_value:
type: string
xmlname:
type: string
type: object
default:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
geo:
properties:
metadata:
properties:
geo:
example:
kml:
document:
placemark:
- description: Json example of a point geo datastream
name: Name of geo datastream
point:
coordinates:
latitude: '41.6902784095934'
longitude: '44.8112504748688'
type: object
type: object
type: object
group:
properties:
_id:
properties:
$oid:
type: string
type: object
created:
type: number
groupid:
type: string
members:
items:
properties:
name:
type: string
username:
type: string
type: object
type: array
name:
type: string
owner:
type: string
updated:
type: number
type: object
groups:
items:
properties:
created:
type: number
groupid:
type: string
name:
type: string
updated:
type: number
type: object
type: array
iiifmanifest:
example:
'@context': http://iiif.io/api/presentation/3/context.json
behavior:
- facing-pages
id: https://sandbox.phaidra.org/api/object/o:***/iiifmanifest
items:
- height: 2500
id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1
items:
- id: https://sandbox.phaidra.org/api/iiif/o:***/page/p1/1
items:
- body:
format: image/jpeg
height: 2000
id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069684.tif/full/full/0/default.jpg
service:
- id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069684.tif
profile: level2
type: ImageService3
type: Image
width: 2500
id: https://sandbox.phaidra.org/api/iiif/o:***/annotation/p1-image
motivation: painting
target: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1
type: Annotation
type: AnnotationPage
label:
none:
- 0r
type: Canvas
width: 2100
- height: 2500
id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/2
items:
- id: https://sandbox.phaidra.org/api/iiif/o:***/page/p2/1
items:
- body:
format: image/jpeg
height: 2000
id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069685.tif/full/full/0/default.jpg
service:
- id: https://sandbox.phaidra.org/api/imageserver?IIIF=o:1069685.tif
profile: level2
type: ImageService3
type: Image
width: 2500
id: https://sandbox.phaidra.org/api/iiif/o:***/annotation/p2-image
motivation: painting
target: https://sandbox.phaidra.org/api/iiif/o:***/canvas/2
type: Annotation
type: AnnotationPage
label:
none:
- fol. 1r-v (r)
type: Canvas
width: 2100
label:
en:
- Book
requiredStatement:
label:
en:
- Rights
value:
none:
- http://creativecommons.org/licenses/by-nc-sa/4.0/
start:
id: https://sandbox.phaidra.org/api/iiif/o:***/canvas/1
type: Canvas
type: Manifest
viewingDirection: left-to-right
properties:
'@context':
type: string
behavior:
items:
type: string
type: array
id:
type: string
items:
items:
properties:
height:
type: number
id:
type: string
items:
items:
properties:
id:
type: string
items:
items:
properties:
body:
properties:
format:
type: string
height:
type: number
id:
type: string
service:
items:
properties:
id:
type: string
profile:
type: string
type:
type: string
type: object
type: array
type:
type: string
width:
type: number
type: object
id:
type: string
motivation:
type: string
target:
type: string
type:
type: string
type: object
type: array
type:
type: string
type: object
type: array
label:
properties:
none:
items:
type: string
type: array
type: object
type:
type: string
width:
type: number
type: object
type: array
label:
properties:
en:
items:
type: string
type: array
type: object
requiredStatement:
properties:
label:
properties:
en:
items:
type: string
type: array
type: object
value:
properties:
none:
items:
type: string
type: array
type: object
type: object
start:
properties:
id:
type: string
type:
type: string
type: object
type:
type: string
viewingDirection:
type: string
type: object
imageserver_job_status:
properties:
_id:
properties:
$oid:
type: string
type: object
agent:
type: string
cast_lines:
type: array
conversion:
type: string
created:
type: number
curl_lines:
type: array
idhash:
type: string
image:
type: string
pid:
type: string
status:
type: string
tr_lines:
type: array
ts_iso:
type: string
vips_lines:
type: array
type: object
index:
properties:
_updated:
type: number
bbox:
items:
type: string
type: array
bib_published:
items:
type: string
type: array
bib_publisher:
items:
type: string
type: array
bib_publisherlocation:
items:
type: string
type: array
bib_roles_pers_aut:
items:
type: string
type: array
cmodel:
type: string
created:
type: string
datastreams:
items:
type: string
type: array
dc_creator:
items:
type: string
type: array
dc_date:
items:
type: string
type: array
dc_description:
items:
type: string
type: array
dc_description_:
items:
type: string
type: array
dc_description_deu:
items:
type: string
type: array
dc_description_eng:
items:
type: string
type: array
dc_identifier:
items:
type: string
type: array
dc_language:
items:
type: string
type: array
dc_publisher:
items:
type: string
type: array
dc_relation:
items:
type: string
type: array
dc_rights:
items:
type: string
type: array
dc_subject:
items:
type: string
type: array
dc_title:
items:
type: string
type: array
ispartof:
items:
type: string
type: array
latlon:
items:
type: string
type: array
modified:
type: string
owner:
type: string
pid:
type: string
resourcetype:
type: string
size:
type: number
type: object
index_relationship:
properties:
hasalternativeformat:
items:
type: string
type: array
hasalternativeversion:
items:
type: string
type: array
hasbackside:
items:
type: string
type: array
hassuccessor:
items:
type: string
type: array
hasthumbnail:
items:
type: string
type: array
isalternativeformatof:
items:
type: string
type: array
isalternativeversionof:
items:
type: string
type: array
isbacksideof:
items:
type: string
type: array
ismemberof:
items:
type: string
type: array
ispartof:
items:
type: object
type: array
isreferencedby:
items:
type: string
type: array
issuccessorof:
items:
type: string
type: array
isthumbnailfor:
items:
type: string
type: array
references:
items:
type: string
type: array
type: object
json-ld:
example:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': deu
'@value': Title
edm:rights:
- https://rightsstatements.org/page/InC/1.0/
role:aut:
- '@type': schema:Person
schema:familyName:
- '@value': Last Name
schema:givenName:
- '@value': First name
properties:
bf:note:
items:
properties:
'@type':
type: string
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
dce:subject:
items:
properties:
'@type':
type: string
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
dce:title:
items:
properties:
'@type':
type: string
bf:mainTitle:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
dcterms:language:
items:
type: string
type: array
dcterms:type:
items:
properties:
'@type':
type: string
skos:exactMatch:
items:
type: string
type: array
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
ebucore:filename:
items:
type: string
type: array
ebucore:hasMimeType:
items:
type: string
type: array
edm:hasType:
items:
properties:
'@type':
type: string
skos:exactMatch:
items:
type: string
type: array
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
edm:rights:
items:
type: string
type: array
role:aut:
items:
properties:
'@type':
type: string
schema:familyName:
items:
properties:
'@value':
type: string
type: object
type: array
schema:givenName:
items:
properties:
'@value':
type: string
type: object
type: array
type: object
type: array
vra:hasInscription:
items:
properties:
'@type':
type: string
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
type: object
type: array
type: object
jsonld:
type: object
languages:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
languages:
type: object
type: object
languagesExample:
properties:
alerts:
items: {}
type: array
languages:
ne:
de: Nepalisch
en: Nepali
it: Nepalese
sr: nepalski
type: object
type: object
licences:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
licences:
items:
properties:
descriptions:
properties:
de:
type: string
en:
type: string
type: object
labels:
properties:
de:
type: string
en:
type: string
type: object
lid:
type: integer
link_info:
type: string
link_text:
type: string
link_uri:
type: string
type: object
type: array
type: object
lists:
example:
- pid: o:1
title: Title 1
- pid: o:2
title: Title 2
items:
properties:
pid:
type: string
title:
type: string
type: object
type: array
lists_details:
items:
properties:
_id:
properties:
$oid:
type: string
type: object
created:
type: number
listid:
type: string
name:
type: string
updated:
type: number
type: object
type: array
members:
example:
- pid: o:1
pos: 1
- pid: o:2
pos: 2
items:
properties:
pid:
type: string
pos:
type: string
type: object
type: array
mods:
properties:
metadata:
properties:
mods:
example:
- attributes:
- input_type: select
label: Type
ui_value: ac-number
xmlname: type
- input_type: input_text
label: Language
xmlname: lang
- input_type: input_text
label: Script
xmlname: script
- input_type: input_text
label: Transliteration
xmlname: transliteration
- input_type: input_text
label: Type URI
xmlname: typeURI
- input_type: input_text
label: Display label
xmlname: displayLabel
- input_type: select
label: Invalid
xmlname: invalid
- input_type: input_text
label: Alternative representation group
xmlname: altRepGroup
input_type: input_text
label: Identifier
ui_value: AC04090285
xmlname: identifier
- attributes:
- input_type: input_text
label: Object part
xmlname: objectPart
- input_type: input_text
label: Language
xmlname: lang
- input_type: input_text
label: Script
xmlname: script
- input_type: input_text
label: Transliteration
xmlname: transliteration
- input_type: input_text
label: Display label
xmlname: displayLabel
- input_type: select
label: Usage
xmlname: usage
- input_type: input_text
label: Alternative representation group
xmlname: altRepGroup
children:
- attributes:
- input_type: select
label: Type
ui_value: code
xmlname: type
- input_type: select
label: Authority
ui_value: iso639-2b
xmlname: authority
- input_type: input_text
label: Authority URI
xmlname: authorityURI
- input_type: input_text
label: Value URI
xmlname: valueURI
- input_type: input_text
label: Language
xmlname: lang
- input_type: input_text
label: Script
xmlname: script
- input_type: input_text
label: Transliteration
xmlname: transliteration
input_type: input_text
label: Language term
ui_value: ger
xmlname: languageTerm
input_type: node
label: Language
xmlname: language
items:
properties:
attributes:
items:
properties:
input_type:
type: string
label:
type: string
ui_value:
type: string
xmlname:
type: string
type: object
type: array
children:
items:
type: object
type: array
extensible:
type: number
input_type:
type: string
label:
type: string
ui_value:
type: string
xmlname:
type: string
type: object
type: array
type: object
type: object
mods_tree:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
languages:
type: object
status:
type: number
tree:
$ref: '#/components/schemas/mods'
vocabularies:
$ref: '#/components/schemas/vocabularies'
vocabularies_mapping:
$ref: '#/components/schemas/vocabularies_mapping'
type: object
object_info:
properties:
_updated:
items:
type: string
type: array
_version_:
type: number
alternativeformats:
items:
type: string
type: array
alternativeversions:
items:
type: string
type: array
bbox:
items:
type: string
type: array
bib_published:
items:
type: string
type: array
bib_publisher:
items:
type: string
type: array
bib_publisherlocation:
items:
type: string
type: array
bib_roles_pers_aut:
items:
type: string
type: array
cmodel:
type: string
created:
type: string
datastreams:
items:
type: string
type: array
dc_creator:
items:
type: string
type: array
dc_date:
items:
type: string
type: array
dc_description:
items:
type: string
type: array
dc_description_:
items:
type: string
type: array
dc_identifier:
items:
type: string
type: array
dc_language:
items:
type: string
type: array
dc_license:
items:
type: string
type: array
dc_publisher:
items:
type: string
type: array
dc_relation:
items:
type: string
type: array
dc_rights:
items:
type: string
type: array
dc_subject:
items:
type: string
type: array
dc_subject_:
items:
type: string
type: array
dc_title:
items:
type: string
type: array
dshash:
type: object
ispartof:
items:
type: string
type: array
latlon:
type: string
metadata:
properties:
geo:
$ref: '#/components/schemas/geo'
mods:
$ref: '#/components/schemas/mods'
type: object
metatags:
properties:
DC.identifier:
type: string
DC.rights:
items:
type: string
type: array
type: object
type: object
rights:
properties:
username:
items:
example:
expires: '2016-08-25T14:31:34Z'
value: user123
properties:
expires:
type: string
value:
type: string
type: object
type: array
type: object
stats:
items:
properties:
_id:
properties:
$oid:
type: string
type: object
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
type: object
type: array
study:
properties:
labels:
properties:
de:
type: string
type: object
uri:
type: string
type: object
study_plans:
properties:
name:
type: string
value:
type: string
type: object
template:
properties:
_id:
properties:
$oid:
type: string
type: object
created:
type: number
form:
properties:
sections:
items:
properties:
fields:
items:
properties:
component:
type: string
definition:
type: string
disabled:
type: boolean
fieldname:
type: string
id:
type: string
label:
type: string
multiplicable:
type: boolean
predicate:
type: string
required:
type: boolean
skos:prefLabel:
items:
properties:
'@language':
type: string
'@value':
type: string
type: object
type: array
value:
type: string
vocabulary:
type: string
type: object
type: array
type: object
type: array
type: object
name:
type: string
owner:
type: string
tag:
type: string
tid:
type: string
updated:
type: number
type: object
templates:
items:
properties:
created:
type: number
name:
type: string
tid:
type: string
updated:
type: number
type: object
type: array
units:
properties:
'@id':
type: string
'@type':
type: string
skos:notation:
type: string
skos:prefLabel:
properties:
deu:
type: string
eng:
type: string
type: object
type: object
user_data:
properties:
email:
type: string
firstname:
type: string
lastname:
type: string
org_units_l1:
items:
type: string
type: array
org_units_l2:
items:
type: string
type: array
username:
type: string
type: object
user_objects:
properties:
PID:
type: string
curl_lines:
items:
type: string
type: array
dc.creator:
items:
type: string
type: array
fgs.contentModel:
type: string
fgs.createdDate:
type: string
fgs.lastModifiedDate:
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.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.lifecycle.contribute.entity.institution:
type: string
vips_lines:
items:
type: string
type: array
type: object
uwmetadata:
items:
properties:
cardinality:
type: integer
children:
items:
type: object
type: array
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
type: object
type: array
uwmetadata_article_basic:
example:
metadata:
uwmetadata:
- children:
- datatype: CharacterString
input_type: input_text
ui_value: o:454073
xmlname: identifier
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
ui_value: Tolerance and reward equity predict cooperation in ravens (Corvus corax)
xmlname: title
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Language
input_type: select
ui_value: en
xmlname: language
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
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
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
ui_value: Animal behaviour
xmlname: keyword
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
ui_value: Behavioural ecology
xmlname: keyword
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
ui_value: Social evolution
xmlname: keyword
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Boolean
input_type: select
ui_value: 'yes'
xmlname: irdata
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_31/1552099
xmlname: resource
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- datatype: CharacterString
input_type: input_text
ui_value: 10.1038/srep15021
xmlname: identifier
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
datatype: Node
input_type: node
xmlname: identifiers
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_31/1552101
xmlname: resource
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- datatype: CharacterString
input_type: input_text
ui_value: 2045-2322
xmlname: identifier
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
datatype: Node
input_type: node
xmlname: identifiers
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
datatype: Node
input_type: node
xmlname: general
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: DateTime
input_type: input_text
ui_value: '2016-08-23T11:53:04.000Z'
xmlname: upload_date
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_2/44
xmlname: status
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Boolean
input_type: select
ui_value: 'yes'
xmlname: peer_reviewed
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: Jorg J. M.
xmlname: firstname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: Massen
xmlname: lastname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '1'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: '761'
xmlname: institution
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: institution
xmlname: type
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '1'
xmlname: data_order
children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: Caroline
xmlname: firstname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: Ritter
xmlname: lastname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '1'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: '761'
xmlname: institution
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: institution
xmlname: type
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '2'
xmlname: data_order
children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: Thomas
xmlname: firstname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: Bugnyar
xmlname: lastname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '1'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: '761'
xmlname: institution
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: institution
xmlname: type
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '3'
xmlname: data_order
children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/1557146
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: Institutional
xmlname: firstname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: Repository
xmlname: lastname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '4'
xmlname: data_order
children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/47
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- attributes:
- input_type: input_text
ui_value: '0'
xmlname: data_order
children:
- datatype: CharacterString
input_type: input_text
ui_value: Nature Publishing Group
xmlname: institution
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
input_type: input_text
ui_value: institution
xmlname: type
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
datatype: Node
input_type: node
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_38/1556250
xmlname: infoeurepoversion
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_40/1557088
xmlname: metadataqualitycheck
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
datatype: Node
input_type: node
xmlname: lifecycle
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: CharacterString
input_type: input_text
ui_value: application/pdf
xmlname: format
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: FileSize
input_type: input_text
ui_value: '650007'
xmlname: size
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
datatype: Node
input_type: node
xmlname: technical
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: Boolean
input_type: select
ui_value: 'no'
xmlname: cost
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Boolean
input_type: select
ui_value: 'yes'
xmlname: copyright
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: License
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_21/16
xmlname: license
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0/voc_36/1556227
xmlname: infoeurepoaccess
xmlns: http://phaidra.univie.ac.at/XML/metadata/extended/V1.0
datatype: Node
input_type: node
xmlname: rights
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Node
input_type: node
xmlname: classification
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253
xmlname: hoschtyp
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- children:
- datatype: Faculty
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50
xmlname: faculty
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- datatype: Department
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761
xmlname: department
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
datatype: Node
input_type: node
xmlname: orgassignment
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- children:
- datatype: Faculty
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50
xmlname: faculty
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- datatype: Department
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761
xmlname: department
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
datatype: Node
input_type: node
xmlname: orgassignment
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- children:
- datatype: Faculty
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A50
xmlname: faculty
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
- datatype: Department
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A761
xmlname: department
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
datatype: Node
input_type: node
xmlname: orgassignment
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization
datatype: Node
input_type: node
xmlname: organization
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- children:
- datatype: Vocabulary
input_type: select
ui_value: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0/voc_25/1557094
xmlname: reference
xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0
- datatype: CharacterString
input_type: input_text
ui_value: M1351-B17
xmlname: number
xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0
datatype: Node
input_type: node
xmlname: reference_number
xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0
datatype: Node
input_type: node
xmlname: histkult
xmlns: http://phaidra.univie.ac.at/XML/metadata/histkult/V1.0
- children:
- attributes:
- input_type: select
ui_value: en
xmlname: lang
datatype: LangString
input_type: input_text
ui_value: Scientific Reports
xmlname: name_magazine
xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0
- datatype: CharacterString
input_type: input_text
ui_value: '5'
xmlname: volume
xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0
- datatype: CharacterString
input_type: input_text
ui_value: '15021'
xmlname: from_page
xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0
- datatype: DateTime
input_type: input_text
ui_value: '2015'
xmlname: releaseyear
xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0
datatype: Node
input_type: node
xmlname: digitalbook
xmlns: http://phaidra.univie.ac.at/XML/metadata/digitalbook/V1.0
type: object
uwmetadata_min:
example:
- children:
- ui_value: Title
value_lang: de
xmlname: title
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- datatype: Language
ui_value: de
xmlname: language
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
xmlname: general
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- children:
- datatype: Vocabulary
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_3/46
xmlname: role
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: CharacterString
ui_value: Brenda
xmlname: firstname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
- datatype: CharacterString
ui_value: Walsh
xmlname: lastname
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/entity
data_order: '0'
ordered: 1
xmlname: entity
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
data_order: '0'
ordered: 1
xmlname: contribute
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
xmlname: lifecycle
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
- children:
- datatype: License
ui_value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/voc_21/1
xmlname: license
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
xmlname: rights
xmlns: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0
items:
properties:
children:
items:
properties:
datatype:
type: string
input_type:
type: string
ui_value:
type: string
value_lang:
type: string
xmlname:
type: string
xmlns:
type: string
type: object
type: array
datatype:
type: string
input_type:
type: string
xmlname:
type: string
xmlns:
type: string
type: object
type: array
vocabularies:
properties:
abstract_type:
items:
type: string
type: array
accessCondition_type:
items:
type: string
type: array
authority_genre_form:
items:
type: string
type: array
authority_name_title:
items:
type: string
type: array
authority_relator_role:
items:
type: string
type: array
classification_authority:
items:
type: string
type: array
date_encoding:
items:
type: string
type: array
date_point:
items:
type: string
type: array
date_qualifier:
items:
type: string
type: array
descriptionStandard:
items:
type: string
type: array
description_authority:
items:
type: string
type: array
description_form_type:
items:
type: string
type: array
digital_origin:
items:
type: string
type: array
event_type:
items:
type: string
type: array
frequency:
items:
type: string
type: array
identifier_type:
items:
type: string
type: array
issuance:
items:
type: string
type: array
item_type:
items:
type: string
type: array
language_authority:
items:
type: string
type: array
location_type:
items:
type: string
type: array
location_url_type:
items:
type: string
type: array
location_url_usage:
items:
type: string
type: array
'no':
items:
type: string
type: array
note_type:
items:
type: string
type: array
org_authority:
items:
type: string
type: array
part_detail_title_type:
items:
type: string
type: array
part_extent_unit:
items:
type: string
type: array
part_text_type:
items:
type: string
type: array
part_type:
items:
type: string
type: array
physdesc_note_type:
items:
type: string
type: array
primary:
items:
type: string
type: array
reformatting_quality:
items:
type: string
type: array
subject_authority:
items:
type: string
type: array
target_authority:
items:
type: string
type: array
thority:
items:
type: string
type: array
toc_type:
items:
type: string
type: array
type_1:
items:
type: string
type: array
type_2:
items:
type: string
type: array
type_3:
items:
type: string
type: array
type_4:
items:
type: string
type: array
type_5:
items:
type: string
type: array
type_of_resource:
items:
type: string
type: array
unitType_type:
items:
type: string
type: array
'yes':
items:
type: string
type: array
type: object
vocabularies_mapping:
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
type: object
securitySchemes:
basicAuth:
scheme: basic
type: http
tokenAuth:
in: header
name: X-XSRF-TOKEN
type: apiKey
info:
description: Documentation of the PHAIDRA API.
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: PHAIDRA API
version: '3.0'
openapi: 3.0.2
paths:
/annotations/json2xml:
post:
description: Transforms the annotations JSON structure to XML (see an [example of annotation JSON structure](https://github.com/phaidra/phaidra-api/wiki/Annotations)).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
description: example of annotation JSON
properties:
metadata:
$ref: '#/components/schemas/annotations'
type: object
type: object
description: Annotations JSON
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
annotations:
type: object
type: object
description: Annotations in XML.
summary: Transforms annotations JSON to XML.
tags:
- datastream
/annotations/json2xml_validate:
post:
description: 'Transforms the annotations structure from JSON to XML and validates it. '
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/annotations'
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: annotations JSON validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates the annotations JSON.
tags:
- datastream
/annotations/validate:
post:
description: Validates the annotations structure in XML.
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
annotations:
example: 0.70.60.20.18pigmentsprussian
blue0.70.40.10.1peopleMary0.10.80.150.1pigmentsazurite
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Annotations XML validated.
summary: Validates the annotations XML.
tags:
- datastream
/annotations/xml2json:
post:
description: Transforms the XML annotations structure to JSON.
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
annotations:
example: 0.70.60.20.18pigmentsprussian
blue0.70.40.10.1peopleMary0.10.80.150.1pigmentsazurite
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
$ref: '#/components/schemas/annotations'
type: object
description: annotations in JSON
summary: Transforms annotations XML to JSON.
tags:
- datastream
/audio/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Audio object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates an audio object
tags:
- object-basics
/authz/check/{pid}/{op}:
get:
description: Checks if the authenticated user has appropriate rights for an operation on the object (readable/writable).
Can also be checked for unauthenticated user.
parameters:
- description: pid - object id
in: path
name: pid
schema:
required: false
type: string
- description: rights for operation
in: path
name: op
schema:
enum:
- ro
- rw
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
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.
'403':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: not op
security:
- basicAuth: []
summary: Checks rights
tags:
- object-advanced
/collection/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
members:
$ref: '#/components/schemas/members'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: string
type: object
description: collection created
security:
- basicAuth: []
summary: Creates a collection
tags:
- object-basics
/collection/{pid}/descendants:
get:
description: Get descendants.
parameters:
- description: collection pid
in: path
name: pid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
descendants:
$ref: '#/components/schemas/collection'
type: object
description: descendants
summary: Returns descendants of collection.
tags:
- relationships
/collection/{pid}/members:
get:
description: 'Returns the pids of the members of a collection. '
parameters:
- description: pid
in: path
name: pid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
members:
properties:
pid:
type: string
pos:
type: string
type: object
type: object
type: object
description: members (ordered if the COLLECTIONORDER datastream is available).
summary: Get pids of collection members.
tags:
- relationships
/collection/{pid}/members/add:
post:
parameters:
- description: collection pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
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)).
properties:
members:
$ref: '#/components/schemas/members'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
members:
properties:
pid:
type: string
pos:
type: string
type: object
type: object
type: object
description: collection members added.
security:
- basicAuth: []
summary: Add collection members.
tags:
- relationships
/collection/{pid}/members/order:
post:
parameters:
- description: collection pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
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)).
properties:
members:
$ref: '#/components/schemas/members'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
members:
properties:
pid:
type: string
pos:
type: string
type: object
type: object
type: object
description: collection members ordered.
security:
- basicAuth: []
summary: Orders collection members
tags:
- relationships
/collection/{pid}/members/remove:
post:
parameters:
- description: pid
in: path
name: pid
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
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)).
properties:
members:
$ref: '#/components/schemas/members'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
members:
properties:
pid:
type: string
pos:
type: string
type: object
type: object
type: object
description: collection members removed.
security:
- basicAuth: []
summary: Remove collection members.
tags:
- relationships
/collection/{pid}/members/{itempid}/order/{position}:
post:
description: Changes order of a single collection member.
parameters:
- description: collection pid
in: path
name: pid
schema:
required: true
type: string
- description: member pid
in: path
name: itempid
schema:
required: true
type: string
- description: position
in: path
name: position
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
type: array
status:
type: string
type: object
description: order changed
security:
- basicAuth: []
summary: Changes order of single member.
tags:
- relationships
/container/create:
post:
description: See [wiki](https://github.com/phaidra/phaidra-api/wiki/Creating-a-container) for an example.
requestBody:
content:
multipart/form-data:
schema:
description: JSON metadata example (see [creating a container example](https://github.com/phaidra/phaidra-api/wiki/Creating-a-container))
properties:
member_bar:
format: binary
type: string
member_foo:
format: binary
type: string
metadata:
$ref: '#/components/schemas/container_with_members'
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Container created
'404':
content:
application/json:
schema:
type: object
description: error creating container
security:
- basicAuth: []
summary: Creates a container object
tags:
- object-basics
/container/{pid}/members/order:
post:
parameters:
- description: container pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
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
properties:
members:
$ref: '#/components/schemas/members'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
members:
properties:
pid:
type: string
pos:
type: string
type: object
type: object
type: object
description: container members ordered
security:
- basicAuth: []
summary: Orders members of a container.
tags:
- relationships
/container/{pid}/members/{itempid}/order/{position}:
post:
description: Changes order of a single container member.
parameters:
- description: container pid
in: path
name: pid
schema:
required: true
type: string
- description: member pid
in: path
name: itempid
schema:
required: true
type: string
- description: position
in: path
name: position
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
type: array
status:
type: string
type: object
description: order changed
security:
- basicAuth: []
summary: Changes order of single member.
tags:
- relationships
/directory/org_get_parentpath:
get:
description: Retrieves the parent path of an organisation unit
parameters:
- description: Parent id
in: query
name: id
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
parentpath:
type: array
status:
type: number
type: object
description: parent path
summary: Get the parent path.
tags:
- directory
/directory/org_get_subunits:
get:
description: Retrieves the subunits of an organization.
parameters:
- description: unit id
in: query
name: id
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
subunits:
items:
$ref: '#/components/schemas/units'
type: array
type: object
description: subunits
summary: Get subunits.
tags:
- directory
/directory/org_get_superunits:
get:
description: Retrieves the superunits of an organization.
parameters:
- description: unit id
in: query
name: id
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
parent_id:
type: string
status:
type: number
type: object
description: Units which are parent of the org unit.
summary: Get superunits.
tags:
- directory
/directory/org_get_units:
get:
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.
parameters:
- description: Id of the parent unit. If not set, returns the top-level units.
in: query
name: parent_id
schema:
required: false
type: string
- description: If provided, the values returned (in the 'uri' field) will be prefixed with the value of this parameter.
in: query
name: values_namespace
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
terms:
type: array
type: object
description: units
summary: Get organisation units
tags:
- directory
/directory/user/data:
get:
responses:
'200':
content:
application/json:
schema:
properties:
status:
type: number
user_data:
$ref: '#/components/schemas/user_data'
type: object
description: returns account details of user (from credentials)
security:
- basicAuth: []
summary: Returns current user's data.
tags:
- directory
/directory/user/search:
get:
parameters:
- description: query (it will be automatically suffixed with *)
in: query
name: q
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
accounts:
items:
properties:
type:
type: string
uid:
type: string
value:
type: string
type: object
type: array
hits:
type: number
status:
type: number
type: object
description: returns accounts details. Only the first 50 results are returned
security:
- basicAuth: []
summary: Searches the user database.
tags:
- directory
/directory/user/{username}/data:
get:
description: Returns basic data about the specified user (such as name, affiliation and organization unit).
parameters:
- description: the user username
in: path
name: username
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
status:
type: number
user_data:
$ref: '#/components/schemas/user_data'
type: object
description: user's details (name, affiliation, etc.)
summary: Get user's basic data.
tags:
- directory
/directory/user/{username}/email:
get:
description: Returns the user's email
parameters:
- description: the user username
in: path
name: username
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
email:
type: string
status:
type: number
type: object
description: user's email
summary: Get user's email
tags:
- directory
/directory/user/{username}/name:
get:
description: Returns the name of a user.
parameters:
- description: the user's username
in: path
name: username
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
name:
type: object
status:
type: number
type: object
description: user's name
summary: Get user's full name.
tags:
- directory
/document/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Document object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates a document object
tags:
- object-basics
/geo/json2xml:
post:
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)).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
description: example of geo JSON
properties:
metadata:
$ref: '#/components/schemas/geo'
type: object
type: object
description: Geo JSON
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
geo:
type: string
type: object
type: object
description: geolocation in XML.
summary: Transforms the geo JSON to XML.
tags:
- datastream
/geo/json2xml_validate:
post:
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).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/geo'
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: geo JSON validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates the geo JSON.
tags:
- datastream
/geo/validate:
post:
description: Validates the geo structure in XML.
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
geo:
example: Tiflis,
Metechi-KircheTiflis, Georgien Tbilisi, Georgia44.8112504748688,41.6902784095934,0
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: geo XML validated.
summary: Validates the geo XML.
tags:
- datastream
/geo/xml2json:
post:
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)).
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
geo:
example: Tiflis,
Metechi-KircheTiflis, Georgien Tbilisi, Georgia44.8112504748688,41.6902784095934,0
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
geo:
$ref: '#/components/schemas/geo'
type: object
description: geo in JSON
summary: Transforms geo XML to JSON.
tags:
- datastream
/group/add:
post:
parameters:
- description: name of the group
in: query
name: name
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/group'
type: object
description: group detail
security:
- basicAuth: []
summary: Create new group
tags:
- directory
/group/{gid}:
get:
parameters:
- description: gid - group id
in: path
name: gid
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/group'
type: object
description: group detail
security:
- basicAuth: []
summary: Get group detail
tags:
- directory
/group/{gid}/members/add:
post:
parameters:
- description: gid - group id
in: path
name: gid
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
description: members JSON
properties:
members:
properties:
members:
items:
example: username1
type: string
type: array
type: object
type: object
description: JSON containing usernames to add, {"members":["username"]}
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/group'
type: object
description: group detail
security:
- basicAuth: []
summary: Add group members
tags:
- directory
/group/{gid}/members/remove:
post:
parameters:
- description: gid - group id
in: path
name: gid
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
members:
properties:
members:
items:
example: username1
type: string
type: array
type: object
type: object
description: JSON containing usernames to remove, {"members":["username"]}
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/group'
type: object
description: group detail
security:
- basicAuth: []
summary: Remove group members
tags:
- directory
/group/{gid}/remove:
post:
parameters:
- description: gid - group id
in: path
name: gid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/group'
type: object
description: group removed
security:
- basicAuth: []
summary: Delete specified group
tags:
- directory
/groups:
get:
description: Retrieves all user's groups.
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
groups:
$ref: '#/components/schemas/groups'
type: object
description: returns the user's groups (user credentials needed)
security:
- basicAuth: []
summary: Get user's groups.
tags:
- directory
/imageserver:
get:
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.
parameters:
- description: IIIF request
example: o:440180.tif/full/256,256/0/default.jpg
in: query
name: IIIF
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
streaming:
type: object
type: object
description: Returns the data needed by the IIP-compatible viewers
'404':
content:
application/json:
schema:
type: object
description: object has not been found
summary: Proxy for the imageserver.
tags:
- imageserver
/imageserver/process:
post:
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.
parameters:
- description: Value 1 to skip creating a job for this pid if a job for a pid already exists.
in: query
name: skipexisting
schema:
enum:
- 1
required: false
type: number
requestBody:
content:
multipart/form-data:
schema:
properties:
pids:
properties:
pids:
items:
example: pids
type: string
type: array
type: object
type: object
responses:
'200':
content:
application/json:
schema:
items:
properties:
idhash:
type: string
pid:
type: string
type: object
type: array
description: processed
'404':
content:
application/json:
schema:
type: object
description: Failed
security:
- basicAuth: []
summary: Let imageserver process multiple objects.
tags:
- imageserver
/imageserver/{pid}/process:
post:
description: Post an object to be processed to the imageserver. Needs admin credentials
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
- description: Value 1 to skip creating a job for this pid if a job for a pid already exists.
in: query
name: skipexisting
schema:
enum:
- 1
required: false
type: number
- description: By default, OCTETS is processed. This is a possibility to define another datastream.
in: query
name: ds
schema:
enum:
- USERTHUMB
required: false
type: string
responses:
'200':
content:
application/json:
schema:
items:
properties:
idhash:
type: string
pid:
type: string
type: object
type: array
description: processed
'404':
content:
application/json:
schema:
type: object
description: Failed
security:
- basicAuth: []
summary: Post to (re-)process one pid on imageserver.
tags:
- imageserver
/imageserver/{pid}/status:
get:
description: If imageserver is configured, returns the record from the imageserver job database for the pid specified.
Read rights are needed.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
conversion:
example: ok
type: string
status:
example: finished
type: string
type: object
description: record from the imageserver job database
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get imageserver job status
tags:
- imageserver
'/index ':
post:
description: Post a list of objects which should be re-indexed - needs admin credentials
responses:
'200':
content:
application/json:
schema: {}
description: object info
security:
- basicAuth: []
summary: Re-index multiple objects at once
tags:
- object-advanced
/jsonld/template/add:
post:
description: Adds JSON-LD templates
requestBody:
content:
multipart/form-data:
schema:
properties:
form:
$ref: '#/components/schemas/json-ld'
name:
description: New template name
type: string
tag:
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
tid:
type: string
type: object
description: Template created
security:
- basicAuth: []
summary: Adds JSON-LD templates
tags:
- templates
/jsonld/template/{tid}:
get:
parameters:
- description: template id
in: path
name: tid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
template:
$ref: '#/components/schemas/template'
type: object
description: template detail
security:
- basicAuth: []
summary: Get template detail
tags:
- templates
/jsonld/template/{tid}/remove:
post:
parameters:
- description: template id
in: path
name: tid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: template removed
security:
- basicAuth: []
summary: Remove template
tags:
- templates
/jsonld/templates:
get:
description: Retrieves the user's saved JSON-LD templates
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
templates:
$ref: '#/components/schemas/templates'
type: object
description: lists JSON-LD templates
security:
- basicAuth: []
summary: Get user's JSON-LD templates
tags:
- templates
/keepalive:
get:
description: Extends the expiration time of the session token (the session is identified by the token).
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
expires:
type: number
sid:
type: string
status:
type: number
type: object
description: a JSON object with an XSRF-Token and a new expiration time
'403':
description: credentials invalid
security:
- tokenAuth: []
summary: Extends session expiration time
tags:
- session
/list/add:
post:
description: Add a list to the user (from credentials).
requestBody:
content:
multipart/form-data:
schema:
properties:
name:
description: List name.
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
lid:
type: string
type: object
description: list added, returns list id ('lid')
security:
- basicAuth: []
summary: Add list
tags:
- lists
/list/token/{token}:
get:
parameters:
- description: the requested token no
in: path
name: token
schema: {}
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
list:
$ref: '#/components/schemas/group'
type: object
description: list detail
summary: Get object list exposed under specified token.
tags:
- lists
/list/{lid}:
get:
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
list:
$ref: '#/components/schemas/group'
type: object
description: list detail
security:
- basicAuth: []
summary: Get list detail
tags:
- lists
/list/{lid}/members/add:
post:
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
members:
properties:
members:
$ref: '#/components/schemas/lists'
type: object
type: object
description: 'JSON object containing the pids and titles to add, {"members":[{"pid": "o:1","title": "Title"}]}'
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Objects added to list
security:
- basicAuth: []
summary: Add objects to list
tags:
- lists
/list/{lid}/members/remove:
post:
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
members:
properties:
members:
items:
example: o:1
type: string
type: array
type: object
type: object
description: JSON object containing an array of objects' pids to remove, {"members":[ "o:1","o:2"]}
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Objects removed from list.
security:
- basicAuth: []
summary: Remove objects from list
tags:
- lists
/list/{lid}/remove:
post:
description: Remove list (input list id).
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
type: object
description: list detail
security:
- basicAuth: []
summary: Remove list
tags:
- lists
/list/{lid}/token/create:
post:
description: The token can be used in the /list/token/{token} request to create a URL under which the list can be publicly
displayed.
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alert:
type: number
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
token:
type: string
type: object
description: Returns the list token.
security:
- basicAuth: []
summary: Create a list token
tags:
- lists
/list/{lid}/token/delete:
post:
parameters:
- description: lid - list id
in: path
name: lid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: list detail
security:
- basicAuth: []
summary: Delete list token
tags:
- lists
/lists:
get:
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
lists:
$ref: '#/components/schemas/members'
type: object
description: lists
security:
- basicAuth: []
summary: Get user's object lists
tags:
- lists
/members/order/json2xml:
post:
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).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
properties:
metadata:
$ref: '#/components/schemas/members'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
type: array
metadata:
type: string
type: object
description: Members JSON in XML format.
summary: Transforms members JSON to XML.
tags:
- datastream
/members/order/xml2json:
post:
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
geo:
example: o:98079o:97973o:98109o:98074o:16066o:16083o:98076o:26111o:18o:62026
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
$ref: '#/components/schemas/members'
type: object
description: Collection members in JSON
summary: Transforms the members XML structure to JSON.
tags:
- datastream
/mods/json2xml:
post:
description: Transforms the MODS from JSON to XML.
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/mods'
description: example of mods JSON
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
mods:
type: string
type: object
type: object
description: MODS XML.
summary: Transforms MODS JSON to XML.
tags:
- datastream
/mods/json2xml_validate:
post:
description: Transforms the MODS structure from JSON to XML and validates it.
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/mods'
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: MODS JSON validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates MODS JSON
tags:
- datastream
/mods/tree:
get:
description: Returns the MODS structure with all nodes, dictionaries, etc.
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/mods_tree'
description: Mods tree.
summary: Get MODS tree.
tags:
- datastream
/mods/validate:
post:
description: Validates the MODS structure in XML.
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
annotations:
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/
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: XML validated.
summary: Validates the MODS XML.
tags:
- datastream
/mods/xml2json:
post:
description: Transforms the MODS from XML to JSON.
parameters:
- description: mode full or basic
in: query
name: mode
schema:
default: basic
enum:
- full
- basic
required: false
type: string
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
annotations:
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/
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
mods:
$ref: '#/components/schemas/mods'
type: object
description: MODS as JSON structure.
summary: Transforms MODS XML to JSON.
tags:
- datastream
/oai:
get:
parameters:
- description: See [the OAI-PMH protocol](https://www.openarchives.org/pmh/)
examples:
GetRecord:
summary: GetRecord
value: GetRecord
Identify:
summary: Identify
value: Identify
ListIdentifiers:
summary: ListIdentifiers
value: ListIdentifiers
ListRecords:
summary: ListRecords
value: ListRecords
in: query
name: verb
schema:
type: number
responses:
'200':
content:
text/xml:
schema:
type: string
description: ''
summary: OAI-PMH endpoint.
tags:
- oai-pmh
post:
responses:
'200':
content:
application/json:
schema:
type: object
description: See [the OAI-PMH protocol](https://www.openarchives.org/pmh/)
summary: Same as GET.
tags:
- oai-pmh
/oai/blacklist:
post:
description: Ingest TSV with columns `AC-Nummer` and `Identifier Phaidra`, and create records in `oai_records_blacklist`
if ac_number/pid not already present. The blacklist is a list of PIDs which should not be included in a particular
set in OAI-PMH, e.g. because the harvester gets those objects by other means (avoids duplicity).
parameters:
- description: Optional sets (comma-separated), if not supplied in JSON body.
in: query
name: sets
schema:
type: string
requestBody:
content:
application/json:
example:
sets:
- phaidra4primo
tsv: "AC-Nummer\tIdentifier Phaidra\nAC00001880\to:2045295"
schema:
properties:
sets:
items:
type: string
type: array
tsv:
type: string
type: object
text/plain:
example: "AC-Nummer\tIdentifier Phaidra\nAC00001880\to:2045295\nAC00003863\to:2040220"
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
properties:
existing:
type: integer
existing_items:
items:
type: object
type: array
inserted:
type: integer
inserted_items:
items:
type: object
type: array
invalid:
type: integer
invalid_items:
items:
type: object
type: array
sets:
items:
type: string
type: array
total_rows:
type: integer
type: object
description: Summary of inserted/existing/invalid rows
'400':
content:
application/json:
schema:
properties:
error:
type: string
type: object
description: Bad request details
summary: Add blacklist entries from TSV or JSON payload
tags:
- oai-pmh
/object/create:
post:
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
description: a structure containing metadata; refer to the wiki (see above) for further details
example:
json-ld:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': deu
'@value': Title
edm:rights:
- https://rightsstatements.org/page/InC/1.0/
role:aut:
- '@type': schema:Person
schema:familyName:
- '@value': Last Name
schema:givenName:
- '@value': First name
required: true
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: empty object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Create empty object, without a specified cmodel
tags:
- object-advanced
/object/create/{cmodel}:
post:
parameters:
- description: object cmodel
in: path
name: cmodel
schema:
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
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: empty object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Create empty object, with cmodel
tags:
- object-advanced
/object/{pid}/annotations:
get:
description: Retrieve annotations datastream.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
annotations:
$ref: '#/components/schemas/annotations'
status:
type: string
type: object
description: JSON with annotations (saved as XML but currently only returned as JSON)
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get annotations.
tags:
- object-advanced
post:
description: This method can save annotations to an object. The format chosen is taken from IIPMooViewer.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/annotations'
type: object
description: Adds annotation JSON. See datastream examples for the [annotations.json](https://github.com/phaidra/phaidra-api/wiki/Annotations).
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: Annotation saved
security:
- basicAuth: []
summary: Saves annotations.
tags:
- object-advanced
/object/{pid}/cmodel:
get:
description: Returns the object cmodel
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
cmodel:
type: string
status:
type: number
type: object
description: cmodel (e.g. collection)
summary: Get cmodel
tags:
- object-advanced
/object/{pid}/data:
post:
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
- description: object mimetype
in: query
name: mimetype
schema:
required: false
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: data added to object
'404':
content:
application/json:
schema:
type: object
description: error
security:
- basicAuth: []
summary: Replace data (add a new version of OCTETS datastream)
tags:
- object-advanced
/object/{pid}/datacite:
get:
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
datacite:
$ref: '#/components/schemas/datacite'
status:
type: string
type: object
description: DataCite metadata
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Transforms metadata to DataCite.
tags:
- object-advanced
/object/{pid}/datastream/{dsid}:
post:
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
- description: datastream id
example: IIIF-MANIFEST
in: path
name: dsid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
controlgroup:
description: One of X, M, R, or E (Inline XML, Managed Content, Redirect, or External Referenced)
enum:
- X
- M
- R
- E
required: true
type: string
dscontent:
format: binary
type: string
dslabel:
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.
required: false
type: string
location:
description: location of managed or external datastream content
required: false
type: string
mimetype:
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: Datastream added or modified
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Add or modify datastream
tags:
- object-advanced
/object/{pid}/delete:
post:
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.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: integer
type: object
description: status of delete request
security:
- basicAuth: []
summary: Delete object.
tags:
- object-basics
/object/{pid}/download:
get:
description: 'Receive data as Content-Disposition: attachment. Use this link if you want the browser to download a file.'
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
description: Object's data
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Download object's data
tags:
- object-basics
/object/{pid}/fulltext:
get:
parameters:
- description: requested pid - object id
in: path
name: pid
schema:
required: true
type: string
- description: specifies the desired format for the return
in: query
name: format
schema:
default: txt
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
streaming:
type: object
type: object
description: requested objects fulltext data
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
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
/object/{pid}/geo:
get:
description: Retrieves geo datastream of object.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
geo:
$ref: '#/components/schemas/geo'
status:
type: string
type: object
description: JSON of geo metadata. The datastream is saved as OGC-KML XML but currently only returned as JSON.
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get geo.
tags:
- object-advanced
post:
description: This method saves information about the object's geolocation.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/geo'
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: geolocation data saved
security:
- basicAuth: []
summary: Saves geo.
tags:
- object-advanced
/object/{pid}/get:
get:
description: Receive data as a stream. Use this link if you want to embed the data, e.g. in a player/viewer.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
description: Object's data
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get object's data
tags:
- object-basics
/object/{pid}/id:
get:
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).
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
ids:
items:
type: string
type: array
status:
type: string
type: object
description: ids
summary: Get Dublin Core identifiers.
tags:
- object-advanced
/object/{pid}/id/add:
post:
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 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.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
doi:
description: the DOI identifier
example: 10.5194/bg-11-1491-2014
required: false
type: string
hdl:
description: 'the handle identifier '
example: 11353/10.448537
required: false
type: string
urn:
description: the URN identifier
example: urn:nbn:at:at-ubw-30020.78240.320264-3
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: Identifyer added
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Add an identifier triple
tags:
- object-advanced
/object/{pid}/id/remove:
post:
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
doi:
description: the DOI identifier
example: 10.5194/bg-11-1491-2014
required: false
type: string
hdl:
description: 'the handle identifier '
example: 11353/10.448537
required: false
type: string
urn:
description: the URN identifier
example: urn:nbn:at:at-ubw-30020.78240.320264-3
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: Identifyer removed
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Remove identifier from triples
tags:
- object-advanced
/object/{pid}/iiifmanifest:
get:
description: Retrieves the iiifmanifest datastream.
parameters:
- description: requested pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/iiifmanifest'
description: iiifmanifest data
summary: Get iiifmanifest.
tags:
- object-advanced
post:
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
properties:
metadata:
properties:
IIIF-MANIFEST:
$ref: '#/components/schemas/iiifmanifest'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: ''
security:
- basicAuth: []
summary: Saves the iiifmanifest.
tags:
- object-advanced
/object/{pid}/index:
post:
description: Triggers the update of the object's index (Solr). Need admin authentication
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
- description: ignore object status, i.e. include inactive objects
in: path
name: ignorestatus
schema:
required: false
type: boolean
- description: skip re-indexing of the parent object
in: path
name: norecursion
schema:
required: false
type: boolean
responses:
'200':
content:
application/json:
schema:
type: object
description: object indexed
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Re-indexes object.
tags:
- object-basics
/object/{pid}/index/dc:
get:
description: Get metadata exported (and significantly reduced) in Dublin Core standard
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
text/xml:
example:
schema:
type: string
description: dc - in XML
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get DC
tags:
- object-advanced
/object/{pid}/index/members:
get:
description: Get object's members using indexed data.
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
members:
type: array
status:
type: string
type: object
description: members
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get object's members.
tags:
- object-advanced
/object/{pid}/index/relationships:
get:
description: Retrieves the object's relationships using indexed data.
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
alternativeformats:
items:
type: string
type: array
alternativeversions:
items:
type: string
type: array
relationships:
$ref: '#/components/schemas/index_relationship'
status:
type: string
versions:
items:
type: string
type: array
type: object
description: relationships, from index
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get relationships, from index.
tags:
- object-advanced
/object/{pid}/info:
get:
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.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
info:
$ref: '#/components/schemas/object_info'
status:
type: number
type: object
description: object info
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get object info
tags:
- object-basics
/object/{pid}/json-ld:
get:
description: Retrieve full object JSON-LD, with `@context` header, etc.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
jsonld:
$ref: '#/components/schemas/json-ld'
status:
type: string
type: object
description: JSON-LD metadata
'404':
content:
application/json:
schema:
type: object
description: failed to fetch data
summary: Get full JSON-LD.
tags:
- object-advanced
/object/{pid}/jsonld:
get:
description: Retrieve object JSON-LD metadata.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
jsonld:
$ref: '#/components/schemas/jsonld'
status:
type: string
type: object
description: JSON-LD metadata
'404':
content:
application/json:
schema:
type: object
description: failed to fetch data
summary: Get JSON-LD.
tags:
- object-advanced
post:
description: This method saves the metadata if you are using JSON-LD as a metadata structure.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
properties:
metadata:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: JSON-LD metadata saved
security:
- basicAuth: []
summary: Saves JSON-LD.
tags:
- object-advanced
/object/{pid}/jsonldprivate:
get:
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: JSON-LD-PRIVATE datastream
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get the non-public JSON-LD-PRIVATE datastream.
tags:
- object-advanced
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
format: binary
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: jsonld metadata saved
security:
- basicAuth: []
summary: Save JSON-LD-PRIVATE datastream
tags:
- object-advanced
/object/{pid}/members/order:
get:
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: '...'
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Retrieve members
tags:
- object-advanced
/object/{pid}/metadata:
get:
description: Retrieve the object metadata (UWMETADATA, MODS, JSON-LD, etc., depending on the metadata datastream).
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
metadata:
type: object
type: object
description: object metadata
'404':
content:
application/json:
schema:
type: object
description: object has not been found
summary: Get object's metadata
tags:
- object-advanced
post:
description: 'Supported elements (in JSON format) are: json-ld, json-ld-private, mods, uwmetadata, rights, geo, members,
membersorder and relationships.'
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
oneOf:
$ref: '#/components/schemas/json-ld'
type: object
description: Object metadata
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: metadata added
'404':
content:
application/json:
schema:
type: object
description: error
security:
- basicAuth: []
summary: Edit object's metadata
tags:
- object-basics
/object/{pid}/modify:
post:
description: Modify the basic properties of an object (the parameters are all optional). Admin credentials are needed.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
label:
description: some string (currently not used in PHAIDRA)
required: false
type: string
lastmodifieddate:
description: a date in ISO format
required: false
type: string
logmessage:
description: log message, string
required: false
type: string
ownerid:
description: owner's username
required: false
type: string
state:
default: A
description: The state of the object can be changed toA (= Active), I (= Inactive), D (= Deleted)
enum:
- A
- I
- D
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: object modified
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Modify object properties
tags:
- object-advanced
/object/{pid}/mods:
get:
description: Retrieves object mods datastream.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
- 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: format
schema:
enum:
- xml
required: false
type: string
- 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.
in: query
name: mode
schema:
enum:
- full
- basic
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
mods:
$ref: '#/components/schemas/mods'
status:
type: string
type: object
description: mods JSON
'404':
content:
application/json:
schema:
type: object
description: failed to fetch data
summary: Get mods.
tags:
- object-advanced
post:
description: 'This method saves the object''s metadata if you are using the mods as a metadata structure. '
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/mods'
description: example of mods JSON
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: mods metadata saved
security:
- basicAuth: []
summary: Saves mods.
tags:
- object-advanced
/object/{pid}/preview:
get:
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.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
text/html:
schema:
type: string
description: html page preview
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get preview page
tags:
- object-basics
/object/{pid}/related:
get:
description: This method returns all objects which are in some relation to the object specified in URL.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
- description: Specifies the relation which should be returned, see [relations](https://github.com/phaidra/phaidra-api/wiki/Relations)
in: query
name: relation
schema:
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
type: string
- description: nr of entries to skip (paging)
in: query
name: from
schema:
required: false
type: number
- description: nr of entries to return (paging)
in: query
name: limit
schema:
required: false
type: number
- 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: right
schema:
enum:
- 0
- 1
required: false
type: number
- 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.
in: query
name: fields
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
hits:
type: number
objects:
items:
properties:
cmodel:
type: string
pid:
type: string
title:
type: string
titles:
items:
properties:
lang:
type: string
text:
type: string
type: object
type: array
type: object
type: array
status:
type: string
type: object
description: The requested objects Dublin Core datastream.
'404':
content:
application/json:
schema:
type: object
description: object has not been found
summary: Get related objects.
tags:
- relationships
/object/{pid}/relationship/add:
post:
description: Add a triple. Adding some system relationships (like hasModel) might be restricted. See the [list of supported
relationships](https://github.com/phaidra/phaidra-api/wiki/Relations).
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
- description: the relationship [list of supported relationships](https://github.com/phaidra/phaidra-api/wiki/Relations)
examples:
hasCollectionMember:
summary: hasCollectionMember
value: info:fedora/fedora-system:def/relations-external#hasCollectionMember
hasModel:
summary: hasModel relationship
value: info:fedora/fedora-system:def/model#hasModel
isThumbnailFor:
summary: isThumbnailFor
value: http://phaidra.org/XML/V1.0/relations#isThumbnailFor
in: query
name: predicate
schema:
required: true
type: string
- 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)
examples:
Page:
summary: Page model
value: info:fedora/cmodel:Page
Picture:
summary: Picture Model
value: info:fedora/cmodel:Picture
in: query
name: object
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: relationship added
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Add a relationship.
tags:
- relationships
/object/{pid}/relationship/remove:
post:
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.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
- description: the relationship [list of supported relationships](https://github.com/phaidra/phaidra-api/wiki/Relations)
examples:
hasCollectionMember:
summary: hasCollectionMember
value: info:fedora/fedora-system:def/relations-external#hasCollectionMember
hasModel:
summary: hasModel relationship
value: info:fedora/fedora-system:def/model#hasModel
isThumbnailFor:
summary: isThumbnailFor
value: http://phaidra.org/XML/V1.0/relations#isThumbnailFor
in: query
name: predicate
schema:
required: true
type: string
- 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)
examples:
Page:
summary: Page model
value: info:fedora/cmodel:Page
Picture:
summary: Picture Model
value: info:fedora/cmodel:Picture
in: query
name: object
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: removed relationship
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
security:
- basicAuth: []
summary: Remove a relationship from RELS-EXT.
tags:
- relationships
/object/{pid}/relationships:
get:
description: Returns the object relationships (triplestore).
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
relationships:
properties:
haspart:
items:
type: string
type: array
type: object
status:
type: string
type: object
description: Relationships
summary: Get relationships.
tags:
- object-advanced
/object/{pid}/rights:
get:
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
rights:
properties:
metadata:
properties:
username:
items:
properties:
expires:
type: string
value:
type: string
type: object
type: array
type: object
type: object
status:
type: number
type: object
description: Access rights
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Retrieves the object access restrictions. This method expects authentication.
tags:
- object-basics
post:
description: Leave the rights empty (rights:{}) to remove restrictions from object.
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
description: Example of user rights.
properties:
rights:
$ref: '#/components/schemas/rights'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: ''
security:
- basicAuth: []
summary: Saves the object's access restrictions
tags:
- object-basics
/object/{pid}/state:
get:
description: Returns the state of the object.
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
state:
type: string
status:
type: number
type: object
description: state of object, Active/Inactive/Deleted
summary: Get state
tags:
- object-advanced
/object/{pid}/thumbnail:
get:
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
description: Thumbnail image in jpeg or png format
'404':
content:
application/json:
schema:
type: object
description: object has not been found
security:
- basicAuth: []
summary: Get the thumbnail image
tags:
- object-basics
/object/{pid}/uwmetadata:
get:
description: Retrieves the object uwmetadata datastream.
parameters:
- description: the requested object id
in: path
name: pid
schema:
required: true
type: string
- 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: format
schema:
enum:
- xml
required: false
type: string
- 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.
in: query
name: mode
schema:
enum:
- full
- basic
- resoved
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
uwmetadata:
$ref: '#/components/schemas/uwmetadata_min'
type: object
status:
type: string
type: object
description: JSON of uwmetadata datastream
'404':
content:
application/json:
schema:
type: object
description: Failed to fetch data
summary: Get uwmetadata.
tags:
- object-advanced
post:
description: This method saves the object's metadata if you are using the uwmetadata as a metadata structure.
parameters:
- description: object pid
in: path
name: pid
schema:
required: true
type: string
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
properties:
metadata:
description: See [datastream examples](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples)
for the the metadata.json.
properties:
uwmetadata:
$ref: '#/components/schemas/uwmetadata_min'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: string
type: object
description: uwmetadata saved
security:
- basicAuth: []
summary: Saves uwmetadata.
tags:
- object-advanced
/page/create:
post:
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
description: a structure containing metadata; refer to the wiki (see above) for further details
example:
json-ld:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': deu
'@value': Title
edm:rights:
- https://rightsstatements.org/page/InC/1.0/
role:aut:
- '@type': schema:Person
schema:familyName:
- '@value': Last Name
schema:givenName:
- '@value': First name
required: true
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Page object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates a page object
tags:
- object-advanced
/picture/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
security:
- basicAuth: []
summary: Creates a picture object
tags:
- object-basics
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Picture object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
/resolve:
get:
description: The resolver must be known/configured.
parameters:
- description: URI of term
example: http://d-nb.info/gnd/4000044-8
in: query
name: uri
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Depends on the vocabulary
summary: Resolve an URI
tags:
- vocabularies
/resource/create:
post:
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
description: a structure containing metadata; refer to the wiki (see above) for further details
example:
json-ld:
dce:title:
- '@type': bf:Title
bf:mainTitle:
- '@language': deu
'@value': Title
edm:rights:
- https://rightsstatements.org/page/InC/1.0/
role:aut:
- '@type': schema:Person
schema:familyName:
- '@value': Last Name
schema:givenName:
- '@value': First name
required: true
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Resource object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates a resource(-link) object
tags:
- object-advanced
/rights/json2xml:
post:
description: Transforms the rights structure from JSON to XML (see [examples of rights structure](https://github.com/phaidra/phaidra-api/wiki/Example-of-rights))
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
description: example of rights JSON
properties:
metadata:
properties:
rights:
$ref: '#/components/schemas/rights'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
rights:
type: string
type: object
type: object
description: rights in XML.
summary: Transforms rights JSON to XML.
tags:
- datastream
/rights/json2xml_validate:
post:
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)).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
properties:
metadata:
$ref: '#/components/schemas/rights'
type: object
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: JSON validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates rights JSON.
tags:
- datastream
/rights/validate:
post:
description: Validates the rights structure in XML.
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
rights:
example: username123
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: xml validated.
summary: Validates rights XML.
tags:
- datastream
/rights/xml2json:
post:
description: Transforms the rights structure from XML to JSON (see [examples of rights structure](https://github.com/phaidra/phaidra-api/wiki/Example-of-rights)).
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
rights:
example: username123
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
rights:
$ref: '#/components/schemas/rights'
status:
type: number
type: object
description: rights in JSON
summary: Transforms rights XML to JSON.
tags:
- datastream
/search/select:
post:
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)
parameters:
- description: query string
in: query
name: q
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
facet_counts:
properties:
facet_fields:
type: object
facet_heatmaps:
type: object
facet_intervals:
type: object
facet_querie:
type: object
facet_ranges:
type: object
type: object
response:
properties:
docs:
type: array
numFound:
type: number
numFoundExact:
type: boolean
start:
type: number
type: object
responseHeader:
items:
properties:
QTime:
type: number
params:
type: object
status:
type: number
type: object
type: array
type: object
description: search response
'404':
content:
application/json:
schema:
type: object
description: object has not been found
summary: Search query
tags:
- search
/settings:
get:
description: Currently only used to set default metadata template in some external UIs.
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
settings:
type: object
status:
type: string
type: object
description: ''
security:
- basicAuth: []
summary: Get user's settings
tags:
- misc
post:
description: Currently only used to set default metadata template in some external UIs.
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
settings:
type: object
status:
type: string
type: object
description: ''
security:
- basicAuth: []
summary: Save user's settings.
tags:
- misc
/signin:
get:
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.
responses:
'200':
content:
application/json:
schema:
properties:
XSRF-TOKEN:
type: string
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: a JSON object with an XSRF-Token
'403':
description: credentials invalid
security:
- basicAuth: []
summary: Sign in
tags:
- session
/signout:
get:
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
sid:
type: string
status:
type: number
type: object
description: ''
'403':
description: credentials invalid
security:
- tokenAuth: []
summary: Sign out
tags:
- session
/state:
get:
description: Returns "remote_address". This method is used for monitoring.
responses:
'200':
content:
application/json:
schema: {}
description: The API is running!
summary: Test api state
tags:
- misc
/stats/{pid}:
get:
description: Returns object's usage statistics
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
stats:
properties:
detail_page:
type: string
downloads:
type: string
type: object
type: object
description: Usage statistics
summary: Get usage statistics
tags:
- stats
/stats/{pid}/chart:
get:
description: Get /info and download count, with detailed timestamps.
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
stats:
properties:
detail_page:
properties:
at:
type: object
type: object
downloads:
type: number
type: object
status:
type: number
type: object
description: details on object (download, detail_page, etc.)
summary: Get timestamped /info and download count.
tags:
- stats
/stats/{pid}/detail_page:
get:
description: Returns the number of /info calls, which are typically used when accessing the detail page.
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
text/plain:
schema:
type: number
description: /info calls count (integer)
summary: Get number of /info calls.
tags:
- stats
/stats/{pid}/downloads:
get:
parameters:
- description: object id
in: path
name: pid
schema:
required: true
type: string
responses:
'200':
content:
text/plain:
schema:
type: number
description: Download count (integer). Useful e.g. for ajax content update without any response parsing necessary.
summary: Get downloads count.
tags:
- stats
/streaming/{pid}/key:
get:
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.
parameters:
- description: pid - object id
in: path
name: pid
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Streaming key.
'503':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Service Unavailable
security:
- basicAuth: []
summary: Get streaming key
tags:
- misc
/terms/children:
get:
description: Retrieve the children for a term URI.
parameters:
- description: URI of term
examples:
Bibliotheks- und Archivwesen:
summary: URI for the Vienna University Library and Archive Services
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347
in: query
name: uri
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
terms:
properties:
labels:
properties:
de:
type: string
en:
type: string
type: object
nonpreferred:
items:
type: string
type: array
term_id:
type: string
upstream_identifier:
type: string
type: object
type: object
description: terms
summary: Get children.
tags:
- vocabularies
/terms/label:
get:
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).
parameters:
- description: URI of term
examples:
cls_1:
summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347
voc_17:
summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_17/1552253
voc_department:
summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A767
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_department/A767
voc_faculty:
summary: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A150
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/organization/voc_faculty/A150
in: query
name: uri
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
labels:
properties:
labels:
properties:
de:
type: string
en:
type: string
type: object
type: object
nonpreferred:
items: {}
type: array
status:
type: number
term_id:
type: string
upstream_identifier:
type: number
type: object
description: labels
summary: Get term labels.
tags:
- vocabularies
/terms/parent:
get:
description: Retrieve the parent of a term, using its URI.
parameters:
- description: URI of term
examples:
Tieranatomie:
summary: URI for the term "Animal anatomy"
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/540
in: query
name: uri
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
parent:
type: string
type: object
description: parents
summary: Get parent.
tags:
- vocabularies
/terms/taxonpath:
get:
parameters:
- description: URI of term
examples:
BibliotheksundArchivwesen:
summary: URI for the Vienna University Library and Archive Services
value: http://phaidra.univie.ac.at/XML/metadata/lom/V1.0/classification/cls_1/347
in: query
name: uri
schema:
required: false
type: string
responses:
'200':
content:
application/json:
schema:
properties:
status:
type: number
taxonpath:
properties:
labels:
properties:
de:
type: string
en:
type: string
type: object
nonpreferred:
type: array
term_id:
type: string
upstream_identifier:
type: string
uri:
type: string
type: object
type: object
description: taxonpath
summary: Get the taxon path.
tags:
- vocabularies
/termsofuse:
get:
responses:
'200':
content:
application/json:
schema:
properties:
added:
type: string
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
terms:
type: string
version:
type: string
type: object
description: Terms of use
summary: Get terms of use
tags:
- misc
/termsofuse/agree/{version}:
post:
description: Record the user agreement to a particular version of the terms of use.
parameters:
- description: version of the terms of use
in: path
name: version
schema:
required: true
type: number
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: Terms of use
security:
- basicAuth: []
summary: Agree to terms of use
tags:
- misc
/termsofuse/getagreed:
get:
responses:
'200':
content:
application/json:
schema: {}
description: object info
security:
- basicAuth: []
summary: Checks if the current user agreed to the terms of use.
tags:
- misc
/unknown/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Data object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates a data object
tags:
- object-basics
/utils/get_all_pids:
get:
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pids:
items:
type: string
type: array
status:
type: number
type: object
description: pids
summary: Get all pids
tags:
- misc
/uwmetadata/json2xml:
post:
description: Transforms uwmetadata structure from JSON to XML (see [examples of uwmetadata](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples)).
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
description: example of uwmetadata JSON
properties:
metadata:
properties:
uwmetadata:
$ref: '#/components/schemas/uwmetadata_min'
type: object
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
uwmetadata:
type: string
type: object
type: object
description: XML uwmetadata.
summary: Transforms uwmetadata JSON to XML.
tags:
- datastream
/uwmetadata/json2xml_validate:
post:
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). '
requestBody:
content:
multipart/form-data:
schema:
properties:
metadata:
$ref: '#/components/schemas/uwmetadata_article_basic'
type: object
description: JSON uwmetadata. An example of article uwmetadata in basic mode is provided.
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Json uwmetadata validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates JSON uwmetadata.
tags:
- datastream
/uwmetadata/tree:
get:
description: Returns the uwmetadata structure with all nodes, labels, dictionaries, etc.
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
languages:
type: object
status:
type: number
tree:
$ref: '#/components/schemas/uwmetadata'
type: object
description: Uwmetadata tree.
summary: Get uwmetadata structure.
tags:
- datastream
/uwmetadata/validate:
post:
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.
requestBody:
content:
text/plain:
schema:
description: uwmetadata XML, the XML has to be sent in the request body as raw data.
format: binary
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Xml uwmetadata validated.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/default'
description: Bad request
summary: Validates uwmetadata XML.
tags:
- datastream
/uwmetadata/xml2json:
post:
description: Transforms the uwmetadata structure from XML to JSON (see [examples of uwmetadata](https://github.com/phaidra/phaidra-api/wiki/Datastream-examples)).
parameters:
- description: mode full or basic
in: query
name: mode
schema:
default: basic
enum:
- full
- basic
required: false
type: string
requestBody:
content:
application/json:
schema:
properties:
metadata:
properties:
uwmetadata:
example: '
Title
de
46
Brenda
Walsh
1
'
type: string
type: object
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
metadata:
properties:
uwmetadata:
$ref: '#/components/schemas/uwmetadata_min'
type: object
type: object
description: JSON uwmetadata.
summary: Transforms uwmetadata XML to JSON.
tags:
- datastream
/video/create:
post:
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.
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
format: binary
required: true
type: string
metadata:
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:
properties:
json-ld:
$ref: '#/components/schemas/json-ld'
type: object
type: object
mimetype:
description: 'mimetype is optional: if not provided, heuristics is used on server side'
example: application/json
required: false
type: string
type: object
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
pid:
type: string
status:
type: number
type: object
description: Video object created
'404':
content:
application/json:
schema:
type: object
description: error creating object
security:
- basicAuth: []
summary: Creates a video object
tags:
- object-basics
/vocabulary:
get:
description: Get vocabulary which was saved in API in vocabulary folder.
parameters:
- description: vocabulary ID
examples:
http://id.loc.gov/vocabulary/iso639-2:
summary: Vocabulary of languages
value: http://id.loc.gov/vocabulary/iso639-2
oefos2012:
summary: OEFOS 2012 classification
value: oefos2012
in: query
name: uri
schema:
type: string
- description: cache
in: query
name: nocache
schema:
required: false
type: boolean
responses:
'200':
content:
application/json:
schema:
properties:
alerts:
items:
properties:
msg:
type: string
type:
type: string
type: object
type: array
status:
type: number
type: object
description: JSON representation of the controlled vocabulary
summary: Get controlled vocabulary
tags:
- vocabularies
servers:
- description: API endpoint
url: https://phaidra.unipd.it/api
tags:
- description: Most important requests you'll need to manage digital objects in PHAIDRA
name: object-basics
- description: Additional requests for the manipulation of digital objects
name: object-advanced
- description: Requests for adding and removing object relationships
name: relationships
- description: ''
name: search
- description: Requests for transforming and validating datastreams
name: datastream
- description: Requests for managing metadata templates
name: templates
- description: Requests related to users, user groups and organisation structure
name: directory
- description: Requests to the imageserver
name: imageserver
- description: Requests for manipulating object lists
name: lists
- description: ''
name: stats
- description: Requests for controlled vocabularies
name: vocabularies
- description: Look at the [OAI-PMH protocol](https://www.openarchives.org/pmh) used in this endpoint
name: oai-pmh
- description: Session management
name: session
- description: ''
name: misc