Files
oak-gpui/crates
Marshall Bowers 66121fa0e8 collab: Add endpoint for managing a billing subscription (#15455)
This PR adds a new `POST /billing/subscriptions/manage` endpoint that
can be used to manage a billing subscription.

The endpoint accepts a `github_user_id` to identify the user, as well as
an optional `subscription_id` for managing a specific subscription. If
`subscription_id` is not provided, it try and use the active
subscription, if there is only one.

Right now the endpoint only supports cancelling an active subscription.
This is done by passing `"intent": "cancel"` in the request body.

The endpoint will return the URL to a Stripe customer portal session,
which the caller can redirect the user to.

Here's an example of how to call it:

```sh
curl -X POST "http://localhost:8080/billing/subscriptions/manage" \
     -H "Authorization: <ADMIN_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{"github_user_id": 12345, "intent": "cancel"}'
```

Release Notes:

- N/A
2024-07-29 20:05:17 -04:00
..
2024-05-29 18:06:45 -07:00
2024-07-23 15:01:05 -07:00
2024-07-26 03:31:41 -04:00
2024-07-26 16:42:21 -07:00
2024-07-23 15:01:05 -07:00
2024-04-30 23:31:59 -06:00
2024-07-23 15:01:05 -07:00
2024-07-28 11:07:10 +02:00
2024-03-11 10:45:57 +01:00
2024-07-15 17:04:15 -06:00
2024-07-28 11:07:10 +02:00
2024-07-25 09:00:53 -06:00
2024-07-26 17:40:38 -04:00
2024-07-26 16:42:21 -07:00
2024-06-21 16:32:32 -07:00
2024-07-26 03:31:41 -04:00
2024-04-15 14:21:52 +02:00
2024-07-26 16:45:44 -06:00
2024-07-29 09:22:25 -06:00