--- title: "batchCreateUsers" slug: "pub-single-sign-on-v2-sso-user-batchcreateusers" updated: 2026-10-05T10:01:00Z published: 2026-10-06T09:48:44Z canonical: "api.ncloud-docs.com/pub-single-sign-on-v2-sso-user-batchcreateusers" --- > ## 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. # batchCreateUsers 이 가이드는 API 명세를 기반으로 AI가 자동 생성했습니다. Classic/VPC 환경에서 이용 가능합니다. Ncloud 표준 표현을 적용한 API입니다. 1개 이상의 SSO User를 일괄 생성합니다. SSO User 생성에 사용한 외부 계정으로 네이버 클라우드 플랫폼에 로그인할 수 있습니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | POST | /users/batch-create | ### 요청 헤더 Ncloud Single Sign-On API에서 공통으로 사용하는 헤더에 대한 정보는 [Ncloud Single Sign-On 요청 헤더](/docs/pub-single-sign-on-v2-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `users` | List<[CreateUserParamV2](/docs/pub-single-sign-on-v2-sso-user-batchcreateusers#CreateUserParamV2)> | Required | SSO User 정보 배열 - 항목 수: 1 ~ 100 | #### CreateUserParamV2 SSO User 생성 요청 | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `loginId` | String (email) | Required | SSO User 로그인 아이디. 생성 후 변경 불가 - 패턴: `^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$` - 길이: 3 ~ 60 - <예시> user@example.com | | `description` | String \| null | Optional | SSO User 설명 - 길이: ~ 300 - <예시> example description | | `userProfile` | Object<[UserProfileParamV2](/docs/pub-single-sign-on-v2-sso-user-batchcreateusers#UserProfileParamV2)> | Optional | SSO User Profile (이름, 이메일, 사원번호, 전화번호, 부서 등) | | `accessRules` | Object<[AccessRulesParam](/docs/pub-single-sign-on-v2-sso-user-batchcreateusers#AccessRulesParam)> | Required | SSO User 접근 규칙 (콘솔/API 접근 허용 여부) | | `tags` | Map \| null | Optional | SSO User의 태그. {tagKey}:{tagValue} 형식 - 속성 수: ~ 20 | | `tags.<키>` | String | - | 태그 값 - <예시> value1 | #### UserProfileParamV2 SSO User Profile | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `firstName` | String \| null | Optional | 이름 - 길이: ~ 200 - <예시> John | | `lastName` | String \| null | Optional | 성 - 길이: ~ 200 - <예시> Doe | | `email` | String (email) \| null | Optional | 이메일 - 패턴: `^(?:[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})?$` - 길이: ~ 200 - <예시> user@example.com | | `employeeNo` | String \| null | Optional | 사원번호 - 길이: ~ 200 - <예시> E12345 | | `phoneCountryCode` | String \| null | Optional | 국가 번호 - 패턴: `^(?:\d{1,4})?$` - 길이: ~ 4 - <예시> 82 | | `phoneNo` | String \| null | Optional | 전화번호 - 패턴: `^(?:\d{3}-\d{3,4}-\d{4}\|\d{9,11})?$` - 길이: ~ 13 - <예시> 010-0000-0000 | | `departmentName` | String \| null | Optional | 부서명 - 길이: ~ 200 - <예시> example-department | #### AccessRulesParam SSO User 접근 규칙 | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `consoleAccessAllowed` | Boolean | Required | 콘솔 접근 허용 여부 - `true` \| `false` - true: 허용 - false: 허용 안 함 - <예시> true | | `apiAccessAllowed` | Boolean | Required | API Gateway 접근 허용 여부 - `true` \| `false` - true: 허용 - false: 허용 안 함 - <예시> true | ### 요청 예시 요청 예시는 다음과 같습니다. ``` curl --location --request POST 'https://sso.apigw.ntruss.com/api/v2/users/batch-create' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --header 'Content-Type: application/json' \ --data '{ "users": [ { "loginId": "user@example.com", "accessRules": { "consoleAccessAllowed": true, "apiAccessAllowed": true } } ] }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `results` | Map<[CreatedUserBatchResponse](/docs/pub-single-sign-on-v2-sso-user-batchcreateusers#CreatedUserBatchResponse)> | - | 처리 성공 항목. 키는 요청 인덱스("0", "1", ...). 포함된 항목은 모두 처리에 성공한 항목이며 success 는 항상 true 입니다. 항목별 실패는 4xx 응답의 failures 로만 전달됩니다. | #### CreatedUserBatchResponse 일괄 생성된 SSO User 정보 | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `userId` | String (uuid) | - | SSO User 아이디 - <예시> 1a2b3c4d-1111-4abc-8def-0123456789ab | | `loginId` | String (email) | - | SSO User 로그인 아이디 - <예시> user@example.com | | `nrn` | String | - | SSO User에 대한 네이버 클라우드 플랫폼 리소스 식별 값 - <예시> nrn:PUB:SSO::1234567:User/1a2b3c4d-1111-4abc-8def-0123456789ab | ### 응답 상태 코드 Ncloud Single Sign-On API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Ncloud Single Sign-On 응답 상태 코드](/docs/pub-single-sign-on-v2-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. 이 API에만 해당하는 응답 상태 코드는 다음과 같습니다. | HTTP 상태 코드 | 코드 | 메시지 | 설명 | | --- | --- | --- | --- | | 201 | - | - | 자원 생성 성공 | | 400 | AlreadyExists | The resource with the name requested already exists. | 이미 사용 중인 이름·Tenant 별칭·로그인 아이디 입력, 이미 생성된 External IdP 또는 이미 등록된 IdP 인증서 | | 400 | ResourceLimitExceeded | The request exceeds the resource limit. | 생성 가능한 자원 수 초과, SP·IdP 인증서 2장 초과 | | 404 | NotFound | One or more of the resources in the request does not exist in the system. | 잘못된 URL 요청, 마스터 계정에 Organization이 존재하지 않음, 존재하지 않는 관리형 정책(System Managed) 아이디 입력, SSO User에 MFA Device가 존재하지 않음 | | 404 | ResourceNotFound | The specified resource could not be found. | 생성된 Tenant가 없음, 존재하지 않는 자원 아이디 입력 | | 409 | AlreadyExists | The resource with the name requested already exists. | 이미 사용 중인 이름·Tenant 별칭·로그인 아이디 입력, 이미 생성된 External IdP 또는 이미 등록된 IdP 인증서 | ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "results": { "key": { "userId": "1a2b3c4d-1111-4abc-8def-0123456789ab", "loginId": "user@example.com", "nrn": "nrn:PUB:SSO::1234567:User/1a2b3c4d-1111-4abc-8def-0123456789ab" } } } ```