Deskripsi panggilan API
API ini memperbarui informasi akun pengguna biasa atau pengguna Akun Perusahaan. Karena penggunaan parameter sangat berbeda antara kedua skenario ini, dokumentasi dibagi berdasarkan jenis akun agar lebih mudah dirujuk:- Untuk memperbarui informasi pengguna biasa, lihat dokumen ini.
- Untuk memperbarui informasi pengguna Akun Perusahaan, lihat Perbarui informasi pengguna Akun Perusahaan.
Permintaan
| Informasi dasar | |
|---|---|
| URL HTTP | https://api.dingtalk.io/topapi/v2/user/update |
| Metode HTTP | POST |
| Jenis aplikasi yang didukung | appType-Aplikasi internal |
| Izin yang diperlukan | permission-qyapi_manage_addresslist-Izin pengelolaan data Kontak |
Parameter kueri
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| access_token | String | Ya | be3Fxxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. Peroleh melalui API untuk mendapatkan access_token dari aplikasi internal. |
Isi permintaan
| Nama | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| userid | String | Ya | user123 | ID pengguna karyawan. |
| name | String | Tidak | Zhang San | Nama karyawan. Panjang maksimum: 80 karakter. |
| hide_mobile | Boolean | Tidak | false | Apakah menyembunyikan nomor telepon: - true: Sembunyikan. Setelah disembunyikan, nomor telepon disembunyikan di halaman profil, tetapi pengguna lain masih dapat mengirim DING dan melakukan panggilan bisnis DingTalk gratis ke pengguna ini. - false: Jangan sembunyikan. |
| telephone | String | Tidak | 010-86123456-2345 | Nomor ekstensi. Panjang maksimum: 50 karakter. Catatan Nomor ekstensi harus unik dalam organisasi Anda. |
| job_number | String | Tidak | 4 | ID Karyawan. Panjang maksimum: 50 karakter. |
| manager_userid | String | Tidak | 0001 | ID pengguna dari atasan langsung. |
| title | String | Tidak | Technical Director | Jabatan. Panjang maksimum: 200 karakter. |
| String | Tidak | test@xxx.com | Email karyawan. Panjang maksimum: 50 karakter. Catatan Email karyawan harus unik dalam organisasi Anda. | |
| org_email | String | Tidak | test@xxx.com | Email Perusahaan karyawan. Catatan Bidang ini hanya berlaku jika Email Perusahaan karyawan telah diaktifkan. |
| work_place | String | Tidak | Future Park | Lokasi Kerja. Panjang maksimum: 100 karakter. |
| remark | String | Tidak | Informasi keterangan | Alias. Panjang maksimum: 2.000 karakter. |
| dept_id_list | String | Tidak | ”2,3,4” | Daftar ID departemen tempat pengguna berada. |
| dept_order_list | DeptOrder[] | Tidak | Urutan pengurutan karyawan dalam setiap departemen. | |
| dept_id | Number | Tidak | 2 | ID departemen. |
| order | Number | Tidak | 1 | Urutan pengurutan karyawan dalam departemen. Nilai yang lebih besar menempatkan karyawan lebih tinggi dalam daftar. |
| extension | Number | Tidak | {"Hobby":"Travel","Age":"24"} | Atribut ekstensi. Panjang maksimum: 2.000 karakter. Catatan - Paling banyak 10 atribut ekstensi dapat ditampilkan di perangkat seluler. - Jika seorang karyawan memiliki 10 bidang atribut ekstensi yang terkonfigurasi, semua 10 bidang harus dikirim selama pembaruan, meskipun nilainya tidak berubah. Jika Anda hanya mengirim satu bidang, sembilan bidang lainnya akan dikosongkan. - Sebelum menggunakan parameter ini, tambahkan atribut di DingTalk Admin Console > Kontak > Pengaturan kontak internal > Kelola bidang pengguna. - Nilai bidang ini mendukung tipe tautan, dan tautan mendukung penggantian otomatis wildcard variabel. Wildcard yang saat ini didukung adalah: userid dan corpid. Contoh: [Alamat nomor meja](http://www.dingtalk.io?userid=#userid#&corpid=#corpid#). |
| ext_attrs_update_mode | Number | Tidak | 1 | Mode pembaruan untuk bidang atribut ekstensi kustom: - 0: Mode timpa - 1: Mode tambah Default-nya adalah timpa. |
| senior_mode | Boolean | Tidak | false | Apakah mengaktifkan mode eksekutif. Default: false. - true: Aktifkan. Catatan - Saat diaktifkan, nomor telepon disembunyikan dari semua karyawan. - Karyawan biasa tidak dapat mengirim DING atau melakukan panggilan bisnis DingTalk ke pengguna ini. - Eksekutif dapat saling mengirim DING dan melakukan panggilan bisnis DingTalk. - false: Jangan aktifkan. |
| hired_date | Number | Tidak | 1597573616828 | Tanggal perekrutan. Unix timestamp, dalam milidetik. |
| language | String | Tidak | zh_CN | Bahasa Kontak: - zh_CN: Bahasa Tionghoa (default). - en_US: Bahasa Inggris. |
| force_update_fields | String | Tidak | manager_userid | Bidang yang dipaksa diperbarui. Mendukung pengosongan bidang tertentu. Pisahkan beberapa bidang dengan koma. Bidang yang saat ini didukung: manager_userid. |
| dept_position_list | DeptPosition[] | Tidak | Informasi posisi dalam departemen. | |
| extension_i18n | Json | Tidak | {"Hobby": {"zh_CN": "旅游", "en_US": "travel", "aJP": "旅行"}} | Nilai terinternasionalisasi dari atribut ekstensi. |
Contoh permintaan
curl -X POST "https://api.dingtalk.io/topapi/v2/user/update" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=c6c3c34d-23dd-4da7-9901-0af1ebceaf80' \
-d 'name=John' \
-d 'telephone=010-86123456-2345' \
-d 'hide_mobile=false' \
-d 'userid=zhangsan'
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/v2/user/update");
OapiV2UserUpdateRequest req = new OapiV2UserUpdateRequest();
req.setUserid("zhangsan");
req.setName("John");
req.setHideMobile(false);
req.setTelephone("010-86123456-2345");
req.setJobNumber("4");
req.setManagerUserid("0001");
req.setTitle("Technical Director");
req.setEmail("test@xxx.com");
req.setOrgEmail("test@xxx.com");
req.setWorkPlace("Future Park");
req.setRemark("Remark");
req.setDeptIdList("2,3,4");
List<DeptOrder> list2 = new ArrayList<DeptOrder>();
DeptOrder obj3 = new DeptOrder();
list2.add(obj3);
obj3.setDeptId(2L);
obj3.setOrder(1L);
req.setDeptOrderList(list2);
req.setExtension("{\"Hobby\":\"Travel\",\"Age\":\"24\"}");
req.setSeniorMode(false);
req.setHiredDate(1597573616828L);
req.setLanguage("zh_CN");
req.setForceUpdateFields("manager_userid");
OapiV2UserUpdateResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
import dingtalk.api
req=dingtalk.api.OapiV2UserUpdateRequest("https://api.dingtalk.io/topapi/v2/user/update")
req.userid="zhangsan"
req.name="John"
req.hide_mobile=false
req.telephone="010-86123456-2345"
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 OapiV2UserUpdateRequest;
$req->setUserid("zhangsan");
$req->setName("John");
$req->setHideMobile("false");
$req->setTelephone("010-86123456-2345");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/v2/user/update");
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/v2/user/update");
OapiV2UserUpdateRequest req = new OapiV2UserUpdateRequest();
req.Userid = "zhangsan";
req.Name = "John";
req.Mobile = "13800138000";
req.HideMobile = false;
OapiV2UserUpdateResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
Respons
Isi respons
| Nama | Tipe | Contoh | Deskripsi |
|---|---|---|---|
| errcode | Number | 0 | Kode pengembalian. 0 menandakan berhasil. |
| errmsg | String | User not found | Pesan error yang dikembalikan saat panggilan gagal. |
Contoh isi respons
{
"errcode": 0,
"request_id": "55o5i31j4cg8"
}