amiv-eth / amivapi

The REST API behind most of AMIV's web services.
http://api.amiv.ethz.ch/docs
GNU Affero General Public License v3.0
30 stars 6 forks source link

Add short link for events #388

Open temparus opened 5 years ago

temparus commented 5 years ago

It was requested that the events are accessible by a human readable term usable in URLs instead of the very long event id.

Therefore we need some kind of slug which can be manually set by the event creators.

cburchert commented 5 years ago

This sounds like something that doesn't need the amivapi at all. amiv.ch is already forwarding to amiv.ethz.ch, so instead we could just have a simple shorturl service running an amiv.ch, that lets people make shorturls. When nothing exists after the /, then default to amiv.ethz.ch. I think it would be a great if anyone logged in could create shortlinks, as then people could also use it to make quick URLs to lectures and similar materials. If anyone abuses it we can make a user blacklist.

Just getting basic authentication is no problem with the amivapi OAuth and we can simply switch it to the VSETH OAuth later. I guess doing the blacklist manually (e.g. we just make it a file with a list of nethz names in some cloud thing that is regularly read) should be fine for now as it is unlikely many people are going to be blacklisted. As soon as we have VSETH OAuth we could theoretically use scopes to define admin permissions that allow editing the blacklist in a better way, but I don't think that will be necessary.

Am So., 7. Apr. 2019 um 11:22 Uhr schrieb Sandro Lutz < notifications@github.com>:

It was requested that the events are accessible by a human readable term usable in URLs instead of the very long event id.

Therefore we need some kind of slug which can be manually set by the event creators.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/amiv-eth/amivapi/issues/388, or mute the thread https://github.com/notifications/unsubscribe-auth/ACsKUmML7_v0TV1Mu2AjQJJqqtZBJ1T3ks5vebjwgaJpZM4cgpxh .

NotSpecial commented 5 years ago

Another service seems like a lot of effort for something that basically takes 5 lines in the api (add a unique shortlink field and add an additional lookup).

I was also considering a separate service before, but why create more work for ourselves then necessary?

temparus commented 5 years ago

You are right that we could just use an URL shortener on amiv.ch while still forwarding https://amiv.ch/ to https://amiv.ethz.ch/.

We could just use a URL shortener service with the domain amiv.ch. As I found out, they allow to configure forwardings as the one mentioned above.

This would create no additional effort to make it work. Most services also offer an API to configure short links. This would allow us to implement an additional tool which lets all members create short links by themselves.

hermannsblum commented 5 years ago

I think this is a much nicer, more „microservicy“ solution. Would actually be nice to have something like this running on the new VSETH infrastructure? It sounds like something any organization at VSETH would want.

NotSpecial commented 5 years ago

More serious: This seems indeed like something all organisations would be interested in.

hermannsblum commented 5 years ago

my github client seems to have some issues 😄