--- title: "Edit application" slug: "put-application" tags: ["Ncloud Single Sign-On"] updated: 2026-09-17T10:05:38Z published: 2026-09-17T10:05:38Z canonical: "api.ncloud-docs.com/put-application" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Edit application Available in Classic and VPC Edit application information. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | PUT | /api/v1/applications/{applicationId} | ### Request headers For information about the headers common to all Ncloud Single Sign-On APIs, see [Ncloud Single Sign-On request headers](/docs/en/single-sign-on-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). ### Request path parameters You can use the following path parameters with your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `applicationId` | String | Required | Application ID - See [Get application list](/docs/en/get-applications). | ### Request body You can include the following data in the body of your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `name` | String | Required | Application name - Enter 2-100 characters by combining English letters, numbers, and special characters ".", "-", and "_". - It must start with an English letter. | | `description` | String | Optional | Application description - 0-500 characters | | `applicationUrl` | String | Optional | Application URL | | `applicationType` | String | Optional | Application type - `web` (default) \| `app` - `web`: Web - `app`: App | | `mbrLoginAllow` | String | Required | Whether to allow main account login - `ALLOW` \| `DENY` - `ALLOW`: Allow - `DENY`: Deny | | `redirectUris` | Array | Required | Application redirection URI list - 1-50 can be entered. - OAuth 2.0 | | `postLogoutRedirectUris` | Array | Optional | List of URIs to which users will be redirected after completing a single logout (SLO) request - Up to 50 can be entered. - Only https URIs are allowed (loopback addresses such as localhost are allowed to use http). - OAuth 2.0 | | `clientAuthMethod` | String | Required | Application authentication method - `client_secret_basic` \| `client_secret_post` \| `none` - `client_secret_basic`: Client credentials are passed as HTTP basic authentication header. - `client_secret_post`: Client ID and secret are included in the POST request body. - `none`: No authentication - If `accessType` is `confidential`, `client_secret_basic` or `client_secret_post` can be entered. - If `accessType` is `public`, only `none` can be entered. - OAuth 2.0 | | `accessType` | String | Required | Application access method - `confidential` \| `public` - `confidential`: Access after authentication with client ID and secret. - `public`: Access after authentication with client ID. - OAuth 2.0 | | `grantTypes` | Array | Required | Authorization method - `authorization_code` \| `refresh_token` \| `implicit` - `authorization_code`: Issue access token with self-generated authorization code. - `refresh_token`: Issue new access token without re-login after the access token expires. - `implicit`: Issue access token directly without authorization code. It is optimized for client environments where it is difficult to securely store credentials. - Either `authorization_code` or `implicit` must be included. - OAuth 2.0 | | `scopes` | Array | Required | Application accessible information range - `profile` \| `openid` \| `groups` \| `email` - `profile`: Account type, login ID, unique member identifier, username - `openid`: Account type, login ID, unique member identifier, username - `groups`: Account type, login ID, unique member identifier, username, group - `email`: Account type, login ID, unique member identifier, username, email - Either `profile` or `openid` must be included. - OAuth 2.0 | | `accessTokenValidity` | Number | Optional | Access token validity time (second) - 43200 (default) - OAuth 2.0 | | `refreshTokenValidity` | Number | Optional | Refresh token validity time (second) - 2592000 (default) - OAuth 2.0 | | `consentPage` | Object | Required | Personal information provision consent page information | | `consentPage.applicationName` | Object | Required | Receiving party information | | `consentPage.applicationName.ko` | String | Required | Receiving party (Korean) | | `consentPage.applicationName.en` | String | Required | Receiving party (English) | | `consentPage.applicationName.ja` | String | Required | Receiving party (Japanese) | | `consentPage.useLanguages` | Array | Required | Language used - `ko` \| `en` \| `ja` - `ko`: Korean - `en`: English - `ja`: Japanese | | `consentPage.defaultLanguage` | String | Required | Default language - `ko` \| `en` \| `ja` - `ko`: Korean - `en`: English - `ja`: Japanese | | `consentPage.usePurposeDesc` | Object | Required | Usage purpose information | | `consentPage.usePurposeDesc.ko` | String | Required | Usage purpose (Korean) | | `consentPage.usePurposeDesc.en` | String | Required | Usage purpose (English) | | `consentPage.usePurposeDesc.ja` | String | Required | Usage purpose (Japanese) | | `consentPage.usePeriodDesc` | Object | Required | Retention and usage period information | | `consentPage.usePeriodDesc.ko` | String | Required | Retention and usage period information (Korean) | | `consentPage.usePeriodDesc.en` | String | Required | Retention and usage period information (English) | | `consentPage.usePeriodDesc.ja` | String | Required | Retention and usage period information (Japanese) | | `consentPage.dataTransferAbroad` | Boolean | Required | Whether personal information is transferred abroad - `true` \| `false` - `true`: Transferred - `false`: Not transferred | | `consentPage.dataTransferCountry` | Object | Conditional | Transferred country information - Required if `dataTransferAbroad` is `true` | | `consentPage.dataTransferCountry.ko` | String | Conditional | Transferred country (Korean) | | `consentPage.dataTransferCountry.en` | String | Conditional | Transferred country (English) | | `consentPage.dataTransferCountry.ja` | String | Conditional | Transferred country (Japanese) | | `consentPage.dataRecipients` | Object | Conditional | Receiving party information - Required if `dataTransferAbroad` is `true` | | `consentPage.dataRecipients.ko` | String | Conditional | Receiving corporate name (Korean) | | `consentPage.dataRecipients.en` | String | Conditional | Receiving corporate name (English) | | `consentPage.dataRecipients.ja` | String | Conditional | Receiving corporate name (Japanese) | | `consentPage.dataRecipientsContact` | Object | Conditional | Transferred party contact information - Required if `dataTransferAbroad` is `true` | | `consentPage.dataRecipientsContact.ko` | String | Conditional | Contact information of the personal information admin of the receiving corporation (Korean) | | `consentPage.dataRecipientsContact.en` | String | Conditional | Contact information of the personal information admin of the receiving corporation (English) | | `consentPage.dataRecipientsContact.ja` | String | Conditional | Contact information of the personal information admin of the receiving corporation (Japanese) | | `protocol` | String | Optional | Application protocol - `OAUTH2`: OAuth 2.0 (valid value) | Note Only the fields included in the request body are edited, and the fields not included are not edited. ### Request example The request example is as follows: ``` curl --location --request PUT 'https://sso.apigw.ntruss.com/api/v1/applications/13080d64-****-****-****-c176d6cafd34' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --data '{ "name" : "application000", "description" : "aplication000 description", "applicationUrl" : "http://****.com", "applicationType" : "web", "mbrLoginAllow" : "ALLOW", "redirectUris" : [ "http://****.com" ], "postLogoutRedirectUris" : [ "https://****.com" ], "clientAuthMethod" : "client_secret_basic", "accessType" : "confidential", "grantTypes" : [ "authorization_code", "refresh_token" ], "scopes" : [ "profile" ], "accessTokenValidity" : 43200, "refreshTokenValidity" : 2592000, "consentPage" : { "applicationName" : { "ko" : "네이버 클라우드 플랫폼" }, "useLanguages" : [ "ko" ], "defaultLanguage" : "ko", "usePurposeDesc" : { "ko" : "로그인" }, "usePeriodDesc" : { "ko" : "365일" }, "dataTransferAbroad" : true, "dataTransferCountry" : { "ko" : "국가 이름" }, "dataRecipients" : { "ko" : "네이버 클라우드 플랫폼" }, "dataRecipientsContact" : { "ko" : "******@ncloud.com" } }, "protocol" : "OAUTH2" }' ``` ## Response This section describes the response format. ### Response body The response body includes the following data: | Field | Type | Required | Description | | --- | --- | --- | --- | | `success` | Boolean | - | API processing result | ### Response status codes For information about the HTTP status codes common to all Ncloud Single Sign-On APIs, see [Ncloud Single Sign-On response status codes](/docs/en/single-sign-on-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` { "success": true } ```