Permintaan
Informasi dasar
| Bidang | Value |
|---|---|
| URL HTTP | https://api.dingtalk.io/v1.0/calendar/users/{userId}/subscribedCalendars/{calendarId} |
| Metode HTTP | PUT |
| Tipe aplikasi yang didukung | appType-Aplikasi internal appType-Aplikasi perusahaan pihak ketiga appType-Aplikasi personal pihak ketiga |
| Izin yang diperlukan | permission-Calendar.Calendar.Write-Izin tulis untuk aplikasi Kalender |
Header permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| x-acs-dingtalk-access-token | String | Ya | Kredensial akses untuk memanggil API ini. Dapatkan sebagai berikut: - Untuk aplikasi internal, panggil Memperoleh access token aplikasi internal. - Untuk aplikasi perusahaan pihak ketiga, panggil Memperoleh access token perusahaan yang diberi otorisasi untuk aplikasi pihak ketiga. - Untuk aplikasi personal pihak ketiga, panggil Memperoleh user token. |
Parameter path
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| calendarId | String | Ya | ID kalender langganan. Panggil Membuat kalender langganan untuk memperoleh value parameter calendarId. |
| userId | String | Ya | unionId pembuat kalender atau co-editor. - Untuk aplikasi internal dan aplikasi perusahaan pihak ketiga, panggil Mengkueri detail pengguna untuk memperoleh value parameter unionid. - Untuk aplikasi personal pihak ketiga, panggil Memperoleh profil pengguna Kontak untuk memperoleh value parameter unionId. |
Isi permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| name | String | Tidak | Judul kalender langganan. |
| description | String | Tidak | Deskripsi kalender langganan. |
| managers | Array of String | Tidak | Daftar unionId co-editor kalender. - Untuk aplikasi internal dan aplikasi perusahaan pihak ketiga, panggil Mengkueri detail pengguna untuk memperoleh value parameter unionid. - Untuk aplikasi personal pihak ketiga, panggil Memperoleh profil pengguna Kontak untuk memperoleh value parameter unionId. |
| subscribeScope | Object | Tidak | Cakupan langganan kalender. |
| unionIds | Array of String | Tidak | unionId pengguna yang dapat berlangganan kalender. - Untuk aplikasi internal dan aplikasi perusahaan pihak ketiga, panggil Mengkueri detail pengguna untuk memperoleh value parameter unionid. - Untuk aplikasi personal pihak ketiga, panggil Memperoleh profil pengguna Kontak untuk memperoleh value parameter unionId. |
| openConversationIds | Array of String | Tidak | Daftar OpenConversationId grup yang dapat berlangganan kalender ini. - Untuk aplikasi internal, panggil Memperoleh OpenConversationId obrolan grup untuk memperoleh value parameter openConversationId. - Untuk aplikasi perusahaan pihak ketiga, panggil Membuat grup untuk memperoleh value parameter open_conversation_id. - Anda harus meneruskan OpenConversationId grup tempat pembuat acara langganan berada. - Untuk aplikasi personal pihak ketiga, parameter ini tidak diperlukan. |
| corpIds | Array of String | Tidak | Daftar corpId organisasi yang dapat berlangganan kalender ini. Masuk ke DingTalk Developer Console dan lihat ID organisasi Anda di halaman Beranda. Anda harus meneruskan corpId organisasi tempat pembuat acara langganan berada. |
Contoh permintaan
HTTPPUT /v1.0/calendar/users/iiiP35sJadba8aBSgjrwPRKgiEiF/subscribedCalendars/M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv HTTP/1.1
Host:api.dingtalk.io
x-acs-dingtalk-access-token:cnNTbW1YbU9sL2p6aFJZdEgvdlQrQT01
Content-Type:application/json
{
"name" : "Kalender Tionghoa Tradisional",
"description" : "Kalender Tionghoa Tradisional",
"managers" : [ "iiiP35sJadba8aBSgjrwPRKgiEiF" ],
"subscribeScope" : {
"unionIds" : [ "iiiP35sJadba8aBSgjrwPRKgiEiF" ],
"openConversationIds" : [ "cidvrURjEqVe8xxxxxxx" ],
"corpIds" : [ "dingz0xc7v89789asasdf" ]
}
}
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;
import com.aliyun.tea.*;
import com.aliyun.teautil.*;
import com.aliyun.teautil.models.*;
import com.aliyun.dingtalkcalendar_1_0.*;
import com.aliyun.dingtalkcalendar_1_0.models.*;
import com.aliyun.teaopenapi.*;
import com.aliyun.teaopenapi.models.*;
public class Sample {
/**
* Initialize the account Client with a Token
* @return Client
* @throws Exception
*/
public static com.aliyun.dingtalkcalendar_1_0.Client createClient() throws Exception {
Config config = new Config();
config.protocol = "https";
config.regionId = "central";
return new com.aliyun.dingtalkcalendar_1_0.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.dingtalkcalendar_1_0.Client client = Sample.createClient();
UpdateSubscribedCalendarsHeaders updateSubscribedCalendarsHeaders = new UpdateSubscribedCalendarsHeaders();
updateSubscribedCalendarsHeaders.xAcsDingtalkAccessToken = "<your access token>";
UpdateSubscribedCalendarsRequest.UpdateSubscribedCalendarsRequestSubscribeScope subscribeScope = new UpdateSubscribedCalendarsRequest.UpdateSubscribedCalendarsRequestSubscribeScope()
.setUnionIds(java.util.Arrays.asList(
"iiiP35sJadba8aBSgjrwPRKgiEiF"
))
.setOpenConversationIds(java.util.Arrays.asList(
"cidvrURjEqVe8xxxxxxx"
))
.setCorpIds(java.util.Arrays.asList(
"dingz0xc7v89789asasdf"
));
UpdateSubscribedCalendarsRequest updateSubscribedCalendarsRequest = new UpdateSubscribedCalendarsRequest()
.setName("Kalender Tionghoa Tradisional")
.setDescription("Kalender Tionghoa Tradisional")
.setManagers(java.util.Arrays.asList(
"iiiP35sJadba8aBSgjrwPRKgiEiF"
))
.setSubscribeScope(subscribeScope);
try {
client.updateSubscribedCalendarsWithOptions("M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv", "iiiP35sJadba8aBSgjrwPRKgiEiF", updateSubscribedCalendarsRequest, updateSubscribedCalendarsHeaders, new RuntimeOptions());
} catch (TeaException err) {
if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
// err berisi atribut code dan message yang membantu menemukan masalah
}
} 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)) {
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
}
}
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sys
from typing import List
from alibabacloud_dingtalk.calendar_1_0.client import Client as dingtalkcalendar_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.calendar_1_0 import models as dingtalkcalendar__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() -> dingtalkcalendar_1_0Client:
"""
Initialize the account Client with a Token
@return: Client
@throws Exception
"""
config = open_api_models.Config()
config.protocol = 'https'
config.region_id = 'central'
return dingtalkcalendar_1_0Client(config)
@staticmethod
def main(
args: List[str],
) -> None:
client = Sample.create_client()
update_subscribed_calendars_headers = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsHeaders()
update_subscribed_calendars_headers.x_acs_dingtalk_access_token = '<your access token>'
subscribe_scope = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsRequestSubscribeScope(
union_ids=[
'iiiP35sJadba8aBSgjrwPRKgiEiF'
],
open_conversation_ids=[
'cidvrURjEqVe8xxxxxxx'
],
corp_ids=[
'dingz0xc7v89789asasdf'
]
)
update_subscribed_calendars_request = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsRequest(
name='Kalender Tionghoa Tradisional',
description='Kalender Tionghoa Tradisional',
managers=[
'iiiP35sJadba8aBSgjrwPRKgiEiF'
],
subscribe_scope=subscribe_scope
)
try:
client.update_subscribed_calendars_with_options('M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv', 'iiiP35sJadba8aBSgjrwPRKgiEiF', update_subscribed_calendars_request, update_subscribed_calendars_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# err berisi atribut code dan message yang membantu menemukan masalah
pass
@staticmethod
async def main_async(
args: List[str],
) -> None:
client = Sample.create_client()
update_subscribed_calendars_headers = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsHeaders()
update_subscribed_calendars_headers.x_acs_dingtalk_access_token = '<your access token>'
subscribe_scope = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsRequestSubscribeScope(
union_ids=[
'iiiP35sJadba8aBSgjrwPRKgiEiF'
],
open_conversation_ids=[
'cidvrURjEqVe8xxxxxxx'
],
corp_ids=[
'dingz0xc7v89789asasdf'
]
)
update_subscribed_calendars_request = dingtalkcalendar__1__0_models.UpdateSubscribedCalendarsRequest(
name='Kalender Tionghoa Tradisional',
description='Kalender Tionghoa Tradisional',
managers=[
'iiiP35sJadba8aBSgjrwPRKgiEiF'
],
subscribe_scope=subscribe_scope
)
try:
await client.update_subscribed_calendars_with_options_async('M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv', 'iiiP35sJadba8aBSgjrwPRKgiEiF', update_subscribed_calendars_request, update_subscribed_calendars_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# err berisi atribut code dan message yang membantu menemukan masalah
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\Vcalendar_1_0\Dingtalk;
use \Exception;
use AlibabaCloud\Tea\Exception\TeaError;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dingtalk\Vcalendar_1_0\Models\UpdateSubscribedCalendarsHeaders;
use AlibabaCloud\SDK\Dingtalk\Vcalendar_1_0\Models\UpdateSubscribedCalendarsRequest\subscribeScope;
use AlibabaCloud\SDK\Dingtalk\Vcalendar_1_0\Models\UpdateSubscribedCalendarsRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class Sample {
/**
* Initialize the account Client with a 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();
$updateSubscribedCalendarsHeaders = new UpdateSubscribedCalendarsHeaders([]);
$updateSubscribedCalendarsHeaders->xAcsDingtalkAccessToken = "<your access token>";
$subscribeScope = new subscribeScope([
"unionIds" => [
"iiiP35sJadba8aBSgjrwPRKgiEiF"
],
"openConversationIds" => [
"cidvrURjEqVe8xxxxxxx"
],
"corpIds" => [
"dingz0xc7v89789asasdf"
]
]);
$updateSubscribedCalendarsRequest = new UpdateSubscribedCalendarsRequest([
"name" => "Kalender Tionghoa Tradisional",
"description" => "Kalender Tionghoa Tradisional",
"managers" => [
"iiiP35sJadba8aBSgjrwPRKgiEiF"
],
"subscribeScope" => $subscribeScope
]);
try {
$client->updateSubscribedCalendarsWithOptions("M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv", "iiiP35sJadba8aBSgjrwPRKgiEiF", $updateSubscribedCalendarsRequest, $updateSubscribedCalendarsHeaders, 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)) {
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
}
}
$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/service"
dingtalkcalendar_1_0 "github.com/alibabacloud-go/dingtalk/calendar_1_0"
openapi "github.com/alibabacloud-go/darabonba-openapi/client"
"github.com/alibabacloud-go/tea/tea"
)
/**
* Initialize the account Client with a Token
* @return Client
* @throws Exception
*/
func CreateClient () (_result *dingtalkcalendar_1_0.Client, _err error) {
config := &openapi.Config{}
config.Protocol = tea.String("https")
config.RegionId = tea.String("central")
_result = &dingtalkcalendar_1_0.Client{}
_result, _err = dingtalkcalendar_1_0.NewClient(config)
return _result, _err
}
func _main (args []*string) (_err error) {
client, _err := CreateClient()
if _err != nil {
return _err
}
updateSubscribedCalendarsHeaders := &dingtalkcalendar_1_0.UpdateSubscribedCalendarsHeaders{}
updateSubscribedCalendarsHeaders.XAcsDingtalkAccessToken = tea.String("<your access token>")
subscribeScope := &dingtalkcalendar_1_0.UpdateSubscribedCalendarsRequestSubscribeScope{
UnionIds: []*string{tea.String("iiiP35sJadba8aBSgjrwPRKgiEiF")},
OpenConversationIds: []*string{tea.String("cidvrURjEqVe8xxxxxxx")},
CorpIds: []*string{tea.String("dingz0xc7v89789asasdf")},
}
updateSubscribedCalendarsRequest := &dingtalkcalendar_1_0.UpdateSubscribedCalendarsRequest{
Name: tea.String("Kalender Tionghoa Tradisional"),
Description: tea.String("Kalender Tionghoa Tradisional"),
Managers: []*string{tea.String("iiiP35sJadba8aBSgjrwPRKgiEiF")},
SubscribeScope: subscribeScope,
}
tryErr := func()(_e error) {
defer func() {
if r := tea.Recover(recover()); r != nil {
_e = r
}
}()
_, _err = client.UpdateSubscribedCalendarsWithOptions(tea.String("M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv"), tea.String("iiiP35sJadba8aBSgjrwPRKgiEiF"), updateSubscribedCalendarsRequest, updateSubscribedCalendarsHeaders, &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)) {
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
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 dingtalkcalendar_1_0, * as $dingtalkcalendar_1_0 from '@alicloud/dingtalk/calendar_1_0';
import OpenApi, * as $OpenApi from '@alicloud/openapi-client';
import * as $tea from '@alicloud/tea-typescript';
export default class Client {
/**
* Initialize the account Client with a Token
* @return Client
* @throws Exception
*/
static createClient(): dingtalkcalendar_1_0 {
let config = new $OpenApi.Config({ });
config.protocol = "https";
config.regionId = "central";
return new dingtalkcalendar_1_0(config);
}
static async main(args: string[]): Promise<void> {
let client = Client.createClient();
let updateSubscribedCalendarsHeaders = new $dingtalkcalendar_1_0.UpdateSubscribedCalendarsHeaders({ });
updateSubscribedCalendarsHeaders.xAcsDingtalkAccessToken = "<your access token>";
let subscribeScope = new $dingtalkcalendar_1_0.UpdateSubscribedCalendarsRequestSubscribeScope({
unionIds: [
"iiiP35sJadba8aBSgjrwPRKgiEiF"
],
openConversationIds: [
"cidvrURjEqVe8xxxxxxx"
],
corpIds: [
"dingz0xc7v89789asasdf"
],
});
let updateSubscribedCalendarsRequest = new $dingtalkcalendar_1_0.UpdateSubscribedCalendarsRequest({
name: "Kalender Tionghoa Tradisional",
description: "Kalender Tionghoa Tradisional",
managers: [
"iiiP35sJadba8aBSgjrwPRKgiEiF"
],
subscribeScope: subscribeScope,
});
try {
await client.updateSubscribedCalendarsWithOptions("M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv", "iiiP35sJadba8aBSgjrwPRKgiEiF", updateSubscribedCalendarsRequest, updateSubscribedCalendarsHeaders, new $Util.RuntimeOptions({ }));
} catch (err) {
if (!Util.empty(err.code) && !Util.empty(err.message)) {
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
}
}
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
{
/**
* Initialize the account Client with a Token
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Dingtalkcalendar_1_0.Client CreateClient()
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
config.Protocol = "https";
config.RegionId = "central";
return new AlibabaCloud.SDK.Dingtalkcalendar_1_0.Client(config);
}
public static void Main(string[] args)
{
AlibabaCloud.SDK.Dingtalkcalendar_1_0.Client client = CreateClient();
AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsHeaders updateSubscribedCalendarsHeaders = new AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsHeaders();
updateSubscribedCalendarsHeaders.XAcsDingtalkAccessToken = "<your access token>";
AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsRequest.UpdateSubscribedCalendarsRequestSubscribeScope subscribeScope = new AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsRequest.UpdateSubscribedCalendarsRequestSubscribeScope
{
UnionIds = new List<string>
{
"iiiP35sJadba8aBSgjrwPRKgiEiF"
},
OpenConversationIds = new List<string>
{
"cidvrURjEqVe8xxxxxxx"
},
CorpIds = new List<string>
{
"dingz0xc7v89789asasdf"
},
};
AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsRequest updateSubscribedCalendarsRequest = new AlibabaCloud.SDK.Dingtalkcalendar_1_0.Models.UpdateSubscribedCalendarsRequest
{
Name = "Kalender Tionghoa Tradisional",
Description = "Kalender Tionghoa Tradisional",
Managers = new List<string>
{
"iiiP35sJadba8aBSgjrwPRKgiEiF"
},
SubscribeScope = subscribeScope,
};
try
{
client.UpdateSubscribedCalendarsWithOptions("M5MjkxNDUxQHVzZXJzLmRpbmd0YWxrLmNv", "iiiP35sJadba8aBSgjrwPRKgiEiF", updateSubscribedCalendarsRequest, updateSubscribedCalendarsHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
}
catch (TeaException err)
{
if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
{
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
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))
{
// err berisi atribut code dan message yang membantu menemukan masalah
}
}
}
}
}
Respons
Isi respons
| Nama | Tipe | Deskripsi |
|---|---|---|
| result | Boolean | Apakah panggilan API berhasil. true menandakan berhasil. |
Contoh isi respons
HTTP/1.1 200 OK
Content-Type:application/json
{
"result" : true
}
Kode error
Jika error dikembalikan saat memanggil API ini, temukan solusinya di dokumen Kode error global berdasarkan pesan error.| HttpCode | Kode error | Pesan error | Deskripsi |
|---|---|---|---|
| 400 | invalidParameter | forwardErrorMessage | Error parameter |
| 400 | invalidParameter | calendar id cannot be blank | ID kalender tidak boleh kosong |
| 400 | invalidParameter | calendar name length must less than 128 | Nama kalender tidak boleh melebihi 128 karakter |
| 400 | invalidParameter | subscribe range cannot be null | Cakupan langganan tidak boleh kosong |
| 400 | invalidParameter | calendar name cannot be blank | Nama kalender tidak boleh kosong |
| 400 | invalidParameter | current user must in range | Pengguna saat ini harus berada di grup dan organisasi yang bersangkutan |
| 403 | permissionDenied | permission denied | Autentikasi gagal |