The page has been translated by Gen AI.
Open API guides
SingleID Open API Guides
To use the Samsung Cloud Platform SingleID Open API, the system must first be registered in Applications. You must obtain a JWT token with the registered system information and include the JWT token in the HTTP header when calling the Samsung Cloud Platform SingleID Open API.
API Call Method
- Call with the token (JWT Token) value included in the HTTP header
- Set the access token header name to Authorization, and set the access token type value to Bearer - set the JWT Token value after the Bearer string.
- Test environment information
- domain :
- Internal: stg-scloud.iam.samsung.net
- External: stg2-cloud.singleid.samsung.net
- tenant-name : test-tenant
- domain :
- Test Swagger UI URL
API List
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | get MFA Token | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/{tenant-name}/user/mfa/token/authentication | GET | MFA token issuance |
| Portal Common | OTP Send | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/otp/send | POST | Generate OTP based on the authentication type (email, sms, msg) |
| Portal Common | OTP Validation | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/otp/validate | POST | OTP verification |
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request | GET | MFA request |
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request | POST | MFA request |
| Tenant Admin Portal | Send Email about Anomaly Detection | https://{domain}/{tenant-name}/admin-api/open/v1.1/emails/anomalyDetection | POST | Send email to the user when abnormal authentication activity is detected |
| Tenant Admin Portal | Send Email about New Sign-in Environment | https://{domain}/{tenant-name}/admin-api/open/v1.1/emails/newSignInEnvironment | POST | Send user verification email upon logging into a new environment |
| User Portal | Get User | https://{domain}/{tenant-name}/user-api/open/v1.1/users/{username} | GET | User name, email, preferred language, timezone lookup |
| User Portal | Get User Profile Image | https://{domain}/{tenant-name}/user-api/open/v1.1/users/image/{username} | GET | Retrieve user profile image |
| User Portal | Create account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/create | POST | Create user SCP permission |
| User Portal | Delete account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/delete | POST | Delete user SCP permission |
| User Portal | Get account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/list | GET | User SCP permission lookup |
| User Portal | Search User | https://{domain}/{tenant-name}/user-api/1.0/scp-user/list | GET | Search SCP target user |
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request/mfa | POST | MFA request (including device) |
| Portal Common | MFA Consumer Verification | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/verification/mfa | POST | MFA verification (including equipment) |
Table. API list
API Specification - get MFA Token(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | get MFA Token | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/{tenant-name}/user/mfa/token/authentication | GET | MFA Token issuance |
Table. get MFA Token(Portal Common)
Request Parameters
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| Tenant name | tenant-name | Y | Path | String | test-tenant | |
| username | userName | Y | query | String | mkdir.kim | |
| Protocol | protocol | Y | query | String | uma-uaf | |
| sessionDataKey | sessionDataKey | N | query | String | sessionDataKey1 | |
| redirectUrl | redirectUrl | N | query | String | redirectUrl1 | |
| errorRedirectUrl | errorRedirectUrl | N | query | String | errorRedirectUrl1 | |
| params | params | N | query | String | params1 | |
| language | language | N | query | String | ko |
Table. Request Parameters
Response Parameters
| Properties (Result) | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| Result | result | String | SUCCESS | |
| Result value | value | Object | {"token": "eyJpc3MiOiJodHRwczov...","serviceUri": "/ua/MPHTOCHW5I/de6f67d0-8bec-46ac-bf53-16ef00eb2066/dgauth/mfa"} |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg-scloud.singleid.samsung.net:443/stg4/user-api/1.0/scp-auth/delete" -H "accept: application/json"-H "apiKey: {apiKey}" INPUT JSON{ "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" } | { "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" "status": "SUCCESS", "createdDate": "2024-04-03T01:58:46.538Z", "failureReason": "" } |
Table. Sample
Error Code
| HTTP Response Code | Error Code | Error Message | Action Required |
|---|---|---|---|
| 400 | N/A | N/A | userName verification required |
Table. Error Code
API Specification - OTP Send(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | OTP Send | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/otp/send | POST | Generate OTP based on authentication type (email, sms, msg) |
Table. OTP Send (Portal Common)
Request Parameters
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| locale | locale | Y | body | String | ko | |
| Authentication type | type | Y | body | String | email, sms, msg | |
| userName | userName | Y | body | String | gildong.hong |
Table. Request Parameters
Response Parameters
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| otpString | otpString | String | 0000000c5bb286c166530ac928d0bdf1f0894ed3a6d891eb3ab7ec89fc9faef7817b9f2f02f8c89ae91558cdc9afec94d6bede93a91d9825f4fe14dc2a282f6456d09f823d194570bc91b353830826e69d5f818172c12dbdb7b524 |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
ccurl -X POST "https://localhost:7443/open/v1.1/asis/otp/send" -H "accept: */*" -H "Content-Type: application/json" -d "{\"locale\":\"ko\",\"type\":\"email\",\"userName\":\"gildong.hong\"}" | { "otpString": 0000000c5bb286c166530ac928d0bdf1f0894ed3a6d891eb3ab7ec89fc9faef7817b9f2f02f8c89ae91558cdc9afec94d6bede93a91d9825f4fe14dc2a282f6456d09f823d194570bc91b353830826e69d5f818172c12dbdb7b524} |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 404 | N/A | N/A | When the user does not exist |
| 429 | N/A | N/A | Duplicate call within 60 seconds |
| 500 | N/A | N/A | Server error, check the error message and contact the administrator |
Table. Error Code
API Specification - OTP Validation(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | OTP Validation | https://{domain}/{tenant-name}/common-api/open/v1.1/asis/otp/validate | POST | Validate the OTP. |
Table. OTP Validation(Portal Common)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| userName | userName | Y | Body | String | gildong.hong | |
| otp(6 digits) | otp | Y | Body | String | 121215 | |
| checkValue | checkValue | Y | Body | String | 0000000c5bb286c166530ac928d0bdf1f0894ed3a6d891eb3ab7ec89fc9faef7817b9f2f02f8c89ae91558cdc9afec94d6bede93a91d9825f4fe14dc2a282f6456d09f823d194570bc91b353830826e69d5f818172c12dbdb7b524 | The otpString value received in the response from sendOtp |
| Authentication type | type | Y | Body | String | email, sms, msg |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| Result | result | String | SUCCESS |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
| curl -X POST “https://localhost:7443/open/v1.1/asis/otp/validate” -H “accept: /” -H “Content-Type: application/json” -d “{"checkValue":"0000000c5bb286c166530ac928d0bdf1f0894ed3a6d891eb3ab7ec89fc9faef7817b9f2f02f8c89ae91558cdc9afec94d6bede93a91d9825f4fe14dc2a282f6456d09f823d194570bc91b353830826e69d5f818172c12dbdb7b524","otp":"791462","type":"email","userName":"gildong.hong"}” | { “result”: “success” } |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | N/A | When the OTP is entered incorrectly |
| 404 | N/A | N/A | When the user does not exist |
| 410 | N/A | N/A | When the OTP expires |
| 429 | N/A | N/A | When API failure calls exceed 10 times |
| 500 | N/A | N/A | Server error, check the error message and contact the administrator |
Table. Error Code
API Specification - MFA Consumer Reques(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request | GET | Request MFA. |
Table. MFA Consumer Reques(Portal Common)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| JWT Token | jwtTokenRequest | Y | query | String | eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJqaW5vbmUua2ltIiwiZGlzcGxheVVpZCI6Imppbm9uZS5raW1Ac2Ftc3VuZy5jb20iLCJlbWFpbCI6ImxUL3p4WngxNk81REo2SU91Z2VnRW9wVGk2eDh5bkxXY3NHLzRaWFE2TVlDSzNQV05oTS9hQUFnQmpkSEJMN1hkcFA2Y25jNCIsIm1vYmlsZSI6InlkVU54ZVl6YkNOY0xEYnFqN01rL2ZCdFcvaHZoRE1Bbm9lNzhRVTRvQTAzZUlwN2NsOVFpSGFoIiwicnRuIjoiaHR0cHM6Ly9zdGcxLWNsb3VkLnNpbmdsZWlkLnNhbXN1bmcubmV0L21vY2svcW1zL21mYS1jb25zdW1lci9yZXN1bHQiLCJyZXEiOiI3NjFlZmQ1Mi05N2QwLTQ1MWYtOWNmOS1jZjg2NzQwZTdjYTMiLCJzeXMiOiI4MDE0ODYyMS04MjZmLTQ5YmUtOGM5ZS0zMTE1ZTUzMDFlMWIiLCJuYmYiOjE3MTIwMjkxNDIsImV4cCI6MTcxNDYyMTE0MiwiaWF0IjoxNzEyMDI5MTQyfQ.-FWTK4IJsu8AonfJTTq7_OA1qAh-9FU89iC1JZcRg_c | Token original data sample{ "sys":"test-system", "req":"761efd52-97d0-451f-9cf9-cf86740e7ca3", "uid":"gildong.hong", "rtn":"https://test.com/mfa/response","email":"gildong.hong@samsung.com","mobile":"+82-1012345678", "nbf": 1698232068, "exp": 1698239268, "iat": 1698232068, "displayUid": "gildong.hong@samsung.com" } |
Table. Request Parameters
Response
Redirects to the MFA authentication page. By default, the response token is transmitted using POST, but to transmit it using GET (query), add the following parameter to the request token.
- returnMethod: get
Sample
| Request | Response |
|---|---|
curl -X GET "https://stg2-cloud.singleid.samsung.net/test-tenant/common-api/open/v1.1/mfa/request?jwtTokenRequest=eyJhbGciOiJIUzI1NiJ9.eyJzeXMiOiJ0ZXN0LXN5c3RlbSIsInJlcSI6Ijc2MWVmZDUyLTk3ZDAtNDUxZi05Y2Y5LWNmODY3NDBlN2NhMyIsInVpZCI6Imppbm9uZS5raW0iLCJydG4iOiJodHRwczovL3Rlc3QuY29tL21mYS9yZXNwb25zZSIsIm5iZiI6MTY5ODIzMjA2OCwiZXhwIjoxNjk4MjM5MjY4LCJpYXQiOjE2OTgyMzIwNjh9.cDgKMHIINaHhBiyAd_OIlVvQwmUs0QaXH_RfJ8B_KdY" | Page navigation |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | N/A | Check token data. |
Table. Error Code
API Specification - MFA Consumer Reques(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request | POST | Request MFA. |
Table. MFA Consumer Reques(Portal Common)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| JWT Token | jwtTokenRequest | Y | query | String | eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiJqaW5vbmUua2ltIiwiZGlzcGxheVVpZCI6Imppbm9uZS5raW1Ac2Ftc3VuZy5jb20iLCJlbWFpbCI6ImxUL3p4WngxNk81REo2SU91Z2VnRW9wVGk2eDh5bkxXY3NHLzRaWFE2TVlDSzNQV05oTS9hQUFnQmpkSEJMN1hkcFA2Y25jNCIsIm1vYmlsZSI6InlkVU54ZVl6YkNOY0xEYnFqN01rL2ZCdFcvaHZoRE1Bbm9lNzhRVTRvQTAzZUlwN2NsOVFpSGFoIiwicnRuIjoiaHR0cHM6Ly9zdGcxLWNsb3VkLnNpbmdsZWlkLnNhbXN1bmcubmV0L21vY2svcW1zL21mYS1jb25zdW1lci9yZXN1bHQiLCJyZXEiOiI3NjFlZmQ1Mi05N2QwLTQ1MWYtOWNmOS1jZjg2NzQwZTdjYTMiLCJzeXMiOiI4MDE0ODYyMS04MjZmLTQ5YmUtOGM5ZS0zMTE1ZTUzMDFlMWIiLCJuYmYiOjE3MTIwMjkxNDIsImV4cCI6MTcxNDYyMTE0MiwiaWF0IjoxNzEyMDI5MTQyfQ.-FWTK4IJsu8AonfJTTq7_OA1qAh-9FU89iC1JZcRg_c | Token original data sample{ "sys":"test-system", "req":"761efd52-97d0-451f-9cf9-cf86740e7ca3", "uid":"gildong.hong", "rtn":"https://test.com/mfa/response","email":"gildong.hong@samsung.com","mobile":"+82-1012345678", "nbf": 1698232068, "exp": 1698239268, "iat": 1698232068, "displayUid": "gildong.hong@samsung.com" } |
| MFA Consumer Home move status | registerFlag | Y | query | Boolean | true | Determines whether to navigate to the MFA Consumer Home. If true, it navigates to the MFA Consumer Home. |
Table. Request Parameters
Response
- When registerFlag = true: Redirect to MFA Consumer Home.
- When registerFlag = false: Redirect to the MFA authentication page.
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg2-cloud.singleid.samsung.net/test-tenant/common-api/open/v1.1/mfa/request?jwtTokenRequest=eyJhbGciOiJIUzI1NiJ9.eyJzeXMiOiJ0ZXN0LXN5c2t5bSIsInJlcSI6Ijc2MWVmZDUyLTk3ZDAtNDUxZi05Y2Y5LWNmODY3NDBlN2NhMyIsInVpZCI6Imppbm9uZS5raW0iLCJydG4iOiJodHRwczovL3Rlc3QuY29tL21mYS9yZXNwb25zZSIsIm5iZiI6MTY5ODIzMjA2OCwiZXhwIjoxNjk4MjM5MjY4LCJpYXQiOjE2OTgyMzIwNjh9.cDgKMHIINaHhBiyAd_OIlVvQwmUs0QaXH_RfJ8B_KdY®isterFlag=true" | Page navigation |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | N/A | Checking token data. |
Table. Error Code
API Specification - Send Email about Anomaly Detection(Tenant Admin Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Tenant Admin Portal | Send Email about Anomaly Detection | https://{domain}/{tenant-name}/admin-api/open/v1.1/emails/anomalyDetection | POST | An email is sent when a user is detected engaging in abnormal authentication behavior. |
Table. Send Email about Anomaly Detection (Tenant Admin Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| User IP | accessIP | Y | Body | String | 10.0.0.0 | |
| Registration time | detectionTime | Y | Body | String | 2023-09-10 23:01:01 | |
| Y | Body | String | gildong.hong@samsung.com | |||
| User environment | environment | Y | Body | String | PC / Window / Chrome | |
| Language | language | Y | Body | String | ko | |
| Network environment (internal/external) | location | Y | Body | String | Internal | |
| Detection rule number | rule | Y | Body | String | P001 | |
| User account | username | Y | Body | String | gildong.hong | |
| Authentication unique value | envGuid | Y | Body | String | d8b09752-405a-4d52-8605-bff9aa3f4741 |
Table. Request Parameters
Response Parameter
| Properties | Data Type | Sample Data | Note |
|---|---|---|---|
| Result | boolean | true | true when mail sending succeeds / false when it fails |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg1-cloud.singleid.samsung.net:443/test-tenant/admin-api/open/v1.1/emails/anomalyDetection" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"accessIP\":\"10.0.0.0\",\"detectionTime\":\"2023-09-10 23:01:01\",\"email\":\"gildong.hong@samsung.com\",\"environment\":\"PC / Window / Chrome\",\"language\":\"ko\",\"location\":\"Internal\",\"rule\":\"P001\",\"username\":\"gildong.hong\",\"envGuid\":\"d8b09752-405a-4d52-8605-bff9aa3f4741\"}" | true |
Table. Sample
Error code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | N/A | Bad Request |
| 403 | N/A | N/A | Forbidden |
| 500 | N/A | N/A | Internal Server Error |
Table. Error Code
API Specification - Send Email about New Sign-in Environment(Tenant Admin Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Tenant Admin Portal | Send Email about New Sign-in Environment | https://{domain}/{tenant-name}/admin-api/open/v1.1/emails/newSignInEnvironment | POST | When a user logs in to a new environment, a notification is sent to the user and an email is dispatched to confirm the environment registration. |
Table. Send Email about New Sign-in Environment (Tenant Admin Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| User IP | accessIP | Y | Body | String | 10.0.0.0 | |
| Registration time | detectionTime | Y | Body | String | 2023-09-10 23:01:01 | |
| Y | Body | String | gildong.hong@samsung.com | |||
| User environment | environment | Y | Body | String | PC / Window / Chrome | |
| language | language | Y | Body | String | ko | |
| Network environment (internal/external) | location | Y | Body | String | Internal | |
| Detection rule number | rule | Y | Body | String | P001 | |
| User account | username | Y | Body | String | gildong.hong | |
| Authentication unique value | envGuid | Y | Body | String | d8b09752-405a-4d52-8605-bff9aa3f4741 |
Table. Request Parameters
Response Parameter
| Properties | Data Type | Sample Data | Note |
|---|---|---|---|
| Result | boolean | true | true when mail sending succeeds / false when it fails |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
| curl -X POST “https://stg1-cloud.singleid.samsung.net:443/test-tenant/admin-api/open/v1.1/emails/anomalyDetection" -H “accept: application/json” -H “Content-Type: application/json” -d “{"accessIP":"10.0.0.0","detectionTime":"2023-09-10 23:01:01","email":"gildong.hong@samsung.com","environment":"PC / Window / Chrome","language":"ko","location":"Internal","rule":"P001","username":"gildong.hong","envGuid":"d8b09752-405a-4d52-8605-bff9aa3f4741"}” | true |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action plan |
|---|---|---|---|
| 400 | N/A | N/A | Bad Request |
| 403 | N/A | N/A | Forbidden |
| 500 | N/A | N/A | Internal Server Error |
Table. Error Code
API Specification - Get User(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Get User | https://{domain}/{tenant-name}/user-api/open/v1.1/users/{username} | GET | Retrieves the user’s name, email, preferred language, and timezone data. |
Table. Get User(User Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| User ID | username | Y | Path | String | gildong.hong |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| User ID | username | String | gildong.hong | |
| String | gildong.hong@stage.samsung.com | |||
| Name | formattedName | String | Dongho Kim | |
| Name | givenName | String | Dongho | |
| Surname | familyName | String | Kim | |
| English Full Name | enFormattedName | String | Dongho Kim | |
| English name | enGivenName | String | Dongho | |
| English surname | enFamilyName | String | Kim | |
| Preferred language | preferredLanguage | String | ko | 1) en : English 2) ko : Korean |
| Time zone | timeZone | String | Asia/Seoul |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X GET "https://stg2-cloud.singleid.samsung.net/test-tenant/user-api/open/v1.1/users/gildong.hong" -H "accept: application/json" -H "Authorization: Bearer {JWT_TOKEN}" | { “username”: “gildong.hong”, “email”: “gildong.hong@stage.samsung.com”, “formattedName”: “Kim Dongho”, “givenName”: “Dongho”, “familyName”: “Kim”, “enFormattedName”: “Dongho Kim”, “enGivenName”: “Dongho”, “enFamilyName”: “Kim”, “preferredLanguage”: “ko”, “timeZone”: “Asia/Seoul” } |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 401 | N/A | N/A | We need to verify whether the JWT Token is valid. |
Table. Error Code
API Specification - Get User Profile Image(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Get User Profile Image | https://{domain}/{tenant-name}/user-api/open/v1.1/users/image/{username} | GET | Retrieves the user’s profile image data. |
Table. Get User Profile Image(User Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| User ID | username | Y | Path | String | gildong. hong |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| username | username | String | null | |
2) File URL :  | –> |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X GET "https://stg2-cloud.singleid.samsung.net:443/test-tenant/user-api/open/v1.1/users/image/gildong.hong" -H "accept: application/json" -H "Authorization: Bearer {JWT_TOKEN}" | File data { "username": null, "image": "" } File URL `{ “username”: “gildong.hong”, “image”: “” } |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 401 | N/A | N/A | We need to verify whether the JWT Token is valid. |
Table. Error Code
API Specification - Create account assignment list(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Create account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/create | POST | Create SCP permissions for the user. |
Table. Create account assignment list (User Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| instance id | instanceId | Y | JSON | String | SCP provision | |
| permission set id | permissionSetId | Y | JSON | String | PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf | SCP provision |
| principal id | principalId | Y | JSON | String | gildong.hong | user’s username |
| principal type | principalType | Y | JSON | String | USER | Only the current USER is allowed |
| target id | targetId | Y | JSON | String | “PROJECT-ka2tfhLHsweVwm4BrR1rae” | PROJECT ID, SCP provided |
| target type | targetType | Y | JSON | String | PROJECT | Only the current PROJECT functions |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| instance id | instanceId | JSON | Return stored value | |
| permission set id | permissionSetId | JSON | PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf | saved value |
| principal id | principalId | JSON | gildong.hong | saved value |
| principal type | principalType | JSON | USER | Return stored value |
| target id | targetId | JSON | “PROJECT-ka2tfhLHsweVwm4BrR1rae” | Return stored value |
| target type | targetType | JSON | PROJECT | Return stored value |
| status | status | JSON | “SUCCESS” | Success or failure |
| failure reason | failureReason | JSON | Reason for failure | |
| created date | createdDate | JSON | Creation Date/Time |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg-scloud.singleid.samsung.net:443/stg4/user-api/1.0/scp-auth/create" -H "accept: application/json"-H "apiKey: {apiKey}" INPUT JSON{ "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" } | { "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" "status": "SUCCESS", "createdDate": "2024-04-03T01:58:46.538Z", "failureReason": "" } |
Table. Sample
API Specification - Delete account assignment list(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Delete account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/create](https://{domain}/{tenant-name}/user-api/1.0/scp-auth/delete) | POST | Delete the SCP permission for the user. |
Table. Delete account assignment list (User Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| instance id | instanceId | Y | JSON | String | SCP provision | |
| permission set id | permissionSetId | Y | JSON | String | PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf | SCP provision |
| principal id | principalId | Y | JSON | String | gildong.hong | user’s username |
| principal type | principalType | Y | JSON | String | USER | Only the current USER is allowed. |
| target id | targetId | Y | JSON | String | “PROJECT-ka2tfhLHsweVwm4BrR1rae” | PROJECT ID, SCP provided |
| target type | targetType | Y | JSON | String | PROJECT | Only the current PROJECT functions |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| instance id | instanceId | JSON | Return deleted value | |
| permission set id | permissionSetId | JSON | PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf | Return deleted value |
| principal id | principalId | JSON | gildong.hong | Return deleted value |
| principal type | principalType | JSON | USER | Return deleted value |
| target id | targetId | JSON | “PROJECT-ka2tfhLHsweVwm4BrR1rae” | Return deleted value |
| target type | targetType | JSON | PROJECT | Return deleted value |
| status | status | JSON | “SUCCESS” | Success or failure |
| failure reason | failureReason | JSON | Reason for failure | |
| created date | createdDate | JSON | Deletion time |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X GET "https://stg1-cloud.singleid.samsung.net/test-tenant/common-api/open/v1.1/asis/test-tenant/user/mfa/token/authentication?userName=mkdir.kim&protocol=uma-uaf&sessionDataKey=sessionDataKey111&redirectUrl=redirectUrl1111&errorRedirectUrl=errorRedirectUrl1111¶ms=params111&language=ko" | { "result": "SUCCESS", "value": { "token": "eyJpc3MiOiJodHRwczovL3N0ZzItY2xvdWQuaWFtLnNhbXN1bmcubmV0Iiwic3ViIjoibWtkaXIua2ltIiwiYXVkIjoiaHR0cHM6Ly9zdGcyLWNsb3VkLmlhbS5zYW1zdW5nLm5ldCIsImV4cCI6MTY5ODEyOTM2OSwiaWF0IjoxNjk4MTI5MTg5LCJqdGkiOiJkNWZmZGE5Ny1mMzZkLTRjZDktYWJmZi1mMzY4ZTkxYWVkNTUiLCJhbXIiOltdLCJ6b25laW5mbyI6IkFzaWEvU2VvdWwiLCJsb2NhbGUiOiJlbl9VUyIsInByb3RvY29sIjoidW1hLXVhZiIsInJlZGlyZWN0X3VybCI6InJlZGlyZWN0VXJsMSIsImVycm9yX3JlZGlyZWN0X3VybCI6ImVycm9yUmVkaXJlY3RVcmwxIiwicGFyYW1zIjoicGFyYW1zMSIsInVzZXJJZCI6Im1rZGlyLmtpbSJ9:MEUCIHqWV_UcgKHsMlDI7Ks31fw1QPpCYnKorMpnr2L653LwAiEAz30ShMmACEi6H-IuF1YMV2bKT1WIFmAdJ6OCsmEzscA", "serviceUri": "/ua/MPHTOCHW5I/de6f67d0-8bec-46ac-bf53-16ef00eb2066/dgauth/mfa", "appId": null }, "message": "succeeded to get nexsign token.", "statusCode": null, "statusCodeValue": "0", "data": null} |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | N/A | You need to verify the userName. |
Table. Error Code
API Specification - Get account assignment list(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Get account assignment list | https://{domain}/{tenant-name}/user-api/1.0/scp-auth/list | POST | Retrieves the SCP permissions for a user. |
Table. Get account assignment list(User Portal)
Request Parameter
| No. | Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|---|
| 1 | principal type | principalType | Y | query | String | USER | Only the current USER is allowed |
| 2 | principal id | principalId | Y | query | String | gildong.hong | username of the user to query |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| instance id | instanceId | JSON | ||
| permission set id | permissionSetId | JSON | PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf | |
| principal id | principalId | JSON | gildong.hong | |
| principal type | principalType | JSON | USER | |
| target id | targetId | JSON | “PROJECT-ka2tfhLHsweVwm4BrR1rae” | |
| target type | targetType | JSON | PROJECT |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X GET "https://stg-scloud.singleid.samsung.net:443/stg4/user-api/1.0/scp-auth/list?principalType=USER&principalId=singleid.test001" -H "accept: application/json" -H "apiKey: {apiKey}" | [ { "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMeqlf", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" }, { "instanceId": "instnace-01", "permissionSetId": "PERMISSION-SET-Ablxc5__qEaIYmWGyMe121", "principalId": "singleid.test001", "principalType": "USER", "targetId": "PROJECT-ka2tfhLHsweVwm4BrR1rae", "targetType": "PROJECT" } ] |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 401 | N/A | N/A | It is necessary to verify that the API key is valid. |
Table. Error Code
API Specification - Search User(User Portal)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| User Portal | Search User | https://{domain}/{tenant-name}/user-api/1.0/scp-user/list | POST | Search for the SCP target user. |
Table. Search User (User Portal)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| page | page | N | query | Integer | 0 | Page to fetch |
| size | size | N | query | Integer | 10 | Page size |
| username | username | N | query | String | gildong.hong | User ID to query |
| group name | groupName | N | query | String | ADGroup | Group to query |
| create Date(from) | creationDateGe | N | query | DateTime | “2024-04-03T07:49:23.845Z” | |
| create Date(to) | creationDateLe | N | query | DateTime | “2024-04-03T07:49:23.845Z” | |
| last change date(from) | lastChangeDateGe | N | query | DateTime | “2024-04-03T07:49:23.845Z” | |
| last change date(to) | lastChangeDateLe | N | query | DateTime | “2024-04-03T07:49:23.845Z” |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| key | key | String | “01890501-74fa-7785-91e0-67bd71217a2e” | |
| username | username | String | gildong.hong | |
| administrator | administrator | Boolean | false | |
| formatted name | formattedName | String | Gil-dong Hong | |
| formatted Name(en) | enFormattedName | String | “gildong hong” | |
| String | “gildong.hong@samsung.com” | |||
| mobile | mobile | String | +02-01011112222 | |
| preferred language | preferredLanguage | String | ko | |
| time zone | timeZone | String | “Asia/Seoul” | |
| managed by | managedBy | String | SINGLEID | |
| creator | creator | String | “admin001” | |
| creation date | creationDate | DateTime | “2024-04-03T07:49:23.845Z” | |
| last modifier | lastModifier | String | “admin001” | |
| last change date | lastChangeDate | DateTime | “2024-04-03T07:49:23.845Z” |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg-scloud.singleid.samsung.net:443/stg4/user-api/1.0/scp-user/list" -H "accept: application/json" -H "apiKey: {apiKey}" | [ { “key”: “01890501-74fa-7785-91e0-67bd71217a2e”, “administrator”: false, “username”: “gildong.hong”, “enFormattedName”: “gildong hong”, “formattedName”: “Gildong Hong”, “email”: “gildong.hong@samsung.com”, “mobile”: “+02-01011112222”, “preferredLanguage”: “ko”, “timeZone”: “Asia/Seoul”, “managedBy”: “SINGLEID”, “creator”: “admin001”, “creationDate”: “2024-04-03T07:49:23.845Z”, “lastModifier”: “admin001”, “lastChangeDate”: “2024-04-03T07:49:23.845Z” }, { “key”: “01890501-74fa-7785-91e0-67bd71217a2e”, “administrator”: false, “username”: “gildong.hong”, “enFormattedName”: “gildong hong”, “formattedName”: “Gildong Hong”, “email”: “gildong.hong@samsung.com”, “mobile”: “+02-01011112222”, “preferredLanguage”: “ko”, “timeZone”: “Asia/Seoul”, “managedBy”: “SINGLEID”, “creator”: “admin001”, “creationDate”: “2024-04-03T07:49:23.845Z”, “lastModifier”: “admin001”, “lastChangeDate”: “2024-04-03T07:49:23.845Z” } ] |
Table. Sample
Error Code
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 401 | N/A | N/A | It is necessary to verify that the API key is valid. |
Table. Error Code
API Specification - MFA Consumer Request(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | MFA Consumer Request | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/request/mfa | POST | Request MFA. |
Table. MFA Consumer Request(Portal Common)
Request Parameter
| No. | Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|---|
| 1 | username | username | Y | Body | String | mkdir.kim | |
| 2 | Authentication type | type | N | Body | String | One of email, sms, msg, uaApp, uaMOTP. If unspecified, follow the default setting or the user’s preferred method. | |
| 3 | serviceProviderId | serviceProviderId | Y | Body | String | d8b09752-405a-4d52-8605-bff9aa3f4741 | UUID. Device-specific ID generated after registration in the SingleID Admin Portal. |
Table. Request Parameters
Response Parameter
| Properties | Attribute | Data Type | Sample Data | Note |
|---|---|---|---|---|
| requestId | requestId | String | 01890501-74fa-7785-91e0-67bd71217a2e | UUID. Used as a request parameter during MFA verification. |
| Authentication type | type | String | sms | email, sms, msg, uaApp, or uaMOTP. The verification logic may vary depending on the MFA type. |
| otp | otp | String | 123456 | A 6-digit or 8-digit number. Issued only when the type is uaMOTP (6 digits) or uaApp (8 digits). |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg1-cloud.singleid.samsung.net:443/test/common-api/open/v1.1/mfa/request/mfa" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"username\":\"mkdir.kim\",\"type\":\"sms\",\"serviceProviderId\":\"dceef541-1f22-479d-96ac-c402ab0789e9\"} | { “otp”: “123456”, “requestId”: “d8b09752-405a-4d52-8605-bff9aa3f4741”, “serviceProviderId”: “”, “type”: “sms”, “username”: "" } |
Table. Sample
Error Codes and Responses
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | common.error.requiredValue | A required value is missing. Please check. |
| 400 | N/A | user.error.notFound | User not found. Please verify the user ID. |
| 400 | N/A | serviceProvider.error.notFound | Service provider not found. Please contact the administrator. |
| 400 | N/A | authenticator.error.notFound | Authentication method not found. Please contact the administrator. |
| 400 | N/A | common.error.disallowedValue | Invalid type. Please contact the administrator. |
| 400 | N/A | user.error.locked + remain | Your account is locked. Please try again after {remain} minutes. |
| 400 | N/A | otp.error.tooManyAttempts | Go to the security warning screen (your account has been locked due to multiple authentication failures) |
Table. Error Code
API Specification - MFA Consumer Verification(Portal Common)
| Module | API | URI | Method | Description |
|---|---|---|---|---|
| Portal Common | MFA Consumer Verification | https://{domain}/{tenant-name}/common-api/open/v1.1/mfa/verification/mfa | POST | Verifying MFA. |
Table. MFA Consumer Verification(Portal Common)
Request Parameter
| Properties | Attribute | Mandatory | Parameter Type | Data Type | Sample Data | Note |
|---|---|---|---|---|---|---|
| requestId | requestId | Y | Body | String | d8b09752-405a-4d52-8605-bff9aa3f4741 | UUID |
| otp | otp | N | Body | String | 123456 | 6-digit number / not required for uaApp, uaMOTP |
Table. Request Parameters
Response Parameter
| Http Status Code | status |
|---|---|
| 200 | Authentication complete |
| 202 | Authentication pending (occurs only when type is uaMOTP or uaApp. Periodically poll and verify the result until it is delivered with 200) |
| Other | Error |
Table. Response Parameters
Sample
| Request | Response |
|---|---|
curl -X POST "https://stg1-cloud.singleid.samsung.net:443/test/common-api/open/v1.1/mfa/verification/mfa" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"otp\":\"000000\",\"requestId\":\"095db652-877f-42e5-b87f-e404fb07048b\"}" | { “statusCode”: “ACCEPTED”, } |
Table. Sample
Error Codes
| Http Response Code | Error Code | Error Message | Action Plan |
|---|---|---|---|
| 400 | N/A | common.error.requiredValue | A required value is missing. Please check. |
| 400 | N/A | common.error.invalidRequest | The request could not be found. Please contact the administrator. |
| 400 | N/A | request.error.invalidStatus | The request status is incorrect. Please contact the administrator. |
| 400 | N/A | otp.error.notMatch | Invalid OTP. Please check the OTP. |
| 400 | N/A | otp.error.tooManyAttempts | Go to the security warning screen (your account has been locked due to multiple authentication failures) |
Table. Error Code
