Page MenuHomePhabricator

Expose page description API in gateway
Closed, ResolvedPublic

Description

The description API will be implemented by page content service. We need to add PCS cluster as envoy upstream and add a route match for /page/[^/]/description$ routed to PCS.

All the regular envoy features should be applied - ratelimit, strip cookies, etc.
The path should be rewritten in a similar fashion to feed endpoints.

Event Timeline

On implementing the endpoints. We can't expose something that doesn't exist.

Change 630657 had a related patch set uploaded (by Ppchelko; owner: Ppchelko):
[operations/deployment-charts@master] Expose /page/descrtion API

https://gerrit.wikimedia.org/r/630657

Change 630657 merged by jenkins-bot:
[operations/deployment-charts@master] Expose /page/descrtion API

https://gerrit.wikimedia.org/r/630657

We didn't discuss this, but... if this is going to be mounted in the /core/v1 namespace, that means we're supporting it for backwards compatibility.

I'm OK with that. I'd be surprised if we made major changes here.

But in the future, let's mount new API endpoints in a temporary or development namespace, like /foo/v0, until we've shaken out any design issues with client teams.

@Pchelolo I can't make this work for mediawiki routes; it seems to work for language-specific projects like wikivoyage and wikibooks. I'll see if there are other projects that don't have it. I don't think they're important; I don't even know if there's a way to view those descriptions. But we should consciously choose not to use them.

These endpoints have been added to the API Gateway and Portal