# Squads

## Get All Squads

> This endpoint is used to get all the squads details of your organization.\
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-read\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.SquadResponse":{"type":"object","allOf":[{"$ref":"#/components/schemas/V4.Squads.Squad"}]},"V4.Squads.Squad":{"type":"object","required":["id","org_id","team_id","name","members","createdAt","updatedAt"],"properties":{"id":{"type":"string"},"org_id":{"type":"string"},"team_id":{"type":"string"},"name":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}},"createdAt":{"type":"string"},"createdBy":{"type":"string"},"updatedAt":{"type":"string"},"updatedBy":{"type":"string"}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.PageInfo":{"type":"object","required":["pageSize","hasNext","hasPrev"],"properties":{"pageSize":{"type":"integer","format":"int32"},"hasNext":{"type":"boolean"},"hasPrev":{"type":"boolean"},"nextCursor":{"type":"string"},"prevCursor":{"type":"string"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}}}},"paths":{"/v4/squads":{"get":{"operationId":"Squads_getAllSquads","summary":"Get All Squads","description":"This endpoint is used to get all the squads details of your organization.\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-read` scope.","parameters":[{"name":"owner_id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The request has succeeded.","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadResponse"}},"pageInfo":{"$ref":"#/components/schemas/Common.V4.PageInfo"}}}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"]}}}}
```

## Create Squad

> This endpoint is used to create a new squad.\
> The role will be considered only if your organization is on the OBAC permission model; otherwise, the role field will be ignored, and only the member will be added to the squad.\
> \
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-create\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.CreateSquadResponse":{"type":"object","required":["organization_id","owner_id","id","name","slug","members","created_at","created_by"],"properties":{"organization_id":{"type":"string"},"owner_id":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}},"created_at":{"type":"string"},"created_by":{"type":"string"}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}},"V4.Squads.CreateSquadRequest":{"type":"object","required":["owner_id","name","members"],"properties":{"owner_id":{"type":"string"},"name":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}}}}}},"paths":{"/v4/squads":{"post":{"operationId":"Squads_createSquad","summary":"Create Squad","description":"This endpoint is used to create a new squad.\nThe role will be considered only if your organization is on the OBAC permission model; otherwise, the role field will be ignored, and only the member will be added to the squad.\n\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-create` scope.","parameters":[],"responses":{"201":{"description":"The request has succeeded and a new resource has been created as a result.","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/V4.Squads.CreateSquadResponse"}}}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.CreateSquadRequest"}}}}}}}}
```

## Get Squad By ID

> This endpoint is used to get the squads details by id.\
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-read\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.SquadResponse":{"type":"object","allOf":[{"$ref":"#/components/schemas/V4.Squads.Squad"}]},"V4.Squads.Squad":{"type":"object","required":["id","org_id","team_id","name","members","createdAt","updatedAt"],"properties":{"id":{"type":"string"},"org_id":{"type":"string"},"team_id":{"type":"string"},"name":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}},"createdAt":{"type":"string"},"createdBy":{"type":"string"},"updatedAt":{"type":"string"},"updatedBy":{"type":"string"}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}}}},"paths":{"/v4/squads/{squadID}":{"get":{"operationId":"Squads_getSquadById","summary":"Get Squad By ID","description":"This endpoint is used to get the squads details by id.\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-read` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The request has succeeded.","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/V4.Squads.SquadResponse"}}}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"]}}}}
```

## Update Squad

> This endpoint is used to update squad.\
> \
> The role will be considered only if your organization is on the OBAC permission model; otherwise, the role field will be ignored, and only the member will be added to the squad.\
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-create\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.SquadResponse":{"type":"object","allOf":[{"$ref":"#/components/schemas/V4.Squads.Squad"}]},"V4.Squads.Squad":{"type":"object","required":["id","org_id","team_id","name","members","createdAt","updatedAt"],"properties":{"id":{"type":"string"},"org_id":{"type":"string"},"team_id":{"type":"string"},"name":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}},"createdAt":{"type":"string"},"createdBy":{"type":"string"},"updatedAt":{"type":"string"},"updatedBy":{"type":"string"}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}},"V4.Squads.UpdateSquadRequest":{"type":"object","properties":{"name":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}}}}}},"paths":{"/v4/squads/{squadID}":{"put":{"operationId":"Squads_updateSquad","summary":"Update Squad","description":"This endpoint is used to update squad.\n\nThe role will be considered only if your organization is on the OBAC permission model; otherwise, the role field will be ignored, and only the member will be added to the squad.\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-create` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The request has succeeded.","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/V4.Squads.SquadResponse"}}}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.UpdateSquadRequest"}}}}}}}}
```

## Delete Squad

> This endpoint is used to delete the squad. Squad should not be assigned to any incident or part of any escalation policy.\
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-update\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}}}},"paths":{"/v4/squads/{squadID}":{"delete":{"operationId":"Squads_deleteSquad","summary":"Delete Squad","description":"This endpoint is used to delete the squad. Squad should not be assigned to any incident or part of any escalation policy.\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-update` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"There is no content to send for this request, but the headers may be useful. ","content":{"*/*":{"schema":{"type":"object"}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"]}}}}
```

## Update Squad Member

> This endpoint is used to update a squad member's role and is only accessible if your organization is using the OBAC permission model.\
> \
> If you're attempting to update a member's role from 'owner' to 'member', and that 'owner' is the last squad owner, then the 'replaceWith' query parameter is required. Setting 'replaceWith' to 'member' will promote the member to the role of owner.\
> \
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-create\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.UpdateSquadMemberResponse":{"type":"object","required":["id","members"],"properties":{"id":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}},"V4.Squads.UpdateSquadMemberRequest":{"type":"object","required":["role"],"properties":{"role":{"type":"string"}}}}},"paths":{"/v4/squads/{squadID}/members/{memberID}":{"put":{"operationId":"Squads_updateSquadMember","summary":"Update Squad Member","description":"This endpoint is used to update a squad member's role and is only accessible if your organization is using the OBAC permission model.\n\nIf you're attempting to update a member's role from 'owner' to 'member', and that 'owner' is the last squad owner, then the 'replaceWith' query parameter is required. Setting 'replaceWith' to 'member' will promote the member to the role of owner.\n\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-create` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}},{"name":"memberID","in":"path","required":true,"schema":{"type":"string"}},{"name":"replaceWith","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The request has succeeded and a new resource has been created as a result.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.UpdateSquadMemberResponse"}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.UpdateSquadMemberRequest"}}}}}}}}
```

## Remove Squad Member

> This endpoint is used to update squad member's role.\
> \
> If you're attempting to remove a member whose role is 'owner', and that 'owner' is the last squad owner, then the 'replaceWith' query parameter is required. Setting 'replaceWith' to 'member' will promote another member as the owner, and the specified member will be removed.\
> \
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-create\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.RemoveSquadMemberResponse":{"type":"object","required":["id","members"],"properties":{"id":{"type":"string"},"members":{"type":"array","items":{"$ref":"#/components/schemas/V4.Squads.SquadMember"}}}},"V4.Squads.SquadMember":{"type":"object","required":["user_id"],"properties":{"user_id":{"type":"string"},"role":{"type":"string","description":"this field is required if you are using OBAC permission model"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}}}},"paths":{"/v4/squads/{squadID}/members/{memberID}":{"delete":{"operationId":"Squads_removeSquadMember","summary":"Remove Squad Member","description":"This endpoint is used to update squad member's role.\n\nIf you're attempting to remove a member whose role is 'owner', and that 'owner' is the last squad owner, then the 'replaceWith' query parameter is required. Setting 'replaceWith' to 'member' will promote another member as the owner, and the specified member will be removed.\n\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-create` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}},{"name":"memberID","in":"path","required":true,"schema":{"type":"string"}},{"name":"replaceWith","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The request has succeeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.RemoveSquadMemberResponse"}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"]}}}}
```

## Update Squad Name

> This endpoint is used to update squad's name.\
> Requires \`access\_token\` as a \`Bearer {{token}}\` in the \`Authorization\` header with \`squad-create\` scope.

```json
{"openapi":"3.1.0","info":{"title":"Squadcast","version":"1.0.0"},"tags":[{"name":"Squads"}],"servers":[{"url":"https://api.squadcast.com","description":"production US env","variables":{}},{"url":"https://api.eu.squadcast.com","description":"production EU env","variables":{}}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"V4.Squads.UpdateSquadNameResponse":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"}}},"Common.V4.Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"message":{"type":"string"}},"required":["field","message"]}}},"required":["code","message"]}}},"V4.Squads.UpdateSquadNameRequest":{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}}}},"paths":{"/v4/squads/{squadID}/name":{"put":{"operationId":"Squads_updateSquadName","summary":"Update Squad Name","description":"This endpoint is used to update squad's name.\nRequires `access_token` as a `Bearer {{token}}` in the `Authorization` header with `squad-create` scope.","parameters":[{"name":"squadID","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The request has succeeded.","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/V4.Squads.UpdateSquadNameResponse"}}}}}},"400":{"description":"The server could not understand the request due to invalid syntax.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"401":{"description":"Access is unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"402":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"403":{"description":"Access is forbidden.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"404":{"description":"The server cannot find the requested resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"409":{"description":"The request conflicts with the current state of the server.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"422":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"502":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"503":{"description":"Service unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}},"504":{"description":"Server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Common.V4.Error"}}}}},"tags":["Squads"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V4.Squads.UpdateSquadNameRequest"}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.incidents.cloud.solarwinds.com/api-reference/squads.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
