A lógica do uso da API REST do DSpace

Este é um post para explicar um pouco da lógica do DSpace REST API. A grande maioria das APIs REST permite com as operações básica CRUD (acrónimo de Create (Criar), Read (Ler), Update (Atualizar) e Delete (Excluir)).
É possível desenvolver uma nova interface totalmente utilizando a API REST. É possível também sincronizar qualquer fonte externa ao DSpace. Vou explicar um pouco do que é necessário. Para testar o REST, sugiro o uso do Postman. Não irei colocar os códigos aqui, porque cada linguagem tem sua especificidade, mas o principio é o mesmo:

LOGIN:

A primeira operação no REST é o Login. Para o login, é necessário enviar os dados de login e senha. Importante lembrar que este login tem que ter permissões para submeter nas coleções. A resposta do POST /login é:

HTTP/1.1 200 OK
Set-Cookie: JSESSIONID=6B98CF8648BCE57DCD99689FE77CB1B8; Path=/rest/; Secure; HttpOnly

É necessário pegar esse Cookie para as outras operações.

CRIAR REGISTRO:

Para criar um item, é necessário utilizar o comando (POST /collections/{collectionId}/items) com o cookie do login. Importante: o colletionID é uma hash criada pelo DSpace, por exemplo: 6b9f840e-7bfe-4511-a4f5-2e181990679e
E enviar por POST um registro como por exemplo:

{"type":"item";
"metadata":[
{
"key": "dc.contributor.author",
"value": "LAST, FIRST"
},
{
"key": "dc.description",
"language": "pt_BR",
"value": "DESCRICAO"
},
{
"key": "dc.description.abstract",
"language": "pt_BR",
"value": "ABSTRACT"
},
{
"key": "dc.title",
"language": "pt_BR",
"value": "TITULO"
}
]}

O programa tem que conseguir consultar a fonte de dados e gerar esse formato, mapeado com o dublin core do DSpace.
Importante: É necessário que todos os metadados enviados estejam cadastrados no registro de metadados do DSpace.

É possível usar os outros comandos para Atualizar, Deletar, adicionar Bitstreams, etc…

LOGOUT:

Depois de executar as operações, é importante finalizar a sessão.

A grande maioria dos softwares atuais disponibiliza uma API REST, por exemplo o Omeka ou Koha. Temos que usá-los a nosso favor.

Um pensamento em “A lógica do uso da API REST do DSpace”

Deixe uma resposta