The Restful API to SEAD's Curation and Publication Services is focused on management (basic CRUD: Create, Read, Update, Delete) of repository, people, and research object publication entries.Matchmaking, which essentially requires create a 'test' research object publication request, is handles through additional endpoints for the Research Object service.

 

Repositories:

Repositories working with SEAD should POST a profile to the /cp/repositories endpoint. The profile is a json-ld object containing descriptive terms about the repository (primarily from the re3data vocabulary) along with any additional descriptive terms repositories wish to add (i.e. other vocabularies). To particulate in matchmaking, profiles must also contain terms that trigger rules (this list is available at /cp/researchobjects/matchingrepositories/rules and is discussed further below). Repositories are also expected to identify preference terms they will respond to (and that users will see in the staging area). The format for such preferences is not yet defined.

Repositories are required to include an "orgidentifier" value in their profile object. This should be a short term that is unique (e.g. sda, ideals, icpsr) - it will be used to list existing repositoriy profiles at /cp/repositories. Individual profiles can be read by going to /cp/repositories/<orgidentifier>, e.g. /cp/repositories/sda.

Profiles may be updated by doing a PUT with a new profile to /cp/repositories/<orgidentifier>, and can be deleted by doing a DELETE to the same URL.

People:

Personal profiles are available through the /cp/people endpoint. Navigating to this endpoint lists the current set of profiles being managed. New profiles can be added by sending a POST to /cp/people with a json object indicating the provider and identifier for the person at that provider. Currently only ORCID profiles are supported, so POSTs would contain "{"provider": ORCID", "identifier":"<numeric ORCID_ID> }" where "0000-0003-2164-8132" is one such identifier. Individual profiles can be retrieved from /cp/people/<id>, e.g.  /cp/people/0000-0003-2164-8132. An empty PUT to a specific profile endpoint will cause a refresh (the profile will be retrieved from ORCID again), and DELETE will remove the profile.

  Since people profiles are primarily for automated use during publication and matchmaking, it is expected that Project Spaces will automatically request profile harvesting for, for example, people who are creators of research objects, and, eventually, for all people who register with SEAD. The format of what is saved is expected to change as other providers are added.

Research Objects: