Create a team
POST/api/v1/teams
Team memberships can be backed by an IdP group (from Okta, Azure AD, Google Groups, etc), or can be managed directly through Cortex. Each has a separate request shape, so make sure to select the correct example.
Request
- application/json
Body
required
- IdentityProviderBackedTeam
- ManagedTeam
Array [
]
Array [
]
Array [
]
Array [
]
Array [
]
oneOf
Use this request shape when creating a team entry whose memberships are synced with an Idp group, such as from Okta, Google Groups, Github Teams, Azure AD, etc.
links
object[]
required
metadata
object
required
slackChannels
object[]
required
A unique identifier for the team to be used for API/programmatic access
Use "IDP" for IdentityProviderBackedTeam and "CORTEX" for ManagedTeam
idpGroup
object
Possible values: [ACTIVE_DIRECTORY
, BAMBOOHR
, GIT
, GITLAB
, GOOGLE
, OKTA
, OPSGENIE
, SERVICE_NOW
, SLACK
, WORKDAY
]
Use this request shape when creating a team entry whose memberships are manually maintained via API or the UI.
links
object[]
required
metadata
object
required
slackChannels
object[]
required
A unique identifier for the team, which is used for programmatic access as well as in Catalog Descriptors to define ownership of an entity.
Use "IDP" for IdentityProviderBackedTeam and "CORTEX" for ManagedTeam
cortexTeam
object
members
object[]
required
role
object
Responses
- 200
- 400
- 429
Successfully created a team
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
Array [
]
links
object[]
required
metadata
object
required
slackChannels
object[]
required
{
"catalogEntityTag": "string",
"id": "string",
"isArchived": true,
"links": [
{
"description": "string",
"name": "string",
"type": "string",
"url": "string"
}
],
"metadata": {
"description": "string",
"name": "string",
"summary": "string"
},
"slackChannels": [
{
"description": "string",
"name": "string",
"notificationsEnabled": true
}
],
"teamTag": "string",
"type": "string"
}
Bad Request
- application/json
- Schema
- Example (from schema)
Schema
Possible values: [INTEGRATION_MISSING
, INTEGRATION_UNREGISTERED
, INTEGRATION_UNSUPPORTED
, INTEGRATION_GRAPHQL_ERROR
, INTEGRATION_BAD_REQUEST
, INTEGRATION_UNAUTHORIZED
, INTEGRATION_FORBIDDEN
, INTEGRATION_NOT_FOUND
, INTEGRATION_UNPROCESSABLE_CONTENT
, INTEGRATION_RATE_LIMITED
, INTEGRATION_INTERNAL_ERROR
, INTEGRATION_NOT_IMPLEMENTED
, INTEGRATION_BAD_GATEWAY
, INTEGRATION_UNAVAILABLE
, INTEGRATION_GATEWAY_TIMEOUT
, INTEGRATION_TIMED_OUT
, INTEGRATION_CACHE_ERROR
, INTEGRATION_UNHANDLED_HTTP_ERROR
, INTEGRATION_UNHANDLED_EXCEPTION
, INTEGRATION_UNEXPECTED_ERROR
, ILLEGAL_ARGUMENT_ERROR
, BAD_REQUEST
, FORBIDDEN
, NOT_FOUND
, REQUEST_TIMEOUT
, CONFLICT
, UNHANDLED_EXCEPTION
, UNCATEGORIZED
, SERVICE_CREATOR
, UNKNOWN_HOST
]
{
"details": "string",
"gatewayHttpStatus": 0,
"httpStatus": 0,
"message": "string",
"requestId": "string",
"type": "INTEGRATION_MISSING"
}
The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.
Response Headers
Retry-After
integer
The number of seconds until the rate limiting resets.
- application/problem+json
- Schema
- Example (from schema)
Schema
The number of seconds until the rate limiting resets.
Possible values: >= 100
and <= 599
, [429
]
{
"detail": "string",
"instance": "string",
"retryAfter": 0,
"status": 429,
"title": "string",
"type": "string"
}