> ## 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.

# Menghapus lokasi secara massal

> Hapus hingga 100 lokasi sekaligus dari grup absensi DingTalk melalui API berdasarkan ID grup absensi dan daftar key lokasi untuk merapikan pengaturan absensi.

Panggil API ini untuk menghapus lokasi secara massal dari grup absensi tertentu.

## Permintaan

| **Informasi dasar** | |
| - | - |
| URL HTTP | [https://api.dingtalk.io/topapi/attendance/group/positions/remove](https://api.dingtalk.io/topapi/attendance/group/positions/remove) |
| Metode HTTP | POST |
| Tipe aplikasi yang didukung | appType-Aplikasi internal |
| Izin yang diperlukan | permission-qyapi\_attendance\_group\_manage-Izin pengelolaan grup absensi |

### Parameter query

| Nama | Tipe | Wajib | Contoh | Deskripsi |
| - | - | - | - | - |
| access\_token | String | Ya | 4c9ebd2b1534xxxx | Kredensial aplikasi yang digunakan untuk memanggil API ini. Dapatkan dengan memanggil API [Mendapatkan access\_token aplikasi internal](https://help.dingtalk.io/id/open/development/obtain-orgapp-token). |

### Isi permintaan

| Nama | Tipe | Wajib | Contoh | Deskripsi |
| - | - | - | - | - |
| op\_userid | String | Tidak | user01 | ID pengguna operator. |
| group\_key | String | Ya | CEDDFxxxx | ID grup absensi.  **Catatan**  Jika pengenal grup absensi Anda berupa group\_id, panggil API [Mengonversi groupId menjadi groupKey](https://help.dingtalk.io/id/open/development/groupid-to-groupkey.md) untuk mengonversi group\_id menjadi group\_key. |
| position\_key\_list | String | Ya | C384Fxxxx | Daftar key lokasi yang akan dihapus. Dapatkan key dengan memanggil API [Mengkueri lokasi secara massal](https://help.dingtalk.io/id/open/development/batch-query-position-under-attendance-group.md). Hapus hingga 100 lokasi per panggilan. |

### Contoh permintaan

```curl theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST "https://api.dingtalk.io/topapi/attendance/group/positions/remove" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=25961xxxx7912f13' \
-d 'group_key=0151E022xxxx72A1A917E876' \
-d 'op_userid=123456' \
-d 'position_key_list=%22123%22%2C%22123%22'
```

Java

```java theme={"theme":{"light":"github-light","dark":"github-dark"}}
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/group/positions/remove");
OapiAttendanceGroupPositionsRemoveRequest req = new OapiAttendanceGroupPositionsRemoveRequest();
req.setOpUserid("user01");
req.setGroupKey("CEDDFxxxx");
req.setPositionKeyList("C384Fxxxx");
OapiAttendanceGroupPositionsRemoveResponse 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.OapiAttendanceGroupPositionsRemoveRequest("https://api.dingtalk.io/topapi/attendance/group/positions/remove")

req.op_userid="123456"
req.group_key="0151E02xxxx17E876"
req.position_key_list="["123","123"]"
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 OapiAttendanceGroupPositionsRemoveRequest;
$req->setOpUserid("123456");
$req->setGroupKey("0151E02xxxx17E876");
$req->setPositionKeyList("[\"123\",\"123\"]");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/attendance/group/positions/remove");
```

C#

```csharp theme={"theme":{"light":"github-light","dark":"github-dark"}}
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/attendance/group/positions/remove");
OapiAttendanceGroupPositionsRemoveRequest req = new OapiAttendanceGroupPositionsRemoveRequest();
req.OpUserid = "123456";
req.GroupKey = "0151E0xxxx17E876";
req.PositionKeyList = ""123","123"";
OapiAttendanceGroupPositionsRemoveResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
```

## Respons

### Isi respons

| Nama | Tipe | Contoh | Deskripsi |
| - | - | - | - |
| result | Result | | Hasil yang dikembalikan. |
| success\_list | String\[] | \["C384Fxxxx"] | Daftar item yang berhasil dihapus. |
| error\_info\_list | ErrorInfo\[] | | Daftar error. |
| failure\_list | String\[] | \["C384Fxxxx"] | Daftar item yang gagal dihapus. |
| msg | String | business fault | Deskripsi error. |
| code | String | 1000 | Kode error. |
| errcode | Number | 0 | Kode respons. |
| errmsg | String | ok | Deskripsi kode respons. |
| success | Boolean | true | Menunjukkan apakah panggilan berhasil.   - **true**: Berhasil - **false**: Gagal |
| request\_id | String | 1493be6v5yefm | ID permintaan. |

### Contoh isi respons

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "errcode": 0,
  "errmsg":"ok",
  "result": {
    "error_info_list": [
      {
        "code": "1000",
        "failure_list": [
          "C384Fxxxx"
        ],
        "msg": "business fault"
      }
    ],
    "success_list": [
      "C384Fxxxx"
    ]
  },
  "success": true,
  "request_id": "1493be6v5yefm"
}
```

### Kode error

Jika panggilan mengembalikan error, cari solusinya di dokumen [Kode error global](https://help.dingtalk.io/id/open/development/server-api-error-codes-1.md) berdasarkan pesan error.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.