Skip to content

Atlas API

Ken Chen edited this page Feb 4, 2020 · 2 revisions

MongoDB Atlas API

MongoDB Atlas API examples.

Environment Variables

API Keys

You'll need properly privileged API keys.

export ATLAS_AUTH="atlas://{public_key}:{private_key}"

Group ID

Use keyhole to find your groups and clusters.

keyhole --info ${ATLAS_AUTH}

Then export them:

export ATLAS_GROUP="{group_id}"
export ATLAS_CLUSTER="{cluster_name}"

Create a Cluster

keyhole --request POST "${ATLAS_AUTH}@${ATLAS_GROUP}" '
{
    "name": "Cluster0",
    "numShards": 1,
    "providerSettings": {
        "providerName": "AWS",
        "instanceSizeName": "M10",
        "regionName": "US_EAST_1"
    },
    "clusterType" : "REPLICASET",
    "mongoDBMajorVersion" : "4.2",
    "backupEnabled": false
}'

Delete a Cluster

keyhole --request DELETE "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}"

Pause a Cluster

keyhole --pause "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}"

Resume a Cluster

keyhole --resume "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}"

Download Logs

Supported query parameters are:

  • startDate
  • endDate
  • hostname

Download All

keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}"

Download from a Host with Defined Time

keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?startDate=2020-02-25&endDate=2020-02-26&hostname=matlas-shard-00-00-jgtm2.mongodb.net"

Additional Examples

keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?startDate=2020-02-25&endDate=2020-02-26"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?startDate=2020-02-25"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?endDate=2020-02-26"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?endDate=$(date '+%Y-%m-%d')"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?endDate=2020-01-26"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?startDate=2020-01-25&hostname=matlas-shard-00-00-jgtm2.mongodb.net"
keyhole --loginfo "${ATLAS_AUTH}@${ATLAS_GROUP}/${ATLAS_CLUSTER}?endDate=2020-01-26&hostname=matlas-shard-00-00-jgtm2.mongodb.net"