Skip to content

Latest commit

 

History

History
88 lines (68 loc) · 2.9 KB

metadataschemas.md

File metadata and controls

88 lines (68 loc) · 2.9 KB

Metadata Schemas Endpoints

Back to the list of all defined endpoints

Main Endpoint

/api/core/metadataschemas

Provide access to the metadata schemas defined in the registry (DBMS based). It returns the list of existent metadata schemas.

Example: https://demo.dspace.org/server/#/server/api/core/metadataschemas

Single Metadata Schema

/api/core/metadataschemas/<:id>

Provide detailed information about a specific metadata schema. The JSON response document is as follow

{
  "id": 1,
  "prefix": "dc",
  "namespace": "http://dublincore.org/documents/dcmi-terms/",
  "type": "metadataschema",
  "_links": {
    "self": {
      "href": "https://demo.dspace.org/server/api/core/metadataschemas/1"
    }
  }
}

Exposed links: none

Return codes:

  • 200 OK - if the operation succeed
  • 404 Not Found - if the metadata schema doesn't exist

Creating a Metadata Schema

POST /api/core/metadataschemas

To create a metadata schema, perform a post with the JSON below when logged in as admin.

{
  "prefix": "example",
  "namespace": "http://dublincore.org/documents/example/"
}

Return codes:

  • 201 Created - if the operation succeed
  • 400 Bad Request - if the body of the request can't be parsed (for example because of a missing field)
  • 401 Unauthorized - if you are not authenticated
  • 403 Forbidden - if you are not logged in with sufficient permissions
  • 422 Unprocessable Entity - if the request is well-formed, but is invalid based on the given data.
    • If you attempt to create a schema with an empty prefix or if it contains dots, commas or spaces or if it's longer than 32 characters.
    • If you attempt to create a schema with an empty namespace.

Updating a Metadata Schema

PUT /api/core/metadataschemas/<:id>

Provide updated information about a specific metadata schema, when the update is completed the updated object will be returned. The JSON to update can be found below.

{
  "id": 7,
  "prefix": "example",
  "namespace": "http://dublincore.org/documents/exampleUpdated/"
}

Return codes:

  • 200 OK - if the operation succeed
  • 400 Bad Request - if the body of the request can't be parsed (for example because of a missing field)
  • 401 Unauthorized - if you are not authenticated
  • 403 Forbidden - if you are not logged in with sufficient permissions
  • 422 Unprocessable Entity - if the request is well-formed, but is invalid based on the given data.
    • If you attempt to update the prefix.
    • If you attempt to update the namespace with an empty namespace.

Deleting a Metadata Schema

DELETE /api/core/metadataschemas/<:id>

Delete a metadata schema.

  • 204 No content - if the operation succeed
  • 401 Unauthorized - if you are not authenticated
  • 403 Forbidden - if you are not logged in with sufficient permissions
  • 404 Not found - if the metadata schema doesn't exist (or was already deleted)