Membuat Akun Perusahaan SSO
Permintaan
| Informasi dasar | |
|---|---|
| URL HTTP | https://api.dingtalk.io/topapi/v2/user/create |
| Metode HTTP | POST |
| Tipe aplikasi yang didukung | appType-Aplikasi internal |
| Izin yang diperlukan | permission-qyapi_manage_addresslist-Izin pengelolaan Kontak |
Parameter kueri
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| access_token | String | Ya | BE3xxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. Dapatkan melalui API Get the access_token of an internal app. |
Isi permintaan
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| userid | String | Tidak | zhangsan | Pengidentifikasi unik karyawan (tidak dapat diubah). Panjang 1 hingga 64 karakter. Catatan - Harus unik di dalam organisasi Anda. - Jika tidak ditentukan, userid akan dibuat secara otomatis. |
| exclusive_account | Boolean | Ya | true | Harus disetel ke true, yang menunjukkan bahwa Akun Perusahaan akan dibuat. Catatan Hanya berlaku untuk Akun Perusahaan. |
| exclusive_account_type | String | Tidak | sso | Harus disetel ke sso, yang menunjukkan Akun Perusahaan SSO. Catatan Hanya berlaku untuk Akun Perusahaan SSO. |
| name | String | Ya | Zhang San | Nama karyawan. Hingga 80 karakter. |
| dept_id_list | String | Ya | ”2,3,4” | Daftar ID departemen tempat karyawan berada. Pisahkan beberapa ID departemen dengan koma (,). Hingga 100 ID departemen per panggilan. |
| telephone | String | Tidak | 010-86123456-2345 | Nomor ekstensi. Hingga 50 karakter. Catatan Nomor ekstensi harus unik di dalam organisasi Anda. |
| job_number | String | Tidak | 4 | ID Karyawan. Hingga 50 karakter. |
| title | String | Tidak | Technical Director | Jabatan. Hingga 200 karakter. |
| String | Tidak | test@xxx.com | Alamat email pribadi karyawan. Hingga 50 karakter. Catatan Alamat email harus unik di dalam organisasi Anda. | |
| org_email | String | Tidak | test@xxx.com | Email Perusahaan karyawan. Hingga 100 karakter. Catatan Bidang ini hanya berlaku jika karyawan telah mengaktifkan Email Perusahaan. |
| org_email_type | String | Tidak | profession | Tipe Email Perusahaan karyawan: - profession: Edisi Standar. - base: Edisi Dasar. |
| work_place | String | Tidak | Future Park | Lokasi Kerja. Hingga 100 karakter. |
| remark | String | Tidak | Alias information | Alias. Hingga 2.000 karakter. |
| dept_order_list | Object[] | Tidak | Urutan karyawan di dalam departemen terkait. | |
| dept_id | Number | Tidak | 2 | ID departemen. |
| order | Number | Tidak | 1 | Urutan karyawan di dalam departemen. Semakin besar nilainya, semakin tinggi posisinya. |
| dept_title_list | Object[] | Tidak | Jabatan karyawan di dalam departemen terkait. | |
| dept_id | Number | Tidak | 2 | ID departemen. |
| title | String | Tidak | Senior Product Manager | Jabatan karyawan di dalam departemen. |
| extension | Object | Tidak | {"Hobby":"Travel","Age":"24"} | Atribut yang diperluas. Beberapa atribut dapat disetel. Hingga 2.000 karakter.Catatan - Hingga 10 atribut yang diperluas dapat ditampilkan di perangkat seluler. - Sebelum menggunakan parameter ini, tambahkan atribut di konsol admin DingTalk, lalu panggil API untuk memberikan nilai. Misalnya, pada halaman Kontak > Pengaturan Kontak Internal > Informasi Kontak, klik tombol Tambah Bidang Kustom. - Nilai bidang ini mendukung tipe tautan. Tautan mendukung penggantian otomatis wildcard variabel. Wildcard yang saat ini didukung adalah userid dan corpid. Misalnya, {"Hobby":"[Hobby](http://www.dingtalk.io?userid=#userid#&corpid=#corpid#)"}. |
| senior_mode | Boolean | Tidak | false | Apakah akan mengaktifkan mode eksekutif. Default: false. - true: Diaktifkan. Catatan - Saat diaktifkan, nomor ponsel disembunyikan dari semua karyawan. - Karyawan biasa tidak dapat mengirim DING atau memulai DingTalk Business Call kepada eksekutif. - Eksekutif dapat mengirim DING dan memulai DingTalk Business Call satu sama lain. - false: Dinonaktifkan. |
| hired_date | Number | Tidak | 1597573616828 | Tanggal perekrutan. Unix timestamp dalam milidetik. |
| manager_userid | String | Tidak | 001 | userId atasan langsung. |
| exclusive_mobile | String | Tidak | +86-13412341234 | Nomor ponsel Akun Perusahaan. Catatan Hanya berlaku untuk Akun Perusahaan. |
| avatarMediaId | String | Tidak | @lALPDfmVUw19YdrNA-jNA-g | Foto Profil MediaId dapat ditentukan saat membuat Akun Perusahaan untuk organisasi Anda. Hanya format jpg dan png yang didukung. Dapatkan dengan memanggil API Upload media files. Catatan Hanya berlaku untuk Akun Perusahaan. |
| nickname | String | Tidak | Nickname | Nama dapat ditentukan saat membuat Akun Perusahaan untuk organisasi Anda. Catatan Hanya berlaku untuk Akun Perusahaan. |
Contoh permintaan
curl -X POST "https://api.dingtalk.io/topapi/v2/user/create" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=871c1df6-bcd5-4acb-b2e9-815b7246d85c' \
-d 'userid=zhangsan'
-d 'exclusive_account=true' \
-d 'name=John' \
-d 'dept_id_list=2,3,4'
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/v2/user/create");
OapiV2UserCreateRequest req = new OapiV2UserCreateRequest();
req.setUserid("12345678");
req.setName("SSO Enterprise Account");
req.setHideMobile(true);
req.setTelephone("123");
req.setJobNumber("123");
req.setTitle("Technical Director");
req.setEmail("test@xxx.com");
req.setOrgEmail("ceshi1");
req.setWorkPlace("Beijing");
req.setRemark("Alias information");
req.setDeptIdList("486882146,609916162");
OapiV2UserCreateRequest.DeptOrder deptOrder1 = new OapiV2UserCreateRequest.DeptOrder();
deptOrder1.setDeptId(486882146L);
deptOrder1.setOrder(2L);
OapiV2UserCreateRequest.DeptOrder deptOrder2 = new OapiV2UserCreateRequest.DeptOrder();
deptOrder2.setDeptId(609916162L);
deptOrder2.setOrder(1L);
ArrayList<OapiV2UserCreateRequest.DeptOrder> deptOrderList = new ArrayList<>();
deptOrderList.add(deptOrder1);
deptOrderList.add(deptOrder2);
req.setDeptOrderList(deptOrderList);
OapiV2UserCreateRequest.DeptTitle deptTitle1 = new OapiV2UserCreateRequest.DeptTitle();
deptTitle1.setTitle("Test position");
deptTitle1.setDeptId(486882146L);
OapiV2UserCreateRequest.DeptTitle deptTitle2 = new OapiV2UserCreateRequest.DeptTitle();
deptTitle2.setTitle("Test owner");
deptTitle2.setDeptId(609916162L);
ArrayList<OapiV2UserCreateRequest.DeptTitle> deptTitleList = new ArrayList<>();
deptTitleList.add(deptTitle1);
deptTitleList.add(deptTitle2);
req.setDeptTitleList(deptTitleList);
req.setExtension("{\"Hobby\":\"Travel\",\"Age\":\"24\"}");
req.setSeniorMode(false);
req.setHiredDate(1650351000000L);
req.setManagerUserid("001");
req.setOrgEmailType("base");
req.setExclusiveAccount(true);
req.setExclusiveAccountType("sso");
req.setExclusiveMobile("150xxxx");
req.setAvatarMediaId("@lADPDfYH3A-xxx");
req.setNickname("Nickname1");
OapiV2UserCreateResponse rsp = client.execute(req, "");
System.out.println(rsp.getBody());
import dingtalk.api
req=dingtalk.api.OapiV2UserCreateRequest("https://api.dingtalk.io/topapi/v2/user/create")
req.userid="zhangsan"
req.name="John"
req.dept_id_list="2,3,4"
req.exclusive_account=true
try:
resp= req.getResponse(access_token)
print(resp)
except Exception,e:
print(e)
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');
$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiV2UserCreateRequest;
$req->setUserid("zhangsan");
$req->setName("John");
$req->setDeptIdList("\"2,3,4\"");
$req->setExclusiveAccount("true");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/v2/user/create");
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/v2/user/create");
OapiV2UserCreateRequest req = new OapiV2UserCreateRequest();
req.Userid = "zhangsan";
req.Name = "John";
req.ExclusiveAccount = true;
OapiV2UserCreateResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
Respons
Isi respons
| Nama | Tipe | Contoh | Deskripsi |
|---|---|---|---|
| errcode | Number | 0 | Kode error. 0 menunjukkan berhasil. |
| errmsg | String | ok | Pesan error. |
| result | Object | Hasil yang dikembalikan. | |
| userid | String | zhangsan | ID Karyawan. |
| unionId | String | xxxx | ID unik karyawan. |
Contoh isi respons
{
"errcode":"0",
"result":{
"unionId":"xxxx",
"userid":"zhangsan"
},
"errmsg":"ok"
}