Nexus Profile
profile: <https://level3.rest/profiles/nexus>
A Nexus resource is a central “meeting point” for related resources. It is often identified by a shared business identifier, like invoice number or a book’s ISBN. A Nexus resource may have state information, but it is read-only and should reflect an overall business state. For instance, an order resource can have the states open
or closed
.
Clients discover related states via the links attached to the Nexus. The order resource’s shipping details, payment info and other order-related states are related to the Nexus resource but are linked, not embedded, in the Nexus resource. These resources offer affordances to manipulate the state of the order.
A Nexus resource offers the DELETE
operation which removes the Nexus resource instance from the system. Related resources remove their states as a result of a successful delete.
Discovery
The Nexus profile presents the required profile
and allow
headers. If the resources offers state data, it must include the content-type
header indicating the mime type of the representation.
Fetch Nexus
A client can fetch the Nexus’ state with a GET
request. The state information is in the body.
Remove Nexus
Nexus resources, as central points of business context, might be removable from the underlying system. Removing a Nexus may have follow-on effects on related resources such that they are also removed or orphaned by the removal of their linked Nexus resource.
Clients remove a nexus by sending a DELETE
request.
Specifications
HTTP/1.1 Semantics and Content: RFC 7231
- 200 OK: section 6.3.1
- 204 No Content: section 6.3.5
© 2019-2023 Matt Bishop
This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License.