Skip to content
This repository has been archived by the owner on Jul 25, 2018. It is now read-only.

REST API

Thomas Maier edited this page Dec 1, 2017 · 7 revisions

Introduction

The sw360REST API provides access to project resources for external clients.

Please note the state of the REST API is experimental and its may exposed by breaking changes.

Project structure

This project provides a REST API infrastructure for sw360, including

OAuth2 Authorisation Server (subproject authorization-server)

    This is for having an oauth2 provider authorization

    Might be replaced in the future

REST API Gateway (subproject resource-server)

    Currently in experimental phase to find out what the best mapping to the existing sw360 domain model would be

API Principles

The REST API provides Hypermedia using http://stateless.co/hal_specification.html[HAL] (Hypertext Application Language). The following examples show some ideas of the REST API. As mentioned above, this is NOT the final API, it is just a base for discussion.

API root (index): [source, json] { "_links" : { "sw360:attachments" : { "href" : "http://localhost:8080/api/attachments{?sha1}", "templated" : true }, "sw360:components" : { "href" : "http://localhost:8080/api/components" }, "sw360:projects" : { "href" : "http://localhost:8080/api/projects" }, "sw360:releases" : { "href" : "http://localhost:8080/api/releases" }, "sw360:users" : { "href" : "http://localhost:8080/api/users" }, "profile" : { "href" : "http://localhost:8080/api/profile" }, "curies" : [ { "href" : "http://localhost:8080/docs/html5/{rel}.html", "name" : "sw360", "templated" : true } ] } }

How to use it

text