POST/users/{userId}/move

원직 계정의 도메인 정보를 다른 그룹사 도메인으로 변경하며, 구성원의 외부 키와 ID(primaryEmail), 조직 정보를 함께 변경한다.

참고

  • 삭제된 구성원 또는 최고 관리자는 다른 도메인으로 전배할 수 없다.
  • 외부 메시지 연동과 구성원의 email
    • 외부 메시지 연동 권한이 있는 구성원은 외부 메시지 연동이 허용되지 않은 도메인으로 전배할 수 없다.
    • 외부 메시지 연동 ID로 사용하고 있는 구성원의 email이 수정되면 외부 메시지 연동 ID도 자동으로 수정된다.
    • 이때 변경되는 email에 금칙어(NG WORD)가 포함된 경우, 이전 email을 보조 메일(LITE 상품에서는 보조 ID)로 등록하여 외부 메시지 연동 ID로 계속 사용한다.
  • 원직 도메인 기준으로 설정된 구성원의 사용자 지정 필드값은 삭제된다.

주의

  • 구성원 추가/수정/부분수정/전배API는 동일 구성원에 대해서는 동시에 호출해서는 안되며, 순서대로 호출해야 한다.

Authorization

oauth2

OAuth 2.0 인증.
자세한 인증 방식은 인가·인증를 참고한다.

Scope

user
directory

HTTP Request

POSThttps://www.worksapis.com/v1.0/users/{userId}/move

Path Parameters

ParameterTypeDescription
userId string 

구성원 ID
- 메일
- 리소스 ID
- 외부 키 "externalKey:{externalKey}" 형태


required
example : userf7da-f82c-4284-13e7-030f3b4c756x 

Header Parameters

HeadertypeDescription
Authorization string 

Bearer {token}


required 
Content-Type string 

application/json


required
example : application/json 

Request Body

PropertyTypeDescription
organizations array (UserOrganization) 

조직 정보


minItems : 1 
userExternalKey string 

주의

하위 호환을 위해 다음의 우선순위로 적용된다.

  1. 최상위 경로(root)의 userExternalKey
  2. primary=true인 organizations[].userExternalKey
  3. 첫 번째 organizations[].userExternalKey

고객사에서 관리하는 구성원 외부 키

%, \, #, /, ?는 포함할 수 없다.


maxLength : 100
nullable : true 
preserveGroup boolean 

그룹 유지 여부 (기본값: false) 이 값이 false이면 구성원이 소속되어 있던 그룹이 전배 후에 유지되지 않는다. 따라서 구성원이 사용 중이던 메시지방에서 퇴장하며, 이전 대화 내역을 확인할 수 없게 된다. 전배 후에도 계속 그룹을 유지하려면 이 값을 true로 설정한다.


default : false 

UserOrganization

PropertyTypeDescription
domainId integer 

도메인 ID


required
format : int32 
primary boolean 

대표 도메인 여부

반드시 대표(primary: true)를 하나 설정한다. 대표를 설정하지 않으면 자동으로 첫 번째 값이 대표로 설정된다.


required 
userExternalKey string 

주의

  • organizations[].userExternalKey 대신 최상위 userExternalKey 값을 참조한다.
  • 구성원 추가, 수정, 부분수정 시 값을 전달하더라도 무시하고 반영되지 않는다.

고객사에서 관리하는 구성원 외부 키

%, \, #, /, ?는 포함할 수 없다.


maxLength : 100
nullable : true 
email string 

메일 주소. 원직과 겸직의 메일 주소를 다르게 설정해야 할 때 사용한다.
"admin", "administrator"는 localpart로 사용할 수 없다.


maxLength : 90 
levelId string 

직급 ID. 직급 사용 ON API를 사용하여 설정한다.

  • 직급 ID (직급 ID)
  • 직급의 ExternalKey (externalKey:{levelExternalKey})

nullable : true 
orgUnits array (orgUnit) 

조직 목록


minItems : 0
maxItems : 30 

orgUnit

PropertyTypeDescription
orgUnitId string 

조직 ID

  • 조직 ID (orgUnitId)
  • 조직의 ExternalKey (externalKey:{orgUnitExternalKey})

required 
primary boolean 

대표 조직 여부

반드시 대표(primary: true)를 하나 설정하십시오. 대표를 설정하지 않으면 자동으로 첫 번째 값이 대표로 설정됩니다.


required 
positionId string 

직책 ID. '직책 설정 API'에서 usePosition이 'true'인 경우에만 설정된다. 이 값이 전달되지 않으면 '직책 없음'으로 설정된다.

  • 직책 ID (positionId)
  • 직책의 ExternalKey (externalKey:{positionExternalKey})

nullable : true 
isManager boolean 

조직장 여부(기본값: false). 이미 조직장이 있으면 조직장을 교체한다(기존 조직장은 직책 해제).


default : false 
visible boolean 

구성원 공개 여부(기본값: true). 조직도에서 조직의 구성원으로 표시할지 여부를 나타낸다.


default : true 
useTeamFeature boolean 

조직 기능 사용 여부(기본값: true). 조직의 구성원이긴 하나 조직 메시지방에서의 메시지 수신, 파일 공유나 조직 메일 수신과 같은 보안상 중요한 조직 기능을 제한하고자 할 때 이 파라미터를 이용한다. 이 값이 true이면 다음과 같이 조직의 메시지방 기능을 사용할 수 있다. 조직 메시지방(Message/Note/Calendar/Folder)의 구성원으로 참여하여 메시지를 주고 받거나, 노트를 조회하고, 일정을 공유받고, 폴더를 조회할 수 있다.

  • 조직으로 보낸 메일 수신 가능
  • 조직을 대상으로 초대한 일정을 공유받음
  • 조직 캘린더 조회 가능
  • 조직으로 공유한 드라이브의 파일 조회 가능
  • 조직으로 권한을 부여한 게시판 조회 가능
  • 조직을 대상으로 한 설문에 응답 가능
  • 조직을 그룹의 구성원으로 설정한 경우 그룹의 구성원에 포함 이 값이 false이면 조직에 제공되는 위와 같은 모든 조직 기능을 사용할 수 없다. 조직의 구성원이긴 하나 위와 같은 조직 기능을 사용하지 않는다면 이 값을 false로 설정한다.

default : true 

Request Example

example

1{2  "organizations": [3    {4      "domainId": 10000001,5      "primary": true,6      "email": "localpart@example.com",7      "levelId": "levelaa7-b824-4937-66af-042f1f43cefa",8      "orgUnits": [9        {10          "orgUnitId": "orgunitf-f27f-4af8-27e1-03817a911417",11          "primary": true,12          "positionId": "position-7027-4a02-b838-6f52b5e38db7",13          "isManager": true,14          "visible": true,15          "useTeamFeature": true16        }17      ]18    }19  ],20  "userExternalKey": null,21  "preserveGroup": false22}

Response

HTTP 204

No Content

HTTP 400

Bad Request

HTTP 404

Not Found