2026/08/26 - AWS DevOps Agent Service - 4 updated api methods
Changes AWS DevOps Agent now supports trigger filter groups for Release Readiness Review, letting you control when the capability auto-triggers based on webhook events and target branches.
{'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}
Response {'association': {'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| '
'PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}}
Adds a specific service association to an AgentSpace. It overwrites the existing association of the same service. Returns 201 Created on success.
See also: AWS API Documentation
Request Syntax
client.associate_service(
agentSpaceId='string',
serviceId='string',
configuration={
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {}
,
'eventChannel': {}
,
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {}
,
'remoteagentsigv4': {}
},
capabilities={
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
)
string
[REQUIRED]
The unique identifier of the AgentSpace
string
[REQUIRED]
The unique identifier of the service.
dict
[REQUIRED]
The configuration that directs how AgentSpace interacts with the given service.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) -- [REQUIRED]
AWS Account Id corresponding to provided resources.
accountType (string) -- [REQUIRED]
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) -- [REQUIRED]
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) -- [REQUIRED]
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) -- [REQUIRED]
AWS Account Id corresponding to provided resources.
accountType (string) -- [REQUIRED]
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) -- [REQUIRED]
Associated Github repo name
repoId (string) -- [REQUIRED]
Associated Github repo ID
owner (string) -- [REQUIRED]
The GitHub repository owner name.
ownerType (string) -- [REQUIRED]
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) -- [REQUIRED]
Associated Slack workspace ID
workspaceName (string) -- [REQUIRED]
Associated Slack workspace name
transmissionTarget (dict) -- [REQUIRED]
Transmission targets for agent notifications
opsOncallTarget (dict) -- [REQUIRED]
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) -- [REQUIRED]
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) -- [REQUIRED]
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) -- [REQUIRED]
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) -- [REQUIRED]
New Relic Account ID
endpoint (string) -- [REQUIRED]
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) -- [REQUIRED]
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) -- [REQUIRED]
GitLab numeric project ID.
projectPath (string) -- [REQUIRED]
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) -- [REQUIRED]
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) -- [REQUIRED]
Azure DevOps organization name.
projectId (string) -- [REQUIRED]
Azure DevOps project ID.
projectName (string) -- [REQUIRED]
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) -- [REQUIRED]
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) -- [REQUIRED]
List of Pagerduty service available for the association.
(string) --
customerEmail (string) -- [REQUIRED]
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) -- [REQUIRED]
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
dict
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) -- [REQUIRED]
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
dict
Response Syntax
{
'association': {
'agentSpaceId': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'status': 'valid'|'invalid'|'pending-confirmation',
'associationId': 'string',
'serviceId': 'string',
'configuration': {
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {},
'eventChannel': {},
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {},
'remoteagentsigv4': {}
},
'capabilities': {
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
},
'webhook': {
'webhookUrl': 'string',
'webhookId': 'string',
'webhookType': 'hmac'|'apikey'|'gitlab'|'pagerduty',
'webhookSecret': 'string',
'apiKey': 'string'
}
}
Response Structure
(dict) --
Output containing the newly created association and optional webhook configuration.
association (dict) --
Represents a service association within an AgentSpace, defining how the agent interacts with external services.
agentSpaceId (string) --
The unique identifier of the AgentSpace
createdAt (datetime) --
The timestamp when the resource was created.
updatedAt (datetime) --
The timestamp when the resource was last updated.
status (string) --
Validation status
associationId (string) --
The unique identifier of the given association.
serviceId (string) --
The identifier for associated service
configuration (dict) --
The configuration that directs how AgentSpace interacts with the given service.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) --
Associated Github repo name
repoId (string) --
Associated Github repo ID
owner (string) --
The GitHub repository owner name.
ownerType (string) --
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) --
Associated Slack workspace ID
workspaceName (string) --
Associated Slack workspace name
transmissionTarget (dict) --
Transmission targets for agent notifications
opsOncallTarget (dict) --
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) --
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) --
New Relic Account ID
endpoint (string) --
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) --
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) --
GitLab numeric project ID.
projectPath (string) --
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) --
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) --
Azure DevOps organization name.
projectId (string) --
Azure DevOps project ID.
projectName (string) --
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) --
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) --
List of Pagerduty service available for the association.
(string) --
customerEmail (string) --
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) --
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
capabilities (dict) --
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) --
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
webhook (dict) --
Generic webhook configuration
webhookUrl (string) --
The webhook URL endpoint
webhookId (string) --
The unique webhook identifier
webhookType (string) --
The webhook authentication type
webhookSecret (string) --
The webhook secret for authentication
apiKey (string) --
API Key for API Key webhook authentication
{'association': {'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| '
'PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}}
Retrieves given associations configured for a specific AgentSpace.
See also: AWS API Documentation
Request Syntax
client.get_association(
agentSpaceId='string',
associationId='string'
)
string
[REQUIRED]
The unique identifier of the AgentSpace
string
[REQUIRED]
The unique identifier of the given association.
dict
Response Syntax
{
'association': {
'agentSpaceId': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'status': 'valid'|'invalid'|'pending-confirmation',
'associationId': 'string',
'serviceId': 'string',
'configuration': {
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {},
'eventChannel': {},
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {},
'remoteagentsigv4': {}
},
'capabilities': {
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
}
}
Response Structure
(dict) --
Output containing the requested association details.
association (dict) --
Represents a service association within an AgentSpace, defining how the agent interacts with external services.
agentSpaceId (string) --
The unique identifier of the AgentSpace
createdAt (datetime) --
The timestamp when the resource was created.
updatedAt (datetime) --
The timestamp when the resource was last updated.
status (string) --
Validation status
associationId (string) --
The unique identifier of the given association.
serviceId (string) --
The identifier for associated service
configuration (dict) --
The configuration that directs how AgentSpace interacts with the given service.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) --
Associated Github repo name
repoId (string) --
Associated Github repo ID
owner (string) --
The GitHub repository owner name.
ownerType (string) --
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) --
Associated Slack workspace ID
workspaceName (string) --
Associated Slack workspace name
transmissionTarget (dict) --
Transmission targets for agent notifications
opsOncallTarget (dict) --
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) --
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) --
New Relic Account ID
endpoint (string) --
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) --
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) --
GitLab numeric project ID.
projectPath (string) --
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) --
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) --
Azure DevOps organization name.
projectId (string) --
Azure DevOps project ID.
projectName (string) --
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) --
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) --
List of Pagerduty service available for the association.
(string) --
customerEmail (string) --
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) --
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
capabilities (dict) --
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) --
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
{'associations': {'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| '
'PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}}
List all associations for given AgentSpace
See also: AWS API Documentation
Request Syntax
client.list_associations(
agentSpaceId='string',
maxResults=123,
nextToken='string',
filterServiceTypes='string'
)
string
[REQUIRED]
The unique identifier of the AgentSpace
integer
Maximum number of results to return in a single call.
string
Token for the next page of results.
string
A comma-separated list of service types to filter list associations output
dict
Response Syntax
{
'nextToken': 'string',
'associations': [
{
'agentSpaceId': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'status': 'valid'|'invalid'|'pending-confirmation',
'associationId': 'string',
'serviceId': 'string',
'configuration': {
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {},
'eventChannel': {},
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {},
'remoteagentsigv4': {}
},
'capabilities': {
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
},
]
}
Response Structure
(dict) --
Output containing a list of service associations and pagination token.
nextToken (string) --
Token to retrieve the next page of results, if there are more results.
associations (list) --
The list of associations.
(dict) --
Represents a service association within an AgentSpace, defining how the agent interacts with external services.
agentSpaceId (string) --
The unique identifier of the AgentSpace
createdAt (datetime) --
The timestamp when the resource was created.
updatedAt (datetime) --
The timestamp when the resource was last updated.
status (string) --
Validation status
associationId (string) --
The unique identifier of the given association.
serviceId (string) --
The identifier for associated service
configuration (dict) --
The configuration that directs how AgentSpace interacts with the given service.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) --
Associated Github repo name
repoId (string) --
Associated Github repo ID
owner (string) --
The GitHub repository owner name.
ownerType (string) --
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) --
Associated Slack workspace ID
workspaceName (string) --
Associated Slack workspace name
transmissionTarget (dict) --
Transmission targets for agent notifications
opsOncallTarget (dict) --
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) --
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) --
New Relic Account ID
endpoint (string) --
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) --
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) --
GitLab numeric project ID.
projectPath (string) --
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) --
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) --
Azure DevOps organization name.
projectId (string) --
Azure DevOps project ID.
projectName (string) --
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) --
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) --
List of Pagerduty service available for the association.
(string) --
customerEmail (string) --
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) --
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
capabilities (dict) --
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) --
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
{'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}
Response {'association': {'capabilities': {'triggerFilterGroups': [{'events': ['PULL_REQUEST_READY_FOR_REVIEW '
'| '
'PULL_REQUEST_DRAFT'],
'targetBranches': {'patterns': ['string']}}]}}}
Partially updates the configuration of an existing service association for an AgentSpace. Present fields are fully replaced; absent fields are left unchanged. Returns 200 OK on success.
See also: AWS API Documentation
Request Syntax
client.update_association(
agentSpaceId='string',
associationId='string',
configuration={
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {}
,
'eventChannel': {}
,
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {}
,
'remoteagentsigv4': {}
},
capabilities={
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
)
string
[REQUIRED]
The unique identifier of the AgentSpace
string
[REQUIRED]
The unique identifier of the given association.
dict
[REQUIRED]
The configuration that directs how AgentSpace interacts with the given service. The entire configuration is replaced on update.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) -- [REQUIRED]
AWS Account Id corresponding to provided resources.
accountType (string) -- [REQUIRED]
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) -- [REQUIRED]
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) -- [REQUIRED]
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) -- [REQUIRED]
AWS Account Id corresponding to provided resources.
accountType (string) -- [REQUIRED]
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) -- [REQUIRED]
Associated Github repo name
repoId (string) -- [REQUIRED]
Associated Github repo ID
owner (string) -- [REQUIRED]
The GitHub repository owner name.
ownerType (string) -- [REQUIRED]
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) -- [REQUIRED]
Associated Slack workspace ID
workspaceName (string) -- [REQUIRED]
Associated Slack workspace name
transmissionTarget (dict) -- [REQUIRED]
Transmission targets for agent notifications
opsOncallTarget (dict) -- [REQUIRED]
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) -- [REQUIRED]
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) -- [REQUIRED]
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) -- [REQUIRED]
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) -- [REQUIRED]
New Relic Account ID
endpoint (string) -- [REQUIRED]
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) -- [REQUIRED]
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) -- [REQUIRED]
GitLab numeric project ID.
projectPath (string) -- [REQUIRED]
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) -- [REQUIRED]
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) -- [REQUIRED]
Azure DevOps organization name.
projectId (string) -- [REQUIRED]
Azure DevOps project ID.
projectName (string) -- [REQUIRED]
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) -- [REQUIRED]
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) -- [REQUIRED]
List of Pagerduty service available for the association.
(string) --
customerEmail (string) -- [REQUIRED]
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) -- [REQUIRED]
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) -- [REQUIRED]
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
dict
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) -- [REQUIRED]
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
dict
Response Syntax
{
'association': {
'agentSpaceId': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'status': 'valid'|'invalid'|'pending-confirmation',
'associationId': 'string',
'serviceId': 'string',
'configuration': {
'sourceAws': {
'accountId': 'string',
'accountType': 'source',
'assumableRoleArn': 'string',
'externalId': 'string',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'aws': {
'assumableRoleArn': 'string',
'accountId': 'string',
'accountType': 'monitor',
'agentElevatedRoleArn': 'string',
'agentElevatedRoleArnStatus': 'valid'|'invalid'|'pending-confirmation'
},
'github': {
'repoName': 'string',
'repoId': 'string',
'owner': 'string',
'ownerType': 'organization'|'user',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'slack': {
'workspaceId': 'string',
'workspaceName': 'string',
'transmissionTarget': {
'opsOncallTarget': {
'channelName': 'string',
'channelId': 'string'
},
'opsSRETarget': {
'channelName': 'string',
'channelId': 'string'
}
}
},
'dynatrace': {
'envId': 'string',
'resources': [
'string',
]
},
'servicenow': {
'instanceId': 'string',
'authScopes': [
'string',
]
},
'mcpservernewrelic': {
'accountId': 'string',
'endpoint': 'string'
},
'mcpserverdatadog': {
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'mcpserver': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'gitlab': {
'projectId': 'string',
'projectPath': 'string',
'instanceIdentifier': 'string',
'runtimeRoleArn': 'string'
},
'mcpserversplunk': {},
'eventChannel': {},
'azure': {
'subscriptionId': 'string'
},
'azuredevops': {
'organizationName': 'string',
'projectId': 'string',
'projectName': 'string'
},
'mcpservergrafana': {
'endpoint': 'string',
'organizationId': 'string',
'tools': [
'string',
],
'enabledElevatedTools': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'pagerduty': {
'services': [
'string',
],
'customerEmail': 'string'
},
'mcpserversigv4': {
'tools': [
'string',
],
'toolDetails': [
{
'name': 'string',
'toolClassification': 'READ_ONLY'|'MUTATIVE'|'DESTRUCTIVE'
},
]
},
'remoteagent': {},
'remoteagentsigv4': {}
},
'capabilities': {
'string': {
'enabled': True|False,
'triggerFilterGroups': [
{
'events': [
'PULL_REQUEST_READY_FOR_REVIEW'|'PULL_REQUEST_DRAFT',
],
'targetBranches': {
'patterns': [
'string',
]
}
},
]
}
}
},
'webhook': {
'webhookUrl': 'string',
'webhookId': 'string',
'webhookType': 'hmac'|'apikey'|'gitlab'|'pagerduty',
'webhookSecret': 'string',
'apiKey': 'string'
}
}
Response Structure
(dict) --
Output containing the updated association and optional webhook configuration.
association (dict) --
Represents a service association within an AgentSpace, defining how the agent interacts with external services.
agentSpaceId (string) --
The unique identifier of the AgentSpace
createdAt (datetime) --
The timestamp when the resource was created.
updatedAt (datetime) --
The timestamp when the resource was last updated.
status (string) --
Validation status
associationId (string) --
The unique identifier of the given association.
serviceId (string) --
The identifier for associated service
configuration (dict) --
The configuration that directs how AgentSpace interacts with the given service.
sourceAws (dict) --
AWS source account configuration for monitoring resources.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'source' for AIDevOps monitoring.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer. To set this role ARN on AssociateService or UpdateAssociation, the caller must have at least the iam:PassRole permission on arn:aws:iam::<account-id>:role/* in the caller's own account, with the condition iam:PassedToService set to aidevops.amazonaws.com. A broader iam:PassRole grant also satisfies this requirement.
externalId (string) --
External ID for additional security when assuming the role. Used to prevent the confused deputy problem.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account. Setting this role is subject to the same minimum iam:PassRole requirement described on assumableRoleArn.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
aws (dict) --
AWS monitor account configuration.
assumableRoleArn (string) --
Role ARN to be assumed by AIDevOps to operate on behalf of customer.
accountId (string) --
AWS Account Id corresponding to provided resources.
accountType (string) --
Account Type 'monitor' for AIDevOps monitoring.
agentElevatedRoleArn (string) --
Optional IAM role ARN to be assumed by AIDevOps for elevated directed actions on behalf of the customer. Used for mutating operations gated by elevatedActionsEnabled on the AgentSpace. When not provided, only non-elevated directed actions are available for this AWS account.
agentElevatedRoleArnStatus (string) --
Validation status of the agentElevatedRoleArn. Updated asynchronously after the customer registers an elevated role. Possible values: PENDING_CONFIRMATION (validation in progress), VALID (role validated), INVALID (validation failed).
github (dict) --
GitHub repository integration configuration.
repoName (string) --
Associated Github repo name
repoId (string) --
Associated Github repo ID
owner (string) --
The GitHub repository owner name.
ownerType (string) --
Type of GitHub repository owner.
instanceIdentifier (string) --
GitHub instance identifier (e.g., github.com or github.enterprise.com)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
slack (dict) --
Slack workspace integration configuration.
workspaceId (string) --
Associated Slack workspace ID
workspaceName (string) --
Associated Slack workspace name
transmissionTarget (dict) --
Transmission targets for agent notifications
opsOncallTarget (dict) --
Destination for On-call Agent (Ops1)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
opsSRETarget (dict) --
Destination for SRE Agent (Ops1.5)
channelName (string) --
Slack channel name
channelId (string) --
Slack channel ID
dynatrace (dict) --
Dynatrace monitoring integration configuration.
envId (string) --
Dynatrace environment id
resources (list) --
List of Dynatrace resources to monitor
(string) --
servicenow (dict) --
ServiceNow instance integration configuration.
instanceId (string) --
ServiceNow instance ID
authScopes (list) --
Scoped down authentication scopes for fine grained control
(string) --
mcpservernewrelic (dict) --
NewRelic instance integration configuration.
accountId (string) --
New Relic Account ID
endpoint (string) --
MCP server endpoint URL (e.g., https://mcp.newrelic.com/mcp/)
mcpserverdatadog (dict) --
Datadog MCP server integration configuration.
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
mcpserver (dict) --
MCP (Model Context Protocol) server integration configuration.
tools (list) --
List of MCP tools can be used with the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
gitlab (dict) --
GitLab project integration configuration.
projectId (string) --
GitLab numeric project ID.
projectPath (string) --
Full GitLab project path (e.g., namespace/project-name).
instanceIdentifier (string) --
GitLab instance identifier (e.g., gitlab.com or e2e.gamma.dev.us-east-1.gitlab.falco.ai.aws.dev)
runtimeRoleArn (string) --
Optional role ARN that AIDevOps assumes at runtime for automatic verification testing and VPC connectivity on this association.
mcpserversplunk (dict) --
Splunk MCP server integration configuration.
eventChannel (dict) --
Event Channel instance integration configuration.
azure (dict) --
Azure subscription integration configuration.
subscriptionId (string) --
Azure subscription ID corresponding to provided resources.
azuredevops (dict) --
Azure DevOps project integration configuration.
organizationName (string) --
Azure DevOps organization name.
projectId (string) --
Azure DevOps project ID.
projectName (string) --
Azure DevOps project name.
mcpservergrafana (dict) --
Grafana MCP server integration configuration.
endpoint (string) --
Grafana instance URL (e.g., https://your-instance.grafana.net)
organizationId (string) --
The Grafana organization ID that can be used.
tools (list) --
List of MCP tools that can be used.
(string) --
enabledElevatedTools (list) --
The subset of elevated-access tools enabled for this integration.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
pagerduty (dict) --
PagerDuty integration configuration
services (list) --
List of Pagerduty service available for the association.
(string) --
customerEmail (string) --
Email to be used in Pagerduty API header
mcpserversigv4 (dict) --
SigV4-authenticated MCP server integration configuration.
tools (list) --
List of MCP tools available for the association.
(string) --
toolDetails (list) --
List of MCP tools with their access categorization. When provided, the tool names must match those in the tools member.
(dict) --
An MCP tool together with its access categorization.
name (string) --
The name of the MCP tool.
toolClassification (string) --
The access categorization of the MCP tool.
remoteagent (dict) --
Remote A2A agent integration configuration (token-based auth).
remoteagentsigv4 (dict) --
Remote A2A agent integration configuration (SigV4 auth).
capabilities (dict) --
Enabled capabilities for this association.
(string) --
AWS DevOps Agent capability types representing the set of automated capabilities that can be enabled per association.
(dict) --
Capability configuration for the AWS DevOps Agent.
enabled (boolean) --
Whether the capability is enabled.
triggerFilterGroups (list) --
Optional trigger filter groups. Evaluated only when enabled=true; retained while the capability is disabled, so re-enabling restores the prior trigger behavior.
(dict) --
A group of trigger conditions. The group matches when ALL present conditions pass. A group cannot be empty: at least one condition must be present.
events (list) --
Passes when the webhook event is one of the listed events.
(string) --
Webhook events that can auto-trigger a capability. PULL_REQUEST_* events apply to RELEASE_READINESS_REVIEW; WORKFLOW_* events apply to RELEASE_SHEPHERDING.
targetBranches (dict) --
Passes when the change request target branch matches. Applicable to RELEASE_READINESS_REVIEW only.
patterns (list) --
Anchored full-match regex patterns. The condition passes when the value matches at least one pattern.
(string) --
A regex pattern matched against the entire value. Example: 'main' or 'release/.*'.
webhook (dict) --
Generic webhook configuration
webhookUrl (string) --
The webhook URL endpoint
webhookId (string) --
The unique webhook identifier
webhookType (string) --
The webhook authentication type
webhookSecret (string) --
The webhook secret for authentication
apiKey (string) --
API Key for API Key webhook authentication