Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
CSS Stylesheet
h3 { background-color: #eee; padding: 0.6em; }
#content .code { margin-left: 2.5em!important; background-color: #fafafa!important; }
.pdl .syntaxhighlighter table td.code .container, .syntaxhighlighter .line.alt2, .syntaxhighlighter .line.alt1 { background-color: #fafafa!important; }

 

Table of Contents

Overview

 

Introduction

The Fedora 4 HTTP API is generally a RESTful API. HTTP methods like GET, PUT, POST and DELETE are implemented on most resource paths. The API also relies heavily on content negotiation to deliver context-appropriate responses, and a HATEOAS-driven text/html response (providing a decent GUI experience on top of the repository).

...

[...] describes the use of HTTP for accessing, updating, creating and deleting resources from servers that expose their resources as Linked Data.  It provides clarifications and extensions of the rules of Linked Data [LINKED-DATA]:

  1. Use URIs as names for things
  2. Use HTTP URIs so that people can look up those names
  3. When someone looks up a URI, provide useful information, using the standards (RDF*, SPARQL)
  4. Include links to other URIs, so that they can discover more things

 

Changes planned

Asynchronous API support

Versioning

CND node types

Changelog

 

Endpoints

 

Resources

Repository objects can be loosely divided into two classes of resources:

 - Object and containers ("fedora:object"), containing RDF properties and 0 or more child nodes
 - Binaries, containing any binary payload

 

Objects

Request URI: /path/to/some/resource

...

Status
subtletrue
colourRed
title502
 Destination URI isn't a valid resource path

Binary Content

Request URI: /path/to/some/resource/fcr:content

...

Status
subtletrue
colourRed
title412
 Precondition Failed

 

Batch Operations

Request URI: /path/to/some/resource/fcr:datastreams

...

Status
subtletrue
colourGreen
title204
 No Content

Export / Import

Request URI: /path/to/some/resource

...

Status
subtletrue
colourRed
title404
 Path not found

Versioning

Request URI: /path/to/some/resource/fcr:versions

...

Status
colourBlue
titlePOST
Tag a new version of the object with a labeled version

Services

Backup and Restore

Request URI: /

Methods: GET, POST

...

Status
subtletrue
colourGreen
title204
 

Identifiers 

Request URI: /path/to/some/resource/fcr:identifier

...

Status
subtletrue
colourGreen
title200
  OK

Transactions

Request URI: /fcr:tx; /path/to/transaction/fcr:tx

...

Status
subtletrue
colourGreen
title204
 No Content

Fixity

Request URI: /path/to/some/resource/fcr:fixity

...

Status
subtletrue
colourRed
title404
 Resource not found

Workspaces

Request URI: /fcr:workspaces/(workspace name)

...

Status
subtletrue
colourGreen
title204
 No Content

Content Modeling

Request URI: /fcr:nodetypes

Methods: GET, POST

Node types

Status
titleGET
  get a list of registered types (as RDFS triples)

...

Status
subtletrue
colourGreen
title204
 No Content

Namespaces

Request URI: /fcr:namespaces

...

Status
subtletrue
colourGreen
title204
 

Sitemaps

Request URI: /sitemap

Methods: GET, POST

...

Status
subtletrue
colourGreen
title200
 OK

Full text

Request URI: /fcr:search

Methods: GET

...

Status
subtletrue
colourRed
title400
 Bad Request

SPARQL

Request URI: /fcr:sparql

Methods: GET

...