Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Div
stylefont-weight:bold;font-size:1.2em;
CollectionObject Service Home

Brief Description

Insert excerpt
SDRcollectionspace:CollectionObject Service Description and AssumptionsSDR
collectionspace:CollectionObject Service Description and Assumptions
namebrief-description
nopaneltrue
For a full description, visit the Service Description and Assumptions page.

Assumptions

For a complete list of assumptions, visit the Service Description and Assumptions page.

References

Object Entry Cataloging Requirements
CollectionObject Story Summary
CollectionObject Entry Stories
CollectionObject Service Description and Assumptions
CollectionObject Service Entity Diagrams
CollectionObject Schema REST-based APIs - A Template for Services

REST-based API

The CollectionObject Service offers a REST-based Application Programming Interface (API) to CRUD (create, read, update, and delete) operations on individual CollectionObject instances, plus list operations on multiple CollectionObject instances. These follow the Common model for CollectionSpace REST services.

CollectionObject CRUD+L services

Create

...

a CollectionObject

Creates a new CollectionObject record. Assigns a unique, service-specified CollectionSpace ID (CSID) /wiki/spaces/collectionspace/pages/666274321 to that CollectionObject record. Follows standard Create model. See the documentation of the CollectionObject schema, below. Example:

Code Block
POST /cspace-services/collectionobjects HTTP/1.1
Read

...

a CollectionObject

Reads an existing CollectionObject record, specified by its CollectionSpace ID (CSID) /wiki/spaces/collectionspace/pages/666274321. Follows standard Read model. See the documentation of the CollectionObject schema, below. Example:

Code Block
GET /cspace-services/collectionobjects/{id} HTTP/1.1
Update

...

a CollectionObject

Updates an existing CollectionObject record, specified by its CollectionSpace ID (CSID) /wiki/spaces/collectionspace/pages/666274321. Follows standard Update model. See the documentation of the CollectionObject schema, below. Example:

Code Block
PUT /cspace-services/collectionobjects/{id} HTTP/1.1
Delete

...

a CollectionObject

Deletes an existing CollectionObject record, specified by its CollectionSpace ID (CSID) /wiki/spaces/collectionspace/pages/666274321. Follows standard Delete model. Example:

Code Block
DELETE /cspace-services/collectionobjects/{id} HTTP/1.1
List CollectionObject instances

Lists existing CollectionObject records, with summary information for each. Follows standard List model, with pagination support. See the documentation of the CollectionObject list schema, below.

Note

Aron to verify pagination support in CollectionObject service

CollectionObject supports the following common parameters for List results, pagination controls and query filters:

  • pgSz for page size
  • pgNum for page size

ExamplesExample:

Code Block
GET /cspace-services/collectionobjects/ HTTP/1.1
GET /cspace-services/collectionobjects/?pgSz=10 HTTP/1.1
Note

The CollectionObject service does not currently support pagination of list results; restore relevant wording from version 5 of this document when that support is added.

CollectionObject REST payload schemas

CollectionObject instance schema
Info

The schemas below are severely abbreviated, and are thus illustrative. For a full list of the fields that may potentially be present in payloads when creating, updating, or reading individual CollectionObject records, please see the CollectionObject record schema for release 0.5.

Create and Update should use the following schema.

...

:

Code Block
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:collectionobjects-common xmlns:ns2="http://services.collectionspace.org/collectionobject">
    <entryNumber>EV2010<objectNumber>2010.5.2</entryNumber>
18</objectNumber>
    <objectName>Laguna Tide Pool</objectName>
   <depositor>Alfred L.<title>Impressionist Kroeber<Painting</depositor>title>
    ...
</ns2:collectionobjects-common>

Read will return the above, plus additional fields (uri and csid) for accessfollowing schema:

Code Block
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:collectionobjects_common xmlns:ns2="http://collectionspace.org/services/collectionobject" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://collectionspace.org/services/collectionobject http://services.collectionspace.org/collectionobject/collectionobjects_common.xsd">
    <objectNumber>2010...
  <uri>/collectionobjects/f0cf4c50-8f8a-4df0-869a</uri>
  <csid>f0cf4c50-8f8a-4df0-869a</csid>5.18</objectNumber>
    <objectName>Laguna Tide Pool</objectName>
    <title>Impressionist Painting</title>
    ...
</ns2:collectionobjects-common>
CollectionObject list schema

List (and variants) will return the following schema. This schema includes the uri and csid fields to help facilitate access to individual records:

Code Block
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:collectionobjects-common-list xmlns:ns2="http://collectionspace.org/services/collectionobject">
  <collectionobject-list-item>
    <entryNumber>EV2010<objectNumber>2010.5.2<18</entryNumber>objectNumber>
    <title>Painting of <depositor>Alfreda L.Tide Kroeber<Pool</depositor>title>
    <uri>/collectionobjects/b59d0c6ff0cf4c50-08f28f8a-4fb54df0-b5f7<869a</uri>
    <csid>b59d0c6f<csid>f0cf4c50-08f28f8a-4fb54df0-b5f7<869a</csid>
  </collectionobject-list-item>
  ....
</ns2:collectionobjects-common-list>