From 5f0ace329550dd2f1aad3317fd321dbb90290a98 Mon Sep 17 00:00:00 2001
From: Sajith Subramanian
<31767159+sajith-subramanian@users.noreply.github.com>
Date: Mon, 6 May 2024 17:43:27 +0530
Subject: [PATCH 1/2] [DAS 214] - Update Auth SDK with Documentation changes
---
authentication/source/Http/TokenApi.gen.cs | 379 +++++++++++++++---
authentication/source/Http/UsersApi.gen.cs | 14 +-
authentication/source/Model/GrantType.cs | 35 +-
.../source/Model/IntrospectToken.gen.cs | 41 +-
authentication/source/Model/Jwks.gen.cs | 9 +-
authentication/source/Model/JwksKey.cs | 35 +-
authentication/source/Model/OidcSpec.gen.cs | 69 +++-
.../source/Model/RefreshToken.gen.cs | 8 +-
authentication/source/Model/ResponseType.cs | 11 +-
authentication/source/Model/Scopes.gen.cs | 10 +-
.../source/Model/ThreeLeggedToken.gen.cs | 12 +-
authentication/source/Model/TokenTypeHint.cs | 14 +-
.../source/Model/TwoLeggedToken.gen.cs | 8 +-
authentication/source/Model/UserInfo.gen.cs | 243 ++++++++++-
.../source/Model/UserInfoAddress.gen.cs | 103 +++++
...n.cs => UserInfoSocialUserinfoList.gen.cs} | 35 +-
.../custom-code/AuthenticationClient.cs | 283 ++++++++++---
17 files changed, 1095 insertions(+), 214 deletions(-)
create mode 100644 authentication/source/Model/UserInfoAddress.gen.cs
rename authentication/source/Model/{Error.gen.cs => UserInfoSocialUserinfoList.gen.cs} (61%)
diff --git a/authentication/source/Http/TokenApi.gen.cs b/authentication/source/Http/TokenApi.gen.cs
index ea721be..bcb7fa1 100644
--- a/authentication/source/Http/TokenApi.gen.cs
+++ b/authentication/source/Http/TokenApi.gen.cs
@@ -1,7 +1,7 @@
/*
* APS SDK
*
- * The Forge Platform contains an expanding collection of web service components that can be used with Autodesk cloud-based products or your own technologies. Take advantage of Autodesk’s expertise in design and engineering.
+ * The APS Platform contains an expanding collection of web service components that can be used with Autodesk cloud-based products or your own technologies. Take advantage of Autodesk’s expertise in design and engineering.
*
* Authentication
*
@@ -40,79 +40,211 @@ namespace Autodesk.Authentication.Http
public interface ITokenApi
{
///
- /// authorize
+ /// Authorize User
///
///
- /// To obtain an authorization code grant or id_token grant. We rate limit this endpoint. When rate limit reached, then Apigee will throw HTTP 429 Too Many Requests error. See Forge docs on the rate limit: [Forge rate limit](https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/rate-limiting/forge-rate-limits/) Errors came from OKTA/PF directly.Please refer forge v2 api document for more details <Link>
+ ///Returns a browser URL to redirect an end user in order to acquire the user’s consent to authorize the application to access resources on their behalf.
+ ///
+ ///Invoking this operation is the first step in authenticating users and retrieving an authorization code grant. The authorization code that is generated remains valid for 5 minutes, while the ID token stays valid for 60 minutes. Any access tokens you obtain are valid for 60 minutes, and refresh tokens remain valid for 15 days.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
+ ///
+ ///**Note:** This operation is intended for use with client-side applications only. It is not suitable for server-side applications.
///
/// Thrown when fails to make API call
- /// Client ID./// Must be `code` for authorization code grant, `id_token` for an OpenID Connect ID token./// URL-encoded callback URL./// The payload that authorization flow will pass back verbatim in state query parameter to the callback URL. It can contain alphanumeric, comma, period, underscore, and hyphen characters./// A string value used to associate a Client session with an ID Token, and to mitigate replay attacks. Required if `response_type` is `id_token` or `token` (optional)/// URL-encoded, a space-delimited list of scopes. Supported values: 1. device_sso 2. All scopes mentioned in [Forge Developers Guide](https://forge.autodesk.com/en/docs/oauth/v3/developers_guide/scopes/) (optional)/// The mode of response for the supplied `response_type`. Supported values are `fragment`, `form_post` or `query`. `query` is not supported if the `response_type` is `token`. (optional)/// Values supported: `login` and `none`. `login`: Always prompt the user for authentication, regardless of the login session. `prompt`: Do not prompt user for authentication. If user is not logged in, the calling application receives an error. (optional)/// A Json object carries information to Identity. (optional)/// A challenge for PKCE. The challenge is verified in the access token request. (optional)/// Method used to derive the code challenge for PKCE. Must be S256 if `code_challenge` is present. (optional)
-
- /// Task of HttpResponseMessage
- string Authorize(string clientId, string responseType, string redirectUri, string state = default(string), string nonce = default(string), string scope = null, string responseMode = default(string), string prompt = default(string), string authoptions = default(string), string codeChallenge = default(string), string codeChallengeMethod = default(string), /*string accessToken = null,*/ bool throwOnError = true);
+ ///
+ ///The Client ID of the calling application, as registered with APS.
+ ///
+ ///
+ ///The type of response you want to receive. Possible values are:
+ ///
+ ///- `code` - Authorization code grant.
+ ///- `id_token` - OpenID Connect ID token.
+ ///
+ ///
+ ///The URI that APS redirects users to after they grant or deny access permission to the application. Must match the Callback URL for the application as registered with APS.
+ ///
+ ///Must be specified as a URL-safe string. It can include query parameters or any other valid URL construct.
+ ///
+ ///
+ ///A random string that is sent with the request. APS passes back the same string to you so that you can verify whether you received the same string that you sent. This check mitigates token replay attacks (optional)
+ ///
+ ///
+ ///A URL-encoded random string. The authorization flow will pass the same string back to the Callback URL using the `state` query string parameter. This process helps ensure that the callback you receive is a response to what you originally requested. It prevents malicious actors from forging requests.
+ ///
+ ///The string can only contain alphanumeric characters, commas, periods, underscores, and hyphens. (optional)
+ ///
+ ///
+ ///A URL-encoded space-delimited list of requested scopes. See the [Developer's Guide documentation on scopes](/en/docs/oauth/v2/developers_guide/scopes/) for a list of valid values you can provide.
+ ///
+ ///The string you specify for this parameter must not exceed 2000 characters and it cannot contain more than 50 scopes. (optional)
+ ///
+ ///
+ ///Specifies how the authorization response should be returned. Valid values are:
+ ///
+ ///- `fragment` - Encode the response parameters in the fragment of the redirect URI. A fragment in a URI is the optional part of the URI that appears after a `#` symbol, which refers to a specific section within a resource. For example, `section` in `https://www.mysite.org/myresource#section`.
+ ///- `form_post` - Embed the authorization response parameter in an HTML form.
+ ///- `query` - Embed the authorization response as a query string parameter of the redirect URI.
+ ///
+ ///If `id_token` is stated as `response_type`, only `form_post` is allowed as `response_mode`.' (optional)
+ ///
+ ///
+ ///Specifies how to prompt users for authentication. Possible values are:
+ ///
+ ///- `login` : Always prompt the user for authentication, regardless of the state of the login session.
+ ///
+ ///**Note:** If you do not specify this parameter, the system will not prompt the user for authentication as long as a login session is active. If a login session is not active, the system will prompt the user for authentication. (optional)
+ ///
+ ///
+ ///A JSON object containing options that specify how to display the sign-in page. Refer the [Developer's Guide documentation on AuthOptions](/en/docs/oauth/v2/developers_guide/authoptions/) for supported values. (optional)
+ ///
+ ///
+ ///A URL-encoded string derived from the code verifier sent in the authorization request with the Proof Key for Code Exchange (PKCE) grant flow. (optional)
+ ///
+ ///
+ ///The method used to derive the code challenge for the PKCE grant flow. Possible value is:
+ ///
+ ///- `S256`- Hashes the code verifier using the SHA-256 algorithm and then applies Base64 URL encoding. (optional)
+ ///
+ /// string
+ string Authorize(string clientId, string responseType, string redirectUri, string state = default(string), string nonce = default(string), string scope = null, string responseMode = default(string), string prompt = default(string), string authoptions = default(string), string codeChallenge = default(string), string codeChallengeMethod = default(string) /*string accessToken = null, bool throwOnError = true*/);
///
- /// token
+ /// Acquire Token
///
///
- /// Token endpoint returns access token and refresh token, depending on the request parameters. The endpoint requires Basic Authorization for confidential clients. For public clients, the Authorization Header should not be in the header and `client_id` should be included in the form body. * If `grant_type` is `authorization_code`, it returns 3-legged access token for authorization code grant. * If `grant_type` is `client_credentials`, it returns 2-legged access token for client credentials grant. * If `grant_type` is `refresh_token`, it returns new access token by using the refresh token provided in the request.
+ ///Returns an access token or refresh token.
+ ///
+ ///* If `grant_type` is `authorization_code`, returns a 3-legged access token for authorization code grant.
+ ///* If `grant_type` is `client_credentials`, returns a 2-legged access token for client credentials grant.
+ ///* If `grant_type` is `refresh_token`, returns new access token using the refresh token provided in the request.
+ ///
+ ///Traditional Web Apps and Server-to-Server Apps should use the `Authorization` header with Basic Authentication for this operation. Desktop, Mobile, and Single-Page Apps should use `client_id` in the form body instead.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Must be in the form Basic ${Base64(<client_id>:<client_secret>)} (optional)/// (optional)/// Required if `grant_type` is `authorization_code` (optional)/// Required if `grant_type` is `authorization_code` (optional)/// Required if `grant_type` is `authorization_code` and `code_challenge` was specified in /authorize request (optional)/// Required if `grant_type` is `refresh_token` (optional)/// (optional)/// This field is required for public client (optional)
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ ///
+ ///The authorization code that was passed to your application when the user granted access permission to your application. It was passed as the [code` query parameter to the redirect URI when you called `Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). Required if `grant_type` is `authorization_code`. (optional)
+ ///
+ ///
+ ///The URI that APS redirects users to after they grant or deny access permission to the application. Must match the Callback URL for the application registered with APS. Required if `grant_type` is `authorization_code`. (optional)
+ ///
+ ///
+ ///A random URL-encoded string between 43 characters and 128 characters. In a PKCE grant flow, the authentication server uses this string to verify the code challenge that was passed when you called [Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). Required if [grant_type` is `authorization_code` and `code_challenge` was specified when you called `Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). (optional)
+ ///
+ ///
+ ///The refresh token used to acquire a new access token and a refresh token. Required if `grant_type` is `refresh_token`. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ ///
+ /// (optional)
+ ///
/// Task ofHttpResponseMessage
- System.Threading.Tasks.Task FetchtokenAsync(string authorization = default(string), string grantType = default, string code = default(string), string redirectUri = default(string), string codeVerifier = default(string), string refreshToken = default(string), string scope = null, string clientId = default(string), /*string accessToken = null,*/ bool throwOnError = true);
+ System.Threading.Tasks.Task FetchTokenAsync(string authorization = default(string), string grantType = default, string code = default(string), string redirectUri = default(string), string codeVerifier = default(string), string refreshToken = default(string), string scope = null, string clientId = default(string),/* string accessToken = null,*/ bool throwOnError = true);
///
- /// keys
+ /// Get JWKS
///
///
- /// To return JSON Web Key Set that used to validate JWT token.
+ ///Returns a set of public keys in the JSON Web Key Set (JWKS) format.
+ ///
+ ///Public keys returned by this operation can be used to validate the asymmetric JWT signature of an access token without making network calls. It can be used to validate both two-legged access tokens and three-legged access tokens.
+ ///
+ ///See the Developer's Guide topic on [Asymmetric Signing](/en/docs/oauth/v2/developers_guide/asymmetric-encryption/) for more information.
///
/// Thrown when fails to make API call
- /// Task of ApiResponse
+ /// Task of ApiResponse<Jwks>
System.Threading.Tasks.Task> GetKeysAsync(/*string accessToken = null*/ bool throwOnError = true);
///
- /// GET OIDC Specification
+ /// Get OIDC Specification
///
///
- /// Openid-configuration is a Well-known URI Discovery Mechanism for the Provider Configuration URI and is defined in OpenID Connect (OIDC). Openid-configuration is a URI defined within OpenID Connect which provides configuration information about the Identity Provider (IDP). This endpoint retrieves the metadata as a JSON listing of OpenID/OAuth endpoints, supported scopes and claims, public keys used to sign the tokens, and other details.
+ ///Returns an OpenID Connect Discovery Specification compliant JSON document. It contains a list of the OpenID/OAuth endpoints, supported scopes, claims, public keys used to sign the tokens, and other details.
///
/// Thrown when fails to make API call
- /// Task of ApiResponse
+ /// Task of ApiResponse<OidcSpec>
System.Threading.Tasks.Task> GetOidcSpecAsync(/*string accessToken = null,*/ bool throwOnError = true);
///
- /// introspect
+ /// Introspect Token
///
///
- /// Examines an access token including the reference token and returns the status information of the tokens. If the token is active, additional information is returned. If the token is expired, invalid or revoked, it returns the response as status: inactive.
+ ///Returns metadata about the specified access token or reference token.
+ ///
+ ///An application can only introspect its own tokens.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Must be in the form Basic ${Base64(<client_id>:<client_secret>)} (optional)/// (optional)/// (optional)
- /// Task of ApiResponse
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ ///The token to be introspected. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ /// Task of ApiResponse<IntrospectToken>
System.Threading.Tasks.Task> IntrospectTokenAsync(string token, string authorization = default(string), string clientId = default(string), bool throwOnError = true);
///
- /// logout
+ /// Logout
///
///
- /// This API endpoint logs a user out by removing their user browser session and redirects the user to the Autodesk login page.
+ ///Signs out the currently authenticated user from the APS authorization server. Thereafter, this operation redirects the user to the `post_logout_redirect_uri`, or to the Autodesk Sign-in page when no `post_logout_redirect_uri` is provided.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Location to redirect once the logout is performed. Note that the provided domain host should be in the allowed list. Contact #oxygen slack channel for more details. (optional)
+ ///
+ ///The URI to redirect your users to once logout is performed. If you do not specify this parameter your users are redirected to the Autodesk Sign-in page.
+ ///
+ ///**Note:** You must provide a redirect URI that is pre-registered with APS. This precaution is taken to prevent unauthorized applications from hijacking the logout process. (optional)
+ ///
- /// Task of HttpResponseMessage
+ /// string
string Logout(string postLogoutRedirectUri = default(string));
///
- /// revoke
+ /// Revoke Token
///
///
- /// This API endpoint takes an access token or refresh token and revokes it. Once the token is revoked, it becomes inactive and returns no body response. A client can only revoke its own tokens.
+ ///Revokes an active access token or refresh token.
+ ///
+ ///An application can only revoke its own tokens.
+ ///
+ ///This operation has a rate limit of 100 calls per minute.
///
/// Thrown when fails to make API call
- /// The token to be revoked. (optional)/// Should be either 'access_token', 'refresh_token' or 'device_secret'. (optional)/// This field is required for public client. (optional)
+ ///
+ ///The token to be revoked.
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
/// Task of HttpResponseMessage
System.Threading.Tasks.Task RevokeAsync(string token, string authorization = default(string), string tokenTypeHint = default(string), string clientId = default(string), bool throwOnError = true);
@@ -197,16 +329,74 @@ private void SetHeader(string baseName, object value, HttpRequestMessage req)
public ForgeService Service { get; set; }
///
- /// authorize
+ /// Authorize User
///
///
- /// To obtain an authorization code grant or id_token grant. We rate limit this endpoint. When rate limit reached, then Apigee will throw HTTP 429 Too Many Requests error. See Forge docs on the rate limit: [Forge rate limit](https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/rate-limiting/forge-rate-limits/) Errors came from OKTA/PF directly.Please refer forge v2 api document for more details <Link>
+ ///Displays a sign-in page where users of your application can authorize the application to access resources on their behalf.
+ ///
+ ///Invoking this operation is the first step in authenticating users and retrieving an authorization code grant. The authorization code that is generated remains valid for 5 minutes, while the ID token stays valid for 60 minutes. Any access tokens you obtain are valid for 60 minutes, and refresh tokens remain valid for 15 days.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
+ ///
+ ///**Note:** This operation is intended for use with client-side applications only. It is not suitable for server-side applications.
///
/// Thrown when fails to make API call
- /// Client ID./// Must be `code` for authorization code grant, `id_token` for an OpenID Connect ID token./// URL-encoded callback URL./// The payload that authorization flow will pass back verbatim in state query parameter to the callback URL. It can contain alphanumeric, comma, period, underscore, and hyphen characters./// A string value used to associate a Client session with an ID Token, and to mitigate replay attacks. Required if `response_type` is `id_token` or `token` (optional)/// URL-encoded, a space-delimited list of scopes. Supported values: 1. device_sso 2. All scopes mentioned in [Forge Developers Guide](https://forge.autodesk.com/en/docs/oauth/v3/developers_guide/scopes/) (optional)/// The mode of response for the supplied `response_type`. Supported values are `fragment`, `form_post` or `query`. `query` is not supported if the `response_type` is `token`. (optional)/// Values supported: `login` and `none`. `login`: Always prompt the user for authentication, regardless of the login session. `prompt`: Do not prompt user for authentication. If user is not logged in, the calling application receives an error. (optional)/// A Json object carries information to Identity. (optional)/// A challenge for PKCE. The challenge is verified in the access token request. (optional)/// Method used to derive the code challenge for PKCE. Must be S256 if `code_challenge` is present. (optional)
-
+ ///
+ ///The Client ID of the calling application, as registered with APS.
+ ///
+ ///
+ ///The type of response you want to receive. Possible values are:
+ ///
+ ///- `code` - Authorization code grant.
+ ///- `id_token` - OpenID Connect ID token.
+ ///
+ ///
+ ///The URI that APS redirects users to after they grant or deny access permission to the application. Must match the Callback URL for the application as registered with APS.
+ ///
+ ///Must be specified as a URL-safe string. It can include query parameters or any other valid URL construct.
+ ///
+ ///
+ ///A random string that is sent with the request. APS passes back the same string to you so that you can verify whether you received the same string that you sent. This check mitigates token replay attacks (optional)
+ ///
+ ///
+ ///A URL-encoded random string. The authorization flow will pass the same string back to the Callback URL using the `state` query string parameter. This process helps ensure that the callback you receive is a response to what you originally requested. It prevents malicious actors from forging requests.
+ ///
+ ///The string can only contain alphanumeric characters, commas, periods, underscores, and hyphens. (optional)
+ ///
+ ///
+ ///A URL-encoded space-delimited list of requested scopes. See the [Developer's Guide documentation on scopes](/en/docs/oauth/v2/developers_guide/scopes/) for a list of valid values you can provide.
+ ///
+ ///The string you specify for this parameter must not exceed 2000 characters and it cannot contain more than 50 scopes. (optional)
+ ///
+ ///
+ ///Specifies how the authorization response should be returned. Valid values are:
+ ///
+ ///- `fragment` - Encode the response parameters in the fragment of the redirect URI. A fragment in a URI is the optional part of the URI that appears after a `#` symbol, which refers to a specific section within a resource. For example, `section` in `https://www.mysite.org/myresource#section`.
+ ///- `form_post` - Embed the authorization response parameter in an HTML form.
+ ///- `query` - Embed the authorization response as a query string parameter of the redirect URI.
+ ///
+ ///If `id_token` is stated as `response_type`, only `form_post` is allowed as `response_mode`.' (optional)
+ ///
+ ///
+ ///Specifies how to prompt users for authentication. Possible values are:
+ ///
+ ///- `login` : Always prompt the user for authentication, regardless of the state of the login session.
+ ///
+ ///**Note:** If you do not specify this parameter, the system will not prompt the user for authentication as long as a login session is active. If a login session is not active, the system will prompt the user for authentication. (optional)
+ ///
+ ///
+ ///A JSON object containing options that specify how to display the sign-in page. Refer the [Developer's Guide documentation on AuthOptions](/en/docs/oauth/v2/developers_guide/authoptions/) for supported values. (optional)
+ ///
+ ///
+ ///A URL-encoded string derived from the code verifier sent in the authorization request with the Proof Key for Code Exchange (PKCE) grant flow. (optional)
+ ///
+ ///
+ ///The method used to derive the code challenge for the PKCE grant flow. Possible value is:
+ ///
+ ///- `S256`- Hashes the code verifier using the SHA-256 algorithm and then applies Base64 URL encoding. (optional)
+ ///
/// string
- public string Authorize(string clientId, string responseType, string redirectUri, string state = default(string), string nonce = default(string), string scope = null, string responseMode = default(string), string prompt = default(string), string authoptions = default(string), string codeChallenge = default(string), string codeChallengeMethod = default(string), /*string accessToken = null,*/ bool throwOnError = true)
+ public string Authorize(string clientId, string responseType, string redirectUri, string state = default(string), string nonce = default(string), string scope = null, string responseMode = default(string), string prompt = default(string), string authoptions = default(string), string codeChallenge = default(string), string codeChallengeMethod = default(string) /*string accessToken = null, bool throwOnError = true*/)
{
logger.LogInformation("Entered into AuthorizeAsync ");
// ss manually added. This method does not call any rest endpoints.
@@ -238,18 +428,51 @@ private void SetHeader(string baseName, object value, HttpRequestMessage req)
} // using
}
///
- /// token
+ /// Acquire Token
///
///
- /// Token endpoint returns access token and refresh token, depending on the request parameters. The endpoint requires Basic Authorization for confidential clients. For public clients, the Authorization Header should not be in the header and `client_id` should be included in the form body. * If `grant_type` is `authorization_code`, it returns 3-legged access token for authorization code grant. * If `grant_type` is `client_credentials`, it returns 2-legged access token for client credentials grant. * If `grant_type` is `refresh_token`, it returns new access token by using the refresh token provided in the request.
+ ///Returns an access token or refresh token.
+ ///
+ ///* If `grant_type` is `authorization_code`, returns a 3-legged access token for authorization code grant.
+ ///* If `grant_type` is `client_credentials`, returns a 2-legged access token for client credentials grant.
+ ///* If `grant_type` is `refresh_token`, returns new access token using the refresh token provided in the request.
+ ///
+ ///Traditional Web Apps and Server-to-Server Apps should use the `Authorization` header with Basic Authentication for this operation. Desktop, Mobile, and Single-Page Apps should use `client_id` in the form body instead.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Must be in the form Basic ${Base64(<client_id>:<client_secret>)} (optional)/// (optional)/// Required if `grant_type` is `authorization_code` (optional)/// Required if `grant_type` is `authorization_code` (optional)/// Required if `grant_type` is `authorization_code` and `code_challenge` was specified in /authorize request (optional)/// Required if `grant_type` is `refresh_token` (optional)/// (optional)/// This field is required for public client (optional)
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ ///
+ ///The authorization code that was passed to your application when the user granted access permission to your application. It was passed as the [code` query parameter to the redirect URI when you called `Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). Required if `grant_type` is `authorization_code`. (optional)
+ ///
+ ///
+ ///The URI that APS redirects users to after they grant or deny access permission to the application. Must match the Callback URL for the application registered with APS. Required if `grant_type` is `authorization_code`. (optional)
+ ///
+ ///
+ ///A random URL-encoded string between 43 characters and 128 characters. In a PKCE grant flow, the authentication server uses this string to verify the code challenge that was passed when you called [Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). Required if [grant_type` is `authorization_code` and `code_challenge` was specified when you called `Authorize User](/en/docs/oauth/v2/reference/http/authorize-GET/). (optional)
+ ///
+ ///
+ ///The refresh token used to acquire a new access token and a refresh token. Required if `grant_type` is `refresh_token`. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ ///
+ /// (optional)
+ ///
/// Task of HttpResponseMessage
- public async System.Threading.Tasks.Task FetchtokenAsync(string authorization = default(string), string grantType = default, string code = default(string), string redirectUri = default(string), string codeVerifier = default(string), string refreshToken = default(string), string scope = null, string clientId = default(string),/* string accessToken = null,*/ bool throwOnError = true)
+ public async System.Threading.Tasks.Task FetchTokenAsync(string authorization = default(string), string grantType = default, string code = default(string), string redirectUri = default(string), string codeVerifier = default(string), string refreshToken = default(string), string scope = null, string clientId = default(string),/* string accessToken = null,*/ bool throwOnError = true)
{
- logger.LogInformation("Entered into FetchtokenAsync ");
+ logger.LogInformation("Entered into FetchTokenAsync ");
using (var request = new HttpRequestMessage())
{
var queryParam = new Dictionary();
@@ -318,14 +541,18 @@ private void SetHeader(string baseName, object value, HttpRequestMessage req)
} // using
}
///
- /// keys
+ /// Get JWKS
///
///
- /// To return JSON Web Key Set that used to validate JWT token.
+ ///Returns a set of public keys in the JSON Web Key Set (JWKS) format.
+ ///
+ ///Public keys returned by this operation can be used to validate the asymmetric JWT signature of an access token without making network calls. It can be used to validate both two-legged access tokens and three-legged access tokens.
+ ///
+ ///See the Developer's Guide topic on [Asymmetric Signing](/en/docs/oauth/v2/developers_guide/asymmetric-encryption/) for more information.
///
/// Thrown when fails to make API call
- /// Task of ApiResponse
+ /// Task of ApiResponse<Jwks>>
public async System.Threading.Tasks.Task> GetKeysAsync(/*string accessToken = null,*/ bool throwOnError = true)
{
@@ -377,14 +604,14 @@ public async System.Threading.Tasks.Task> GetKeysAsync(/*strin
} // using
}
///
- /// GET OIDC Specification
+ /// Get OIDC Specification
///
///
- /// Openid-configuration is a Well-known URI Discovery Mechanism for the Provider Configuration URI and is defined in OpenID Connect (OIDC). Openid-configuration is a URI defined within OpenID Connect which provides configuration information about the Identity Provider (IDP). This endpoint retrieves the metadata as a JSON listing of OpenID/OAuth endpoints, supported scopes and claims, public keys used to sign the tokens, and other details.
+ ///Returns an OpenID Connect Discovery Specification compliant JSON document. It contains a list of the OpenID/OAuth endpoints, supported scopes, claims, public keys used to sign the tokens, and other details.
///
/// Thrown when fails to make API call
- /// Task of ApiResponse
+ /// Task of ApiResponse<OidcSpec>>
public async System.Threading.Tasks.Task> GetOidcSpecAsync(/*string accessToken = null,*/ bool throwOnError = true)
{
@@ -439,16 +666,30 @@ public async System.Threading.Tasks.Task> GetOidcSpecAsync
} // using
}
///
- /// introspect
+ /// Introspect Token
///
///
- /// Examines an access token including the reference token and returns the status information of the tokens. If the token is active, additional information is returned. If the token is expired, invalid or revoked, it returns the response as status: inactive.
+ ///Returns metadata about the specified access token or reference token.
+ ///
+ ///An application can only introspect its own tokens.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Must be in the form Basic ${Base64(<client_id>:<client_secret>)} (optional)/// (optional)/// (optional)
- /// Task of ApiResponse
-
- public async System.Threading.Tasks.Task> IntrospectTokenAsync(string token,string authorization = default(string), string clientId = default(string), /*string accessToken = null,*/ bool throwOnError = true)
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ ///The token to be introspected. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
+ /// Task of ApiResponse<IntrospectToken>>
+
+ public async System.Threading.Tasks.Task> IntrospectTokenAsync(string token, string authorization = default(string), string clientId = default(string), /*string accessToken = null,*/ bool throwOnError = true)
{
logger.LogInformation("Entered into IntrospectTokenAsync ");
using (var request = new HttpRequestMessage())
@@ -522,14 +763,21 @@ public async System.Threading.Tasks.Task> GetOidcSpecAsync
} // using
}
///
- /// logout
+ /// Logout
///
///
- /// This API endpoint logs a user out by removing their user browser session and redirects the user to the Autodesk login page.
+ ///Signs out the currently authenticated user from the APS authorization server. Thereafter, this operation redirects the user to the `post_logout_redirect_uri`, or to the Autodesk Sign-in page when no `post_logout_redirect_uri` is provided.
+ ///
+ ///This operation has a rate limit of 500 calls per minute.
///
/// Thrown when fails to make API call
- /// Location to redirect once the logout is performed. Note that the provided domain host should be in the allowed list. Contact #oxygen slack channel for more details. (optional)
- /// Redirect uri/returns>
+ ///
+ ///The URI to redirect your users to once logout is performed. If you do not specify this parameter your users are redirected to the Autodesk Sign-in page.
+ ///
+ ///**Note:** You must provide a redirect URI that is pre-registered with APS. This precaution is taken to prevent unauthorized applications from hijacking the logout process. (optional)
+ ///
+
+ /// Task of HttpResponseMessage
public string Logout(string postLogoutRedirectUri = default(string))
{
logger.LogInformation("Entered into LogoutAsync ");
@@ -554,13 +802,30 @@ public async System.Threading.Tasks.Task> GetOidcSpecAsync
} // using
}
///
- /// revoke
+ /// Revoke Token
///
///
- /// This API endpoint takes an access token or refresh token and revokes it. Once the token is revoked, it becomes inactive and returns no body response. A client can only revoke its own tokens.
+ ///Revokes an active access token or refresh token.
+ ///
+ ///An application can only revoke its own tokens.
+ ///
+ ///This operation has a rate limit of 100 calls per minute.
///
/// Thrown when fails to make API call
- /// The token to be revoked. (optional)/// Should be either 'access_token', 'refresh_token' or 'device_secret'. (optional)/// This field is required for public client. (optional)
+ ///
+ ///The token to be revoked.
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///Must be `Bearer ` where `` is the Base64 encoding of the concatenated string `:`.'
+ ///
+ ///**Note** This header is required only for Traditional Web Apps and Server-to-Server Apps. It is not required for Desktop, Mobile, and Single-Page Apps. (optional)
+ ///
+ ///
+ /// (optional)
+ ///
/// Task of HttpResponseMessage
public async System.Threading.Tasks.Task RevokeAsync(string token, string authorization = default(string), string tokenTypeHint = default(string), string clientId = default(string), bool throwOnError = true)
diff --git a/authentication/source/Http/UsersApi.gen.cs b/authentication/source/Http/UsersApi.gen.cs
index 60a0073..3d59734 100644
--- a/authentication/source/Http/UsersApi.gen.cs
+++ b/authentication/source/Http/UsersApi.gen.cs
@@ -1,7 +1,7 @@
/*
* APS SDK
*
- * The Forge Platform contains an expanding collection of web service components that can be used with Autodesk cloud-based products or your own technologies. Take advantage of Autodesk’s expertise in design and engineering.
+ * The APS Platform contains an expanding collection of web service components that can be used with Autodesk cloud-based products or your own technologies. Take advantage of Autodesk’s expertise in design and engineering.
*
* Authentication
*
@@ -40,14 +40,14 @@ namespace Autodesk.Authentication.Http
public interface IUsersApi
{
///
- /// GET User Info
+ /// Get User Info
///
///
- /// Retrieves basic information for the given authenticated user. Only supports 3-legged access tokens.
+ ///Retrieves information about the authenticated user.
///
/// Thrown when fails to make API call
/// YOUR_3_LEGGED_ACCESS_TOKEN (optional)
- /// Task of ApiResponse
+ /// Task of ApiResponse<UserInfo>
System.Threading.Tasks.Task> GetUserinfoAsync (string authorization, bool throwOnError = true);
}
@@ -131,14 +131,14 @@ private void SetHeader(string baseName, object value, HttpRequestMessage req)
public ForgeService Service {get; set;}
///
- /// GET User Info
+ /// Get User Info
///
///
- /// Retrieves basic information for the given authenticated user. Only supports 3-legged access tokens.
+ ///Retrieves information about the authenticated user.
///
/// Thrown when fails to make API call
/// YOUR_3_LEGGED_ACCESS_TOKEN (optional)
- /// Task of ApiResponse
+ /// Task of ApiResponse<UserInfo>
public async System.Threading.Tasks.Task> GetUserinfoAsync (string authorization, bool throwOnError = true)
{
diff --git a/authentication/source/Model/GrantType.cs b/authentication/source/Model/GrantType.cs
index 2d26cd6..bc3ba22 100644
--- a/authentication/source/Model/GrantType.cs
+++ b/authentication/source/Model/GrantType.cs
@@ -33,33 +33,40 @@
namespace Autodesk.Authentication.Model
{
///
- /// Enum for Grant types
+ /// Specifies the grant type you are requesting the code for. Possible values are:
+ ///
+ ///- `client_credentials` - For a 2-legged access token.
+ ///- `authorization_code` - For a 3-legged access token.
+ ///- `refresh_token` - For a refresh token.
///
- /// Enum for Grant types
-
+ ///Specifies the grant type you are requesting the code for. Possible values are:
+ ///
+ ///- `client_credentials` - For a 2-legged access token.
+ ///- `authorization_code` - For a 3-legged access token.
+ ///- `refresh_token` - For a refresh token.
+
[JsonConverter(typeof(StringEnumConverter))]
-
+
public enum GrantType
{
-
+
///
- /// Enum Client_credentials for value: Client_credentials
+ /// Enum Clientcredentials for value: client_credentials
///
[EnumMember(Value = "client_credentials")]
- Client_credentials,
-
+ ClientCredentials,
+
///
- /// Enum Authorization_code for value: authorization_code
+ /// Enum Authorizationcode for value: authorization_code
///
[EnumMember(Value = "authorization_code")]
- Authorization_code,
-
+ AuthorizationCode,
+
///
- /// Enum Refresh_token for Refresh_token
+ /// Enum Refreshtoken for value: refresh_token
///
[EnumMember(Value = "refresh_token")]
- Refresh_token,
-
+ RefreshToken
}
}
diff --git a/authentication/source/Model/IntrospectToken.gen.cs b/authentication/source/Model/IntrospectToken.gen.cs
index 82e5d50..bfa0b6c 100644
--- a/authentication/source/Model/IntrospectToken.gen.cs
+++ b/authentication/source/Model/IntrospectToken.gen.cs
@@ -33,7 +33,7 @@
namespace Autodesk.Authentication.Model
{
///
- /// The response body for the introspection of access token.
+ /// IntrospectToken
///
[DataContract]
public partial class IntrospectToken
@@ -46,42 +46,53 @@ public IntrospectToken()
}
///
- /// Gets or Sets Active
+ ///`true`: The token is active.
+///
+///`false`: The token is expired, invalid, or revoked.
///
+ ///
+ ///`true`: The token is active.
+///
+///`false`: The token is expired, invalid, or revoked.
+ ///
[DataMember(Name="active", EmitDefaultValue=false)]
public bool? Active { get; set; }
///
- /// Gets or Sets Scope
+ ///A URL-encoded, space separated list of scopes associated with the token.
///
+ ///
+ ///A URL-encoded, space separated list of scopes associated with the token.
+ ///
[DataMember(Name="scope", EmitDefaultValue=false)]
public string Scope { get; set; }
///
- /// Gets or Sets ClientId
+ ///The Client ID of the application associated with the token.
///
+ ///
+ ///The Client ID of the application associated with the token.
+ ///
[DataMember(Name="client_id", EmitDefaultValue=false)]
public string ClientId { get; set; }
///
- /// Gets or Sets Exp
+ ///The expiration time of the token, represented as a Unix timestamp.
///
+ ///
+ ///The expiration time of the token, represented as a Unix timestamp.
+ ///
[DataMember(Name="exp", EmitDefaultValue=false)]
public int? Exp { get; set; }
///
- /// Gets or Sets Userid
+ ///The ID of the user who authorized the token.
///
+ ///
+ ///The ID of the user who authorized the token.
+ ///
[DataMember(Name="userid", EmitDefaultValue=false)]
- public string UserId { get; set; }
-
-
- ///
- /// Gets or Sets Token type
- ///
- [DataMember(Name="token_type", EmitDefaultValue=false)]
- public string TokenType { get; set; }
-
+ public string Userid { get; set; }
///
/// Returns the string presentation of the object
diff --git a/authentication/source/Model/Jwks.gen.cs b/authentication/source/Model/Jwks.gen.cs
index 9649424..bea7b89 100644
--- a/authentication/source/Model/Jwks.gen.cs
+++ b/authentication/source/Model/Jwks.gen.cs
@@ -45,9 +45,16 @@ public Jwks()
{
}
+ ///
+ ///Gets or Sets Keys
+ ///
[DataMember(Name="keys", EmitDefaultValue=false)]
public List Keys { get; set; }
-
+
+ ///
+ /// Returns the string presentation of the object
+ ///
+ /// String presentation of the object
public override string ToString()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
diff --git a/authentication/source/Model/JwksKey.cs b/authentication/source/Model/JwksKey.cs
index bed2a2e..2f8622f 100644
--- a/authentication/source/Model/JwksKey.cs
+++ b/authentication/source/Model/JwksKey.cs
@@ -33,45 +33,64 @@
namespace Autodesk.Authentication.Model
{
///
- /// Jwks
+ /// JwksKey
///
[DataContract]
public partial class JwksKey
{
///
- /// Initializes a new instance of the class.
+ /// Initializes a new instance of the class.
///
public JwksKey()
{
}
-
+
///
- /// Gets or Sets Kid
+ ///The ID of the key. Acts as a unique identifier for a specific key within the JWKS.
///
+ ///
+ ///The ID of the key. Acts as a unique identifier for a specific key within the JWKS.
+ ///
[DataMember(Name="kid", EmitDefaultValue=false)]
public string Kid { get; set; }
///
- /// Gets or Sets Kty
+ ///The cryptographic algorithm family used with the key. Currently, always `RSA`.
///
+ ///
+ ///The cryptographic algorithm family used with the key. Currently, always `RSA`.
+ ///
[DataMember(Name="kty", EmitDefaultValue=false)]
public string Kty { get; set; }
///
- /// Gets or Sets Use
+ ///The intended use of the public key. Possible values:
+///
+///- `sig` - Verify the signature on data.
///
+ ///
+ ///The intended use of the public key. Possible values:
+///
+///- `sig` - Verify the signature on data.
+ ///
[DataMember(Name="use", EmitDefaultValue=false)]
public string Use { get; set; }
///
- /// Gets or Sets N
+ ///The RSA modulus value.
///
+ ///
+ ///The RSA modulus value.
+ ///
[DataMember(Name="n", EmitDefaultValue=false)]
public string N { get; set; }
///
- /// Gets or Sets E
+ ///The RSA exponent value.
///
+ ///
+ ///The RSA exponent value.
+ ///
[DataMember(Name="e", EmitDefaultValue=false)]
public string E { get; set; }
diff --git a/authentication/source/Model/OidcSpec.gen.cs b/authentication/source/Model/OidcSpec.gen.cs
index b195d09..27fbccb 100644
--- a/authentication/source/Model/OidcSpec.gen.cs
+++ b/authentication/source/Model/OidcSpec.gen.cs
@@ -46,80 +46,119 @@ public OidcSpec()
}
///
- /// Gets or Sets Issuer
+ ///The base URL of the openID Provider. Always `https://developer.api.autodesk.com` for APS.
///
+ ///
+ ///The base URL of the openID Provider. Always `https://developer.api.autodesk.com` for APS.
+ ///
[DataMember(Name="issuer", EmitDefaultValue=false)]
public string Issuer { get; set; }
///
- /// Gets or Sets AuthorizationEndpoint
+ ///The endpoint for authorizing users. It initiates the user authentication process in obtaining an authorization code grant.
///
+ ///
+ ///The endpoint for authorizing users. It initiates the user authentication process in obtaining an authorization code grant.
+ ///
[DataMember(Name="authorization_endpoint", EmitDefaultValue=false)]
public string AuthorizationEndpoint { get; set; }
///
- /// Gets or Sets TokenEndpoint
+ ///The endpoint for acquiring access tokens and refresh tokens.
///
+ ///
+ ///The endpoint for acquiring access tokens and refresh tokens.
+ ///
[DataMember(Name="token_endpoint", EmitDefaultValue=false)]
public string TokenEndpoint { get; set; }
///
- /// Gets or Sets UserinfoEndpoint
+ ///The endpoint for querying information about the authenticated user.
///
+ ///
+ ///The endpoint for querying information about the authenticated user.
+ ///
[DataMember(Name="userinfo_endpoint", EmitDefaultValue=false)]
public string UserinfoEndpoint { get; set; }
///
- /// Gets or Sets JwksUri
+ ///The endpoint for retrieving public keys used by APS, in the JWKS format.
///
+ ///
+ ///The endpoint for retrieving public keys used by APS, in the JWKS format.
+ ///
[DataMember(Name="jwks_uri", EmitDefaultValue=false)]
public string JwksUri { get; set; }
///
- /// Gets or Sets RevocationEndpoint
+ ///The endpoint for revoking an access token or refresh token.
///
- [DataMember(Name="revocation_endpoint", EmitDefaultValue=false)]
- public string RevocationEndpoint { get; set; }
+ ///
+ ///The endpoint for revoking an access token or refresh token.
+ ///
+ [DataMember(Name="revoke_endpoint", EmitDefaultValue=false)]
+ public string RevokeEndpoint { get; set; }
///
- /// Gets or Sets IntrospectionEndpoint
+ ///The endpoint for obtaining metadata about an access token or refresh token.
///
+ ///
+ ///The endpoint for obtaining metadata about an access token or refresh token.
+ ///
[DataMember(Name="introspection_endpoint", EmitDefaultValue=false)]
public string IntrospectionEndpoint { get; set; }
///
- /// Gets or Sets ScopesSupported
+ ///A list of supported scopes.
///
+ ///
+ ///A list of supported scopes.
+ ///
[DataMember(Name="scopes_supported", EmitDefaultValue=false)]
public List ScopesSupported { get; set; }
///
- /// Gets or Sets ResponseTypesSupported
+ ///A list of the response types supported by APS. Each response type represent a different flow.
///
+ ///
+ ///A list of the response types supported by APS. Each response type represent a different flow.
+ ///
[DataMember(Name="response_types_supported", EmitDefaultValue=false)]
public List ResponseTypesSupported { get; set; }
///
- /// Gets or Sets ResponseModesSupported
+ ///A list of response modes supported by APS. Each response mode defines a different way of delivering an authorization response.
///
+ ///
+ ///A list of response modes supported by APS. Each response mode defines a different way of delivering an authorization response.
+ ///
[DataMember(Name="response_modes_supported", EmitDefaultValue=false)]
public List ResponseModesSupported { get; set; }
///
- /// Gets or Sets GrantTypesSupported
+ ///A list of grant types supported by APS. Each grant type represents a different way an application can obtain an access token.
///
+ ///
+ ///A list of grant types supported by APS. Each grant type represents a different way an application can obtain an access token.
+ ///
[DataMember(Name="grant_types_supported", EmitDefaultValue=false)]
public List GrantTypesSupported { get; set; }
///
- /// Gets or Sets SubjectTypesSupported
+ ///A list of subject identifier types supported by APS.
///
+ ///
+ ///A list of subject identifier types supported by APS.
+ ///
[DataMember(Name="subject_types_supported", EmitDefaultValue=false)]
public List SubjectTypesSupported { get; set; }
///
- /// Gets or Sets IdTokenSigningAlgValuesSupported
+ ///A list of all the token signing algorithms supported by APS.
///
+ ///
+ ///A list of all the token signing algorithms supported by APS.
+ ///
[DataMember(Name="id_token_signing_alg_values_supported", EmitDefaultValue=false)]
public List IdTokenSigningAlgValuesSupported { get; set; }
diff --git a/authentication/source/Model/RefreshToken.gen.cs b/authentication/source/Model/RefreshToken.gen.cs
index 9ef11e0..7b3160a 100644
--- a/authentication/source/Model/RefreshToken.gen.cs
+++ b/authentication/source/Model/RefreshToken.gen.cs
@@ -46,25 +46,25 @@ public RefreshToken()
}
///
- /// Gets or Sets AccessToken
+ ///Gets or Sets AccessToken
///
[DataMember(Name="access_token", EmitDefaultValue=false)]
public string AccessToken { get; set; }
///
- /// Gets or Sets TokenType
+ ///Gets or Sets TokenType
///
[DataMember(Name="token_type", EmitDefaultValue=false)]
public string TokenType { get; set; }
///
- /// Gets or Sets ExpiresIn
+ ///Gets or Sets ExpiresIn
///
[DataMember(Name="expires_in", EmitDefaultValue=false)]
public int? ExpiresIn { get; set; }
///
- /// Gets or Sets _RefreshToken
+ ///Gets or Sets _RefreshToken
///
[DataMember(Name="refresh_token", EmitDefaultValue=false)]
public string _RefreshToken { get; set; }
diff --git a/authentication/source/Model/ResponseType.cs b/authentication/source/Model/ResponseType.cs
index 16cf3dd..3e862df 100644
--- a/authentication/source/Model/ResponseType.cs
+++ b/authentication/source/Model/ResponseType.cs
@@ -33,9 +33,9 @@
namespace Autodesk.Authentication.Model
{
///
- /// Enum for Grant types
+ /// Defines responseType
///
- /// Enum for Grant types
+ ///
[JsonConverter(typeof(StringEnumConverter))]
@@ -43,17 +43,16 @@ public enum ResponseType
{
///
- /// Enum code for value: code
+ /// Enum Code for value: code
///
[EnumMember(Value = "code")]
Code,
///
- /// Enum id_token for value: id_token
+ /// Enum Idtoken for value: id_token
///
[EnumMember(Value = "id_token")]
- Id_token,
-
+ Idtoken
}
}
diff --git a/authentication/source/Model/Scopes.gen.cs b/authentication/source/Model/Scopes.gen.cs
index f78badf..72cbb86 100644
--- a/authentication/source/Model/Scopes.gen.cs
+++ b/authentication/source/Model/Scopes.gen.cs
@@ -33,9 +33,9 @@
namespace Autodesk.Authentication.Model
{
///
- /// Enum for scopes
+ /// Specifies the scope for the token you are requesting. See the [Developer's Guide documentation on scopes](/en/docs/oauth/v2/developers_guide/scopes/) for a complete list of possible values.
///
- /// Enum for scopes
+ ///Specifies the scope for the token you are requesting. See the [Developer's Guide documentation on scopes](/en/docs/oauth/v2/developers_guide/scopes/) for a complete list of possible values.
[JsonConverter(typeof(StringEnumConverter))]
@@ -72,6 +72,12 @@ public enum Scopes
[EnumMember(Value = "data:read")]
DataRead,
+ ///
+ /// Enum DatareadURNOFRESOURCE for value: data:read:<URN_OF_RESOURCE>
+ ///
+ [EnumMember(Value = "data:read:")]
+ DatareadURNOFRESOURCE,
+
///
/// Enum Datawrite for value: data:write
///
diff --git a/authentication/source/Model/ThreeLeggedToken.gen.cs b/authentication/source/Model/ThreeLeggedToken.gen.cs
index bb7dd29..d81e3b5 100644
--- a/authentication/source/Model/ThreeLeggedToken.gen.cs
+++ b/authentication/source/Model/ThreeLeggedToken.gen.cs
@@ -33,7 +33,7 @@
namespace Autodesk.Authentication.Model
{
///
- /// Model3leggedtoken
+ /// ThreeLeggedToken
///
[DataContract]
public partial class ThreeLeggedToken
@@ -46,31 +46,31 @@ public ThreeLeggedToken()
}
///
- /// Gets or Sets TokenType
+ ///Gets or Sets TokenType
///
[DataMember(Name="token_type", EmitDefaultValue=false)]
public string TokenType { get; set; }
///
- /// Gets or Sets ExpiresIn
+ ///Gets or Sets ExpiresIn
///
[DataMember(Name="expires_in", EmitDefaultValue=false)]
public int? ExpiresIn { get; set; }
///
- /// Gets or Sets RefreshToken
+ ///Gets or Sets RefreshToken
///
[DataMember(Name="refresh_token", EmitDefaultValue=false)]
public string RefreshToken { get; set; }
///
- /// Gets or Sets AccessToken
+ ///Gets or Sets AccessToken
///
[DataMember(Name="access_token", EmitDefaultValue=false)]
public string AccessToken { get; set; }
///
- /// Gets or Sets IdToken
+ ///Gets or Sets IdToken
///
[DataMember(Name="id_token", EmitDefaultValue=false)]
public string IdToken { get; set; }
diff --git a/authentication/source/Model/TokenTypeHint.cs b/authentication/source/Model/TokenTypeHint.cs
index b8c0e80..b5b03a8 100644
--- a/authentication/source/Model/TokenTypeHint.cs
+++ b/authentication/source/Model/TokenTypeHint.cs
@@ -33,9 +33,9 @@
namespace Autodesk.Authentication.Model
{
///
- /// Enum for scopes
+ /// Defines tokenTypeHint
///
- /// Enum for scopes
+ ///
[JsonConverter(typeof(StringEnumConverter))]
@@ -43,18 +43,16 @@ public enum TokenTypeHint
{
///
- /// Enum UserProfileread for value: user-profile:read
+ /// Enum Accesstoken for value: access_token
///
[EnumMember(Value = "access_token")]
- Access_token,
+ Accesstoken,
///
- /// Enum Userread for value: user:read
+ /// Enum Refreshtoken for value: refresh_token
///
[EnumMember(Value = "refresh_token")]
- Refresh_token,
-
-
+ Refreshtoken
}
}
diff --git a/authentication/source/Model/TwoLeggedToken.gen.cs b/authentication/source/Model/TwoLeggedToken.gen.cs
index 91fdef0..96666aa 100644
--- a/authentication/source/Model/TwoLeggedToken.gen.cs
+++ b/authentication/source/Model/TwoLeggedToken.gen.cs
@@ -39,26 +39,26 @@ namespace Autodesk.Authentication.Model
public partial class TwoLeggedToken
{
///
- /// Initializes a new instance of the class.
+ /// Initializes a new instance of the class.
///
public TwoLeggedToken()
{
}
///
- /// Gets or Sets AccessToken
+ ///Gets or Sets AccessToken
///
[DataMember(Name="access_token", EmitDefaultValue=false)]
public string AccessToken { get; set; }
///
- /// Gets or Sets TokenType
+ ///Gets or Sets TokenType
///
[DataMember(Name="token_type", EmitDefaultValue=false)]
public string TokenType { get; set; }
///
- /// Gets or Sets ExpiresIn
+ ///Gets or Sets ExpiresIn
///
[DataMember(Name="expires_in", EmitDefaultValue=false)]
public int? ExpiresIn { get; set; }
diff --git a/authentication/source/Model/UserInfo.gen.cs b/authentication/source/Model/UserInfo.gen.cs
index 2876305..fc75ba1 100644
--- a/authentication/source/Model/UserInfo.gen.cs
+++ b/authentication/source/Model/UserInfo.gen.cs
@@ -46,71 +46,292 @@ public UserInfo()
}
///
- /// Gets or Sets Sub
+ ///The ID by which APS uniquely identifies the user.
///
+ ///
+ ///The ID by which APS uniquely identifies the user.
+ ///
[DataMember(Name="sub", EmitDefaultValue=false)]
public string Sub { get; set; }
///
- /// Gets or Sets Name
+ ///The full name of the user.
///
+ ///
+ ///The full name of the user.
+ ///
[DataMember(Name="name", EmitDefaultValue=false)]
public string Name { get; set; }
///
- /// Gets or Sets GivenName
+ ///The given name or first name of the user.
///
+ ///
+ ///The given name or first name of the user.
+ ///
[DataMember(Name="given_name", EmitDefaultValue=false)]
public string GivenName { get; set; }
///
- /// Gets or Sets FamilyName
+ ///The surname or last name of the user.
///
+ ///
+ ///The surname or last name of the user.
+ ///
[DataMember(Name="family_name", EmitDefaultValue=false)]
public string FamilyName { get; set; }
///
- /// Gets or Sets PreferredUsername
+ ///The username by which the user prefers to be addressed.
///
+ ///
+ ///The username by which the user prefers to be addressed.
+ ///
[DataMember(Name="preferred_username", EmitDefaultValue=false)]
public string PreferredUsername { get; set; }
///
- /// Gets or Sets Email
+ ///The email address by which the user prefers to be contacted.
///
+ ///
+ ///The email address by which the user prefers to be contacted.
+ ///
[DataMember(Name="email", EmitDefaultValue=false)]
public string Email { get; set; }
///
- /// Gets or Sets EmailVerified
+ ///`true` : The user's preferred email address is verified.
+///
+///`false`: The user's preferred email address is not verified.
///
+ ///
+ ///`true` : The user's preferred email address is verified.
+///
+///`false`: The user's preferred email address is not verified.
+ ///
[DataMember(Name="email_verified", EmitDefaultValue=false)]
public bool? EmailVerified { get; set; }
///
- /// Gets or Sets Profile
+ ///The URL of the profile page of the user.
///
+ ///
+ ///The URL of the profile page of the user.
+ ///
[DataMember(Name="profile", EmitDefaultValue=false)]
public string Profile { get; set; }
///
- /// Gets or Sets Picture
+ ///The URL of the profile picture of the user.
///
+ ///
+ ///The URL of the profile picture of the user.
+ ///
[DataMember(Name="picture", EmitDefaultValue=false)]
public string Picture { get; set; }
///
- /// Gets or Sets Locale
+ ///The preferred language settings of the user. This setting is typically specified as a combination of the ISO 639 language code in lower case, and the ISO 3166 country code in upper case, separated by a dash character. For example `en-US`.
///
+ ///
+ ///The preferred language settings of the user. This setting is typically specified as a combination of the ISO 639 language code in lower case, and the ISO 3166 country code in upper case, separated by a dash character. For example `en-US`.
+ ///
[DataMember(Name="locale", EmitDefaultValue=false)]
public string Locale { get; set; }
///
- /// Gets or Sets UpdatedAt
+ ///The time the user's information was most recently updated, represented as a Unix timestamp.
///
+ ///
+ ///The time the user's information was most recently updated, represented as a Unix timestamp.
+ ///
[DataMember(Name="updated_at", EmitDefaultValue=false)]
public int? UpdatedAt { get; set; }
+ ///
+ ///`true`: Two-factor authentication is enabled for this user.
+///
+///`false`: Two-factor authentication is not enabled for this user.
+ ///
+ ///
+ ///`true`: Two-factor authentication is enabled for this user.
+///
+///`false`: Two-factor authentication is not enabled for this user.
+ ///
+ [DataMember(Name="is_2fa_enabled", EmitDefaultValue=false)]
+ public bool? Is2faEnabled { get; set; }
+
+ ///
+ ///The ISO 3166 country code that was assigned to the user when their profile was created.
+ ///
+ ///
+ ///The ISO 3166 country code that was assigned to the user when their profile was created.
+ ///
+ [DataMember(Name="country_code", EmitDefaultValue=false)]
+ public string CountryCode { get; set; }
+
+ ///
+ ///Gets or Sets Address
+ ///
+ [DataMember(Name="address", EmitDefaultValue=false)]
+ public UserInfoAddress Address { get; set; }
+
+ ///
+ ///The phone number by which the user prefers to be contacted.
+ ///
+ ///
+ ///The phone number by which the user prefers to be contacted.
+ ///
+ [DataMember(Name="phone_number", EmitDefaultValue=false)]
+ public string PhoneNumber { get; set; }
+
+ ///
+ ///`true` : The phone number is verified.
+///
+///`false` : The phone number is not verified.
+ ///
+ ///
+ ///`true` : The phone number is verified.
+///
+///`false` : The phone number is not verified.
+ ///
+ [DataMember(Name="phone_number_verified", EmitDefaultValue=false)]
+ public bool? PhoneNumberVerified { get; set; }
+
+ ///
+ ///`true` : Single sign-on using Lightweight Directory Access Protocol (LDAP) is enabled for this user.
+///
+///`false` : LDAP is not enabled for this user.
+ ///
+ ///
+ ///`true` : Single sign-on using Lightweight Directory Access Protocol (LDAP) is enabled for this user.
+///
+///`false` : LDAP is not enabled for this user.
+ ///
+ [DataMember(Name="ldap_enabled", EmitDefaultValue=false)]
+ public bool? LdapEnabled { get; set; }
+
+ ///
+ ///The domain name used by the LDAP server for user authentication. `null`, if `ldap_enabled` is `false`.
+ ///
+ ///
+ ///The domain name used by the LDAP server for user authentication. `null`, if `ldap_enabled` is `false`.
+ ///
+ [DataMember(Name="ldap_domain", EmitDefaultValue=false)]
+ public string LdapDomain { get; set; }
+
+ ///
+ ///The job title of the user as specified in the user's profile.
+ ///
+ ///
+ ///The job title of the user as specified in the user's profile.
+ ///
+ [DataMember(Name="job_title", EmitDefaultValue=false)]
+ public string JobTitle { get; set; }
+
+ ///
+ ///The industry the user works in, as specified in the user's profile.
+ ///
+ ///
+ ///The industry the user works in, as specified in the user's profile.
+ ///
+ [DataMember(Name="industry", EmitDefaultValue=false)]
+ public string Industry { get; set; }
+
+ ///
+ ///A code that corresponds to the industry.
+ ///
+ ///
+ ///A code that corresponds to the industry.
+ ///
+ [DataMember(Name="industry_code", EmitDefaultValue=false)]
+ public string IndustryCode { get; set; }
+
+ ///
+ ///A short description written by the user to introduce themselves, as specified in the user's profile.
+ ///
+ ///
+ ///A short description written by the user to introduce themselves, as specified in the user's profile.
+ ///
+ [DataMember(Name="about_me", EmitDefaultValue=false)]
+ public string AboutMe { get; set; }
+
+ ///
+ ///The ISO 639 language code of the preferred language of the user.
+ ///
+ ///
+ ///The ISO 639 language code of the preferred language of the user.
+ ///
+ [DataMember(Name="language", EmitDefaultValue=false)]
+ public string Language { get; set; }
+
+ ///
+ ///The company that the user works for, as specified in the user's profile.
+ ///
+ ///
+ ///The company that the user works for, as specified in the user's profile.
+ ///
+ [DataMember(Name="company", EmitDefaultValue=false)]
+ public string Company { get; set; }
+
+ ///
+ ///The time the user profile was created, represented as a Unix timestamp.
+ ///
+ ///
+ ///The time the user profile was created, represented as a Unix timestamp.
+ ///
+ [DataMember(Name="created_date", EmitDefaultValue=false)]
+ public string CreatedDate { get; set; }
+
+ ///
+ ///The time the user most recently signed-in to APS successfully, represented as a Unix timestamp.
+ ///
+ ///
+ ///The time the user most recently signed-in to APS successfully, represented as a Unix timestamp.
+ ///
+ [DataMember(Name="last_login_date", EmitDefaultValue=false)]
+ public string LastLoginDate { get; set; }
+
+ ///
+ ///An ID to uniquely identify the user. For most users this will be the same as `sub`. However, for users profiles created on the now retired EIDM system `eidm_guid` will be different from `sub`.
+ ///
+ ///
+ ///An ID to uniquely identify the user. For most users this will be the same as `sub`. However, for users profiles created on the now retired EIDM system `eidm_guid` will be different from `sub`.
+ ///
+ [DataMember(Name="eidm_guid", EmitDefaultValue=false)]
+ public string EidmGuid { get; set; }
+
+ ///
+ ///`true` : The user has agreed to receive marketing information.
+///
+///`false`: The user does not want to receive marketing information.
+ ///
+ ///
+ ///`true` : The user has agreed to receive marketing information.
+///
+///`false`: The user does not want to receive marketing information.
+ ///
+ [DataMember(Name="opt_in", EmitDefaultValue=false)]
+ public bool? OptIn { get; set; }
+
+ ///
+ ///An array of objects, where each object represents a social media account that can be used to verify the user's identity.
+ ///
+ ///
+ ///An array of objects, where each object represents a social media account that can be used to verify the user's identity.
+ ///
+ [DataMember(Name="social_userinfo_list", EmitDefaultValue=false)]
+ public List SocialUserinfoList { get; set; }
+
+ ///
+ ///An array of key-value pairs containing image URLs for various thumbnail sizes of the user's profile picture. The key is named `sizeX<NUMBER>` where `<NUMBER>` is the width and height of the thumbnail, in pixels. The corresponding value is the URL pointing to the thumbnail. For example, `sizeX200` would contain the URL for the 200x200 pixel thumbnail.
+ ///
+ ///
+ ///An array of key-value pairs containing image URLs for various thumbnail sizes of the user's profile picture. The key is named `sizeX<NUMBER>` where `<NUMBER>` is the width and height of the thumbnail, in pixels. The corresponding value is the URL pointing to the thumbnail. For example, `sizeX200` would contain the URL for the 200x200 pixel thumbnail.
+ ///
+ [DataMember(Name="thumbnails", EmitDefaultValue=false)]
+ public List