Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

C

Verb

URL

Description

Mandatory parameters

Optional parameters

Sorting fields

Response Data

Formats

Response codes

 

GET

/communities

Returns a list of all communities on the system or return just top level communities.

-

topLevelOnly=true
idOnly=false

id 
name
countitems

countitems - number of items under community
handle - handle of the community (unique persistent resource identifier)
id - entity identifier, internal to the system
name - entity name
type - entity type (object type in the system)
collections - collections contained in the community, ordered by id
ancestors - ancestors of the community, ordered by id
children - subcommunities, ordered by id
admins - group administrators, ordered by id
metadata - community metadata
administrators - default group of administrators

Response code details:
204 - if there are no communities on the system

json
xml

200, 204, 400, 500

GET

/communities/{id}

Return information about id community.

id

idOnly=false

-

countitems - number of items under community
handle - handle of the community (unique persistent resource identifier)
id - entity identifier, internal to the system
name - entity name
type - entity type (object type in the system)
collections - collections contained in the community, ordered by id
ancestors - ancestors of the community, ordered by id
children - subcommunities, ordered by id
admins - group administrators, ordered by id
metadata - community metadata
administrators - default group of administrators

json
xml

200, 400, 404, 500

GET

/communities/{id}/relations

Return entities according to relation and parameters specified

id
property


rtype
rfield

-

Contains entities selected and sorted in conformance to request parameters. For more details see description of rtype and rfield.

json
xml

200, 204, 400, 500

GET

/communities/{id}/ancestors

Return a list of all ancestor communities of the id community.

id

idOnly=false  
immediateOnly=true

id
name
countitems

countitems - number of items under community
handle - handle of the community (unique persistent resource identifier)
id - entity identifier, internal to the system
name - entity name
type - entity type (object type in the system)
collections - collections contained in the community, ordered by id
ancestors - ancestors of the community, ordered by id
children - subcommunities, ordered by id
admins - group administrators, ordered by id
metadata - community metadata

json
xml

200, 204, 400, 500

GET

/communities/{id}/children

Returns a list of immediate sub-communities (children) of the id community.

id

idOnly=false

id
name
countitems

countitems - number of items under community
handle - handle of the community (unique persistent resource identifier)
id - entity identifier, internal to the system
name - entity name
type - entity type (object type in the system)
collections - collections contained in the community, ordered by id
ancestors - ancestors of the community, ordered by id
children - subcommunities, ordered by id
admins - group administrators, ordered by id
metadata - community metadata
administrators - default group of administrators

json
xml

200, 204, 400, 500

GET

/communities/{id}/collections

Return a list of collections in the id community.

id

idOnly=false

id
name
countitems

countitems - number of items under collection
handle - handle of the collection 
id - entity identifier, internal to the system
name - entity name
type - entity type (object type in the system)
items - items contained in the collection, ordered by id
communities - owners of the collection, ordered by id
admins - group administrators, ordered by id
licence - collection licence 
templateItem - template item

Response code details:
204 - if there are no collections

json
xml

200, 204, 400, 500

GET

/communities/{id}/recent

Return a list of recent submissions to a community.

id

idOnly=false

id
name
lastmodified
submitterId
submitterName

id - entity (item) identifier, internal to the system
handle - handle of the item
isArchived - archival status of the item
isWithdrawn - withdrawal status of the item
lastModified - timestamp of last modification
metadata - item metadata
name - item name
submitter - submiter entity
type - entity type (object type in the system, item in this case)
bitstreams - bitstreams related to the item
bundles - bundles related to the item
collections - collections related item appear in
communities - communities related item appear in

Response details:
204 - if there are no recently submitted items

json
xml

200, 204, 400, 500

GET

/communities/{id}/logo

Return a community logo

id

-

-

Contains community logo (bitstream)

binary

200, 400

GET

/collections

Return a list of all collections in the system.

-

idOnly=false
isAuthorized=false

id 
name 
countitems

Contains item count, identifiers, name and handle of collections, or 204 if
there are none of them. In the case idOnly=true is used, returns only
identifiers of collections.

json
xml

200, 204, 400, 500

GET

/collections/{id}

Return information about id collection

id

idOnly=false

id
name
countitems

Contains id, name, handle, members, member groups of submitters, licence, metadata, templateitem
countitems - number of items under collection
items - items present in the collection
id - entity (collection) identifier, internal to the system
handle - handle of the collection
licence - collection licence
name - collection name
type - entity type (object type in the system, item in this case)
communities - communities related collection appear in

json
xml

submiters - default group of submitters, if there is one
administrators - default group of administrators, if there is one
templateitem - template item for collection, if there is one

json
xml

200, 204, 400, 500 200, 204, 400, 500

GET

/collections/{id}/ancestors

Return a list of all ancestor communities a collection with id belongs to.

id

idOnly=false
immediateOnly=true

id 
name
countitems

countitems - number of items under community 
handle - handle of the community (unique persistent resource identifier) 
id - entity identifier, internal to the system 
name - entity name 
type - entity type (object type in the system) 
collections - collections contained in the community, ordered by id 
ancestors - ancestors of the community, ordered by id 
children - subcommunities, ordered by id 
admins - group administrators, ordered by id 
metadata - community metadata
administrators - default group of administrators

json
xml

200, 204, 400, 500

GET

/collections/{id}/items

Returns a list of all items from the collection id.

id

idOnly=false
inArchive=false

id
name
lastmodified
submitterId
submitterName

