Return All Serverless Instances in One Project

GET /api/atlas/v2/groups/{groupId}/serverless

Returns details for all serverless instances in the specified project. To use this resource, the requesting Service Account or API Key must have the Project Read Only role.

This endpoint also lists Flex clusters that were created using the createServerlessInstance endpoint or former Serverless instances that have been migrated to Flex clusters, until January 2026 after which this endpoint will be sunset. Continuous backups are not supported and serverlessContinuousBackupEnabled will not take effect on these clusters. Please use the listFlexClusters endpoint instead.

listFlexClusters

Path parameters

  • groupId string Required

    Unique 24-hexadecimal digit string that identifies your project. Use the /groups endpoint to retrieve all projects to which the authenticated user has access.

    NOTE: Groups and projects are synonymous terms. Your group id is the same as your project id. For existing groups, your group/project id remains the same. The resource and corresponding endpoints use the term groups.

    Format should match the following pattern: ^([a-f0-9]{24})$.

Query parameters

  • envelope boolean

    Flag that indicates whether Application wraps the response in an envelope JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.

    Default value is false.

  • includeCount boolean

    Flag that indicates whether the response returns the total number of items (totalCount) in the response.

    Default value is true.

  • itemsPerPage integer

    Number of items that the response returns per page.

    Minimum value is 1, maximum value is 500. Default value is 100.

  • pageNum integer

    Number of the page that displays the current set of the total objects that the response returns.

    Minimum value is 1. Default value is 1.

  • pretty boolean

    Flag that indicates whether the response body should be in the prettyprint format.

    Default value is false.

    Prettyprint

Responses

  • 200 application/vnd.atlas.2023-01-01+json

    OK

    Hide response attributes Show response attributes object
    • results array[object]

      List of returned documents that MongoDB Cloud provides when completing this request.

      Group of settings that configure a MongoDB serverless instance.

      Hide results attributes Show results attributes object
      • connectionStrings object

        Collection of Uniform Resource Locators that point to the MongoDB database.

        Connection string URI format
        Hide connectionStrings attributes Show connectionStrings attributes object
        • privateEndpoint array[object]

          List of private endpoint-aware connection strings that you can use to connect to this serverless instance through a private endpoint. This parameter returns only if you created a private endpoint for this serverless instance and it is AVAILABLE.

          Private endpoint connection string that you can use to connect to this serverless instance through a private endpoint.

          Hide privateEndpoint attributes Show privateEndpoint attributes object
          • endpoints array[object]

            List that contains the private endpoints through which you connect to MongoDB Cloud when you use connectionStrings.privateEndpoint[n].srvConnectionString.

            Details of a private endpoint deployed for this serverless instance.

            Hide endpoints attributes Show endpoints attributes object
            • endpointId string

              Unique string that the cloud provider uses to identify the private endpoint.

            • providerName string

              Cloud provider where the private endpoint is deployed.

              Values are AWS or AZURE.

            • region string

              Region where the private endpoint is deployed.

          • srvConnectionString string

            Private endpoint-aware connection string that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS).

          • type string

            MongoDB process type to which your application connects.

            Value is MONGOS.

        • standardSrv string

          Public connection string that you can use to connect to this serverless instance. This connection string uses the mongodb+srv:// protocol.

          Connection String URI Format
      • createDate string(date-time)

        Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.

      • groupId string

        Unique 24-hexadecimal character string that identifies the project.

        Format should match the following pattern: ^([a-f0-9]{24})$.

      • id string

        Unique 24-hexadecimal digit string that identifies the serverless instance.

        Format should match the following pattern: ^([a-f0-9]{24})$.

      • mongoDBVersion string

        Version of MongoDB that the serverless instance runs.

        Format should match the following pattern: ([\d]+\.[\d]+\.[\d]+).

      • name string

        Human-readable label that identifies the serverless instance.

        Format should match the following pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$.

      • providerSettings object Required

        Group of cloud provider settings that configure the provisioned MongoDB serverless instance.

        Hide providerSettings attributes Show providerSettings attributes object
        • backingProviderName string Required

          Cloud service provider on which MongoDB Cloud provisioned the serverless instance.

          Values are AWS, AZURE, or GCP.

        • effectiveDiskSizeGBLimit integer(int32)

          Storage capacity of instance data volumes expressed in gigabytes. This value is not configurable for Serverless or effectively Flex clusters.

        • effectiveInstanceSizeName string

          Instance size boundary to which your cluster can automatically scale.

          One of:

          Values are M10, M20, M30, M40, M50, M60, M80, M100, M140, M200, M300, R40, R50, R60, R80, R200, R300, R400, R700, M40_NVME, M50_NVME, M60_NVME, M80_NVME, M200_NVME, or M400_NVME.

        • effectiveProviderName string

          Cloud service provider on which MongoDB Cloud effectively provisioned the serverless instance.

        • providerName string

          Human-readable label that identifies the cloud service provider.

          Value is SERVERLESS. Default value is SERVERLESS.

        • regionName string Required

          Human-readable label that identifies the geographic location of your MongoDB serverless instance. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see AWS, GCP, and Azure.

      • serverlessBackupOptions object

        Group of settings that configure serverless backup.

        Hide serverlessBackupOptions attribute Show serverlessBackupOptions attribute object
        • serverlessContinuousBackupEnabled boolean

          Flag that indicates whether the serverless instance uses Serverless Continuous Backup. If this parameter is false, the serverless instance uses Basic Backup.

          | Option | Description | |---|---| | Serverless Continuous Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see Serverless Instance Costs. | | Basic Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free. |

          Default value is true.

      • stateName string

        Human-readable label that indicates the current operating condition of the serverless instance.

        Values are IDLE, CREATING, UPDATING, DELETING, or REPAIRING.

      • tags array[object]

        List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the serverless instance.

        Key-value pair that tags and categorizes a MongoDB Cloud organization, project, or cluster. For example, environment : production.

        Hide tags attributes Show tags attributes object
        • key string Required

          Constant that defines the set of the tag. For example, environment in the environment : production tag.

          Minimum length is 1, maximum length is 255.

        • value string Required

          Variable that belongs to the set of the tag. For example, production in the environment : production tag.

          Minimum length is 1, maximum length is 255.

      • terminationProtectionEnabled boolean

        Flag that indicates whether termination protection is enabled on the serverless instance. If set to true, MongoDB Cloud won't delete the serverless instance. If set to false, MongoDB Cloud will delete the serverless instance.

        Default value is false.

    • totalCount integer(int32)

      Total number of documents available. MongoDB Cloud omits this value if includeCount is set to false. The total number is an estimate and may not be exact.

      Minimum value is 0.

  • 401 application/json

    Unauthorized.

    Hide response attributes Show response attributes object
    • badRequestDetail object

      Bad request detail.

      Hide badRequestDetail attribute Show badRequestDetail attribute object
      • fields array[object]

        Describes all violations in a client request.

        Hide fields attributes Show fields attributes object
        • description string Required

          A description of why the request element is bad.

        • field string Required

          A path that leads to a field in the request body.

    • detail string

      Describes the specific conditions or reasons that cause each type of error.

    • error integer(int32) Required

      HTTP status code returned with this error.

      External documentation
    • errorCode string Required

      Application error code returned with this error.

    • parameters array[object]

      Parameters used to give more information about the error.

    • reason string

      Application error message returned with this error.

  • 403 application/json

    Forbidden.

    Hide response attributes Show response attributes object
    • badRequestDetail object

      Bad request detail.

      Hide badRequestDetail attribute Show badRequestDetail attribute object
      • fields array[object]

        Describes all violations in a client request.

        Hide fields attributes Show fields attributes object
        • description string Required

          A description of why the request element is bad.

        • field string Required

          A path that leads to a field in the request body.

    • detail string

      Describes the specific conditions or reasons that cause each type of error.

    • error integer(int32) Required

      HTTP status code returned with this error.

      External documentation
    • errorCode string Required

      Application error code returned with this error.

    • parameters array[object]

      Parameters used to give more information about the error.

    • reason string

      Application error message returned with this error.

  • 404 application/json

    Not Found.

    Hide response attributes Show response attributes object
    • badRequestDetail object

      Bad request detail.

      Hide badRequestDetail attribute Show badRequestDetail attribute object
      • fields array[object]

        Describes all violations in a client request.

        Hide fields attributes Show fields attributes object
        • description string Required

          A description of why the request element is bad.

        • field string Required

          A path that leads to a field in the request body.

    • detail string

      Describes the specific conditions or reasons that cause each type of error.

    • error integer(int32) Required

      HTTP status code returned with this error.

      External documentation
    • errorCode string Required

      Application error code returned with this error.

    • parameters array[object]

      Parameters used to give more information about the error.

    • reason string

      Application error message returned with this error.

  • 409 application/json

    Conflict.

    Hide response attributes Show response attributes object
    • badRequestDetail object

      Bad request detail.

      Hide badRequestDetail attribute Show badRequestDetail attribute object
      • fields array[object]

        Describes all violations in a client request.

        Hide fields attributes Show fields attributes object
        • description string Required

          A description of why the request element is bad.

        • field string Required

          A path that leads to a field in the request body.

    • detail string

      Describes the specific conditions or reasons that cause each type of error.

    • error integer(int32) Required

      HTTP status code returned with this error.

      External documentation
    • errorCode string Required

      Application error code returned with this error.

    • parameters array[object]

      Parameters used to give more information about the error.

    • reason string

      Application error message returned with this error.

  • 500 application/json

    Internal Server Error.

    Hide response attributes Show response attributes object
    • badRequestDetail object

      Bad request detail.

      Hide badRequestDetail attribute Show badRequestDetail attribute object
      • fields array[object]

        Describes all violations in a client request.

        Hide fields attributes Show fields attributes object
        • description string Required

          A description of why the request element is bad.

        • field string Required

          A path that leads to a field in the request body.

    • detail string

      Describes the specific conditions or reasons that cause each type of error.

    • error integer(int32) Required

      HTTP status code returned with this error.

      External documentation
    • errorCode string Required

      Application error code returned with this error.

    • parameters array[object]

      Parameters used to give more information about the error.

    • reason string

      Application error message returned with this error.

GET /api/atlas/v2/groups/{groupId}/serverless
atlas api listServerlessInstances --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	client, err := sdk.NewClient(
		sdk.UseOAuthAuth(clientID, clientSecret),
		sdk.UseBaseURL(url))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.ListServerlessInstancesApiParams{}
	sdkResp, httpResp, err := client.ServerlessInstancesApi.
		ListServerlessInstancesWithParams(ctx, params).
		Execute()
}
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/serverless?pretty=true"
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/serverless?pretty=true"
Response examples (200)
{
  "links": [
    {
      "href": "https://cloud.mongodb.com/api/atlas",
      "rel": "self"
    }
  ],
  "results": [
    {
      "connectionStrings": {
        "privateEndpoint": [
          {
            "endpoints": [
              {
                "endpointId": "string",
                "providerName": "AWS",
                "region": "string"
              }
            ],
            "srvConnectionString": "string",
            "type": "MONGOS"
          }
        ],
        "standardSrv": "string"
      },
      "createDate": "2025-05-04T09:42:00Z",
      "groupId": "32b6e34b3d91647abb20e7b8",
      "id": "32b6e34b3d91647abb20e7b8",
      "links": [
        {
          "href": "https://cloud.mongodb.com/api/atlas",
          "rel": "self"
        }
      ],
      "mongoDBVersion": "string",
      "name": "string",
      "providerSettings": {
        "backingProviderName": "AWS",
        "effectiveDiskSizeGBLimit": 42,
        "": "M10",
        "effectiveProviderName": "string",
        "providerName": "SERVERLESS",
        "regionName": "string"
      },
      "serverlessBackupOptions": {
        "serverlessContinuousBackupEnabled": true
      },
      "stateName": "IDLE",
      "tags": [
        {
          "key": "string",
          "value": "string"
        }
      ],
      "terminationProtectionEnabled": false
    }
  ],
  "totalCount": 42
}
Response examples (401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
Response examples (403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
Response examples (404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
Response examples (409)
{
  "error": 409,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot delete organization link while there is active migration in following project ids: 60c4fd418ebe251047c50554",
  "reason": "Conflict",
  "errorCode": "CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK"
}
Response examples (500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}