File tree Expand file tree Collapse file tree 5 files changed +53
-0
lines changed Expand file tree Collapse file tree 5 files changed +53
-0
lines changed Original file line number Diff line number Diff line change @@ -135,6 +135,7 @@ public static string Create()
135135 public static class AuthenticationUrls
136136 {
137137 public static string CreateToken ( ) => "/v1/oauth/token" ;
138+ public static string RevokeToken ( ) => "/v1/oauth/revoke" ;
138139 }
139140 }
140141}
Original file line number Diff line number Diff line change @@ -18,5 +18,16 @@ Task<CreateTokenResponse> CreateTokenAsync(
1818 CreateTokenRequest createTokenRequest ,
1919 CancellationToken cancellationToken = default
2020 ) ;
21+
22+ /// <summary>
23+ /// Revokes an access token.
24+ /// </summary>
25+ /// <param name="revokeTokenRequest"></param>
26+ /// <param name="cancellationToken"></param>
27+ /// <returns></returns>
28+ Task < CreateTokenResponse > RevokeTokenAsync (
29+ RevokeTokenRequest revokeTokenRequest ,
30+ CancellationToken cancellationToken = default
31+ ) ;
2132 }
2233}
Original file line number Diff line number Diff line change 1+ using System . Threading ;
2+ using System . Threading . Tasks ;
3+
4+ namespace Notion . Client
5+ {
6+ public sealed partial class AuthenticationClient
7+ {
8+ public async Task < HttpStatusCode > RevokeTokenAsync (
9+ RevokeTokenRequest revokeTokenRequest ,
10+ CancellationToken cancellationToken = default )
11+ {
12+ var body = ( IRevokeTokenBodyParameters ) revokeTokenRequest ;
13+
14+ return ( await _client . PostAsync (
15+ ApiEndpoints . AuthenticationUrls . RevokeToken ( ) ,
16+ body ,
17+ cancellationToken : cancellationToken
18+ ) ) . StatusCode ;
19+ }
20+ }
21+ }
Original file line number Diff line number Diff line change 1+ using Newtonsoft . Json ;
2+
3+ namespace Notion . Client
4+ {
5+ public interface IRevokeTokenBodyParameters
6+ {
7+ /// <summary>
8+ /// The token to be revoked.
9+ /// </summary>
10+ [ JsonProperty ( "token" ) ]
11+ string Token { get ; set ; }
12+ }
13+ }
Original file line number Diff line number Diff line change 1+ namespace Notion . Client
2+ {
3+ public class RevokeTokenRequest : IRevokeTokenBodyParameters
4+ {
5+ public string Token { get ; set ; }
6+ }
7+ }
You can’t perform that action at this time.
0 commit comments