Intake Service RESTful APIs - Release v0.5
Brief Description
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 /wiki/spaces/collectionspace/pages/666274321 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 /wiki/spaces/collectionspace/pages/666274321. 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 /wiki/spaces/collectionspace/pages/666274321. 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 /wiki/spaces/collectionspace/pages/666274321. 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>