Deskripsi panggilan API
API ini hanya dapat digunakan dalam skenario coolapp pesan langsung. Untuk detailnya, lihat Coolapp pesan langsung.Permintaan
Informasi dasar
| Bidang | Nilai |
|---|---|
| URL HTTP | https://api.dingtalk.io/v1.0/robot/privateChatMessages/send |
| Metode HTTP | POST |
| Tipe aplikasi yang didukung | appType-Aplikasi internal appType-Aplikasi perusahaan pihak ketiga |
| Persyaratan izin | permission-qyapi_robot_sendmsg-Izin untuk Bot di organisasi Anda mengirim pesan |
Header permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| x-acs-dingtalk-access-token | String | Ya | Kredensial akses yang digunakan untuk memanggil API ini. Dapatkan sebagai berikut: - Untuk aplikasi internal, panggil API Dapatkan access token aplikasi internal. - Untuk aplikasi perusahaan pihak ketiga, panggil API Dapatkan access token organisasi yang telah memberi otorisasi ke aplikasi pihak ketiga. |
Isi permintaan
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| msgParam | String | Ya | Parameter templat pesan. Untuk detailnya, lihat Tipe pesan yang dikirim oleh Bot perusahaan. |
| msgKey | String | Ya | Kunci templat pesan. Untuk detailnya, lihat Tipe pesan yang dikirim oleh Bot perusahaan. |
| openConversationId | String | Ya | ID obrolan. Dapatkan nilai OpenConversationId dengan memanggil Instal coolapp ke obrolan pesan langsung secara massal atau dengan mendengarkan Peristiwa coolapp pesan langsung. |
| robotCode | String | Ya | Kode Bot. Gunakan robotCode dari Bot perusahaan untuk parameter ini. Untuk detailnya, lihat ID Bot. |
| coolAppCode | String | Ya | Kode coolapp. |
Contoh permintaan
HTTPPOST /v1.0/robot/privateChatMessages/send HTTP/1.1
Host:api.dingtalk.io
x-acs-dingtalk-access-token:8ca04016xxx
Content-Type:application/json
{
"msgParam" : "{\"content\":\"DingTalk, tempat kemajuan terjadi\"}",
"msgKey" : "sampleText",
"openConversationId" : "cid6******==",
"robotCode" : "dingue4kfzdxbyn0pjqd",
"coolAppCode" : "COOLAPP-1-******9000J"
}
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* Initialize the account client using a token.
* @return Client
* @throws Exception
*/
public static com.aliyun.dingtalkrobot_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.dingtalkrobot_1_0.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_);
com.aliyun.dingtalkrobot_1_0.Client client = Sample.createClient();
com.aliyun.dingtalkrobot_1_0.models.PrivateChatSendHeaders privateChatSendHeaders = new com.aliyun.dingtalkrobot_1_0.models.PrivateChatSendHeaders();
privateChatSendHeaders.xAcsDingtalkAccessToken = "<your access token>";
com.aliyun.dingtalkrobot_1_0.models.PrivateChatSendRequest privateChatSendRequest = new com.aliyun.dingtalkrobot_1_0.models.PrivateChatSendRequest()
.setMsgParam("{\"content\":\"DingTalk, tempat kemajuan terjadi\"}")
.setMsgKey("sampleText")
.setOpenConversationId("cid6******==")
.setRobotCode("dingue4kfzdxbyn0pjqd")
.setCoolAppCode("COOLAPP-1-******9000J");
try {
client.privateChatSendWithOptions(privateChatSendRequest, privateChatSendHeaders, new com.aliyun.teautil.models.RuntimeOptions());
} catch (TeaException err) {
if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
// The err object contains the code and message attributes, which help you locate the issue.
}
} 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)) {
// The err object contains the code and message attributes, which help you locate the issue.
}
}
}
}
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sys
from typing import List
from alibabacloud_dingtalk.robot_1_0.client import Client as dingtalkrobot_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.robot_1_0 import models as dingtalkrobot__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() -> dingtalkrobot_1_0Client:
"""
Initialize the account client using a token.
@return: Client
@throws Exception
"""
config = open_api_models.Config()
config.protocol = 'https'
config.region_id = 'central'
return dingtalkrobot_1_0Client(config)
@staticmethod
def main(
args: List[str],
) -> None:
client = Sample.create_client()
private_chat_send_headers = dingtalkrobot__1__0_models.PrivateChatSendHeaders()
private_chat_send_headers.x_acs_dingtalk_access_token = '<your access token>'
private_chat_send_request = dingtalkrobot__1__0_models.PrivateChatSendRequest(
msg_param='{"content":"DingTalk, tempat kemajuan terjadi"}',
msg_key='sampleText',
open_conversation_id='cid6******==',
robot_code='dingue4kfzdxbyn0pjqd',
cool_app_code='COOLAPP-1-******9000J'
)
try:
client.private_chat_send_with_options(private_chat_send_request, private_chat_send_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# The err object contains the code and message attributes, which help you locate the issue.
pass
@staticmethod
async def main_async(
args: List[str],
) -> None:
client = Sample.create_client()
private_chat_send_headers = dingtalkrobot__1__0_models.PrivateChatSendHeaders()
private_chat_send_headers.x_acs_dingtalk_access_token = '<your access token>'
private_chat_send_request = dingtalkrobot__1__0_models.PrivateChatSendRequest(
msg_param='{"content":"DingTalk, tempat kemajuan terjadi"}',
msg_key='sampleText',
open_conversation_id='cid6******==',
robot_code='dingue4kfzdxbyn0pjqd',
cool_app_code='COOLAPP-1-******9000J'
)
try:
await client.private_chat_send_with_options_async(private_chat_send_request, private_chat_send_headers, util_models.RuntimeOptions())
except Exception as err:
if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
# The err object contains the code and message attributes, which help you locate the issue.
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\Vrobot_1_0\Dingtalk;
use \Exception;
use AlibabaCloud\Tea\Exception\TeaError;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dingtalk\Vrobot_1_0\Models\PrivateChatSendHeaders;
use AlibabaCloud\SDK\Dingtalk\Vrobot_1_0\Models\PrivateChatSendRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class Sample {
/**
* Initialize the account client using 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();
$privateChatSendHeaders = new PrivateChatSendHeaders([]);
$privateChatSendHeaders->xAcsDingtalkAccessToken = "<your access token>";
$privateChatSendRequest = new PrivateChatSendRequest([
"msgParam" => "{\"content\":\"DingTalk, tempat kemajuan terjadi\"}",
"msgKey" => "sampleText",
"openConversationId" => "cid6******==",
"robotCode" => "dingue4kfzdxbyn0pjqd",
"coolAppCode" => "COOLAPP-1-******9000J"
]);
try {
$client->privateChatSendWithOptions($privateChatSendRequest, $privateChatSendHeaders, 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)) {
// The err object contains the code and message attributes, which help you locate the issue.
}
}
}
}
$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"
dingtalkrobot_1_0 "github.com/alibabacloud-go/dingtalk/robot_1_0"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
"github.com/alibabacloud-go/tea/tea"
)
/**
* Initialize the account client using a token.
* @return Client
* @throws Exception
*/
func CreateClient () (_result *dingtalkrobot_1_0.Client, _err error) {
config := &openapi.Config{}
config.Protocol = tea.String("https")
config.RegionId = tea.String("central")
_result = &dingtalkrobot_1_0.Client{}
_result, _err = dingtalkrobot_1_0.NewClient(config)
return _result, _err
}
func _main (args []*string) (_err error) {
client, _err := CreateClient()
if _err != nil {
return _err
}
privateChatSendHeaders := &dingtalkrobot_1_0.PrivateChatSendHeaders{}
privateChatSendHeaders.XAcsDingtalkAccessToken = tea.String("<your access token>")
privateChatSendRequest := &dingtalkrobot_1_0.PrivateChatSendRequest{
MsgParam: tea.String("{\"content\":\"DingTalk, tempat kemajuan terjadi\"}"),
MsgKey: tea.String("sampleText"),
OpenConversationId: tea.String("cid6******=="),
RobotCode: tea.String("dingue4kfzdxbyn0pjqd"),
CoolAppCode: tea.String("COOLAPP-1-******9000J"),
}
tryErr := func()(_e error) {
defer func() {
if r := tea.Recover(recover()); r != nil {
_e = r
}
}()
_, _err = client.PrivateChatSendWithOptions(privateChatSendRequest, privateChatSendHeaders, &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)) {
// The err object contains the code and message attributes, which help you locate the issue.
}
}
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 dingtalkrobot_1_0, * as $dingtalkrobot_1_0 from '@alicloud/dingtalk/robot_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 using a token.
* @return Client
* @throws Exception
*/
static createClient(): dingtalkrobot_1_0 {
let config = new $OpenApi.Config({ });
config.protocol = "https";
config.regionId = "central";
return new dingtalkrobot_1_0(config);
}
static async main(args: string[]): Promise<void> {
let client = Client.createClient();
let privateChatSendHeaders = new $dingtalkrobot_1_0.PrivateChatSendHeaders({ });
privateChatSendHeaders.xAcsDingtalkAccessToken = "<your access token>";
let privateChatSendRequest = new $dingtalkrobot_1_0.PrivateChatSendRequest({
msgParam: "{\"content\":\"DingTalk, tempat kemajuan terjadi\"}",
msgKey: "sampleText",
openConversationId: "cid6******==",
robotCode: "dingue4kfzdxbyn0pjqd",
coolAppCode: "COOLAPP-1-******9000J",
});
try {
await client.privateChatSendWithOptions(privateChatSendRequest, privateChatSendHeaders, new $Util.RuntimeOptions({ }));
} catch (err) {
if (!Util.empty(err.code) && !Util.empty(err.message)) {
// The err object contains the code and message attributes, which help you locate the issue.
}
}
}
}
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 using a token.
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Dingtalkrobot_1_0.Client CreateClient()
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
config.Protocol = "https";
config.RegionId = "central";
return new AlibabaCloud.SDK.Dingtalkrobot_1_0.Client(config);
}
public static void Main(string[] args)
{
AlibabaCloud.SDK.Dingtalkrobot_1_0.Client client = CreateClient();
AlibabaCloud.SDK.Dingtalkrobot_1_0.Models.PrivateChatSendHeaders privateChatSendHeaders = new AlibabaCloud.SDK.Dingtalkrobot_1_0.Models.PrivateChatSendHeaders();
privateChatSendHeaders.XAcsDingtalkAccessToken = "<your access token>";
AlibabaCloud.SDK.Dingtalkrobot_1_0.Models.PrivateChatSendRequest privateChatSendRequest = new AlibabaCloud.SDK.Dingtalkrobot_1_0.Models.PrivateChatSendRequest
{
MsgParam = "{\"content\":\"DingTalk, tempat kemajuan terjadi\"}",
MsgKey = "sampleText",
OpenConversationId = "cid6******==",
RobotCode = "dingue4kfzdxbyn0pjqd",
CoolAppCode = "COOLAPP-1-******9000J",
};
try
{
client.PrivateChatSendWithOptions(privateChatSendRequest, privateChatSendHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
}
catch (TeaException err)
{
if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
{
// The err object contains the code and message attributes, which help you locate the issue.
}
}
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))
{
// The err object contains the code and message attributes, which help you locate the issue.
}
}
}
}
}
Respons
Isi respons
| Nama | Tipe | Deskripsi |
|---|---|---|
| processQueryKey | String | ID pesan terenkripsi. Gunakan ID ini untuk mengueri daftar baca suatu pesan atau untuk menarik pesan dengan memanggil API Kueri daftar baca pesan Bot dalam obrolan satu lawan satu dan Tarik pesan Bot secara massal dalam obrolan satu lawan satu. |
Contoh isi respons
HTTP/1.1 200 OK
Content-Type:application/json
{
"processQueryKey" : "63w9tt3IRri/6mbDMiguoSXWX0vWkWZ******lg="
}
Kode error
Jika sebuah error dikembalikan saat Anda memanggil API ini, temukan solusinya di dokumen Kode error global berdasarkan pesan error.| HttpCode | Kode error | Pesan error | Deskripsi |
|---|---|---|---|
| 400 | invalidParameter.robotCode.empty | The bot robotCode is empty. | robotCode Bot tidak valid. Periksa apakah Bot ada di dalam grup. |
| 400 | invalidParameter.robotCode.auth | This app’s appkey does not match the bot’s robotCode. Use the appkey of the bot’s app. | appkey aplikasi ini tidak cocok dengan robotCode Bot. Gunakan appkey dari aplikasi Bot tersebut. |
| 400 | invalidParameter.robotCode.auth | This app’s suiteKey does not match the bot. Use the suiteKey of the ISV app bound to the bot to send the message. | suiteKey aplikasi ini tidak cocok dengan Bot. Gunakan suiteKey dari aplikasi ISV yang terikat ke Bot untuk mengirim pesan. |
| 400 | invalidParameter.robotCode.coolApp | The coolapp code is invalid. | Kode coolapp tidak valid. |
| 400 | invalidParameter.robotCode.coolApp | The coolapp code does not match the bot. Use the bot bound to this coolapp to send the message. | Kode coolapp tidak cocok dengan Bot. Gunakan Bot yang terikat ke coolapp ini untuk mengirim pesan. |
| 400 | invalidParameter.robotCode.coolApp | The coolapp bound to this bot is not used in any one-on-one chat. | Coolapp yang terikat ke Bot ini tidak digunakan dalam obrolan satu lawan satu mana pun. |
| 400 | invalidParameter.robotCode.auth | Only a coolapp identity can use this bot. | Hanya identitas coolapp yang dapat menggunakan Bot ini. |
| 400 | invalidParameter.userIds.empty | The user userId list is empty. | Daftar userId pengguna kosong. |
| 400 | invalidParameter.userIds.overMax | The user userId list exceeds the maximum limit. | Daftar userId pengguna melebihi batas maksimum. |
| 400 | invalidParameter.msgKey.empty | The msgKey is missing. | msgKey tidak ada. |
| 400 | invalidParameter.msgKey.invalid | The msgKey is invalid. | msgKey tidak valid. |
| 400 | invalidParameter.msgParam.invalid | The msgParam must be in JSON format. | msgParam harus dalam format JSON. |
| 400 | invalidParameter.param.invalid | The parameter is invalid. | Parameter tidak valid. |
| 400 | invalidParameter.msg.unsupport | The message type is not supported. | Tipe pesan tidak didukung. |
| 400 | invalidParameter.msgParam.tooLong | The message content is too long. | Konten pesan terlalu panjang. |
| 400 | invalidParameter.robotCode.notExsit | The bot does not exist. | Bot tidak ada. |
| 400 | unknown.send.result | Unknown send result. | Hasil pengiriman tidak diketahui. |
| 400 | invalidParameter.msgBody.invalid | The body must be JSON. | Isi harus berupa JSON. |
| 400 | invalidParameter.robotCode.missing | The robotCode is missing. | robotCode tidak ada. |
| 400 | invalidParameter.userId.empty | The staffId is missing. | staffId tidak ada. |
| 400 | invalidParameter.token.invalid | Unauthorized token. | Token tidak terotorisasi. |
| 400 | invalidParameter.processQueryKey.missing | The processQueryKey is missing. | processQueryKey tidak ada. |
| 400 | invalidParameter.robotCode.invalid | Invalid robotCode. | robotCode tidak valid. |
| 400 | invalid.processQueryKey | Invalid processQueryKey. | processQueryKey tidak valid. |
| 400 | miss.openConversationId | The openConversationId is missing. | openConversationId tidak ada. |
| 400 | invalid.openConversationId | Invalid openConversationId. | openConversationId tidak valid. |
| 400 | group.disbanded | The group has been disbanded. | Grup telah dibubarkan. |
| 400 | token.notExisted | The TOKEN does not exist. | TOKEN tidak ada. |
| 400 | bot.stopped | The group bot has been disabled. | Bot grup telah dinonaktifkan. |
| 400 | template.not.existed | The bot template does not exist. | Templat Bot tidak ada. |
| 400 | template.stopped | The bot template has been disabled. | Templat Bot telah dinonaktifkan. |
| 400 | miss.param.text | The text attribute is required. | Atribut text wajib diisi. |
| 400 | miss.param.contentOfText | The text->content attribute is required. | Atribut text->content wajib diisi. |
| 400 | miss.param.link | The link attribute is required. | Atribut link wajib diisi. |
| 400 | miss.param.textOfLink | The link->text attribute is required. | Atribut link->text wajib diisi. |
| 400 | miss.param.titleOfLink | The link->title attribute is required. | Atribut link->title wajib diisi. |
| 400 | miss.param.messageUrlOfLink | The link->messageUrl attribute is required. | Atribut link->messageUrl wajib diisi. |
| 400 | miss.param.markdown | The markdown attribute is required. | Atribut markdown wajib diisi. |
| 400 | miss.param.markdownTotitle | The markdown->text attribute is required. | Atribut markdown->text wajib diisi. |
| 400 | miss.param.markdownTotext | The markdown->text attribute is required. | Atribut markdown->text wajib diisi. |
| 400 | miss.param.actionCard | The actionCard attribute is required. | Atribut actionCard wajib diisi. |
| 400 | miss.param.actionCardTotitle | The actionCard->title attribute is required. | Atribut actionCard->title wajib diisi. |
| 400 | miss.param.actionCardTotext | The actionCard->text attribute is required. | Atribut actionCard->text wajib diisi. |
| 400 | miss.param.actionCardTosingleTitle | The actionCard->singleTitle attribute is required. | Atribut actionCard->singleTitle wajib diisi. |
| 400 | miss.param.actionCardTosingleUrl | The actionCard->singleURL attribute is required. | Atribut actionCard->singleURL wajib diisi. |
| 400 | miss.param.actionCardTobtns | The actionCard->btns attribute is required. | Atribut actionCard->btns wajib diisi. |
| 400 | miss.param.actionCardTobtnsTotitle | The actionCard->btns->title attribute is required. | Atribut actionCard->btns->title wajib diisi. |
| 400 | miss.param.actionCardTobtnsToactionUrl | The actionCard->btns->actionURL attribute is required. | Atribut actionCard->btns->actionURL wajib diisi. |
| 400 | invalid.param.actionCardTobtnOrientation | Invalid actionCard->btnOrientation. | actionCard->btnOrientation tidak valid. |
| 400 | invalid.param.actionCardTocanForward | Invalid actionCard->canForward. | actionCard->canForward tidak valid. |
| 400 | miss.param.feedCard | The feedCard attribute is required. | Atribut feedCard wajib diisi. |
| 400 | miss.param.feedCardTolinks | The feedCard->links attribute is required. | Atribut feedCard->links wajib diisi. |
| 400 | miss.param.feedCardTolinksTotitle | The feedCard->links->title attribute is required. | Atribut feedCard->links->title wajib diisi. |
| 400 | miss.param.feedCardTolinksTomessageUrl | The feedCard->links->messageURL attribute is required. | Atribut feedCard->links->messageURL wajib diisi. |
| 400 | miss.param.feedCardTolinksTopicUrl | The feedCard->links->picURL attribute is required. | Atribut feedCard->links->picURL wajib diisi. |
| 400 | miss.param.photo | The photo attribute is required. | Atribut photo wajib diisi. |
| 400 | miss.param.photoTophotoUrl | The photo->photoURL attribute is required. | Atribut photo->photoURL wajib diisi. |
| 400 | miss.param.image | The image attribute is required. | Atribut image wajib diisi. |
| 400 | miss.param.imageTopicUrl | The image->picURL attribute is required. | Atribut image->picURL wajib diisi. |
| 400 | miss.param.beautifulCard | The beautifulCard attribute is required. | Atribut beautifulCard wajib diisi. |
| 400 | miss.param.beautifulCardToimage | The beautifulCard->image attribute is required. | Atribut beautifulCard->image wajib diisi. |
| 400 | miss.param.beautifulCardTotitle | The beautifulCard->title attribute is required. | Atribut beautifulCard->title wajib diisi. |
| 400 | miss.param.beautifulCardToactionUrl | The beautifulCard->actionUrl attribute is required. | Atribut beautifulCard->actionUrl wajib diisi. |
| 400 | miss.param.beautifulCardTointroduction | The beautifulCard->introduction attribute is required. | Atribut beautifulCard->introduction wajib diisi. |
| 400 | send.byToken.tooFast | Rate limit error when sending with TOKEN. | Error batas laju saat mengirim dengan TOKEN. |
| 400 | send.too.fast | Rate limit error. | Error batas laju. |
| 400 | send.forbidden | Sending is forbidden. | Pengiriman dilarang. |
| 400 | ip.not.match | The IP does not match. | IP tidak cocok. |
| 400 | keywords.not.match | The keywords do not match. | Kata kunci tidak cocok. |
| 400 | sign.not.match | The signature does not match. | Tanda tangan tidak cocok. |
| 400 | contain.unsafe.url | Contains unsafe external links. | Berisi tautan eksternal yang tidak aman. |
| 400 | contain.notAllowed.text | Contains inappropriate text. | Berisi teks yang tidak pantas. |
| 400 | contain.notAllowed.picture | Contains inappropriate images. | Berisi gambar yang tidak pantas. |
| 400 | contain.notAllowed.content | Contains inappropriate content. | Berisi konten yang tidak pantas. |
| 400 | illegal.receivers | The recipient list is invalid. | Daftar penerima tidak valid. |
| 400 | receivers.exceed | The recipient list exceeds the limit. | Daftar penerima melebihi batas. |
| 400 | illegal.excludes | The excluded recipient list is invalid. | Daftar penerima yang dikecualikan tidak valid. |
| 400 | too.many.group | Rate limited due to frequent sending. | Terkena batas laju karena pengiriman terlalu sering. |
| 400 | too.many.people | Rate limited due to frequent sending. | Terkena batas laju karena pengiriman terlalu sering. |
| 400 | only.groupAdmin.canAtAll | Only the group owner can @Everyone. | Hanya pemilik grup yang dapat @Semua Orang. |
| 400 | bot.forbidden.sendMessage | The account is muted. | Akun dibisukan. |
| 400 | session.notExisted | The session does not exist. | Sesi tidak ada. |
| 400 | session.expired | The session has expired. | Sesi telah kedaluwarsa. |
| 400 | staffId.notExisted | The staffId does not exist. | staffId tidak ada. |
| 400 | chatbotId.notAllow.sendOTO | Not allowed to actively send direct messages. | Tidak diizinkan mengirim pesan langsung secara aktif. |
| 400 | robot.oto.notExist | No valid bot direct message chat exists. | Tidak ada obrolan pesan langsung Bot yang valid. |
| 400 | sendMessage.model.notMatch | No matching message model. | Tidak ada model pesan yang cocok. |
| 400 | miss.param.file | %s | Konten pesan tidak valid. Atribut file wajib diisi. |
| 400 | miss.param.video | %s | Konten pesan tidak valid. Atribut video->videoMediaId wajib diisi. |
| 400 | miss.param.audio | %s | Konten pesan tidak valid. Atribut audio wajib diisi. |
| 400 | conversation.org.notMatch | The organization information of the chat does not match. | Verifikasi apakah token memiliki izin untuk melakukan operasi pada obrolan ini. |
| 400 | resource.not.found | %s | Sumber daya tidak ada. Bot mungkin tidak ada. |
| 400 | unauthorized | %s | Tidak terotorisasi. |
| 400 | auth.error | %s | Izin tidak memadai. Operasi tidak diizinkan. |
| 400 | resource.unavailable | %s | Sumber daya tidak tersedia. Bot mungkin telah dinonaktifkan, atau coolapp mungkin belum diinstal di obrolan. |
| 500 | system.error | Unknown system error. | Error sistem tidak diketahui. |
| 500 | send.ding.exception | An error occurred while sending the DING message. | Terjadi error saat mengirim pesan DING. |