name, description, objectStaffIds, objectDeptIds, objectTagIds, dan excludeStaffIds melalui permintaan PUT.
Deskripsi panggilan API
Di konsol admin OA DingTalk, Anda dapat menyembunyikan departemen. API ini memperluas kemampuan penyembunyian di luar departemen — Anda juga dapat menyembunyikan karyawan dan peran.Pengaturan penyembunyian yang dikonfigurasi melalui API ini disimpan secara independen dari yang dikonfigurasi di konsol admin OA. Efek akhirnya adalah gabungan (OR) dari keduanya. Misalnya, jika departemen yang sama disembunyikan baik melalui API ini maupun melalui konsol admin OA, departemen tersebut akan disembunyikan.
Permintaan
Informasi dasar
| Bidang | Nilai |
|---|---|
| URL HTTP | https://api.dingtalk.io/v1.0/contact/contactHideSettings |
| Metode HTTP | PUT |
| Tipe aplikasi yang didukung | appType-Aplikasi internal |
| Izin yang diperlukan | permission-Contact.Visibility.ReadWrite-Izin untuk mengelola rentang visibilitas data kontak |
Header permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| x-acs-dingtalk-access-token | String | Ya | Kredensial akses yang digunakan untuk memanggil API ini. Dapatkan dengan memanggil API Mendapatkan access token aplikasi internal. |
Isi permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| name | String | Tidak | Nama pengaturan. |
| description | String | Tidak | Deskripsi pengaturan. |
| objectStaffIds | Array of String | Tidak | Daftar nilai userId karyawan yang akan disembunyikan. Untuk mendapatkan userId, panggil Mendapatkan informasi pengguna melalui kode login senyap. Jumlah total elemen di objectStaffIds, objectDeptIds, dan objectTagIds tidak boleh melebihi 50. |
| objectDeptIds | Array of Long | Tidak | Daftar ID departemen yang akan disembunyikan. Untuk mendapatkan dept_id, panggil Mendapatkan daftar departemen. Jumlah total elemen di objectStaffIds, objectDeptIds, dan objectTagIds tidak boleh melebihi 50. |
| objectTagIds | Array of Long | Tidak | Daftar nilai roleId peran yang akan disembunyikan. Untuk mendapatkan id, panggil Mendapatkan daftar peran. Jumlah total elemen di objectStaffIds, objectDeptIds, dan objectTagIds tidak boleh melebihi 50. |
| excludeStaffIds | Array of String | Tidak | Daftar nilai userId karyawan yang tidak terpengaruh oleh pengaturan penyembunyian ini. Untuk mendapatkan userId, panggil Mendapatkan informasi pengguna melalui kode login senyap. Jumlah total elemen di excludeStaffIds, excludeDeptIds, dan excludeTagIds tidak boleh melebihi 50. |
| excludeDeptIds | Array of Long | Tidak | Daftar ID departemen yang tidak terpengaruh oleh pengaturan penyembunyian ini. Untuk mendapatkan dept_id, panggil Mendapatkan daftar departemen. Jumlah total elemen di excludeStaffIds, excludeDeptIds, dan excludeTagIds tidak boleh melebihi 50. |
| excludeTagIds | Array of Long | Tidak | Daftar ID peran yang tidak terpengaruh oleh pengaturan penyembunyian ini. Untuk mendapatkan id, panggil Mendapatkan daftar peran. Jumlah total elemen di excludeStaffIds, excludeDeptIds, dan excludeTagIds tidak boleh melebihi 50. |
| active | Boolean | Tidak | Apakah pengaturan aktif. Nilai yang valid: - true: aktif - false: nonaktif |
| id | Long | Tidak | ID pengaturan. - Kosongkan saat membuat pengaturan baru. - Setel ke ID pengaturan yang akan diubah saat memodifikasi pengaturan. |
| hideInUserProfile | Boolean | Tidak | Apakah juga menyembunyikan pengguna saat profil mereka dilihat. Nilai yang valid: - true: ya - false: tidak |
| hideInSearch | Boolean | Tidak | Apakah juga menyembunyikan pengguna dari hasil pencarian. Nilai yang valid: - true: ya - false: tidak |
Contoh permintaan
HTTPPUT /v1.0/contact/contactHideSettings HTTP/1.1
Host:api.dingtalk.io
x-acs-dingtalk-access-token:c2c5bxxx
Content-Type:application/json
{
"name" : "Contoh nama",
"description" : "Ini adalah deskripsi",
"objectStaffIds" : [ "userId" ],
"objectDeptIds" : [ 12345 ],
"objectTagIds" : [ 112233 ],
"excludeStaffIds" : [ "54321-1122" ],
"excludeDeptIds" : [ 123987 ],
"excludeTagIds" : [ 223344 ],
"active" : true,
"id" : 11234,
"hideInUserProfile" : true,
"hideInSearch" : true
}
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* Inisialisasi klien akun menggunakan Token
* @return Client
* @throws Exception
*/
public static com.aliyun.dingtalkcontact_1_0.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
config.protocol = "https";
config.regionId = "central";
return new com.aliyun.dingtalkcontact_1_0.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.dingtalkcontact_1_0.Client client = Sample.createClient();
com.aliyun.dingtalkcontact_1_0.models.UpdateContactHideSettingHeaders updateContactHideSettingHeaders = new com.aliyun.dingtalkcontact_1_0.models.UpdateContactHideSettingHeaders();
updateContactHideSettingHeaders.xAcsDingtalkAccessToken = "<your access token>";
com.aliyun.dingtalkcontact_1_0.models.UpdateContactHideSettingRequest updateContactHideSettingRequest = new com.aliyun.dingtalkcontact_1_0.models.UpdateContactHideSettingRequest()
.setName("Contoh nama")
.setDescription("Ini adalah deskripsi")
.setObjectStaffIds(java.util.Arrays.asList(
"userId"
))
.setObjectDeptIds(java.util.Arrays.asList(
12345L
))
.setObjectTagIds(java.util.Arrays.asList(
112233L
))
.setExcludeStaffIds(java.util.Arrays.asList(
"54321-1122"
))
.setExcludeDeptIds(java.util.Arrays.asList(
123987L
))
.setExcludeTagIds(java.util.Arrays.asList(
223344L
))
.setActive(true)
.setId(11234L)
.setHideInUserProfile(true)
.setHideInSearch(true);
try {
client.updateContactHideSettingWithOptions(updateContactHideSettingRequest, updateContactHideSettingHeaders, new com.aliyun.teautil.models.RuntimeOptions());
} catch (TeaException err) {
if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
} catch (Exception _err) {
TeaException err = new TeaException(_err.getMessage(), _err);
if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
}
}
}
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sys
from typing import List
from alibabacloud_dingtalk.contact_1_0.client import Client as dingtalkcontact_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.contact_1_0 import models as dingtalkcontact__1__0_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClient
class Sample:
def __init__(self):
pass
@staticmethod
def create_client() -> dingtalkcontact_1_0Client:
"""
Inisialisasi klien akun menggunakan Token
@return: Client
@throws Exception
"""
config = open_api_models.Config()
config.protocol = 'https'
config.region_id = 'central'
return dingtalkcontact_1_0Client(config)
@staticmethod
def main(
args: List[str],
) -> None:
client = Sample.create_client()
update_contact_hide_setting_headers = dingtalkcontact__1__0_models.UpdateContactHideSettingHeaders()
update_contact_hide_setting_headers.x_acs_dingtalk_access_token = '<your access token>'
update_contact_hide_setting_request = dingtalkcontact__1__0_models.UpdateContactHideSettingRequest(
name='Contoh nama',
description='Ini adalah deskripsi',
object_staff_ids=[
'userId'
],
object_dept_ids=[
12345
],
object_tag_ids=[
112233
],
exclude_staff_ids=[
'54321-1122'
],
exclude_dept_ids=[
123987
],
exclude_tag_ids=[
223344
],
active=True,
id=11234,
hide_in_user_profile=True,
hide_in_search=True
)
try:
client.update_contact_hide_setting_with_options(update_contact_hide_setting_request, update_contact_hide_setting_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# Objek err berisi properti code dan message untuk membantu menemukan masalahnya
pass
@staticmethod
async def main_async(
args: List[str],
) -> None:
client = Sample.create_client()
update_contact_hide_setting_headers = dingtalkcontact__1__0_models.UpdateContactHideSettingHeaders()
update_contact_hide_setting_headers.x_acs_dingtalk_access_token = '<your access token>'
update_contact_hide_setting_request = dingtalkcontact__1__0_models.UpdateContactHideSettingRequest(
name='Contoh nama',
description='Ini adalah deskripsi',
object_staff_ids=[
'userId'
],
object_dept_ids=[
12345
],
object_tag_ids=[
112233
],
exclude_staff_ids=[
'54321-1122'
],
exclude_dept_ids=[
123987
],
exclude_tag_ids=[
223344
],
active=True,
id=11234,
hide_in_user_profile=True,
hide_in_search=True
)
try:
await client.update_contact_hide_setting_with_options_async(update_contact_hide_setting_request, update_contact_hide_setting_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# Objek err berisi properti code dan message untuk membantu menemukan masalahnya
pass
if __name__ == '__main__':
Sample.main(sys.argv[1:])
<?php
// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;
use AlibabaCloud\SDK\Dingtalk\Vcontact_1_0\Dingtalk;
use \Exception;
use AlibabaCloud\Tea\Exception\TeaError;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dingtalk\Vcontact_1_0\Models\UpdateContactHideSettingHeaders;
use AlibabaCloud\SDK\Dingtalk\Vcontact_1_0\Models\UpdateContactHideSettingRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class Sample {
/**
* Inisialisasi klien akun menggunakan Token
* @return Dingtalk Client
*/
public static function createClient(){
$config = new Config([]);
$config->protocol = "https";
$config->regionId = "central";
return new Dingtalk($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
$client = self::createClient();
$updateContactHideSettingHeaders = new UpdateContactHideSettingHeaders([]);
$updateContactHideSettingHeaders->xAcsDingtalkAccessToken = "<your access token>";
$updateContactHideSettingRequest = new UpdateContactHideSettingRequest([
"name" => "Contoh nama",
"description" => "Ini adalah deskripsi",
"objectStaffIds" => [
"userId"
],
"objectDeptIds" => [
12345
],
"objectTagIds" => [
112233
],
"excludeStaffIds" => [
"54321-1122"
],
"excludeDeptIds" => [
123987
],
"excludeTagIds" => [
223344
],
"active" => true,
"id" => 11234,
"hideInUserProfile" => true,
"hideInSearch" => true
]);
try {
$client->updateContactHideSettingWithOptions($updateContactHideSettingRequest, $updateContactHideSettingHeaders, new RuntimeOptions([]));
}
catch (Exception $err) {
if (!($err instanceof TeaError)) {
$err = new TeaError([], $err->getMessage(), $err->getCode(), $err);
}
if (!Utils::empty_($err->code) && !Utils::empty_($err->message)) {
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
}
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
Sample::main(array_slice($argv, 1));
// This file is auto-generated, don't edit it. Thanks.
package main
import (
"os"
util "github.com/alibabacloud-go/tea-utils/v2/service"
dingtalkcontact_1_0 "github.com/alibabacloud-go/dingtalk/contact_1_0"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
"github.com/alibabacloud-go/tea/tea"
)
/**
* Inisialisasi klien akun menggunakan Token
* @return Client
* @throws Exception
*/
func CreateClient () (_result *dingtalkcontact_1_0.Client, _err error) {
config := &openapi.Config{}
config.Protocol = tea.String("https")
config.RegionId = tea.String("central")
_result = &dingtalkcontact_1_0.Client{}
_result, _err = dingtalkcontact_1_0.NewClient(config)
return _result, _err
}
func _main (args []*string) (_err error) {
client, _err := CreateClient()
if _err != nil {
return _err
}
updateContactHideSettingHeaders := &dingtalkcontact_1_0.UpdateContactHideSettingHeaders{}
updateContactHideSettingHeaders.XAcsDingtalkAccessToken = tea.String("<your access token>")
updateContactHideSettingRequest := &dingtalkcontact_1_0.UpdateContactHideSettingRequest{
Name: tea.String("Contoh nama"),
Description: tea.String("Ini adalah deskripsi"),
ObjectStaffIds: []*string{tea.String("userId")},
ObjectDeptIds: []*int64{tea.Int64(12345)},
ObjectTagIds: []*int64{tea.Int64(112233)},
ExcludeStaffIds: []*string{tea.String("54321-1122")},
ExcludeDeptIds: []*int64{tea.Int64(123987)},
ExcludeTagIds: []*int64{tea.Int64(223344)},
Active: tea.Bool(true),
Id: tea.Int64(11234),
HideInUserProfile: tea.Bool(true),
HideInSearch: tea.Bool(true),
}
tryErr := func()(_e error) {
defer func() {
if r := tea.Recover(recover()); r != nil {
_e = r
}
}()
_, _err = client.UpdateContactHideSettingWithOptions(updateContactHideSettingRequest, updateContactHideSettingHeaders, &util.RuntimeOptions{})
if _err != nil {
return _err
}
return nil
}()
if tryErr != nil {
var err = &tea.SDKError{}
if _t, ok := tryErr.(*tea.SDKError); ok {
err = _t
} else {
err.Message = tea.String(tryErr.Error())
}
if !tea.BoolValue(util.Empty(err.Code)) && !tea.BoolValue(util.Empty(err.Message)) {
// Objek err berisi properti Code dan Message untuk membantu menemukan masalahnya
}
}
return _err
}
func main() {
err := _main(tea.StringSlice(os.Args[1:]))
if err != nil {
panic(err)
}
}
// This file is auto-generated, don't edit it
import Util, * as $Util from '@alicloud/tea-util';
import dingtalkcontact_1_0, * as $dingtalkcontact_1_0 from '@alicloud/dingtalk/contact_1_0';
import OpenApi, * as $OpenApi from '@alicloud/openapi-client';
import * as $tea from '@alicloud/tea-typescript';
export default class Client {
/**
* Inisialisasi klien akun menggunakan Token
* @return Client
* @throws Exception
*/
static createClient(): dingtalkcontact_1_0 {
let config = new $OpenApi.Config({ });
config.protocol = "https";
config.regionId = "central";
return new dingtalkcontact_1_0(config);
}
static async main(args: string[]): Promise<void> {
let client = Client.createClient();
let updateContactHideSettingHeaders = new $dingtalkcontact_1_0.UpdateContactHideSettingHeaders({ });
updateContactHideSettingHeaders.xAcsDingtalkAccessToken = "<your access token>";
let updateContactHideSettingRequest = new $dingtalkcontact_1_0.UpdateContactHideSettingRequest({
name: "Contoh nama",
description: "Ini adalah deskripsi",
objectStaffIds: [
"userId"
],
objectDeptIds: [
12345
],
objectTagIds: [
112233
],
excludeStaffIds: [
"54321-1122"
],
excludeDeptIds: [
123987
],
excludeTagIds: [
223344
],
active: true,
id: 11234,
hideInUserProfile: true,
hideInSearch: true,
});
try {
await client.updateContactHideSettingWithOptions(updateContactHideSettingRequest, updateContactHideSettingHeaders, new $Util.RuntimeOptions({ }));
} catch (err) {
if (!Util.empty(err.code) && !Util.empty(err.message)) {
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
}
}
}
Client.main(process.argv.slice(2));
// This file is auto-generated, don't edit it. Thanks.
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
using Tea;
using Tea.Utils;
namespace AlibabaCloud.SDK.Sample
{
public class Sample
{
/**
* Inisialisasi klien akun menggunakan Token
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Dingtalkcontact_1_0.Client CreateClient()
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
config.Protocol = "https";
config.RegionId = "central";
return new AlibabaCloud.SDK.Dingtalkcontact_1_0.Client(config);
}
public static void Main(string[] args)
{
AlibabaCloud.SDK.Dingtalkcontact_1_0.Client client = CreateClient();
AlibabaCloud.SDK.Dingtalkcontact_1_0.Models.UpdateContactHideSettingHeaders updateContactHideSettingHeaders = new AlibabaCloud.SDK.Dingtalkcontact_1_0.Models.UpdateContactHideSettingHeaders();
updateContactHideSettingHeaders.XAcsDingtalkAccessToken = "<your access token>";
AlibabaCloud.SDK.Dingtalkcontact_1_0.Models.UpdateContactHideSettingRequest updateContactHideSettingRequest = new AlibabaCloud.SDK.Dingtalkcontact_1_0.Models.UpdateContactHideSettingRequest
{
Name = "Contoh nama",
Description = "Ini adalah deskripsi",
ObjectStaffIds = new List<string>
{
"userId"
},
ObjectDeptIds = new List<long?>
{
12345
},
ObjectTagIds = new List<long?>
{
112233
},
ExcludeStaffIds = new List<string>
{
"54321-1122"
},
ExcludeDeptIds = new List<long?>
{
123987
},
ExcludeTagIds = new List<long?>
{
223344
},
Active = true,
Id = 11234,
HideInUserProfile = true,
HideInSearch = true,
};
try
{
client.UpdateContactHideSettingWithOptions(updateContactHideSettingRequest, updateContactHideSettingHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
}
catch (TeaException err)
{
if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
{
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
}
catch (Exception _err)
{
TeaException err = new TeaException(new Dictionary<string, object>
{
{ "message", _err.Message }
});
if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
{
// Objek err berisi properti code dan message untuk membantu menemukan masalahnya
}
}
}
}
}
Respons
Isi respons
| Nama | Tipe | Deskripsi |
|---|---|---|
| result | Long | ID pengaturan. |
Contoh isi respons
HTTP/1.1 200 OK
Content-Type:application/json
{
"result" : 1234001
}
Kode error
Jika error dikembalikan saat Anda memanggil API ini, lihat dokumen Kode error global untuk solusinya.| HttpCode | Kode error | Pesan error | Deskripsi |
|---|---|---|---|
| 400 | parameter.error | Parameter error | Error parameter |
| 500 | system.error | Failed to update the setting | Gagal memperbarui pengaturan |