# Return Sharding Insights for One Cluster

**GET /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingInsights**

Returns the cluster-level sharding state of one sharded cluster: the number of shards, the balancer state, the availability of the config servers, and the configured balancing window.

## Role requirements
  - Project Read Only


## Servers
- https://cloud.mongodb.com: https://cloud.mongodb.com ()


## Authentication methods
- Service accounts
- Digest auth


## Parameters

### Path parameters

- **groupId** (string)
  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.

- **clusterName** (string)
  Human-readable label that identifies the cluster.


### 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.

- **pretty** (boolean)
  Flag that indicates whether the response body should be in the prettyprint format.



## Responses
### 200
OK
#### Headers

- **RateLimit-Limit** ()
  The maximum number of requests that a user can make within a specific time window.

- **RateLimit-Remaining** ()
  The number of requests remaining in the current rate limit window before the limit is reached.


#### Body: application/vnd.atlas.2025-03-12+json (object)
- **balancerState** (string)
  State of the cluster balancer. `BALANCING` means a balancer round is in progress. `IDLE` means the balancer is enabled and no round is in progress. `DISABLED` means the balancer is turned off. `FAILED_TO_DETERMINE` means the balancer state could not be resolved.

- **balancingWindow** (object)
  Balancing window configured on the sharded cluster. When configured, the balancer moves data only during the daily interval between `startTime` and `endTime`.

- **configServerStatus** (string)
  Availability of the cluster's config servers. `AVAILABLE` means at least one config server reported recently. `UNAVAILABLE` means config servers exist but none has reported recently. `FAILED_TO_DETERMINE` means availability could not be resolved.

- **totalShards** (integer(int32))
  Number of shards in the cluster.


### 400
Bad Request.

#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.


### 401
Unauthorized.

#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.


### 403
Forbidden.

#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.


### 404
Not Found.

#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.


### 429
Too Many Requests.
#### Headers

- **RateLimit-Limit** ()
  The maximum number of requests that a user can make within a specific time window.

- **RateLimit-Remaining** ()
  The number of requests remaining in the current rate limit window before the limit is reached.

- **Retry-After** ()
  The minimum time you should wait, in seconds, before retrying the API request. This header might be returned for 429 or 503 error responses.


#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.


### 500
Internal Server Error.

#### Body: application/json (object)
- **badRequestDetail** (object)
  Bad request detail.

- **detail** (string | null)
  Describes the specific conditions or reasons that cause each type of error.

- **error** (integer(int32))
  HTTP status code returned with this error.

- **errorCode** (string)
  Application error code returned with this error.

- **parameters** (array[object])
  Parameters used to give more information about the error.

- **reason** (string | null)
  Application error message returned with this error.



[Powered by Bump.sh](https://bump.sh)
