我正在遵循网络研讨会平台的文档,以允许参与者通过 api 注册。有效负载将像这样传递
$params = array(
'registration' => array(
1 => 'John',
2 => 'Dee',
3 => '[email protected]',
),
这是刚刚添加参与者的文档截图
下面是我写的代码
$client = new Client();
$headers = [
'X-Api-Key' => 'XXXXXXXXXXXXXX',
];
$params = [
'registration' => [
1 => 'Justice',
2 => 'Arthur',
3 => '[email protected]',
],
];
$response = $client->post('https://api.clickmeeting.com/v1/conferences/7436564/registration', [
'headers' => $headers,
'json' => $params,
]);
$body = $response->getBody()->getContents();
// log the response
Log::debug('ClickMeeting API response', [
'status' => $response->getStatusCode(),
'body' => $body,
]);
// handle response as needed
}
然而所有的尝试都没有成功。我不断收到此错误
[![ "code": 422,
"name": "VALIDATION_ERRORS",
"errors": [
{
"name": 1,
"message": "The \"Name\" field is required and can`t be empty."
},
{
"name": 3,
"message": "The \"Email Address\" field is required and can`t be empty."
}
]]
非常感谢任何帮助。我正在使用 Laravel 8
我在 ClickMeeting API 中遇到了类似问题,特别是在尝试提交包含 自定义字段 的注册时。我通过 ClickMeeting UI 添加了一个“电话号码”字段。正如 @James Donohue 已经说过,API 文档仅提供了三个参数的详细信息,并且在如何管理注册页面上添加的自定义字段方面存在明显的差距。
尝试使用注册表上的附加字段注册新与会者时,我收到类似于以下内容的验证错误:
"code":422,
"name":"VALIDATION_ERRORS",
"errors":[
{
"name":2221582,
"message":"The \"Phone Number\" field is required and can`t be empty."
}
]
}
目前,据我了解,ClickMeeting API 本身并不支持通过 API 进行注册过程中的自定义字段。
至少我们不知道如何传递这些自定义字段,以免收到错误响应。我还尝试将字段名称作为 $params 数组中的键传递等等,但没有成功。
经过一番试验和错误,我发现 API 可以按预定义的顺序处理具有一组特定字段的 $params 数组。这些字段及其顺序似乎是固定的,并且不直接支持自定义字段。然而,预定义字段恰好包含一个“电话”字段的插槽,这满足了我的需求。
以下是如何使用一些附加字段构造 $params 数组:
$params = [
'registration' => [
1 => 'First name',
2 => 'Last name',
3 => '[email protected]',
4 => 'Address',
5 => 'City',
6 => 'State/Province',
7 => 'Zip/Postal Code',
8 => 'Country',
9 => 'Phone',
10 => 'Company',
],
];
对于那些在 ClickMeeting API 方面面临类似问题的人,重要的是要了解,根据我的发现,该 API 目前似乎不支持自定义字段。只能传递特定顺序的一组特定参数。
希望有帮助!