Atlas Programmatic Access
On this page
You can interact with Atlas programmatically using the following resources.
APIs
To manage your Atlas deployments and App Services, you can use the Atlas Administration API or Atlas App Services Admin API.
Each Atlas API has its own resources and requires initial setup. To configure access for each API, use these resources:
Atlas Administration API
Programmatically perform administrative tasks on your Atlas cluster outside of the Atlas UI with the Atlas Administration API. Atlas Administration API resources add, edit, or delete administrative objects within Atlas, including projects, users, and clusters.
Atlas Go SDK
The Atlas Go SDK provides platform-specific and Go language-specific tools, libraries, and documentation to help you build applications that interact with Atlas quickly and easily using the Atlas Administration API.
To learn more, see Atlas Go SDK.
App Services Admin API
Programmatically perform administrative tasks outside of the App Services UI with the App Services Admin API. This includes tasks such as modifying authentication providers, creating rules, and defining functions.
Atlas CLI
The Atlas CLI is a command-line interface built specifically for MongoDB Atlas. You can use Atlas CLI to interact with Atlas from the terminal with short and intuitive commands and accomplish complex operational tasks such as creating a cluster or setting up an access list interactively and programmatically.
HashiCorp Terraform MongoDB Atlas Provider
HashiCorp Terraform MongoDB Atlas Provider provides refined programmatic access and management of MongoDB Atlas resources. You can define your environment using the HashiCorp Configuration Language (HCL) and deploy, update, and manage Atlas infrastructure as code through HashiCorp Terraform. This allows you to integrate Atlas into your continuous delivery workflows.
Cloud Development Kit for Terraform
CDK for Terraform leverages the MongoDB Atlas Atlas Administration API to enable provisioning across popular programming languages such as JavaScript, TypeScript, Python, Java, Go, and C#. Utilizing the powerful capabilities of Terraform, with CDKTF you can now create, manage, and update your Atlas resources with ease and deploy them seamlessly in the cloud without context switching from the native programming language of choice.
To learn more, see the following resources:
MongoDB Atlas AWS CloudFormation Resources
Atlas CloudFormation Resources helps you to manage MongoDB Atlas. It simplifies provisioning and management of Atlas features on AWS. You can create YAML- or JSON-based templates for the service or application architectures you want and have AWS CloudFormation use those templates for quick and reliable provisioning of the services or applications (called "stacks"). You can also easily update or replicate the stacks as needed.
AWS Partner Solutions
AWS Partner Solutions provide pre-built CloudFormation templates to help you provision a group of Atlas resources for specific use cases instead of deploying them one by one. Partner Solutions help you deploy popular technologies to AWS according to AWS best practices.
To learn more, see AWS Quick Starts.
AWS Cloud Development Kit
If you prefer using familiar programming languages like JavaScript, TypeScript, Python, Java, C#, and Go rather than using YAML or JSON, you can use the AWS CDK to deploy Atlas resources. When you execute your AWS CDK applications, they automatically generate CloudFormation templates, which in turn utilize the AWS CloudFormation service for resource provisioning. This way, you benefit from the abstraction and flexibility provided by AWS CDK and take advantage of the robustness of CloudFormation for infrastructure management, while still using the programming language of your choice.
To learn more, see the following resources:
Atlas Kubernetes Operator
The Atlas Kubernetes Operator enables you to manage Atlas resources through custom resources that you apply in Kubernetes. This allows an infrastructure as code approach to manage declarative configuration for Atlas using a GitOps workflow, allowing developers to configure Atlas resources using the same process and tooling that they use to deploy application components into Kubernetes. The automatic creation of a Kubernetes secret containing the connection string for a database user simplifies the process of connecting an application to the database.
Access Your Data
The best way to programmatically create, read, update, and delete data stored in Atlas is to connect with drivers. Drivers interact with Atlas through the MongoDB data plane using wire protocol. To learn more, see Start Developing with MongoDB.