id - entity (item) identifier, internal to the system
handle - handle of the item
isArchived - archival status of the item
isWithdrawn - withdrawal status of the item
lastModified - timestamp of last modification
metadata - item metadata
name - item name
submitter - submiter entity
type - entity type (object type in the system, item in this case)
bitstreams - bitstreams related to the item
bundles - bundles related to the item
collections - collections related item appear in
communities - communities related item appear in

Response details:
204 - if there are no  items

json
xml

200, 204, 400, 500

GET

/collections/{id}/logo

Return a collection logo

id

-

-

Contains collection logo (bitstream)

binary

200, 400

...

Code

Description

200

OK

201

Created

204

No content

400

Bad request

401

Unauthorized

403

Forbidden

404

Not found

405

Method not allowed

500

Internal server error

503

Service unavailable

Repository manipulation

C

Verb

URL

Description

Mandatory parameters

Optional parameters

Response Data

Formats

Response codes

 •

PUT

/communities/{id}

Change description of id community

-id

name

Response code

json 
xml

200, 400, 401, 403, 500

 •

POST

/communities

Add community to the system

name

logo 
parent 
other metadata

Id of newly created community

json 
xml

200, 400, 401, 403, 500


DELETE

/communities/{id}

Delete community from the system

- id

-

Response code

json
xml

200, 400, 401, 403, 500


PUT

/collections/{id}

Change description of id collection

 id

 

Response code

json
xml

200, 400, 401, 403, 500


POST

/collections

Add collection to the system

name
communityId

 

Id of newly created collection

json
xml

200, 400, 401, 403, 500


DELETE

/collections/{id}

Delete collection from the system

-

-

Response code

json
xml

200, 400, 401, 403, 500

...

C

Verb

URL

Description

Mandatory parameters

Optional parameters

Sorting fields

Response Data

Formats

Response codes

 

GET

/items/{id}

Return detailed information about an item.

id

-

id
name
lastmodified
submitter

id - entity (item) identifier, internal to the system 
handle - handle of the item 
isArchived - archival status of the item 
isWithdrawn - withdrawal status of the item 
lastModified - timestamp of last modification 
metadata - item metadata 
name - item name 
submitter - submiter entity 
type - entity type (object type in the system, item in this case) 
bitstreams - bitstreams related to the item 
bundles - bundles related to the item
collections - collections related item appear in 
communities - communities related item appear in

json
xml

200, 204, 400, 500

 

GET

Contains an information about an item including resource name, metadata, owning collection, collections stored in, communities stored in, bundle ids, last modified date, archival/withdrawn status and submitter of an item.

json
xml

200, 204, 400, 500

 

GET

/items/{id}/permissions

Return status of user permissions on this item.

id

-

id
name
lastmodified
submitter

Boolean variable, stating can user edit the listed item.

json
xml

200, 400, 500

 

GET

/items/{id}/communities

Return communities this item is part of.

-

-

id
name
countitems

countitems - number of items under community 
handle - handle of the community (unique persistent resource identifier) 
id - entity identifier, internal to the system 
name - entity name 
type - entity type (object type in the system) 
collections - collections contained in the community, ordered by id 
ancestors - ancestors of the community, ordered by id 
children - subcommunities, ordered by id 
admins - group administrators, ordered by id 
metadata - community metadata
administrators - default group of administrators

json
xml

200, 400, 500

 

GET

/items/{id}/collections

Return collections this item is part of.

-

-

id
name
countitems

countitems - number of items under collection 
items - items present in the collection 
id - entity (collection) identifier, internal to the system 
handle - handle of the collection 
licence - collection licence 
name - collection name 
type - entity type (object type in the system, item in this case) 
communities - communities related collection appear in 

-

id
name
countitems

Communities listed.

json
xml

200, 400, 500

submiters - default group of submitters, if there is one
administrators - default group of administrators, if there is one
templateitem - template item for collection, if there is one

 

GET

/items/{id}/collections

Return collections this item is part of.

-

-

id
name
countitems

Collections listed.

json
xml

200, 400, 500

 

GET

/bitstream/{id}

Returns bitstream object - usually the library item file.

id

-

-

Returns bitstream object - usually the library item file.

id

-

-

id - id of bitstream
name - name of the bitstream
bundles - bundles the related bitstream appears in
checksum - checksum of bitstream
{{checksumAlgorithm - checksum algorithm used
description - bitstream description
formatDescription - format description of bitstream
handle - bitstream handle
mimeType - mime type of bitstream
sequenceId - sequence id 
size - bitstream size in bytes
source - bitstream source, local
storeNumber - store number
type - object type
userFormatDescription - description of user format Includes all information about referenced bitstream, including file name, licence, corresponding ittem etc. It is possible only to get information for particular bitstreams. When the request is made without parameters/references, the blank list is presented (there is no list of all bitstreams in the system available).

json
xml

200, 400, 401, 403, 404, 500

 

GET

/bitstream/{id}/receive

Returns checksum of bitstream .

id-

-

-

Checksum of Returns bitstream .

json binary xml

200, 400, 401, 403, 404, 500

...

Comment: In this case it is not clear how to treat recent part of endpoint. If we stick to semantic mapping, then it should look like /resource/id/mapping, but recent in this case obviously do not represent a mapping, but the property.
Comment #2: Semantic mapping presented in this case should be probably hardcoded for 1.x branch, but on abstraction level which enables easy replacement with some auto-discovery method prepared for 2.x and eventually backported to 1.x. This way we would be able to call something similar to /communities/id or communities/id/capabilities in order to get supported mappings (amongst other data).

...

Parameter

...

Description

...

returns only top level communities

...

Integration in the system


It is planned to consult two external subjects for cooperation and the assistance during integration process (LMS and national library internal automation process). More information coming soon - awaiting approval of other parties.

...