推送应用配置文件

修补 /groups/{groupId}/apps/{appId}/push

上传新的完整应用配置。此操作将覆盖整个现有应用配置。

注意:如果您的应用配置包含对密钥的任何引用,则必须在推送配置之前创建密钥。

路径参数

application/json

body

  • 名称 字符串 必需

    应用的名称。

  • provider_region 字符串 必需
    以下之一:

    取值为 aws-us-east-1、aws-us-west-2、aws-us-east-2、aws-eu-central-1、aws-eu-west-1、aws-eu-west-2、aws-ap-southeast-1、aws-ap-southeast-2、aws-ap-south-1 或 aws-sa-east-1。

    取值为 azure-eastus2、azure-westus、azure-westeurope、azure-eastasia 或 azure-southeastasia。

    取值为 gcp-us-central1、gcp-us-east4、gcp-us-west1、gcp-europe-west1 或 gcp-asia-south1。

  • deployment_model 字符串 必需

    应用程序部署模型。

    值为 GLOBAL 或 LOCAL。

  • environment 字符串

    应用的环境标签。如果未指定,则应用没有环境标签。

    取值为 development、testing、qa 或 production。

  • auth_providers 大量[对象] 必需
    以下任何一项:
  • custom_user_data 对象| null
    隐藏 custom_user_data 属性 显示 custom_user_data 属性 对象
    • database_name 字符串

      包含自定义用户数据的数据库名称。

    • collection_name 字符串

      包含自定义用户数据的集合名称。

    • user_id_field 字符串

      每个自定义用户数据文档中显示的字段名称,其中包含每个文档相应用户的用户帐户 ID。

    • enabled 布尔

      如果为 true,则启用自定义用户数据。

    • mongo_service_name 字符串 必需

      包含自定义用户数据的链接MongoDB数据源的名称。

    • on_user_creation_function_name 字符串
  • data_api_config 对象| null
    隐藏 data_api_config 属性 显示 data_api_config 属性 对象| null
    • 残疾人 布尔 必需
    • versions array[string] 必需

      受支持的数据API版本。

      值为 v1。

    • return_type 字符串 必需

      Data API 终结点返回的默认数据格式。

      值为 JSON 或 EJSON。

    • create_user_on_auth 布尔
    • run_as_user_id 字符串

      应用程序用户的帐号 ID。如果已定义,端点将始终以指定的用户身份运行。

    • run_as_user_id_script_source 字符串

      返回应用程序用户帐户 ID 的函数的字符串化源代码。如果已定义,端点将在每个请求时执行该函数,并以其 ID 为该函数所返回 ID 的对应用户的身份运行。

    • validation_method 字符串 必需

      值为 NO_VALIDATION、SECRET_AS_QUERY_PARAM 或 VERIFY_PAYLOAD。

    • secret_name 字符串

      如果 validation_method 设置为 "SECRET_AS_QUERY_PARAM" 或 "VERIFY_PAYLOAD",则这是授权请求的密钥的 name。

    • can_evaluate 对象

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

  • data_sources 大量[对象] 必需
    以下之一:
  • 端点 大量[对象] 必需
    隐藏端点属性 显示端点属性 对象
    • route 字符串 必需
    • http_method 字符串 必需

      取值为 GET、POST、PUT、PATCH、DELETE 或 *。

    • function_id 字符串 必需
    • validation_method 字符串 必需

      值为 NO_VALIDATION、SECRET_AS_QUERY_PARAM 或 VERIFY_PAYLOAD。

    • secret_id 字符串

      如果 validation_method 设置为 "SECRET_AS_QUERY_PARAM" 或 "VERIFY_PAYLOAD",则这是授权请求的密钥的 _id。

    • return_type 字符串 必需

      自定义 HTTPS 终结点返回的默认数据格式。

      值为 JSON 或 EJSON。

    • respond_result 布尔 必需
    • fetch_custom_user_data 布尔
    • create_user_on_auth 布尔
    • 残疾人 布尔 必需
    • function_name 字符串 必需

      端点函数的名称。

  • 环境 对象 必需
    隐藏环境属性 显示环境属性 对象
    • values 对象

      一个对象,它将每个可能的环境名称映射到该环境中可用的环境值的定义。

      Hide values attributes 显示值属性 对象
      • 无 对象
        不隐藏任何属性 不显示任何属性 对象
        • values 对象
      • 开发中 对象
        隐藏开发属性 显示开发属性 对象
        • values 对象
      • 测试 对象
        隐藏测试属性 显示测试属性 对象
        • values 对象
      • qa 对象
        Hide qa attribute 显示 qa 属性 对象
        • values 对象
      • 生产 对象
        隐藏生产属性 显示生产属性 对象
        • values 对象
  • 功能 大量[对象] 必需
    隐藏函数属性 显示函数属性 对象
    • 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 一起使用。

  • GraphQL 对象 必需
    隐藏GraphQL属性 显示GraphQL属性 对象
    • config 对象 必需
      隐藏配置属性 显示配置属性 对象
      • use_natural_pluralization 布尔

        如果 true,生成的模式类型名称将尽可能使用常见的英语复数形式。

        如果为 false,或者无法确定自然复数,则复数类型使用单数类型名称,并在末尾附加 "s"。

        创建应用程序后不能更改此值。对于所有新应用程序,该值均为 true。

      • disable_schema_introspection 布尔

        如果为 true,则 GraphQL API 会阻止客户端的内省查询。

    • validation_settings 对象 必需
      隐藏 validation_settings 属性 显示 validation_settings 属性 对象
      • read_validation_action 字符串

        值为 ERROR 或 WARN。

      • read_validation_level 字符串

        值为 STRICT 或 OFF。

      • write_validation_action 字符串

        值为 ERROR 或 WARN。

      • write_validation_level 字符串

        值为 STRICT 或 OFF。

    • custom_resolvers 大量[对象] 必需
      隐藏 custom_resolvers 属性 显示 custom_resolvers 属性 对象
      • on_type 字符串 必需

        解析程序父类型的名称。可以是 "Query"、"Mutation",如果是计算属性,则可以是生成类型的名称。

      • field_name 字符串 必需

        GraphQL 模式中出现的自定义解析程序字段的名称。

      • input_type 字符串 |对象

        自定义解析程序的 input 参数的类型。它可为标量、现有生成类型的名称或自定义 JSON 架构对象。如果未定义,则解析程序不接受输入。

      • input_type_format 字符串

        自定义解析程序使用的输入类型。此值必须与 input_type 的值一致:

        • 标量输入类型必须使用 "scalar" 或 "scalar-list"
        • 生成的输入类型必须使用 "generated" 或 "generated-list"
        • 自定义输入类型必须使用 "custom"

        如果未定义,则解析程序不接受输入。

        取值为 scalar、scalar-list、generated、generated-list 或 custom。

      • payload_type 字符串 |对象

        自定义解析程序返回值的类型。它可为标量、现有生成类型的名称或自定义 JSON 架构对象。

        如果未定义,则解析程序将返回一个 DefaultPayload 对象:

        type DefaultPayload {
          status: String!
        }
        
      • payload_type_format 字符串

        自定义解析程序使用的有效负载类型。此值必须与 payload_type 的值一致:

        • 标量有效载荷类型必须使用 "scalar" 或 "scalar-list"
        • 生成的有效负载类型必须使用 "generated" 或 "generated-list"
        • 自定义有效载荷类型必须使用 "custom"

        如果未定义,解析程序将返回 DefaultPayload 对象:

        取值为 scalar、scalar-list、generated、generated-list 或 custom。

      • function_name 字符串 必需

        解析程序函数的名称。

  • 托管 对象 必需
    隐藏托管属性 显示托管属性 对象
    • enabled 布尔 必需
    • custom_domain 字符串
    • default_error_path 字符串
    • default_error_code 字符串
  • https_endpoints 大量[对象] 必需

    [已弃用] 旧版 HTTP 服务的列表。这仅用于向后兼容。

    隐藏 https_endpoints 属性 显示 https_endpoints 属性 对象
    • 名称 字符串

      服务名称。

    • 类型 字符串

      服务类型。

      取值为 aws、twilio、github、gcm 或 http。

    • incoming_webhooks 大量[对象]
      隐藏传入网络钩子属性 显示传入网络钩子属性 对象
      • 名称 字符串 必需
      • function_source 字符串 必需
      • respond_result 布尔 必需
      • 选项 对象
        隐藏选项属性 显示选项属性 对象
        • 秘密 字符串
        • secretAsQueryParam 布尔
    • 版本 整型
  • log_forwarders 大量[对象] 必需
    隐藏 log_forwarders 属性 显示 log_forwarders 属性 对象
    • 名称 字符串 必需
    • 残疾人 布尔 必需
    • log_types array[string] 必需

      取值为 auth、endpoint、function、graphql、push、schema、service、sync、trigger 或 trigger_error_handler。

    • log_statuses array[string] 必需

      值为 error 或 success。

    • policy 对象 必需
      隐藏策略属性 显示策略属性 对象
      • 类型 字符串

        值为 single 或 batch。

    • 操作 对象 必需
      隐藏动作属性 显示动作属性 对象
      • 类型 字符串

        值为 collection 或 function。

      • 名称 字符串
      • data_source 字符串
      • database 字符串
      • 集合 字符串
  • schemas 大量[对象] 必需
    隐藏模式属性 显示模式属性 对象
    • metadata 对象

      用于描述模式适用于哪个链接集合的元数据。

      Hide metadata attributes 显示元数据属性 对象
      • data_source 字符串

        数据源名称。

      • database 字符串

        数据库名称。

      • 集合 字符串

        collection名称。

    • 模式 对象

      集合的有效模式。

      隐藏模式属性 显示模式属性 对象
      • bsonType 字符串

        字段的BSON类型。

        值为 object、array、string、number、int、long、double、decimal、date、timestamp、bool、null、 regex、objectId、binary、uuid、function、javascript、symbol、minKey 或 maxKey。

      • 标题 字符串

        人类可读的模式标题。

      • 必需 array[string]

        对于 object 模式,为对象实例中所需字段名称的大量。

      • 属性 对象

        一个对象,其中每个字段名称都是模式中的一个属性。相应的值是该字段的模式定义。

        隐藏属性 (Attribute) 显示属性 (Attribute) 对象
        • * 对象

          集合的有效模式。

    • 关系 对象

      与外部集合的关系。每个字段名称都是模式中的一个属性。相应的值是该字段的关系定义。

      隐藏关系属性 显示关系属性 对象
      • * 对象 additionalProperties

        关系定义。

        隐藏 * 属性 显示 * 属性 对象
        • ref 字符串

          外部集合的引用字符串。

        • foreign_key 字符串

          该关系指向的外部集合中的字段名称。

        • is_list 布尔

          如果为 true:

          • 该关系可能会点许多外部文档。
          • 本地字段必须定义为集合模式中的大量。
  • 服务 大量[对象] 必需

    [已弃用] 旧版第三方非 HTTP 服务的列表。这仅用于向后兼容。

    隐藏服务属性 显示服务属性 对象
    • 名称 字符串

      服务名称。

    • 类型 字符串

      服务类型。

      取值为 aws、twilio、github、gcm 或 http。

    • incoming_webhooks 大量[对象]
      隐藏传入网络钩子属性 显示传入网络钩子属性 对象
      • 名称 字符串 必需
      • function_source 字符串 必需
      • respond_result 布尔 必需
      • 选项 对象
        隐藏选项属性 显示选项属性 对象
        • 秘密 字符串
        • secretAsQueryParam 布尔
    • 版本 整型
  • 同步 对象 必需
    隐藏同步属性 显示同步属性 对象
    • 州 字符串 必需

      同步服务的状态("enabled"、"disabled";如果未配置同步,则为空)。

    • database_name 字符串

      App Services 在开发模式下存储数据的同步集群中数据库的名称。App Services 自动为每个同步类型生成模式,并将每个对象类型映射到数据库内的集合。

    • queryable_fields_names array[string]

      任何集合上的可查询字段名称的大量。

    • indexed_queryable_fields_names array[string]

      用作索引可查询字段的字段名称列表。尽管此属性是一个大量,但 Sync 目前仅支持一个索引可查询字段。因此,该大量最多可以包含一个元素。

      索引化可查询字段必须存在于模式中,并且在您同步的每个集合中具有相同的符合条件的字段类型。索引可查询字段名称也必须出现在 queryable_fields_names 中,因为这是一个全局可查询字段。

    • collection_queryable_fields_names 对象

      指定集合上的可查询字段名称的大量。

      隐藏 collection_queryable_fields_names 属性 显示 collection_queryable_fields_names 属性 对象
      • * 对象 additionalProperties
        隐藏 * 属性 显示 * 属性 对象
        • * 字符串 additionalProperties

          可查询字段的名称。

    • 权限 对象

      已弃用

    • last_disabled 字符串

      上次禁用同步的时间,用自 UNIX 纪元以来的秒数表示。

    • client_max_offline_days 整型

      在需要进行客户端重置之前,客户端可以离线的天数。

    • is_recovery_mode_disabled 布尔

      指定是否禁用客户端重置模式。默认下,启用客户端重置模式,该值为 false。

    • asymmetric_tables array[string]

      定义为与数据导入不对称的集合名称的大量,客户端可以写入但不能读取数据。

  • 触发器 大量[对象] 必需
    以下之一:
  • values 大量[对象] 必需
    Hide values attributes 显示值属性 对象
    • 名称 字符串 必需
    • private 布尔 必需
    • from_secret 布尔 必需

      如果为 true,则该值是按名称对 Secret 的引用。

