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

Create spec for service API v2 #4

Closed
emanueldima opened this issue Aug 14, 2019 · 3 comments
Closed

Create spec for service API v2 #4

emanueldima opened this issue Aug 14, 2019 · 3 comments

Comments

@emanueldima
Copy link
Collaborator

emanueldima commented Aug 14, 2019

Currently planned are multiple inputs and for each input a more detailed description:

  • original link or PID,
  • link to switchboard copy of the data (to bypass cors issues),
  • mediatype?, language?, etc.

A general reorganization of the tasks/endopoints is needed: A tool should have multiple tasks with possibly different endpoints and parameters. For example Weblicht should be described by a single file with multiple entries for tasks and parameters, not by multiple files, each one for one task.

Other questions/requirements:

  • Should we use POST instead of GET? GET allows us to preserve the query after Shibboleth logins, we don't know if POSTs will behave the same.
  • Accepting any language should be more explicit (currently we accept "generic" like a language identifier, see What should the absence of language specification for a tool mean? #48)
  • We can provide 2 or 3 options for sending data to services, and allow the service configuration to specify their ideal method (e.g. GET with link, POST with link, POST with full data).
@dietervu
Copy link
Contributor

FTR (requires further investigation): POST might cause issues with shibbolized services, while URL-encoded GET parameters should be passed through transparently.

@proycon
Copy link

proycon commented Dec 18, 2019

I assume this issue entails a redesign/extension of the registry format. You may want to look into the related work done in CLAM and also in the OpenAPI Initiative (formerly known as swagger), both are a lot more expressive than the current switchboard registry and support things like multiple inputs (and full parametrisation, but you may not want to go that far for the switchboard).

For generic tool metadata, I'd also recommend taking a look at codemeta, which maps various metadata schemes to a common vocabulary.

@emanueldima
Copy link
Collaborator Author

done now, documented in clarin-eric/switchboard-doc#15

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants