Extraia arquivos de configuração do aplicativo

OBTER /groups/{groupId}/apps/{appId}/pull

Baixe a configuração atual do aplicativo. Você pode baixá-la em dois tipos de formatos:

  • Um arquivo zip compactado que contém o diretório do arquivo de configuração. É recomendado se você está usando o CLI, um sistema de controle de versão, ou outro ambiente baseado no sistema de arquivos.

  • Um único objeto JSON que contém toda a configuração. É recomendado se você está usando a API ou outro ambiente que pode analisar JSON.

Especifique o formato que deseja baixar, definindo o cabeçalho de Accept.

parâmetros de caminho

Respostas

  • Extração bem-sucedida

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • name string Obrigatório

      O nome do aplicativo.

    • provider_region string Obrigatório

      Um dos seguintes:

      Os valores são 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 ou aws-sa-east-1.

      Os valores são azure-eastus2, azure-westus, azure-westeurope, azure-eastasia ou azure-southeastasia.

      Os valores são gcp-us-central1, gcp-us-east4, gcp-us-west1, gcp-europe-west1 ou gcp-asia-south1.

    • deployment_model string Obrigatório

      Um modelo de implantação de aplicativos.

      Os valores são GLOBAL ou LOCAL.

    • ambiente string

      O ambiente do aplicativo.

      Os valores são development, testing, qa ou production.

    • auth_providers array[objeto] Obrigatório
      Qualquer um dos seguintes:
    • custom_user_data objeto | zero
      Ocultar atributos custom_user_data Mostrar atributos custom_user_data objeto | zero
      • nome do banco de dados string

        O nome do banco de dados que contém dados de usuário personalizados.

      • collection_name string

        O nome da coleção que contém dados de usuário personalizado.

      • user_id_field string

        O nome de um campo que aparece em cada documento de dados de usuário personalizado e que contém o ID da conta de usuário do usuário correspondente de cada documento.

      • habilitado booleano

        Se true, os dados de usuário personalizado estão habilitados.

      • mongo_service_name string Obrigatório

        O nome da fonte de dados vinculada do MongoDB que contém dados personalizados do usuário.

      • on_user_creation_function_name string

        O nome de uma função de criação de usuário que é executada sempre que um novo usuário se registra.

    • data_api_config objeto | zero
      Ocultar atributos data_api_config Mostrar atributos data_api_config objeto | zero
      • desabilitado booleano Obrigatório
      • versões array[string] Obrigatório

        Uma versão compatível da Data API.

        O valor é v1.

      • return_type string Obrigatório

        Um formato de dados compatível com a Data API e endpoints personalizados.

        Os valores são JSON ou EJSON.

      • create_user_on_auth booleano
      • run_as_user_id string

        ID da conta de um usuário do aplicativo. Se definidos, os endpoints sempre serão executados da forma como o usuário especificou.

      • run_as_user_id_script_source string

        Código fonte em string para uma função que retorna o ID da conta de um usuário do aplicativo. Se definidos, os endpoints executam a função em cada solicitação e são executados como o usuário com o ID retornado da função.

      • validation_method string Obrigatório

        Os valores são NO_VALIDATION, SECRET_AS_QUERY_PARAM ou VERIFY_PAYLOAD.

      • secret_name string

        Se validation_method estiver definido como "SECRET_AS_QUERY_PARAM" ou "VERIFY_PAYLOAD", este é o name do Segredo que autoriza as solicitações.

      • can_evaluate objeto

        Uma expressão JSON que avalia para true se um endpoint for permitido ser executado em resposta a uma solicitação recebida.

    • data_sources array[objeto] Obrigatório
      Um dos seguintes:
    • pontos de extremidade array[objeto] Obrigatório
      Ocultar atributos de endpoints Mostrar atributos de endpoints objeto
      • route string Obrigatório
      • http_method string Obrigatório

        Os valores são GET, POST, PUT, PATCH, DELETE ou *.

      • function_id string Obrigatório
      • validation_method string Obrigatório

        Os valores são NO_VALIDATION, SECRET_AS_QUERY_PARAM ou VERIFY_PAYLOAD.

      • secret_id string

        Se validation_method estiver definido como "SECRET_AS_QUERY_PARAM" ou "VERIFY_PAYLOAD", este é o _id do Segredo que autoriza as solicitações.

      • return_type string Obrigatório

        Um formato de dados compatível com a Data API e endpoints personalizados.

        Os valores são JSON ou EJSON.

      • respond_result booleano Obrigatório
      • fetch_custom_user_data booleano
      • create_user_on_auth booleano
      • desabilitado booleano Obrigatório
      • function_name string Obrigatório

        O nome das funções do endpoint.

    • environments objeto Obrigatório
      Ocultar atributo de ambientes Mostrar atributo de ambientes objeto
      • values objeto

        Um objeto que mapeia cada nome de ambiente possível para definições dos valores de ambiente disponíveis nesse ambiente.

        Hide values attributes Mostrar atributos de valores objeto
        • none objeto
          Ocultar atributo nenhum Não mostrar atributo objeto
          • values objeto
        • Desenvolvimento objeto
          Ocultar atributo de desenvolvimento Mostrar atributo de desenvolvimento objeto
          • values objeto
        • Teste objeto
          Ocultar atributo de teste Mostrar atributo de teste objeto
          • values objeto
        • qa objeto
          Hide qa attribute Mostrar atributo qa objeto
          • values objeto
        • Produção objeto
          Ocultar atributo de produção Mostrar atributo de produção objeto
          • values objeto
    • functions array[objeto] Obrigatório
      Ocultar atributos de funções Mostrar atributos de funções objeto
      • can_evaluate objeto

        Uma expressão JSON que avalia para true se a função tem permissão para ser executada em resposta a uma solicitação de entrada.

      • name string Obrigatório

        Um nome exclusivo para a função.

      • privado booleano Obrigatório

        Se true, a função estará oculta nos aplicativos de cliente. Você ainda pode chamar uma função privada a partir de expressões JSON e outras funções, incluindo webhooks e triggers de entrada.

      • Fonte string Obrigatório

        O código-fonte em strings para a função. O código deve ser ES6 válido.

      • run_as_system booleano

        Se true, a função executa com privilégios completos, ignorando regras em todos os serviços.

      • run_as_user_id string

        ID da conta de um usuário do aplicativo. Se definidos, os endpoints sempre serão executados da forma como o usuário especificou. Não é possível usar com run_as_user_id_script_source.

      • run_as_user_id_script_source string

        O código-fonte em string para uma função que retorna o ID da conta de um usuário do aplicação. Se definidos, os endpoints executam a função em cada solicitação e são executados como o usuário com o ID retornado da função. Não é possível usar com run_as_user_id.

    • graphql objeto Obrigatório
      Ocultar atributos do GraphQL Mostrar atributos do GraphQL objeto
      • config objeto Obrigatório
        Ocultar atributos de configuração Mostrar atributos de configuração objeto
        • use_natural_pluralization booleano

          Se true, os nomes de tipo de esquema gerados utilizam a pluralização em inglês comum sempre que possível.

          Se false, ou se uma pluralização natural não pode ser determinada, então os tipos plurais usam o nome do tipo singular com um "s" anexado ao final.

          Você não pode alterar esse valor depois de criar seu aplicativo. Este valor é true para todos os novos aplicativos.

        • disable_schema_introspection booleano

          Se true, a GraphQL API bloqueia consultas de introspecção dos clientes.

      • validation_settings objeto Obrigatório
        Ocultar atributos validation_settings Mostrar atributos validation_settings objeto
        • read_validation_action string

          Os valores são ERROR ou WARN.

        • read_validation_level string

          Os valores são STRICT ou OFF.

        • write_validation_action string

          Os valores são ERROR ou WARN.

        • write_validation_level string

          Os valores são STRICT ou OFF.

      • custom_resolvers array[objeto] Obrigatório
        Ocultar atributos custom_resolvers Mostrar atributos custom_resolvers objeto
        • on_type string Obrigatório

          O nome do tipo principal do resolvedor. Pode ser "Query", "Mutation" ou o nome de um tipo gerado se essa for uma propriedade computada.

        • field_name string Obrigatório

          O nome do campo do resolvedor personalizado que aparece no esquema GraphQL.

        • input_type corda | objeto

          O tipo do parâmetro input do resolvedor personalizado. Pode ser um escalar, o nome de um tipo gerado existente ou um objeto de JSON schema personalizado. Se indefinido, o resolvedor não aceita uma entrada.

        • input_type_format string

          O tipo de entrada que o resolvedor personalizado usa. Este valor deve corresponder ao valor de input_type:

          • Um tipo de entrada escalar deve usar "scalar" ou "scalar-list"
          • Um tipo de entrada gerado deve utilizar "generated" ou "generated-list"
          • Um tipo de entrada personalizado deve usar "custom"

          Se indefinido, o resolvedor não aceita uma entrada.

          Os valores são scalar, scalar-list, generated, generated-list ou custom.

        • payload_type corda | objeto

          O tipo do valor retornado pelo resolvedor personalizado. Pode ser um escalar, o nome de um tipo gerado existente ou um objeto de JSON schema personalizado.

          Se indefinido, o resolvedor retornará um objeto DefaultPayload:

          type DefaultPayload {
            status: String!
          }
          
        • payload_type_format string

          O tipo de carga útil que o resolvedor personalizado usa. Esse valor deve estar de acordo com o valor de payload_type:

          • Um tipo de carga escalar deve usar "scalar" ou "scalar-list"
          • Um tipo de carga útil gerado deve usar "generated" ou "generated-list"
          • Um tipo de carga útil personalizado deve usar "custom"

          Se indefinido, o resolvedor retorna um objeto DefaultPayload.

          Os valores são scalar, scalar-list, generated, generated-list ou custom.

        • function_name string Obrigatório

          O nome da função do resolvedor.

    • hosting objeto Obrigatório
      Ocultar atributos de hospedagem Mostrar atributos de hospedagem objeto
      • habilitado booleano Obrigatório
      • custom_domain string
      • default_error_path string
      • default_error_code string
    • https_endpoints array[objeto] Obrigatório

      [Obsoleto] Uma lista de serviços HTTP legados. Apenas para compatibilidade com versões anteriores.

      Ocultar atributos https_endpoints Mostrar atributos https_endpoints objeto
      • name string

        O nome do serviço.

      • type string

        O tipo do serviço.

        Os valores são aws, twilio, github, gcm ou http.

      • incoming_webhooks array[objeto]
        Ocultar atributos recebidas_webhooks Mostrar atributos embedded_webhooks objeto
        • name string Obrigatório
        • function_source string Obrigatório
        • respond_result booleano Obrigatório
        • opções objeto
          Ocultar atributos de opções Mostrar atributos de opções objeto
          • segredo string
          • secretAsQueryParam booleano
      • Versão inteiro
    • log_forwarders array[objeto] Obrigatório
      Ocultar atributos log_forwarders Mostrar atributos do log_forwarders objeto
      • name string Obrigatório
      • desabilitado booleano Obrigatório
      • log_types array[string] Obrigatório

        Os valores são auth, endpoint, function, graphql, push, schema, service, sync, trigger ou trigger_error_handler.

      • log_statuses array[string] Obrigatório

        Os valores são error ou success.

      • política objeto Obrigatório
        Ocultar atributo da política Mostrar atributo da política objeto
        • type string

          Os valores são single ou batch.

      • ação objeto Obrigatório
        Ocultar atributos de ação Mostrar atributos de ação objeto
        • type string

          Os valores são collection ou function.

        • name string
        • data_source string
        • database string
        • collection string
    • schemas array[objeto] Obrigatório
      Ocultar atributos de esquemas Mostrar atributos de esquemas objeto
      • metadata objeto

        Metadados que descrevem a qual coleção vinculada o esquema se aplica.

        Hide metadata attributes Mostrar atributos de metadados objeto
        • data_source string

          O nome da fonte de dados .

        • database string

          O nome do banco de dados.

        • collection string

          O nome da collection.

      • schema objeto

        Um esquema válido para a coleção.

        Ocultar atributos de esquema Mostrar atributos do esquema objeto
        • bsonType string

          O tipo de BSON do campo.

          Os valores são object, array, string, number, int, long, double, decimal, date, timestamp, bool, null, regex, objectId, binary, uuid, function, javascript, symbol, minKey ou maxKey.

        • title string

          Um título legível por humanos para o esquema.

        • necessário array[string]

          Para esquemas object, uma array de nomes de campo necessários em instâncias do objeto.

        • properties objeto

          Um objeto onde cada nome de campo é uma propriedade no esquema. O valor correspondente é uma definição de esquema para esse campo.

          Ocultar atributo de propriedades Mostrar atributo de propriedades objeto
          • * objeto

            Um esquema válido para a coleção.

      • relationships objeto

        Relacionamentos com collection externas. Cada nome de campo é uma propriedade no esquema. O valor correspondente é uma definição de relacionamento para esse campo.

        Ocultar atributo de relacionamentos Mostrar atributo de relacionamentos objeto
        • * objeto Propriedades adicionais
          Ocultar atributos * Mostrar atributos * objeto
          • ref string

            Uma string de referência para a collection estrangeira.

          • foreign_key string

            O nome do campo na collection externa para a qual o relacionamento aponta.

          • is_list booleano

            Se true:

            • o relacionamento pode ponto para muitos documentos estrangeiros.
            • o campo local deve ser definido como uma array no esquema de coleção.
    • Serviços array[objeto] Obrigatório

      [Obsoleto] Uma lista de serviços de terceiros não HTTP legados. Apenas para compatibilidade com versões anteriores.

      Ocultar atributos de serviços Mostrar atributos de serviços objeto
      • name string

        O nome do serviço.

      • type string

        O tipo do serviço.

        Os valores são aws, twilio, github, gcm ou http.

      • incoming_webhooks array[objeto]
        Ocultar atributos recebidas_webhooks Mostrar atributos embedded_webhooks objeto
        • name string Obrigatório
        • function_source string Obrigatório
        • respond_result booleano Obrigatório
        • opções objeto
          Ocultar atributos de opções Mostrar atributos de opções objeto
          • segredo string
          • secretAsQueryParam booleano
      • Versão inteiro
    • sincronizar objeto Obrigatório
      Ocultar atributos de sincronização Mostrar atributos de sincronização objeto
      • state string Obrigatório

        O estado do serviço de sincronização ("enabled", "disabled" ou vazio se a Sincronização não estiver configurada).

      • nome do banco de dados string

        O nome de um banco de dados no cluster sincronizado em que o App Services armazena dados no modo de desenvolvimento. O App Services gera automaticamente um esquema para cada tipo sincronizado e mapeia cada tipo de objeto para uma collection no banco de dados.

      • queryable_fields_names array[string]

        Uma array de nomes de campo de query em qualquer coleção.

      • indexed_queryable_fields_names array[string]

        Uma lista de nomes de campo a serem usados como o campo de query indexado. Embora essa propriedade seja uma array, a Sync atualmente permite apenas um campo de query indexado. Portanto, essa array pode conter no máximo um elemento.

        O campo de query indexado deve estar presente no esquema e ser do mesmo tipo de campo elegível em todas as coleções que você sincronizar. O nome do campo de query indexado também deve aparecer no queryable_fields_names pois este é um campo de query global.

      • collection_queryable_fields_names objeto

        Uma array de nomes de campo de query na collection especificada.

        Ocultar atributo collection_queryable_fields_names Mostrar atributo collection_queryable_fields_names objeto
        • * objeto Propriedades adicionais
          Ocultar atributo * Mostrar atributo * objeto
          • * string Propriedades adicionais

            O nome do campo de query.

      • Permissões objeto

        Obsoleto(a)

      • last_disabled string

        A última vez que a sincronização foi desativada, representada pelo número de segundos desde o UNIX epoch.

      • client_max_offline_days inteiro

        O número de dias em que o cliente pode ficar offline antes que um reinício do cliente seja necessário.

      • is_recovery_mode_disabled booleano

        Especifica se o modo de reinício do cliente está desabilitado. Por padrão, o modo de reinício do cliente está habilitado e esse valor é false.

      • asymmetric_tables array[string]

        Uma array dos nomes das collections definidas como assimétricas com a ingestão de dados, nas quais os clientes podem gravar dados, mas não ler.

    • triggers array[objeto] Obrigatório
      Um dos seguintes:
    • values array[objeto] Obrigatório
      Hide values attributes Mostrar atributos de valores objeto
      • name string Obrigatório
      • privado booleano Obrigatório
      • from_secret booleano Obrigatório

        Se true, o valor é uma referência por nome a um Segredo.

    Um arquivo zip contendo o diretório do arquivo de configuração da aplicação

  • 400

    Solicitação inválida

  • 500

    Erro ao extrair a configuração

GET /groups/{groupId}/apps/{appId}/pull
curl \
 --request GET 'https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/pull' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Exemplos de resposta (200)
{
  "name": "string",
  "": "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",
      "config": {
        "match": {},
        "project": {},
        "database": "HR",
        "collection": "employees",
        "service_id": "5adeb649b8b998486770ae7c",
        "full_document": true,
        "operation_types": [
          "INSERT"
        ]
      },
      "function_id": "5eea9ca4ca0e356e2c2a148a",
      "event_processors": {
        "FUNCTION": {
          "config": {
            "function_id": "6841b8d3e71dc81bed89dbba",
            "function_name": "Atlas_Triggers_DatabaseInsert_1749137618"
          }
        }
      }
    }
  ],
  "values": [
    {
      "name": "string",
      "private": true,
      "from_secret": true
    }
  ]
}