Skip to content

Latest commit

 

History

History
334 lines (266 loc) · 4.25 KB

rest-api.adoc

File metadata and controls

334 lines (266 loc) · 4.25 KB

REST API

Overview

The REST API that is built at runtime.

Get configured schemas

Namespace schemas

Set of schema URIs

Get all configured schemas.

GET

/ns?schema

Request Body

N/A

Response codes

200

Returns a set of configured json schemas

404

Resource not found

Array of Embedded JSON Schema

Get all configured schemas.

GET

/ns?schema=embed

Request Body

N/A

Response codes

200

Returns an array of configured json schemas

404

Resource not found

Managed resource schema

Specific schema for a resource

Get a specific schema for a managed resource.

GET

/ns/ManagedResource?schema

Request Body

N/A

Response codes

200

Returns a schema for a managed resource

404

Resource not found

Managed resource

A Managed resources is a top level resource that referrs to the JSON document in which MUST conform to its JSON Schema.

Read

Read a managed resource.

GET

/ns/ManagedResource/[id]

Request Body

N/A

Response codes

200

Resource found

404

Resource not found

Write

Create or Overwrite a managed resource.

PUT

/ns/ManagedResource/[id]

Request Body

{
  "name": "John Doe"
}

Response codes

201

Resource Created

200

Resource Overwritten

400

Bad request

404

Resource not found

Delete

Delete a managed resource.

DELETE

/ns/ManagedResource/[id]

Request Body

N/A

Response codes

200

Resource deleted

400

Something went wrong

404

Resource not found

Embedded resource

An embedded resource points to data within a managed resource.

Read

Read a embedded resource.

GET

/ns/ManagedResource/[id]/EmbeddedProperty[/NestedPropery

Request Body

N/A

Response codes

200

Resource found

404

Resource not found

Write

Create or Overwrite an embedded resource.

PUT

/ns/ManagedResource/[id]/EmbeddedProperty (1)
/ns/ManagedResource/[id]/EmbeddedProperty[/NestedPropery] (2)

Request Body

"EmbeddedProperty": { // (1)
    "NestedPropery": "value"
}
value // (2)

Response codes

201

Resource Created

200

Resource Overwritten

400

Bad request

404

Resource not found

Delete

Delete a embedded resource.

DELETE

/ns/ManagedResource/[id]/EmbeddedProperty

Request Body

N/A

Response codes

200

Resource deleted

400

Something went wrong

404

Resource not found

Linked resource

A linked resource maintains a list of uri to other managed resources.

Read

Read links in a linked resource.

GET

/ns/ManagedResource/[id]/LinkedResource

Request Body

N/A

Response codes

200

Resource found

404

Resource not found

Write

Create a linked resource that points a managed resource.

ℹ️

If the resource that is being linked to does NOT exist, the link will be created. However, it will return 404 not found if you try to retrive the link.

PUT

/ns/ManagedResource/[id]/LinkedResource/ManagedResource/[id]

Request Body

N/A

Response codes

201

Resource Created

200

Resource Overwritten

404

Resource not found

Delete

Delete a linked resource.

DELETE

/ns/ManagedResource/[id]/LinkedResource/ManagedResource/[id]

Request Body

N/A

Response codes

200

Resource deleted

404

Resource not found