---
components:
  headers:
    HeaderRateLimitLimit:
      description: The maximum number of requests that a user can make within a specific
        time window.
      schema:
        type: integer
    HeaderRateLimitRemaining:
      description: The number of requests remaining in the current rate limit window
        before the limit is reached.
      schema:
        type: integer
    HeaderRetryAfter:
      description: The minimum time you should wait, in seconds, before retrying the
        API request. This header might be returned for 429 or 503 error responses.
      schema:
        type: integer
  parameters:
    collectionName:
      description: Human-readable label that identifies the collection.
      in: path
      name: collectionName
      required: true
      schema:
        example: mycoll
        type: string
    databaseName:
      description: Human-readable label that identifies the database.
      in: path
      name: databaseName
      required: true
      schema:
        example: mydb
        type: string
    end:
      description: Date and time when MongoDB Cloud stops reporting the metrics. This
        parameter expresses its value in the ISO 8601 timestamp format in UTC. Include
        this parameter when you do not set **period**.
      in: query
      name: end
      schema:
        format: date-time
        type: string
    envelope:
      description: 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.
      in: query
      name: envelope
      schema:
        default: false
        type: boolean
    federationSettingsId:
      description: Unique 24-hexadecimal digit string that identifies your federation.
      in: path
      name: federationSettingsId
      required: true
      schema:
        example: 55fa922fb343282757d9554e
        pattern: "^([a-f0-9]{24})$"
        type: string
    granularity:
      description: Duration that specifies the interval at which Atlas reports the
        metrics. This parameter expresses its value in the ISO 8601 duration format
        in UTC.
      in: query
      name: granularity
      required: true
      schema:
        example: PT1M
        type: string
    groupId:
      description: |-
        Unique 24-hexadecimal digit string that identifies your project. Use the [/groups](#tag/Projects/operation/listProjects) 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.
      in: path
      name: groupId
      required: true
      schema:
        example: 32b6e34b3d91647abb20e7b8
        pattern: "^([a-f0-9]{24})$"
        type: string
    identityProviderId:
      description: Legacy 20-hexadecimal digit string that identifies the identity
        provider. This id can be found within the Federation Management Console >
        Identity Providers tab by clicking the info icon in the IdP ID row of a configured
        identity provider.
      in: path
      name: identityProviderId
      required: true
      schema:
        example: c2777a9eca931f29fc2f
        pattern: "^([a-f0-9]{20})$"
        type: string
    includeCount:
      description: Flag that indicates whether the response returns the total number
        of items (`totalCount`) in the response.
      in: query
      name: includeCount
      schema:
        default: true
        type: boolean
    indexName:
      description: Human-readable label that identifies the index.
      in: path
      name: indexName
      required: true
      schema:
        example: myindex
        type: string
    itemsPerPage:
      description: Number of items that the response returns per page.
      in: query
      name: itemsPerPage
      schema:
        default: 100
        maximum: 500
        minimum: 1
        type: integer
    liveMigrationId:
      description: Unique 24-hexadecimal digit string that identifies the migration.
      in: path
      name: liveMigrationId
      required: true
      schema:
        example: 6296fb4c7c7aa997cf94e9a8
        pattern: "^([a-f0-9]{24})$"
        type: string
    orgId:
      description: Unique 24-hexadecimal digit string that identifies the organization
        that contains your projects. Use the [`/orgs`](#tag/Organizations/operation/listOrganizations)
        endpoint to retrieve all organizations to which the authenticated user has
        access.
      in: path
      name: orgId
      required: true
      schema:
        example: 4888442a3354817a7320eb61
        pattern: "^([a-f0-9]{24})$"
        type: string
    pageNum:
      description: Number of the page that displays the current set of the total objects
        that the response returns.
      in: query
      name: pageNum
      schema:
        default: 1
        minimum: 1
        type: integer
    period:
      description: Duration over which Atlas reports the metrics. This parameter expresses
        its value in the ISO 8601 duration format in UTC. Include this parameter when
        you do not set **start** and **end**.
      in: query
      name: period
      schema:
        example: PT10H
        type: string
    pretty:
      description: Flag that indicates whether the response body should be in the
        prettyprint format.
      in: query
      name: pretty
      schema:
        default: false
        externalDocs:
          description: Prettyprint
          url: https://en.wikipedia.org/wiki/Prettyprint
        type: boolean
    processId:
      description: Combination of hostname and IANA port that serves the MongoDB process.
        The host must be the hostname, fully qualified domain name (FQDN), or Internet
        Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process
        (mongod or mongos). The port must be the IANA port on which the MongoDB process
        listens for requests.
      in: path
      name: processId
      required: true
      schema:
        example: my.host.name.com:27017
        pattern: "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$"
        type: string
    sandboxConfigId:
      description: Unique 24-hexadecimal digit string that identifies the sandbox
        configuration.
      in: path
      name: sandboxConfigId
      required: true
      schema:
        example: 507f1f77bcf86cd799439011
        pattern: "^([a-f0-9]{24})$"
        type: string
    start:
      description: Date and time when MongoDB Cloud begins reporting the metrics.
        This parameter expresses its value in the ISO 8601 timestamp format in UTC.
        Include this parameter when you do not set **period**.
      in: query
      name: start
      schema:
        format: date-time
        type: string
  responses:
    accepted:
      description: Accepted.
    badRequest:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint) No provider AWS exists."
            error: 400
            errorCode: VALIDATION_ERROR
            reason: Bad Request
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Bad Request.
    conflict:
      content:
        application/json:
          example:
            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"
            error: 409
            errorCode: CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK
            reason: Conflict
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Conflict.
    forbidden:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 403
            errorCode: CANNOT_CHANGE_GROUP_NAME
            reason: Forbidden
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Forbidden.
    gone:
      content:
        application/json:
          example:
            detail: This happens when a resource is marked for sunset and the sunset
              date is in the past.
            error: 410
            errorCode: VERSION_GONE
            reason: Gone
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Gone.
    internalServerError:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 500
            errorCode: UNEXPECTED_ERROR
            reason: Internal Server Error
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Internal Server Error.
    methodNotAllowed:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 405
            errorCode: ATLAS_BACKUP_CANCEL_SHARD_RESTORE_JOB_NOT_ALLOWED
            reason: Method Not Allowed
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Method Not Allowed.
    noBody:
      description: This endpoint does not return a response body.
    notFound:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint) Cannot find resource AWS"
            error: 404
            errorCode: RESOURCE_NOT_FOUND
            reason: Not Found
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Not Found.
    paymentRequired:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 402
            errorCode: NO_PAYMENT_INFORMATION_FOUND
            reason: Payment Required
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Payment Required.
    tooManyRequests:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 429
            errorCode: RATE_LIMITED
            reason: Too Many Requests
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Too Many Requests.
      headers:
        RateLimit-Limit:
          "$ref": "#/components/headers/HeaderRateLimitLimit"
        RateLimit-Remaining:
          "$ref": "#/components/headers/HeaderRateLimitRemaining"
        Retry-After:
          "$ref": "#/components/headers/HeaderRetryAfter"
    unauthorized:
      content:
        application/json:
          example:
            detail: "(This is just an example, the exception may not be related to
              this endpoint)"
            error: 401
            errorCode: NOT_ORG_GROUP_CREATOR
            reason: Unauthorized
          schema:
            "$ref": "#/components/schemas/ApiError"
      description: Unauthorized.
  schemas:
    AiModelsApiKeyCreateRequest:
      properties:
        name:
          description: A name for the new API key that will be created.
          maxLength: 250
          minLength: 1
          type: string
      required:
      - name
      type: object
    AiModelsApiKeyResponse:
      properties:
        apiKeyId:
          description: Identifier used to reference this API key in admin API calls.
          example: a86r5kwrfsk5r5ku5tgvhmpj
          readOnly: true
          type: string
        createdAt:
          description: UTC date when the API key was created. This parameter is formatted
            as an ISO 8601 timestamp.
          example: '2026-01-15T16:47:49.855000+00:00'
          readOnly: true
          type: string
        createdBy:
          description: Name of the user that created this API key. If no user name
            is available, the user ID is returned.
          example: John Doe
          readOnly: true
          type: string
        groupId:
          description: ID of the Atlas group this API key belongs to.
          example: 69681d39c9e8cfd375386316
          readOnly: true
          type: string
        lastUsedAt:
          description: UTC date when the API key was last used. This parameter is
            formatted as an ISO 8601 timestamp.
          example: '2026-01-15T16:47:49.855000+00:00'
          readOnly: true
          type: string
        maskedSecret:
          description: A partially obfuscated version of the API key secret returned
            when the API key was created.
          example: al-****odu2
          readOnly: true
          type: string
        name:
          description: Arbitrary string identifier assigned to this API key for convenient
            identification.
          example: Production key
          maxLength: 250
          minLength: 1
          type: string
        secret:
          description: 'The full API key secret used for interacting with the embedding
            / reranking service. Note: this will only be fully populated in the response
            to a create API key request. Responses to get, list, and update requests
            will not include the secret.'
          example: al-jZsluhPMzPM9CFXepRWwMwvpZDDra6tZMgoAZKdodu2
          format: password
          readOnly: true
          type: string
        status:
          description: A string describing the current status of the API key.
          example: ACTIVE
          readOnly: true
          type: string
      type: object
    AiModelsApiKeyUpdateRequest:
      properties:
        name:
          description: A new name for the API key.
          maxLength: 250
          minLength: 1
          type: string
      required:
      - name
      type: object
    AiModelsRateLimitResponse:
      properties:
        modelGroupName:
          description: Identifier used to reference this model group.
          example: embed_large
          readOnly: true
          type: string
        modelNames:
          description: List of embedding model names included in this model group.
          items:
            type: string
          maxItems: 100
          readOnly: true
          type: array
        requestsPerMinuteLimit:
          description: The number of requests per minute allowed for this model group.
            Must be a positive integer. Cannot be more than the organization level
            limit for this group model.
          example: 2000
          format: int32
          minimum: 1
          type: integer
        tokensPerMinuteLimit:
          description: The number of tokens per minute allowed for this model group.
            Must be a positive integer. Cannot be more than the organization level
            limit for this group model.
          example: 3000000
          format: int32
          minimum: 1
          type: integer
      type: object
    AiModelsRateLimitUpdateRequest:
      properties:
        requestsPerMinuteLimit:
          description: The number of requests per minute allowed for this model group.
            Must be a positive integer. Cannot be more than the organization level
            limit for this group model.
          format: int32
          minimum: 1
          type: integer
        tokensPerMinuteLimit:
          description: The number of tokens per minute allowed for this model group.
            Must be a positive integer. Cannot be more than the organization level
            limit for this group model.
          format: int32
          minimum: 1
          type: integer
      required:
      - requestsPerMinuteLimit
      - tokensPerMinuteLimit
      type: object
    ApiError:
      properties:
        badRequestDetail:
          "$ref": "#/components/schemas/BadRequestDetail"
        detail:
          description: Describes the specific conditions or reasons that cause each
            type of error.
          type: string
        error:
          description: HTTP status code returned with this error.
          externalDocs:
            url: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
          format: int32
          readOnly: true
          type: integer
        errorCode:
          description: Application error code returned with this error.
          readOnly: true
          type: string
        parameters:
          description: Parameters used to give more information about the error.
          items:
            type: object
          readOnly: true
          type: array
        reason:
          description: Application error message returned with this error.
          readOnly: true
          type: string
      required:
      - error
      - errorCode
      type: object
    BadRequestDetail:
      description: Bad request detail.
      properties:
        fields:
          description: Describes all violations in a client request.
          items:
            "$ref": "#/components/schemas/FieldViolation"
          type: array
      readOnly: true
      type: object
    DefaultGroupLimitResponse:
      description: Description of a user-configurable, project-level limit.
      properties:
        defaultValue:
          description: Default value for this limit. Returns null if no default value
            exists.
          format: int32
          readOnly: true
          type: integer
        description:
          description: Human-friendly description of what the limit controls.
          readOnly: true
          type: string
        maximumValue:
          description: Maximum value for this limit. Returns null if no maximum value
            exists.
          format: int32
          readOnly: true
          type: integer
        name:
          description: Human-readable label that identifies the user-managed limit.
          readOnly: true
          type: string
      title: Group limit description
      type: object
    FieldViolation:
      properties:
        description:
          description: A description of why the request element is bad.
          type: string
        field:
          description: A path that leads to a field in the request body.
          type: string
      required:
      - description
      - field
      type: object
    Link:
      properties:
        href:
          description: Uniform Resource Locator (URL) that points another API resource
            to which this response has some relationship. This URL often begins with
            `https://cloud.mongodb.com/api/atlas`.
          example: https://cloud.mongodb.com/api/atlas
          type: string
        rel:
          description: Uniform Resource Locator (URL) that defines the semantic relationship
            between this resource and another API resource. This URL often begins
            with `https://cloud.mongodb.com/api/atlas`.
          example: self
          type: string
      type: object
    PaginatedAtlasAiModelsApiKeysResponse:
      description: List response for AI Model API keys at the organization and project
        level.
      properties:
        links:
          description: List of one or more Uniform Resource Locators (URLs) that point
            to API sub-resources, related API resources, or both. RFC 5988 outlines
            these relationships.
          externalDocs:
            description: Web Linking Specification (RFC 5988)
            url: https://datatracker.ietf.org/doc/html/rfc5988
          items:
            "$ref": "#/components/schemas/Link"
          readOnly: true
          type: array
        results:
          description: List of returned documents that MongoDB Cloud provides when
            completing this request.
          items:
            "$ref": "#/components/schemas/AiModelsApiKeyResponse"
          readOnly: true
          type: array
        totalCount:
          description: 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.
          format: int32
          minimum: 0
          readOnly: true
          type: integer
      required:
      - results
      type: object
    PaginatedAtlasAiModelsRateLimitsResponse:
      description: List response for AI Model Rate Limits at the organization and
        project level.
      properties:
        links:
          description: List of one or more Uniform Resource Locators (URLs) that point
            to API sub-resources, related API resources, or both. RFC 5988 outlines
            these relationships.
          externalDocs:
            description: Web Linking Specification (RFC 5988)
            url: https://datatracker.ietf.org/doc/html/rfc5988
          items:
            "$ref": "#/components/schemas/Link"
          readOnly: true
          type: array
        results:
          description: List of returned documents that MongoDB Cloud provides when
            completing this request.
          items:
            "$ref": "#/components/schemas/AiModelsRateLimitResponse"
          readOnly: true
          type: array
        totalCount:
          description: 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.
          format: int32
          minimum: 0
          readOnly: true
          type: integer
      required:
      - results
      type: object
    PaginatedDefaultGroupLimitResponse:
      description: A list of user-configurable, project-level limits with descriptions.
      properties:
        links:
          description: List of one or more Uniform Resource Locators (URLs) that point
            to API sub-resources, related API resources, or both. RFC 5988 outlines
            these relationships.
          externalDocs:
            description: Web Linking Specification (RFC 5988)
            url: https://datatracker.ietf.org/doc/html/rfc5988
          items:
            "$ref": "#/components/schemas/Link"
          readOnly: true
          type: array
        results:
          description: List of returned documents that MongoDB Cloud provides when
            completing this request.
          items:
            "$ref": "#/components/schemas/DefaultGroupLimitResponse"
          readOnly: true
          type: array
        totalCount:
          description: 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.
          format: int32
          minimum: 0
          readOnly: true
          type: integer
      required:
      - results
      type: object
  securitySchemes:
    DigestAuth:
      scheme: digest
      type: http
    ServiceAccounts:
      description: Learn more about [Service Accounts](https://www.mongodb.com/docs/atlas/api/service-accounts-overview).
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: https://cloud.mongodb.com/api/oauth/token
      type: oauth2
info:
  description: |-
    The MongoDB Atlas Administration API allows developers to manage all components in MongoDB Atlas.

    The Atlas Administration API supports OAuth2 Service Accounts and HTTP Digest-based API keys. Service accounts are the recommended authentication method and API keys are considered a legacy option.

    To authenticate with a Service Account, first exchange its client ID and secret for an access token using the OAuth 2.0 Client Credentials flow. Atlas provides a token endpoint at `POST https://cloud.mongodb.com/api/oauth/token`, which returns a Bearer token that is reusable and valid for 1 hour (3600 seconds).

    For example, to [return a list of your organizations](https://www.mongodb.com/docs/api/doc/atlas-admin-api-v2/operation/operation-listorgs) with [cURL](https://en.wikipedia.org/wiki/CURL), first generate an access token and then use that token to call the same Atlas Administration API endpoint shown in the current example:

    ```
    ACCESS_TOKEN=$(curl -fsS --request POST https://cloud.mongodb.com/api/oauth/token \
      --header "Authorization: Basic $(printf '%s' "${CLIENT_ID}:${CLIENT_SECRET}" | base64 | tr -d '\n')" \
      --header "Content-Type: application/x-www-form-urlencoded" \
      --header "Accept: application/json" \
      --data "grant_type=client_credentials" | jq -r '.access_token')

    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
      --header "Accept: application/vnd.atlas.preview+json" \
      -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs?pretty=true"
    ```

    If your organization requires an IP access list for the Atlas Administration API, the token can be created from any IP address, but the API call that uses the token must originate from an allowed IP.

    To learn more, see [Get Started with the Atlas Administration API](https://www.mongodb.com/docs/atlas/configure-api-access/). For support, see [MongoDB Support](https://www.mongodb.com/support/get-started).

    You can also explore the various endpoints available through the Atlas Administration API in MongoDB's [Postman workspace](https://www.postman.com/mongodb-devrel/workspace/mongodb-atlas-administration-apis/) (requires a Postman account).
  license:
    name: CC BY-NC-SA 3.0 US
    url: https://creativecommons.org/licenses/by-nc-sa/3.0/us/
  termsOfService: https://www.mongodb.com/mongodb-management-service-terms-and-conditions
  title: MongoDB Atlas Administration API
  version: '2.0'
  x-xgen-sha: 1e7430a8891798c52ca88ea972db8cd390a84640
openapi: 3.0.1
paths:
  "/api/atlas/v2/defaultGroupLimits":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Returns a list of all user-configurable, project-level limits, along with a description and their default and maximum values.
      operationId: listDefaultGroupLimits
      parameters:
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/itemsPerPage"
      - "$ref": "#/components/parameters/pageNum"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/PaginatedDefaultGroupLimitResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return Descriptions of User-Configurable Project Limits
      tags:
      - Limit Description
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api limitDescription listDefaultGroupLimits --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/defaultGroupLimits?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/defaultGroupLimits?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Limit-Description/operation/listDefaultGroupLimits
  "/api/atlas/v2/defaultGroupLimits/{limitName}":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Returns the description of one user-configurable, project-level limit, along with its default and maximum values.
      operationId: getDefaultGroupLimit
      parameters:
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: Human-readable label that identifies the user-managed limit whose
          description you want to retrieve.
        in: path
        name: limitName
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/DefaultGroupLimitResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return One User-Configurable Project Limit and Description
      tags:
      - Limit Description
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api limitDescription getDefaultGroupLimit --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/defaultGroupLimits/{limitName}?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/defaultGroupLimits/{limitName}?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Limit-Description/operation/getDefaultGroupLimit
  "/api/atlas/v2/groups/{groupId}/aiModelApiKeys":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve AI model API keys for the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner, Project Model Owner, or Project Read Only role.
      operationId: listGroupAiModelApiKeys
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/itemsPerPage"
      - "$ref": "#/components/parameters/pageNum"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/PaginatedAtlasAiModelsApiKeysResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return AI Model API Keys for One Group
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys listGroupModelKeys --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/listGroupAiModelApiKeys
      x-xgen-operation-id-override: listGroupModelKeys
    post:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Create a new AI model API key for the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner or Project Model Owner role.
      operationId: createGroupAiModelApiKey
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      requestBody:
        content:
          application/vnd.atlas.preview+json:
            schema:
              "$ref": "#/components/schemas/AiModelsApiKeyCreateRequest"
            x-xgen-preview:
              public: 'true'
            x-xgen-version: preview
        description: A request containing the name of the new API key.
        required: true
      responses:
        '201':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsApiKeyResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: Created
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Create New AI Model API Key
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys createModelApiKey --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys" \
            -d '{ <Payload> }'
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys" \
            -d '{ <Payload> }'
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/createGroupAiModelApiKey
      x-xgen-operation-id-override: createModelApiKey
  "/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}":
    delete:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Delete an existing AI model API key in the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner or Project Model Owner role.
      operationId: deleteGroupAiModelApiKey
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The id of the API key to be deleted.
        in: path
        name: apiKeyId
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/vnd.atlas.preview+json:
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: This endpoint does not return a response body.
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Delete Existing AI Model API Key
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys deleteModelApiKey --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/deleteGroupAiModelApiKey
      x-xgen-operation-id-override: deleteModelApiKey
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve a single AI model API key for the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner, Project Model Owner, or Project Read Only role.
      operationId: getGroupAiModelApiKey
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The id of the API key to be retrieved.
        in: path
        name: apiKeyId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsApiKeyResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return Single AI Model API Key for One Group
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys getGroupModelKey --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/getGroupAiModelApiKey
      x-xgen-operation-id-override: getGroupModelKey
    patch:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Update an existing AI model API key in the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner or Project Model Owner role.
      operationId: updateGroupAiModelApiKey
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The id of the API key to be updated.
        in: path
        name: apiKeyId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.atlas.preview+json:
            schema:
              "$ref": "#/components/schemas/AiModelsApiKeyUpdateRequest"
            x-xgen-preview:
              public: 'true'
            x-xgen-version: preview
        description: A request containing the new name for the API key.
        required: true
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsApiKeyResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Update Existing AI Model API Key
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys updateModelApiKey --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}" \
            -d '{ <Payload> }'
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}" \
            -d '{ <Payload> }'
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/updateGroupAiModelApiKey
      x-xgen-operation-id-override: updateModelApiKey
  "/api/atlas/v2/groups/{groupId}/aiModelRateLimits":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve AI model rate limits for the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner, Project Model Owner, or Project Read Only role.
      operationId: listGroupAiModelRateLimits
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/itemsPerPage"
      - "$ref": "#/components/parameters/pageNum"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/PaginatedAtlasAiModelsRateLimitsResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return AI Model Rate Limits for One Group
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits listGroupModelLimits --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/listGroupAiModelRateLimits
      x-xgen-operation-id-override: listGroupModelLimits
  "/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve a single AI model rate limit for the given group. To use this resource, the requesting Service Account or API Key must have the Project Owner, Project Model Owner, or Project Read Only role.
      operationId: getGroupAiModelRateLimit
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The name of the model group to be retrieved.
        in: path
        name: modelGroupName
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsRateLimitResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return Single AI Model Rate Limit for One Group
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits getGroupModelLimit --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/getGroupAiModelRateLimit
      x-xgen-operation-id-override: getGroupModelLimit
    patch:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Update an AI model rate limit for the given model group. To use this resource, the requesting Service Account or API Key must have the Project Owner or Project Model Owner role.
      operationId: updateGroupAiModelRateLimit
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The name of the model group to be updated.
        in: path
        name: modelGroupName
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.atlas.preview+json:
            schema:
              "$ref": "#/components/schemas/AiModelsRateLimitUpdateRequest"
            x-xgen-preview:
              public: 'true'
            x-xgen-version: preview
        description: A request containing the new rate limits for the given model
          group.
        required: true
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsRateLimitResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Update AI Model Rate Limit
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits updateModelRateLimit --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}" \
            -d '{ <Payload> }'
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}" \
            -d '{ <Payload> }'
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/updateGroupAiModelRateLimit
      x-xgen-operation-id-override: updateModelRateLimit
  "/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}:reset":
    post:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Reset the AI model rate limit for the given model group to default values.
      operationId: resetGroupAiModelRateLimit
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The name of the model group to be reset to default rate limits.
        in: path
        name: modelGroupName
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/vnd.atlas.preview+json:
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: This endpoint does not return a response body.
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '400':
          "$ref": "#/components/responses/badRequest"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Reset AI Model Rate Limit for One Model Group
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits resetModelRateLimit --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}:reset" \
            -d '{ <Payload> }'
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits/{modelGroupName}:reset" \
            -d '{ <Payload> }'
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/resetGroupAiModelRateLimit
      x-xgen-operation-id-override: resetModelRateLimit
  "/api/atlas/v2/groups/{groupId}/aiModelRateLimits:reset":
    post:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Reset the AI Model rate limits for the given group to default values.
      operationId: resetGroupAiModelRateLimits
      parameters:
      - "$ref": "#/components/parameters/groupId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '204':
          content:
            application/vnd.atlas.preview+json:
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: This endpoint does not return a response body.
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Reset AI Model Rate Limits for Group
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits resetModelRateLimits --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits:reset" \
            -d '{ <Payload> }'
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            --header "Content-Type: application/json" \
            -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelRateLimits:reset" \
            -d '{ <Payload> }'
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/resetGroupAiModelRateLimits
      x-xgen-method-verb-override:
        customMethod: 'True'
        verb: reset
      x-xgen-operation-id-override: resetModelRateLimits
  "/api/atlas/v2/orgs/{orgId}/aiModelApiKeys":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve AI model API keys for the given organization.
      operationId: listOrgAiModelApiKeys
      parameters:
      - "$ref": "#/components/parameters/orgId"
      - "$ref": "#/components/parameters/itemsPerPage"
      - "$ref": "#/components/parameters/pageNum"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/PaginatedAtlasAiModelsApiKeysResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return AI Model API Keys for One Organization
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys listOrgModelKeys --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelApiKeys?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelApiKeys?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/listOrgAiModelApiKeys
      x-xgen-operation-id-override: listOrgModelKeys
  "/api/atlas/v2/orgs/{orgId}/aiModelApiKeys/{apiKeyId}":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve a single AI model API key for the given organization.
      operationId: getOrgAiModelApiKey
      parameters:
      - "$ref": "#/components/parameters/orgId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The id of the API key to be retrieved.
        in: path
        name: apiKeyId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsApiKeyResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return Single AI Model API Key for One Organization
      tags:
      - AI Model API Keys
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelApiKeys getOrgModelKey --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelApiKeys/{apiKeyId}?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelApiKeys/{apiKeyId}?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/getOrgAiModelApiKey
      x-xgen-operation-id-override: getOrgModelKey
  "/api/atlas/v2/orgs/{orgId}/aiModelRateLimits":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve AI model rate limits for the given organization.
      operationId: listOrgAiModelRateLimits
      parameters:
      - "$ref": "#/components/parameters/orgId"
      - "$ref": "#/components/parameters/itemsPerPage"
      - "$ref": "#/components/parameters/pageNum"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/PaginatedAtlasAiModelsRateLimitsResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return AI Model Rate Limits for One Organization
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits listOrgModelLimits --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelRateLimits?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelRateLimits?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/listOrgAiModelRateLimits
      x-xgen-operation-id-override: listOrgModelLimits
  "/api/atlas/v2/orgs/{orgId}/aiModelRateLimits/{modelGroupName}":
    get:
      description: |-
        This API is in preview. Breaking changes might be introduced before it is released. Don't use preview APIs in production.

         Retrieve a single AI model rate limit for the given organization.
      operationId: getOrgAiModelRateLimit
      parameters:
      - "$ref": "#/components/parameters/orgId"
      - "$ref": "#/components/parameters/envelope"
      - "$ref": "#/components/parameters/pretty"
      - description: The name of the model group to be retrieved.
        in: path
        name: modelGroupName
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.atlas.preview+json:
              schema:
                "$ref": "#/components/schemas/AiModelsRateLimitResponse"
              x-xgen-preview:
                public: 'true'
              x-xgen-version: preview
          description: OK
          headers:
            RateLimit-Limit:
              "$ref": "#/components/headers/HeaderRateLimitLimit"
            RateLimit-Remaining:
              "$ref": "#/components/headers/HeaderRateLimitRemaining"
        '401':
          "$ref": "#/components/responses/unauthorized"
        '403':
          "$ref": "#/components/responses/forbidden"
        '404':
          "$ref": "#/components/responses/notFound"
        '429':
          "$ref": "#/components/responses/tooManyRequests"
        '500':
          "$ref": "#/components/responses/internalServerError"
      summary: Return Single AI Model Rate Limit for One Organization
      tags:
      - AI Model Rate Limits
      x-beta: true
      x-codeSamples:
      - lang: cURL
        label: Atlas CLI
        source: atlas api aiModelRateLimits getOrgModelLimit --help
      - lang: cURL
        label: curl (Service Accounts)
        source: |-
          curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelRateLimits/{modelGroupName}?pretty=true"
      - lang: cURL
        label: curl (Digest)
        source: |-
          curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
            --digest --include \
            --header "Accept: application/vnd.atlas.preview+json" \
            -X GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/aiModelRateLimits/{modelGroupName}?pretty=true"
      x-state:
        label: PREVIEW
        color: "#B89D09"
      x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/getOrgAiModelRateLimit
      x-xgen-operation-id-override: getOrgModelLimit
security:
- ServiceAccounts: []
- DigestAuth: []
servers:
- url: https://cloud.mongodb.com
x-externalLinks:
- label: Back to Atlas Docs
  url: https://www.mongodb.com/docs/atlas/
- label: API Changelog
  url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/changelog/
x-topics:
- content: The MongoDB Atlas Administration API is rate limited. To learn more about
    rate limiting, see the [Atlas Documentation on Rate Limiting](http://dochub.mongodb.org/core/atlas-api-rate-limit)
  title: Rate Limiting
