Cleaner API endpoints

pull/977/head
Andrew Morgan 5 years ago
parent f5b10c689f
commit 5193c319e7

@ -2,7 +2,7 @@
On the Client Server API there is currently a single endpoint for binding a On the Client Server API there is currently a single endpoint for binding a
threepid (an email or a phone number): [POST threepid (an email or a phone number): [POST
/_matrix/client/r0/account/3pid](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid). /account/3pid](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid).
Depending on whether the `bind` flag is `true` or `false`, the threepid will Depending on whether the `bind` flag is `true` or `false`, the threepid will
be bound to either a user's account on the homeserver, or both the homeserver be bound to either a user's account on the homeserver, or both the homeserver
and an identity server. and an identity server.
@ -13,7 +13,7 @@ also be bound to a user's account on the homeserver. This allows the
threepid to be used for message notifications, login, password reset, and threepid to be used for message notifications, login, password reset, and
other important functions. other important functions.
Typically, when using the `POST /_matrix/client/r0/account/3pid` endpoint, Typically, when using the `/account/3pid` endpoint,
the identity server handles the verification -- either by sending an email to the identity server handles the verification -- either by sending an email to
an email address, or a SMS message to a phone number. Once completed, the an email address, or a SMS message to a phone number. Once completed, the
homeserver will check with the identity server that verification had indeed homeserver will check with the identity server that verification had indeed
@ -68,9 +68,10 @@ the MSC is no longer relevant.
## Proposal ## Proposal
A new endpoint will be added to the Client Server API: `POST A new endpoint will be added to the Client Server API: `POST
/_matrix/client/r0/account/3pid/identity/bind`, and will require /account/3pid/identity/bind`, and will require authentication. The endpoint
authentication. The endpoint definition is the same as `POST definition is the same as [POST
/_matrix/client/r0/account/3pid`, minus the `bind` flag. /account/3pid](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid),
minus the `bind` flag.
An example of binding a threepid to **an identity server only** with this new endpoint is as follows: An example of binding a threepid to **an identity server only** with this new endpoint is as follows:
@ -150,13 +151,13 @@ The threepid will then be bound to the user's account.
The achieve the above flows, some changes need to be made to existing The achieve the above flows, some changes need to be made to existing
endpoints. This MSC requests that the `id_server` and `id_access_token` endpoints. This MSC requests that the `id_server` and `id_access_token`
parameters be removed from the Client-Server API's [POST parameters be removed from the Client-Server API's [POST
/_matrix/client/r0/account/3pid/email/requestToken](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid-email-requesttoken) /account/3pid/email/requestToken](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid-email-requesttoken)
and [POST and [POST
/_matrix/client/r0/account/3pid/msisdn/requestToken](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid-msisdn-requesttoken) /account/3pid/msisdn/requestToken](https://matrix.org/docs/spec/client_server/r0.5.0#post-matrix-client-r0-account-3pid-msisdn-requesttoken)
endpoints, as these endpoints are now only intended for the homeserver to endpoints, as these endpoints are now only intended for the homeserver to
send validation requests from. Additionally, the same parameters will be send validation requests from. Additionally, the same parameters will be
removed from the [POST removed from the [POST
/_matrix/client/r0/account/3pid](https://matrix.org/docs/spec/client_server/unstable#post-matrix-client-r0-account-3pid) endpoint's /account/3pid](https://matrix.org/docs/spec/client_server/unstable#post-matrix-client-r0-account-3pid) endpoint's
`three_pid_creds` parameter as an identity server is no longer required to `three_pid_creds` parameter as an identity server is no longer required to
perform verification. perform verification.

Loading…
Cancel
Save