> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Menambahkan kontak eksternal

> Panggil API ini untuk menambahkan kontak eksternal ke Kontak perusahaan DingTalk, dengan mengirimkan detail kontak dalam permintaan dan menerima ID kontak eksternal baru pada respons.

Panggil API ini untuk menambahkan kontak eksternal ke organisasi Anda.

## Permintaan

| **Informasi dasar**          | Detail                                                                                               |
| ---------------------------- | ---------------------------------------------------------------------------------------------------- |
| URL HTTP                     | [https://api.dingtalk.io/topapi/extcontact/create](https://api.dingtalk.io/topapi/extcontact/create) |
| Metode HTTP                  | POST                                                                                                 |
| Jenis aplikasi yang didukung | appType-Internal app                                                                                 |
| Izin yang diperlukan         | permission-qyapi\_ext\_write-Write permission for external contacts                                  |

### Parameter kueri

| Nama          | Tipe   | Wajib | Contoh   | Deskripsi                                                                                                                                                                           |
| ------------- | ------ | ----- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| access\_token | String | Ya    | 6d1bxxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. Dapatkan melalui API untuk memperoleh [access\_token dari aplikasi internal](/id/open/development/obtain-orgapp-token). |

### Isi permintaan

| Nama               | Tipe           | Wajib | Contoh                   | Deskripsi                                                                                                                                                                                                                                                                                                                                           |
| ------------------ | -------------- | ----- | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| contact            | OpenExtContact | Ya    |                          | Informasi kontak eksternal.                                                                                                                                                                                                                                                                                                                         |
| title              | String         | Tidak | Development Engineer     | Jabatan.                                                                                                                                                                                                                                                                                                                                            |
| label\_ids         | Number\[]      | Ya    | \[1561077317,1561077310] | Daftar tag. Panggil API [Memperoleh daftar tag kontak eksternal](/id/open/development/obtains-a-list-of-external-contact-tags) untuk mengueri informasi tag. Lihat [Cara menyesuaikan grup tag untuk organisasi](https://tms.dingtalk.io/markets/dingtalk/biaoqianzu) untuk menambahkan tag kustom. Maksimal 20 ID tag dapat dikirim per panggilan. |
| share\_dept\_ids   | Number\[]      | Tidak | \[1,2,3]                 | ID departemen yang akan dibagikan. Panggil API [Memperoleh daftar ID subdepartemen](/id/open/development/obtain-the-list-of-sub-department-ids) untuk memperolehnya. Maksimal 20 ID departemen dapat dikirim per panggilan.                                                                                                                         |
| address            | String         | Tidak | Beijing                  | Alamat.                                                                                                                                                                                                                                                                                                                                             |
| remark             | String         | Tidak | Manager Wang             | Alias.                                                                                                                                                                                                                                                                                                                                              |
| follower\_user\_id | String         | Ya    | manager4220              | ID pengguna dari pemilik. Gunakan API [Mengueri pengguna berdasarkan nomor telepon](/id/open/development/query-users-by-phone-number) untuk memperoleh ID pengguna. Maksimal 20 ID pengguna dapat dikirim per panggilan.                                                                                                                            |
| name               | String         | Ya    | Zhang xx                 | Nama kontak eksternal.                                                                                                                                                                                                                                                                                                                              |
| state\_code        | String         | Ya    | 86                       | Kode negara dari nomor telepon.                                                                                                                                                                                                                                                                                                                     |
| company\_name      | String         | Tidak | DingTalk                 | Nama perusahaan kontak eksternal.                                                                                                                                                                                                                                                                                                                   |
| share\_user\_ids   | String\[]      | Tidak | \["023420013644"]        | Daftar ID pengguna karyawan yang akan dibagikan. Gunakan API [Mengueri pengguna berdasarkan nomor telepon](/id/open/development/query-users-by-phone-number) untuk memperoleh ID pengguna. Maksimal 20 ID pengguna dapat dikirim per panggilan.                                                                                                     |
| mobile             | String         | Ya    | 130xxxx8888              | Nomor telepon kontak eksternal.                                                                                                                                                                                                                                                                                                                     |

### Contoh permintaan

```curl theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST "https://api.dingtalk.io/topapi/extcontact/create" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=d5f0efxxxx9fa9e1' \
-d 'contact=null'
```

Java

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/extcontact/create");
OapiExtcontactCreateRequest req = new OapiExtcontactCreateRequest();
OapiExtcontactCreateRequest.OpenExtContact contact = new OapiExtcontactCreateRequest.OpenExtContact();
contact.setTitle("Development Engineer");
contact.setLabelIds(Arrays.asList(1561077317L,1561077310L));
contact.setShareDeptIds(Arrays.asList(1L,2L,3L));
contact.setFollowerUserId("manager4220");
contact.setName("Zhang xx");
contact.setStateCode("86");
contact.setCompanyName("DingTalk");
contact.setShareUserIds(Arrays.asList("023420013644"));
contact.setMobile("130xxxx8888");
req.setContact(contact);
OapiExtcontactCreateResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
```

Python

```python theme={"theme":{"light":"github-light","dark":"github-dark"}}
import dingtalk.api

req=dingtalk.api.OapiExtcontactCreateRequest("https://api.dingtalk.io/topapi/extcontact/create")

req.contact=""
try:
  resp= req.getResponse(access_token)
  print(resp)
except Exception,e:
  print(e)
```

PHP

```php theme={"theme":{"light":"github-light","dark":"github-dark"}}
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');

$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiExtcontactCreateRequest;
$contact = new OpenExtContact;
$contact->title="Development Engineer";
$contact->label_ids="[1,2,3]";
$contact->share_dept_ids="[1,2,3]";
$contact->address="Address content";
$contact->remark="Remark content";
$contact->follower_user_id="023420013645";
$contact->name="John";
$contact->state_code="86";
$contact->company_name="DingTalk";
$contact->share_user_ids="[\"023420013644\"]";
$contact->mobile="13088888888";
$req->setContact($contact);
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/extcontact/create");
```

C#

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/extcontact/create");
OapiExtcontactCreateRequest req = new OapiExtcontactCreateRequest();
OapiExtcontactCreateRequest.OpenExtContactDomain obj1 = new OapiExtcontactCreateRequest.OpenExtContactDomain();
obj1.Title = "Development Engineer";
obj1.LabelIds = new long[] { 1,2,3 };
obj1.ShareDeptIds = new long[] { 1,2,3 };
obj1.Address = "Address content";
obj1.Remark = "Remark content";
obj1.FollowerUserId = "023420013645";
obj1.Name = "John";
obj1.StateCode = "86";
obj1.CompanyName = "DingTalk";
obj1.ShareUserIds = ""023420013644"";
obj1.Mobile = "13088888888";
req.Contact_ = obj1;
OapiExtcontactCreateResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
```

## Respons

### Isi respons

| Nama        | Tipe   | Contoh       | Deskripsi                     |
| ----------- | ------ | ------------ | ----------------------------- |
| userid      | String | 123420013632 | ID pengguna kontak eksternal. |
| errcode     | Number | 0            | Kode balik.                   |
| errmsg      | String | ok           | Deskripsi kode balik.         |
| request\_id | String | 6idz5ss49kkj | ID permintaan.                |

### Contoh respons

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "errcode":0,
  "userid":"011250026469774889",
  "request_id":"6idz5ss49kkj"
}
```

### Kode error

Jika error dikembalikan saat Anda memanggil API ini, lihat dokumen [Kode error global](/id/open/development/server-api-error-codes-1) untuk solusi berdasarkan pesan error.

| Kode error (errcode) | Pesan error (errmsg)                         | Solusi                                                                            |
| -------------------- | -------------------------------------------- | --------------------------------------------------------------------------------- |
| 33009                | Invalid tokenGrantType                       | Periksa apakah access\_token valid.                                               |
| 40036                | The parameter is empty.                      | Periksa apakah semua parameter wajib di atas telah disediakan.                    |
| 60103                | Invalid phone number                         | Periksa apakah nomor telepon benar.                                               |
| 60204                | An external contact tag is required.         | Berikan nilai untuk label\_ids.                                                   |
| 60205                | The external contact feature is not enabled. | Aktifkan fitur kontak eksternal setelah memperoleh surat otorisasi dari pengguna. |
| 43007                | Authorization required                       | Periksa apakah access\_token memiliki izin yang diperlukan.                       |
| 60112                | Invalid user name                            | Periksa apakah nama pengguna benar.                                               |
| 22005                | The external contact already exists.         | Periksa apakah nomor telepon kontak eksternal benar.                              |
| -1                   | The system is busy.                          | Coba lagi nanti.                                                                  |
