Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Down with a RPC-like workspace API! #39

Open
cake-lier opened this issue Feb 28, 2024 · 0 comments
Open

Down with a RPC-like workspace API! #39

cake-lier opened this issue Feb 28, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@cake-lier
Copy link
Collaborator

cake-lier commented Feb 28, 2024

Context

As the documentation goes, joining and leaving a workspace create and delete, respectively, an artifact in the said workspace, which represents the body of the agent that did that particular action. Moreover, following this idea, the endpoint for joining a workspace returns the body RDF representation in Turtle format.

Proposed change

These two operations should be offered by two endpoints referring to the agent's body resource: the joining would be done by a POST request on the resource (or on the collection of resources) and the leaving by a DELETE request on the resource.

Pros

  • The current implementation contains an endpoint for getting the body representation and one for updating it, but no endpoint for creating or deleting it. This change would bring more symmetry to the API (reflecting better the principle of least astonishment), also considering how the artifact and the rest of the workspace API are structured.
  • Moreover, this would reflect a more resource-oriented and less RPC-like API, which is always good.
  • Allows for issue Format for Web IDs is too restrictive #40 to be implemented smoothly.

Cons

  • None at the time of writing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants