Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

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, with pagination support. See the documentation of the Intake schema, below.

Aron to verify pagination support in Intake service

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

  • pgSz for page size
  • pgNum for page size

Examples:

GET /cspace-services/intakes/ HTTP/1.1
GET /cspace-services/intakes/?pgSz=10 HTTP/1.1

Intake REST payload schemas

Intake instance schema

Create and Update should use the following schema.

Aron to verify that this simpler, single namespace attribute works for create and update, and to replace with more full declaration if it does not

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:intakes-common xmlns:ns2="http://services.collectionspace.org/intake">
    <entryNumber>EV2010.2</entryNumber>
    <depositor>Alfred L. Kroeber</depositor>
    ...
</ns2:intakes-common>

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

<?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">
  ...
  <uri>/intakes/f0cf4c50-8f8a-4df0-869a</uri>
  <csid>f0cf4c50-8f8a-4df0-869a</csid>
</ns2:intakes-common>
Intake schema

List (and variants) will return the following schema.

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<ns2:intakes-common-list xmlns:ns2="http://collectionspace.org/services/intake">
  <intake-list-item>
    <entryNumber>EV2010.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>
  • No labels