响应

  • 204

    推送成功

  • 400

    Invalid request

  • 500

    拉取配置时出错

PATCH /groups/{groupId}/apps/{appId}/push
curl \
 --request PATCH 'https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/push' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{
  "name": "string",
  "provider_region": "aws-us-east-1",
  "deployment_model": "GLOBAL",
  "environment": "production",
  "auth_providers": [
    {
      "name": "anon-user",
      "type": "anon-user",
      "disabled": true
    }
  ],
  "custom_user_data": {
    "database_name": "myapp",
    "collection_name": "users",
    "user_id_field": "user_account_id",
    "enabled": true,
    "mongo_service_name": "mongodb-atlas",
    "on_user_creation_function_name": "myFunction"
  },
  "data_api_config": {
    "disabled": true,
    "versions": [
      "v1"
    ],
    "return_type": "JSON",
    "create_user_on_auth": true,
    "run_as_user_id": "string",
    "run_as_user_id_script_source": "string",
    "validation_method": "NO_VALIDATION",
    "secret_name": "string",
    "can_evaluate": {}
  },
  "data_sources": [
    {
      "name": "string",
      "type": "string",
      "config": {
        "clusterName": "Cluster0",
        "readPreference": "primary",
        "readPreferenceTagSets": [
          "server1"
        ],
        "wireProtocolEnabled": true
      },
      "default_rule": {
        "roles": [
          {
            "document_filters": {},
            "name": "string",
            "fields": {},
            "additional_fields": {}
          }
        ],
        "filters": [
          {
            "name": "string",
            "query": {},
            "projection": {
              "additionalProperty1": 0,
              "additionalProperty2": 0
            }
          }
        ]
      },
      "rules": [
        {
          "database": "string",
          "collection": "string",
          "roles": [
            {
              "document_filters": {},
              "name": "string",
              "fields": {},
              "additional_fields": {}
            }
          ],
          "filters": [
            {
              "name": "string",
              "query": {},
              "projection": {
                "additionalProperty1": 0,
                "additionalProperty2": 0
              }
            }
          ]
        }
      ]
    }
  ],
  "endpoints": [
    {
      "route": "string",
      "http_method": "GET",
      "function_id": "string",
      "validation_method": "NO_VALIDATION",
      "secret_id": "string",
      "return_type": "JSON",
      "respond_result": true,
      "fetch_custom_user_data": true,
      "create_user_on_auth": true,
      "disabled": true,
      "function_name": "string"
    }
  ],
  "environments": {
    "values": {
      "none": {
        "values": {}
      },
      "development": {
        "values": {}
      },
      "testing": {
        "values": {}
      },
      "qa": {
        "values": {}
      },
      "production": {
        "values": {}
      }
    }
  },
  "functions": [
    {
      "can_evaluate": {},
      "name": "string",
      "private": true,
      "source": "string",
      "run_as_system": true,
      "run_as_user_id": "string",
      "run_as_user_id_script_source": "string"
    }
  ],
  "graphql": {
    "config": {
      "use_natural_pluralization": true,
      "disable_schema_introspection": true
    },
    "validation_settings": {
      "read_validation_action": "ERROR",
      "read_validation_level": "STRICT",
      "write_validation_action": "ERROR",
      "write_validation_level": "STRICT"
    },
    "custom_resolvers": [
      {
        "on_type": "string",
        "field_name": "string",
        "input_type": "string",
        "input_type_format": "scalar",
        "payload_type": "string",
        "payload_type_format": "scalar",
        "function_name": "string"
      }
    ]
  },
  "hosting": {
    "enabled": true,
    "custom_domain": "example.com",
    "default_error_path": "/404.html",
    "default_error_code": "404"
  },
  "https_endpoints": [
    {
      "name": "string",
      "type": "aws",
      "incoming_webhooks": [
        {
          "name": "string",
          "function_source": "string",
          "respond_result": true,
          "options": {
            "secret": "string",
            "secretAsQueryParam": true
          }
        }
      ],
      "version": 42
    }
  ],
  "log_forwarders": [
    {
      "name": "string",
      "disabled": true,
      "log_types": [
        "auth"
      ],
      "log_statuses": [
        "error"
      ],
      "policy": {
        "type": "single"
      },
      "action": {
        "type": "collection",
        "name": "string",
        "data_source": "string",
        "database": "string",
        "collection": "string"
      }
    }
  ],
  "schemas": [
    {
      "metadata": {
        "data_source": "string",
        "database": "string",
        "collection": "string"
      },
      "schema": {
        "bsonType": "object",
        "title": "string",
        "required": [
          "string"
        ],
        "properties": {
          "*": {}
        }
      },
      "relationships": {
        "additionalProperty1": {
          "ref": "string",
          "foreign_key": "string",
          "is_list": true
        },
        "additionalProperty2": {
          "ref": "string",
          "foreign_key": "string",
          "is_list": true
        }
      }
    }
  ],
  "services": [
    {
      "name": "string",
      "type": "aws",
      "incoming_webhooks": [
        {
          "name": "string",
          "function_source": "string",
          "respond_result": true,
          "options": {
            "secret": "string",
            "secretAsQueryParam": true
          }
        }
      ],
      "version": 42
    }
  ],
  "sync": {
    "state": "string",
    "database_name": "string",
    "queryable_fields_names": [
      "string"
    ],
    "indexed_queryable_fields_names": [
      "string"
    ],
    "collection_queryable_fields_names": {
      "additionalProperty1": {
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      },
      "additionalProperty2": {
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      }
    },
    "permissions": {},
    "last_disabled": "string",
    "client_max_offline_days": 42,
    "is_recovery_mode_disabled": true,
    "asymmetric_tables": [
      "string"
    ]
  },
  "triggers": [
    {
      "name": "onNewEmployee",
      "type": "DATABASE",
      "function_id": "5eea9ca4ca0e356e2c2a148a",
      "config": {
        "operation_types": [
          "INSERT"
        ],
        "database": "HR",
        "collection": "employees",
        "service_id": "5adeb649b8b998486770ae7c",
        "match": {},
        "project": {},
        "full_document": true
      },
      "event_processors": {
        "FUNCTION": {
          "config": {
            "function_id": "6841b8d3e71dc81bed89dbba",
            "function_name": "Atlas_Triggers_DatabaseInsert_1749137618"
          }
        }
      }
    }
  ],
  "values": [
    {
      "name": "string",
      "private": true,
      "from_secret": true
    }
  ]
}'
请求示例
{
  "name": "string",
  "provider_region": "aws-us-east-1",
  "deployment_model": "GLOBAL",
  "environment": "production",
  "auth_providers": [
    {
      "name": "anon-user",
      "type": "anon-user",
      "disabled": true
    }
  ],
  "custom_user_data": {
    "database_name": "myapp",
    "collection_name": "users",
    "user_id_field": "user_account_id",
    "enabled": true,
    "mongo_service_name": "mongodb-atlas",
    "on_user_creation_function_name": "myFunction"
  },
  "data_api_config": {
    "disabled": true,
    "versions": [
      "v1"
    ],
    "return_type": "JSON",
    "create_user_on_auth": true,
    "run_as_user_id": "string",
    "run_as_user_id_script_source": "string",
    "validation_method": "NO_VALIDATION",
    "secret_name": "string",
    "can_evaluate": {}
  },
  "data_sources": [
    {
      "name": "string",
      "type": "string",
      "config": {
        "clusterName": "Cluster0",
        "readPreference": "primary",
        "readPreferenceTagSets": [
          "server1"
        ],
        "wireProtocolEnabled": true
      },
      "default_rule": {
        "roles": [
          {
            "document_filters": {},
            "name": "string",
            "fields": {},
            "additional_fields": {}
          }
        ],
        "filters": [
          {
            "name": "string",
            "query": {},
            "projection": {
              "additionalProperty1": 0,
              "additionalProperty2": 0
            }
          }
        ]
      },
      "rules": [
        {
          "database": "string",
          "collection": "string",
          "roles": [
            {
              "document_filters": {},
              "name": "string",
              "fields": {},
              "additional_fields": {}
            }
          ],
          "filters": [
            {
              "name": "string",
              "query": {},
              "projection": {
                "additionalProperty1": 0,
                "additionalProperty2": 0
              }
            }
          ]
        }
      ]
    }
  ],
  "endpoints": [
    {
      "route": "string",
      "http_method": "GET",
      "function_id": "string",
      "validation_method": "NO_VALIDATION",
      "secret_id": "string",
      "return_type": "JSON",
      "respond_result": true,
      "fetch_custom_user_data": true,
      "create_user_on_auth": true,
      "disabled": true,
      "function_name": "string"
    }
  ],
  "environments": {
    "values": {
      "none": {
        "values": {}
      },
      "development": {
        "values": {}
      },
      "testing": {
        "values": {}
      },
      "qa": {
        "values": {}
      },
      "production": {
        "values": {}
      }
    }
  },
  "functions": [
    {
      "can_evaluate": {},
      "name": "string",
      "private": true,
      "source": "string",
      "run_as_system": true,
      "run_as_user_id": "string",
      "run_as_user_id_script_source": "string"
    }
  ],
  "graphql": {
    "config": {
      "use_natural_pluralization": true,
      "disable_schema_introspection": true
    },
    "validation_settings": {
      "read_validation_action": "ERROR",
      "read_validation_level": "STRICT",
      "write_validation_action": "ERROR",
      "write_validation_level": "STRICT"
    },
    "custom_resolvers": [
      {
        "on_type": "string",
        "field_name": "string",
        "input_type": "string",
        "input_type_format": "scalar",
        "payload_type": "string",
        "payload_type_format": "scalar",
        "function_name": "string"
      }
    ]
  },
  "hosting": {
    "enabled": true,
    "custom_domain": "example.com",
    "default_error_path": "/404.html",
    "default_error_code": "404"
  },
  "https_endpoints": [
    {
      "name": "string",
      "type": "aws",
      "incoming_webhooks": [
        {
          "name": "string",
          "function_source": "string",
          "respond_result": true,
          "options": {
            "secret": "string",
            "secretAsQueryParam": true
          }
        }
      ],
      "version": 42
    }
  ],
  "log_forwarders": [
    {
      "name": "string",
      "disabled": true,
      "log_types": [
        "auth"
      ],
      "log_statuses": [
        "error"
      ],
      "policy": {
        "type": "single"
      },
      "action": {
        "type": "collection",
        "name": "string",
        "data_source": "string",
        "database": "string",
        "collection": "string"
      }
    }
  ],
  "schemas": [
    {
      "metadata": {
        "data_source": "string",
        "database": "string",
        "collection": "string"
      },
      "schema": {
        "bsonType": "object",
        "title": "string",
        "required": [
          "string"
        ],
        "properties": {
          "*": {}
        }
      },
      "relationships": {
        "additionalProperty1": {
          "ref": "string",
          "foreign_key": "string",
          "is_list": true
        },
        "additionalProperty2": {
          "ref": "string",
          "foreign_key": "string",
          "is_list": true
        }
      }
    }
  ],
  "services": [
    {
      "name": "string",
      "type": "aws",
      "incoming_webhooks": [
        {
          "name": "string",
          "function_source": "string",
          "respond_result": true,
          "options": {
            "secret": "string",
            "secretAsQueryParam": true
          }
        }
      ],
      "version": 42
    }
  ],
  "sync": {
    "state": "string",
    "database_name": "string",
    "queryable_fields_names": [
      "string"
    ],
    "indexed_queryable_fields_names": [
      "string"
    ],
    "collection_queryable_fields_names": {
      "additionalProperty1": {
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      },
      "additionalProperty2": {
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      }
    },
    "permissions": {},
    "last_disabled": "string",
    "client_max_offline_days": 42,
    "is_recovery_mode_disabled": true,
    "asymmetric_tables": [
      "string"
    ]
  },
  "triggers": [
    {
      "name": "onNewEmployee",
      "type": "DATABASE",
      "function_id": "5eea9ca4ca0e356e2c2a148a",
      "config": {
        "operation_types": [
          "INSERT"
        ],
        "database": "HR",
        "collection": "employees",
        "service_id": "5adeb649b8b998486770ae7c",
        "match": {},
        "project": {},
        "full_document": true
      },
      "event_processors": {
        "FUNCTION": {
          "config": {
            "function_id": "6841b8d3e71dc81bed89dbba",
            "function_name": "Atlas_Triggers_DatabaseInsert_1749137618"
          }
        }
      }
    }
  ],
  "values": [
    {
      "name": "string",
      "private": true,
      "from_secret": true
    }
  ]
}