创建新函数

发布 /groups/{groupId}/apps/{appId}/functions

创建一个新函数

路径参数

application/json

body 必需

要创建的函数

  • can_evaluate 对象

    如果允许运行函数以响应传入请求,则 JSON 表达式的计算结果为 true

  • 名称 字符串 必需

    函数的唯一名称。

  • private 布尔 必需

    如果为 true ,则该函数对客户端应用程序隐藏。您仍然可以从 JSON 表达式和其他函数(包括传入的 webhook 和触发器)中调用私有函数。

  • 来源 字符串 必需

    函数的字符串化源代码。代码必须是有效的 ES6。

  • run_as_system 布尔

    如果为 true,则该函数以完全权限执行,会绕过所有服务的规则。

  • run_as_user_id 字符串

    应用程序用户的帐户 ID。如果已定义,端点将始终以指定的用户身份运行。不能与 run_as_user_id_script_source 一起使用。

  • run_as_user_id_script_source 字符串

    返回应用程序用户帐户ID 的函数的字符串化源代码。如果已定义,端点将在每个请求时执行该函数,并以具有该函数返回的ID的用户身份运行。不能与 run_as_user_id 一起使用。

响应

  • 201 application/json

    已成功创建函数。

    隐藏响应属性 显示响应属性 对象
    • _id 字符串

      函数的唯一标识符。

    • 名称 字符串

      请求的 name字段中指定的函数的名称。

POST /groups/{groupId}/apps/{appId}/functions
curl \
 --request POST 'https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/functions' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{"can_evaluate":{},"name":"string","private":true,"source":"string","run_as_system":true,"run_as_user_id":"string","run_as_user_id_script_source":"string"}'
请求示例
{
  "can_evaluate": {},
  "name": "string",
  "private": true,
  "source": "string",
  "run_as_system": true,
  "run_as_user_id": "string",
  "run_as_user_id_script_source": "string"
}
响应示例 (201)
{
  "_id": "string",
  "name": "string"
}