Brief Description
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 Requirements]
[Intake Stories]
Intake Service Description and Assumptions
Intake Service Entity Diagrams
[Intake Schema]
REST-based API
The Intake Service offers a REST-based Application Programming Interface (API) to CRUD (create, read, update, and delete) operations on individual Intake instances, plus list operations on multiple Intake instances. These follow the [Common model for CollectionSpace REST services].
Intake CRUD+L services
Create an Intake
Creates a new Intake record. Assigns a unique, service-specified [CollectionSpace ID (CSID)] to that Intake record. Follows standard [Create] model. See the documentation of the Intake schema, below. Example:
POST /cspace-services/intakes HTTP/1.1
Read an Intake
Reads an existing Intake record, specified by its [CollectionSpace ID (CSID)]. Follows standard [Read] model. See the documentation of the Intake schema, below. Example:
GET /cspace-services/intakes/{id} HTTP/1.1
Update an Intake
Updates an existing Intake record, specified by its [CollectionSpace ID (CSID)]. Follows standard [Update] model. See the documentation of the Intake schema, below. Example:
PUT /cspace-services/intakes/{id} HTTP/1.1
Delete an Intake
Deletes an existing Intake record, specified by its [CollectionSpace ID (CSID)]. Follows standard [Delete] model. Example:
DELETE /cspace-services/intakes/{id} HTTP/1.1
List Intake instances
Lists existing Intake records, with summary information for each. Follows standard [List] model. See the documentation of the Intake list schema, below. Example:
GET /cspace-services/intakes HTTP/1.1
List supports query parameters for customizing list results, such as [pagination controls, query filters, and sorting options]. For example:
GET /cspace-services/intakes?pgSz=10 HTTP/1.1
List also supports query parameters for [searching for matching records], including keyword search. For example:
GET /cspace-services/intakes?kw=foo&pgSz=10 HTTP/1.1
Intake REST payload schemas
Intake instance schema
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 Intake records, please see the Intake record schema for release 0.5.
Create and Update should use the following schema:
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <ns2:intakes_common xmlns:ns2="http://collectionspace.org/services/intake" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://collectionspace.org/services/intake http://services.collectionspace.org/intake/intakes_common.xsd"> <entryNumber>IN2010.2</entryNumber> <depositor>urn:cspace:org.collectionspace.demo:personauthority:name(TestPersonAuth):person:name(Alfred L. Kroeber)'Alfred L. Kroeber'</depositor> ... </ns2:intakes_common>
Read will return the following schema:
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <ns2:intakes_common xmlns:ns2="http://collectionspace.org/services/intake" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://collectionspace.org/services/intake http://services.collectionspace.org/intake/intakes_common.xsd"> <entryNumber>IN2010.2</entryNumber> <depositor>urn:cspace:org.collectionspace.demo:personauthority:name(TestPersonAuth):person:name(Alfred L. Kroeber)'Alfred L. Kroeber'</depositor> ... </ns2:intakes_common>
Intake schema
List (and variants) will return the following schema. This schema includes the uri and csid fields to help facilitate access to individual records:
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <ns2:intakes-common-list xmlns:ns2="http://collectionspace.org/services/intake"> <intake-list-item> <entryNumber>IN2010.2</entryNumber> <depositor>Alfred L. Kroeber</depositor> <uri>/intakes/b59d0c6f-08f2-4fb5-b5f7</uri> <csid>b59d0c6f-08f2-4fb5-b5f7</csid> </intake-list-item> .... </ns2:intakes-common-list>