@@ -234,6 +234,70 @@ paths:
234
234
- id_server_unbind_result
235
235
tags :
236
236
- User data
237
+ " /account/3pid/unbind " :
238
+ post :
239
+ summary : Removes a user's third party identifier from an identity server.
240
+ description : |-
241
+ Removes a user's third party identifier from the provided identity server.
242
+ This should not cause an unbind from the homeserver (as ``/3pid/delete``
243
+ would) and should only affect the identity server.
244
+
245
+ Unlike other endpoints, this endpoint does not take an ``id_access_token``
246
+ parameter because the homeserver is expected to sign the request to the
247
+ identity server instead.
248
+ operationId : unbind3pidFromAccount
249
+ security :
250
+ - accessToken : []
251
+ parameters :
252
+ - in : body
253
+ name : body
254
+ schema :
255
+ type : object
256
+ properties :
257
+ id_server :
258
+ type : string
259
+ description : |-
260
+ The identity server to unbind from. If not provided, the homeserver
261
+ MUST use the ``id_server`` the identifier was added through. If the
262
+ homeserver does not know the original ``id_server``, it MUST return
263
+ a ``id_server_unbind_result`` of ``no-support``.
264
+ example : " example.org"
265
+ medium :
266
+ type : string
267
+ description : The medium of the third party identifier being removed.
268
+ enum : ["email", "msisdn"]
269
+ example : " email"
270
+ address :
271
+ type : string
272
+ description : The third party address being removed.
273
+ example : " example@example.org"
274
+ required : ['medium', 'address']
275
+ responses :
276
+ 200 :
277
+ description : |-
278
+ The identity server has disassociated the third party identifier from the
279
+ user.
280
+ schema :
281
+ type : object
282
+ properties :
283
+ id_server_unbind_result :
284
+ type : string
285
+ enum :
286
+ # XXX: I don't know why, but the order matters here so that "no-support"
287
+ # doesn't become "no- support" by the renderer.
288
+ - " no-support"
289
+ - " success"
290
+ description : |-
291
+ An indicator as to whether or not the identity server was able to unbind
292
+ the 3PID. ``success`` indicates that the identity server has unbound the
293
+ identifier whereas ``no-support`` indicates that the identity server
294
+ refuses to support the request or the homeserver was not able to determine
295
+ an identity server to unbind from.
296
+ example : " success"
297
+ required :
298
+ - id_server_unbind_result
299
+ tags :
300
+ - User data
237
301
" /account/3pid/email/requestToken " :
238
302
post :
239
303
summary : Begins the validation process for an email address for association with the user's account.
0 commit comments