{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2025-09-06",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"securityagent",
    "protocol":"rest-json",
    "protocols":["rest-json"],
    "serviceFullName":"AWS Security Agent",
    "serviceId":"SecurityAgent",
    "signatureVersion":"v4",
    "signingName":"securityagent",
    "uid":"securityagent-2025-09-06"
  },
  "operations":{
    "AddArtifact":{
      "name":"AddArtifact",
      "http":{
        "method":"POST",
        "requestUri":"/AddArtifact",
        "responseCode":201
      },
      "input":{"shape":"AddArtifactInput"},
      "output":{"shape":"AddArtifactOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Adds an Artifact for the given agent space</p>"
    },
    "BatchDeletePentests":{
      "name":"BatchDeletePentests",
      "http":{
        "method":"POST",
        "requestUri":"/BatchDeletePentests",
        "responseCode":200
      },
      "input":{"shape":"BatchDeletePentestsInput"},
      "output":{"shape":"BatchDeletePentestsOutput"},
      "documentation":"<p>Deletes multiple pentests in a single request</p>"
    },
    "BatchGetAgentSpaces":{
      "name":"BatchGetAgentSpaces",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetAgentSpaces",
        "responseCode":200
      },
      "input":{"shape":"BatchGetAgentSpacesInput"},
      "output":{"shape":"BatchGetAgentSpacesOutput"},
      "documentation":"<p>Retrieves multiple agent spaces in a single request</p>",
      "readonly":true
    },
    "BatchGetArtifactMetadata":{
      "name":"BatchGetArtifactMetadata",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetArtifactMetadata",
        "responseCode":200
      },
      "input":{"shape":"BatchGetArtifactMetadataInput"},
      "output":{"shape":"BatchGetArtifactMetadataOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Retrieve the list of artifact metadata for the given agent space</p>"
    },
    "BatchGetFindings":{
      "name":"BatchGetFindings",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetFindings",
        "responseCode":200
      },
      "input":{"shape":"BatchGetFindingsInput"},
      "output":{"shape":"BatchGetFindingsOutput"},
      "documentation":"<p>Retrieves multiple findings in a single request</p>"
    },
    "BatchGetPentestJobTasks":{
      "name":"BatchGetPentestJobTasks",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetPentestJobTasks",
        "responseCode":200
      },
      "input":{"shape":"BatchGetPentestJobTasksInput"},
      "output":{"shape":"BatchGetPentestJobTasksOutput"},
      "documentation":"<p>Retrieves multiple tasks for a pentest job in a single request</p>"
    },
    "BatchGetPentestJobs":{
      "name":"BatchGetPentestJobs",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetPentestJobs",
        "responseCode":200
      },
      "input":{"shape":"BatchGetPentestJobsInput"},
      "output":{"shape":"BatchGetPentestJobsOutput"},
      "documentation":"<p>Retrieves multiple pentest jobs in a single request</p>"
    },
    "BatchGetPentests":{
      "name":"BatchGetPentests",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetPentests",
        "responseCode":200
      },
      "input":{"shape":"BatchGetPentestsInput"},
      "output":{"shape":"BatchGetPentestsOutput"},
      "documentation":"<p>Retrieves multiple pentests in a single request</p>"
    },
    "BatchGetTargetDomains":{
      "name":"BatchGetTargetDomains",
      "http":{
        "method":"POST",
        "requestUri":"/BatchGetTargetDomains",
        "responseCode":200
      },
      "input":{"shape":"BatchGetTargetDomainsInput"},
      "output":{"shape":"BatchGetTargetDomainsOutput"},
      "documentation":"<p>Retrieves multiple target domains in a single request</p>",
      "readonly":true
    },
    "CreateAgentSpace":{
      "name":"CreateAgentSpace",
      "http":{
        "method":"POST",
        "requestUri":"/CreateAgentSpace",
        "responseCode":200
      },
      "input":{"shape":"CreateAgentSpaceInput"},
      "output":{"shape":"CreateAgentSpaceOutput"},
      "documentation":"<p>Creates an agent space record</p>"
    },
    "CreateApplication":{
      "name":"CreateApplication",
      "http":{
        "method":"POST",
        "requestUri":"/CreateApplication",
        "responseCode":200
      },
      "input":{"shape":"CreateApplicationRequest"},
      "output":{"shape":"CreateApplicationResponse"},
      "documentation":"<p>Creates a new application</p>"
    },
    "CreateIntegration":{
      "name":"CreateIntegration",
      "http":{
        "method":"POST",
        "requestUri":"/CreateIntegration",
        "responseCode":201
      },
      "input":{"shape":"CreateIntegrationInput"},
      "output":{"shape":"CreateIntegrationOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Creates the Integration of the Security Agent App with an external Provider</p>"
    },
    "CreateMembership":{
      "name":"CreateMembership",
      "http":{
        "method":"POST",
        "requestUri":"/CreateMembership",
        "responseCode":200
      },
      "input":{"shape":"CreateMembershipRequest"},
      "output":{"shape":"CreateMembershipResponse"},
      "documentation":"<p>Adds a single member to an agent space with specified role</p>"
    },
    "CreatePentest":{
      "name":"CreatePentest",
      "http":{
        "method":"POST",
        "requestUri":"/CreatePentest",
        "responseCode":200
      },
      "input":{"shape":"CreatePentestInput"},
      "output":{"shape":"CreatePentestOutput"},
      "documentation":"<p>Creates a new pentest configuration</p>"
    },
    "CreateTargetDomain":{
      "name":"CreateTargetDomain",
      "http":{
        "method":"POST",
        "requestUri":"/CreateTargetDomain",
        "responseCode":200
      },
      "input":{"shape":"CreateTargetDomainInput"},
      "output":{"shape":"CreateTargetDomainOutput"},
      "documentation":"<p>Creates a target domain record</p>"
    },
    "DeleteAgentSpace":{
      "name":"DeleteAgentSpace",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteAgentSpace",
        "responseCode":200
      },
      "input":{"shape":"DeleteAgentSpaceInput"},
      "output":{"shape":"DeleteAgentSpaceOutput"},
      "documentation":"<p>Deletes an agent space record</p>",
      "idempotent":true
    },
    "DeleteApplication":{
      "name":"DeleteApplication",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteApplication",
        "responseCode":200
      },
      "input":{"shape":"DeleteApplicationRequest"},
      "documentation":"<p>Deletes an application</p>",
      "idempotent":true
    },
    "DeleteArtifact":{
      "name":"DeleteArtifact",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteArtifact",
        "responseCode":200
      },
      "input":{"shape":"DeleteArtifactInput"},
      "output":{"shape":"DeleteArtifactOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Delete an Artifact from the given agent space</p>"
    },
    "DeleteIntegration":{
      "name":"DeleteIntegration",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteIntegration",
        "responseCode":200
      },
      "input":{"shape":"DeleteIntegrationInput"},
      "output":{"shape":"DeleteIntegrationOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Deletes the Integration of the Security Agent App with an external Provider</p>",
      "idempotent":true
    },
    "DeleteMembership":{
      "name":"DeleteMembership",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteMembership",
        "responseCode":200
      },
      "input":{"shape":"DeleteMembershipRequest"},
      "output":{"shape":"DeleteMembershipResponse"},
      "documentation":"<p>Removes a single member associated to an agent space</p>"
    },
    "DeleteTargetDomain":{
      "name":"DeleteTargetDomain",
      "http":{
        "method":"POST",
        "requestUri":"/DeleteTargetDomain",
        "responseCode":200
      },
      "input":{"shape":"DeleteTargetDomainInput"},
      "output":{"shape":"DeleteTargetDomainOutput"},
      "documentation":"<p>Deletes a target domain record</p>",
      "idempotent":true
    },
    "GetApplication":{
      "name":"GetApplication",
      "http":{
        "method":"POST",
        "requestUri":"/GetApplication",
        "responseCode":200
      },
      "input":{"shape":"GetApplicationRequest"},
      "output":{"shape":"GetApplicationResponse"},
      "documentation":"<p>Retrieves application details by application ID</p>",
      "readonly":true
    },
    "GetArtifact":{
      "name":"GetArtifact",
      "http":{
        "method":"POST",
        "requestUri":"/GetArtifact",
        "responseCode":200
      },
      "input":{"shape":"GetArtifactInput"},
      "output":{"shape":"GetArtifactOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Retrieve an Artifact for the given agent space</p>"
    },
    "GetIntegration":{
      "name":"GetIntegration",
      "http":{
        "method":"POST",
        "requestUri":"/GetIntegration",
        "responseCode":200
      },
      "input":{"shape":"GetIntegrationInput"},
      "output":{"shape":"GetIntegrationOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Gets Integration metadata from the provided id</p>",
      "readonly":true
    },
    "InitiateProviderRegistration":{
      "name":"InitiateProviderRegistration",
      "http":{
        "method":"POST",
        "requestUri":"/oauth2/provider/register",
        "responseCode":200
      },
      "input":{"shape":"InitiateProviderRegistrationInput"},
      "output":{"shape":"InitiateProviderRegistrationOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Initiates the registration of Security Agent App for an external Provider</p>"
    },
    "ListAgentSpaces":{
      "name":"ListAgentSpaces",
      "http":{
        "method":"POST",
        "requestUri":"/ListAgentSpaces",
        "responseCode":200
      },
      "input":{"shape":"ListAgentSpacesInput"},
      "output":{"shape":"ListAgentSpacesOutput"},
      "documentation":"<p>Lists agent spaces</p>",
      "readonly":true
    },
    "ListApplications":{
      "name":"ListApplications",
      "http":{
        "method":"POST",
        "requestUri":"/ListApplications",
        "responseCode":200
      },
      "input":{"shape":"ListApplicationsRequest"},
      "output":{"shape":"ListApplicationsResponse"},
      "documentation":"<p>Lists all applications in the account</p>",
      "readonly":true
    },
    "ListArtifacts":{
      "name":"ListArtifacts",
      "http":{
        "method":"POST",
        "requestUri":"/ListArtifacts",
        "responseCode":200
      },
      "input":{"shape":"ListArtifactsInput"},
      "output":{"shape":"ListArtifactsOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists the artifacts for the associated agent space</p>",
      "readonly":true
    },
    "ListDiscoveredEndpoints":{
      "name":"ListDiscoveredEndpoints",
      "http":{
        "method":"POST",
        "requestUri":"/ListDiscoveredEndpoints",
        "responseCode":200
      },
      "input":{"shape":"ListDiscoveredEndpointsInput"},
      "output":{"shape":"ListDiscoveredEndpointsOutput"},
      "documentation":"<p>Lists discovered endpoints associated with a pentest job with optional URI prefix filtering</p>"
    },
    "ListFindings":{
      "name":"ListFindings",
      "http":{
        "method":"POST",
        "requestUri":"/ListFindings",
        "responseCode":200
      },
      "input":{"shape":"ListFindingsInput"},
      "output":{"shape":"ListFindingsOutput"},
      "documentation":"<p>Lists findings with filtering and pagination support. When filters are applied, the actual number of results returned may be less than the specified limit</p>"
    },
    "ListIntegratedResources":{
      "name":"ListIntegratedResources",
      "http":{
        "method":"POST",
        "requestUri":"/ListIntegratedResources",
        "responseCode":200
      },
      "input":{"shape":"ListIntegratedResourcesInput"},
      "output":{"shape":"ListIntegratedResourcesOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists the integrated resources for an agent space</p>"
    },
    "ListIntegrations":{
      "name":"ListIntegrations",
      "http":{
        "method":"POST",
        "requestUri":"/ListIntegrations",
        "responseCode":200
      },
      "input":{"shape":"ListIntegrationsInput"},
      "output":{"shape":"ListIntegrationsOutput"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Retrieves the Integrations associated with the user's account</p>",
      "readonly":true
    },
    "ListMemberships":{
      "name":"ListMemberships",
      "http":{
        "method":"POST",
        "requestUri":"/ListMemberships",
        "responseCode":200
      },
      "input":{"shape":"ListMembershipsRequest"},
      "output":{"shape":"ListMembershipsResponse"},
      "documentation":"<p>Lists all members associated to an agent space with pagination support</p>"
    },
    "ListPentestJobTasks":{
      "name":"ListPentestJobTasks",
      "http":{
        "method":"POST",
        "requestUri":"/ListPentestJobTasks",
        "responseCode":200
      },
      "input":{"shape":"ListPentestJobTasksInput"},
      "output":{"shape":"ListPentestJobTasksOutput"},
      "documentation":"<p>Lists tasks associated with a specific pentest job</p>"
    },
    "ListPentestJobsForPentest":{
      "name":"ListPentestJobsForPentest",
      "http":{
        "method":"POST",
        "requestUri":"/ListPentestJobsForPentest",
        "responseCode":200
      },
      "input":{"shape":"ListPentestJobsForPentestInput"},
      "output":{"shape":"ListPentestJobsForPentestOutput"},
      "documentation":"<p>Lists pentest jobs associated with a pentest</p>"
    },
    "ListPentests":{
      "name":"ListPentests",
      "http":{
        "method":"POST",
        "requestUri":"/ListPentests",
        "responseCode":200
      },
      "input":{"shape":"ListPentestsInput"},
      "output":{"shape":"ListPentestsOutput"},
      "documentation":"<p>Lists pentests with optional filtering by status</p>"
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"GET",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"ListTagsForResourceInput"},
      "output":{"shape":"ListTagsForResourceOutput"},
      "documentation":"<p>Lists tags for a Security Agent resource</p>",
      "readonly":true
    },
    "ListTargetDomains":{
      "name":"ListTargetDomains",
      "http":{
        "method":"POST",
        "requestUri":"/ListTargetDomains",
        "responseCode":200
      },
      "input":{"shape":"ListTargetDomainsInput"},
      "output":{"shape":"ListTargetDomainsOutput"},
      "documentation":"<p>Lists target domains</p>",
      "readonly":true
    },
    "StartCodeRemediation":{
      "name":"StartCodeRemediation",
      "http":{
        "method":"POST",
        "requestUri":"/StartCodeRemediation",
        "responseCode":200
      },
      "input":{"shape":"StartCodeRemediationInput"},
      "output":{"shape":"StartCodeRemediationOutput"},
      "documentation":"<p>Starts code remediation for the specified findings</p>"
    },
    "StartPentestJob":{
      "name":"StartPentestJob",
      "http":{
        "method":"POST",
        "requestUri":"/StartPentestJob",
        "responseCode":200
      },
      "input":{"shape":"StartPentestJobInput"},
      "output":{"shape":"StartPentestJobOutput"},
      "documentation":"<p>Initiates the execution of a pentest</p>"
    },
    "StopPentestJob":{
      "name":"StopPentestJob",
      "http":{
        "method":"POST",
        "requestUri":"/StopPentestJob",
        "responseCode":200
      },
      "input":{"shape":"StopPentestJobInput"},
      "output":{"shape":"StopPentestJobOutput"},
      "documentation":"<p>Stops the execution of a running pentest</p>"
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":204
      },
      "input":{"shape":"TagResourceInput"},
      "output":{"shape":"TagResourceOutput"},
      "documentation":"<p>Adds tags to a Security Agent resource</p>"
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"DELETE",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":204
      },
      "input":{"shape":"UntagResourceInput"},
      "output":{"shape":"UntagResourceOutput"},
      "documentation":"<p>Removes tags from a Security Agent resource</p>",
      "idempotent":true
    },
    "UpdateAgentSpace":{
      "name":"UpdateAgentSpace",
      "http":{
        "method":"POST",
        "requestUri":"/UpdateAgentSpace",
        "responseCode":200
      },
      "input":{"shape":"UpdateAgentSpaceInput"},
      "output":{"shape":"UpdateAgentSpaceOutput"},
      "documentation":"<p>Updates an agent space record</p>"
    },
    "UpdateApplication":{
      "name":"UpdateApplication",
      "http":{
        "method":"POST",
        "requestUri":"/UpdateApplication",
        "responseCode":200
      },
      "input":{"shape":"UpdateApplicationRequest"},
      "output":{"shape":"UpdateApplicationResponse"},
      "documentation":"<p>Updates application configuration</p>",
      "idempotent":true
    },
    "UpdateFinding":{
      "name":"UpdateFinding",
      "http":{
        "method":"POST",
        "requestUri":"/UpdateFinding",
        "responseCode":200
      },
      "input":{"shape":"UpdateFindingInput"},
      "output":{"shape":"UpdateFindingOutput"},
      "documentation":"<p>Updates an existing security finding with new details or status</p>"
    },
    "UpdateIntegratedResources":{
      "name":"UpdateIntegratedResources",
      "http":{
        "method":"POST",
        "requestUri":"/UpdateIntegratedResources",
        "responseCode":200
      },
      "input":{"shape":"UpdateIntegratedResourcesInput"},
      "output":{"shape":"UpdateIntegratedResourcesOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Updates the integrated resources for an agent space</p>"
    },
    "UpdatePentest":{
      "name":"UpdatePentest",
      "http":{
        "method":"POST",
        "requestUri":"/UpdatePentest",
        "responseCode":200
      },
      "input":{"shape":"UpdatePentestInput"},
      "output":{"shape":"UpdatePentestOutput"},
      "documentation":"<p>Updates an existing pentest with new configuration or settings</p>"
    },
    "UpdateTargetDomain":{
      "name":"UpdateTargetDomain",
      "http":{
        "method":"POST",
        "requestUri":"/UpdateTargetDomain",
        "responseCode":200
      },
      "input":{"shape":"UpdateTargetDomainInput"},
      "output":{"shape":"UpdateTargetDomainOutput"},
      "documentation":"<p>Updates a target domain record</p>"
    },
    "VerifyTargetDomain":{
      "name":"VerifyTargetDomain",
      "http":{
        "method":"POST",
        "requestUri":"/VerifyTargetDomain",
        "responseCode":200
      },
      "input":{"shape":"VerifyTargetDomainInput"},
      "output":{"shape":"VerifyTargetDomainOutput"},
      "documentation":"<p>Verifies ownership for a registered target domain</p>"
    }
  },
  "shapes":{
    "AWSResources":{
      "type":"structure",
      "members":{
        "vpcs":{
          "shape":"VpcConfigs",
          "documentation":"<p>VPC configurations that the Security Agent accesses in the customer environment</p>"
        },
        "logGroups":{
          "shape":"LogGroupArns",
          "documentation":"<p>CloudWatch log group ARNs or names used to store Security Agent logs</p>"
        },
        "s3Buckets":{
          "shape":"S3BucketArns",
          "documentation":"<p>S3 bucket ARNs or names used to store Security Agent artifacts</p>"
        },
        "secretArns":{
          "shape":"SecretArns",
          "documentation":"<p>SecretsManager secret ARNs or names used to store tester credentials for pentests</p>"
        },
        "lambdaFunctionArns":{
          "shape":"LambdaFunctionArns",
          "documentation":"<p>Lambda function ARNs or names used to retrieve tester credentials for pentests</p>"
        },
        "iamRoles":{
          "shape":"IamRoles",
          "documentation":"<p>IAM role ARNs that the Security Agent can assume to access customer resources</p>"
        }
      },
      "documentation":"<p>AWS resource configurations associated with the agent space</p>"
    },
    "AccessDeniedException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>Error description</p>"
        }
      },
      "documentation":"<p>Request denied due to insufficient permissions</p>",
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "AccessType":{
      "type":"string",
      "documentation":"<p>Defines the visibility level of provider resources. PRIVATE indicates restricted access (e.g: private GitHub repositories), while PUBLIC indicates open access (e.g: public GitHub repositories)</p>",
      "enum":[
        "PRIVATE",
        "PUBLIC"
      ]
    },
    "Actor":{
      "type":"structure",
      "members":{
        "identifier":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the actor (case-insensitive)</p>"
        },
        "uris":{
          "shape":"UriList",
          "documentation":"<p>List of URIs accessible with the actor's credentials</p>"
        },
        "authentication":{
          "shape":"Authentication",
          "documentation":"<p>Authentication information used by the actor to access resources</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Additional description or details about the actor</p>"
        }
      },
      "documentation":"<p>Represents an entity that interacts with the system during security testing</p>"
    },
    "ActorList":{
      "type":"list",
      "member":{"shape":"Actor"}
    },
    "AddArtifactInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactContent",
        "artifactType",
        "fileName"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactContent":{
          "shape":"Blob",
          "documentation":"<p>Binary content of the artifact</p>"
        },
        "artifactType":{
          "shape":"ArtifactType",
          "documentation":"<p>Type of the artifact file</p>"
        },
        "fileName":{
          "shape":"String",
          "documentation":"<p>Name of the artifact file</p>"
        }
      }
    },
    "AddArtifactOutput":{
      "type":"structure",
      "required":["artifactId"],
      "members":{
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the created artifact</p>"
        }
      }
    },
    "AgentName":{
      "type":"string",
      "documentation":"<p>Name of an agent space</p>"
    },
    "AgentSpace":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "name"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "name":{
          "shape":"String",
          "documentation":"<p>Name of the agent space</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Description of the agent space</p>"
        },
        "awsResources":{
          "shape":"AWSResources",
          "documentation":"<p>AWS resource configurations</p>"
        },
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>List of target domain IDs registered with the agent space</p>"
        },
        "codeReviewSettings":{
          "shape":"CodeReviewSettings",
          "documentation":"<p>Configuration for code review analysis, including controls scanning and general purpose scanning settings</p>"
        },
        "kmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>Identifier of the KMS key used to encrypt data. Can be a key ID, key ARN, alias name, or alias ARN. If not specified, an AWS managed key is used.</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was last updated</p>"
        }
      },
      "documentation":"<p>Agent space structure</p>"
    },
    "AgentSpaceId":{
      "type":"string",
      "documentation":"<p>Unique identifier of the agent space</p>"
    },
    "AgentSpaceIdList":{
      "type":"list",
      "member":{"shape":"AgentSpaceId"}
    },
    "AgentSpaceList":{
      "type":"list",
      "member":{"shape":"AgentSpace"}
    },
    "AgentSpaceSummary":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "name"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "name":{
          "shape":"String",
          "documentation":"<p>Name of the agent space</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was last updated</p>"
        }
      },
      "documentation":"<p>Summary information for an agent space</p>"
    },
    "AgentSpaceSummaryList":{
      "type":"list",
      "member":{"shape":"AgentSpaceSummary"}
    },
    "ApplicationDomain":{
      "type":"string",
      "documentation":"<p>Domain where the application is available</p>"
    },
    "ApplicationId":{
      "type":"string",
      "documentation":"<p>Application identifier</p>"
    },
    "ApplicationSummary":{
      "type":"structure",
      "required":[
        "applicationId",
        "applicationName",
        "domain"
      ],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Unique identifier of the application</p>"
        },
        "applicationName":{
          "shape":"String",
          "documentation":"<p>Name of the application, automatically assigned by the service</p>"
        },
        "domain":{
          "shape":"ApplicationDomain",
          "documentation":"<p>Domain where the application is available</p>"
        },
        "defaultKmsKeyId":{
          "shape":"DefaultKmsKeyId",
          "documentation":"<p>Default KMS key identifier used to encrypt application data</p>"
        }
      },
      "documentation":"<p>Application summary for list operations</p>"
    },
    "ApplicationSummaryList":{
      "type":"list",
      "member":{"shape":"ApplicationSummary"},
      "documentation":"<p>List of application summaries</p>"
    },
    "Artifact":{
      "type":"structure",
      "required":[
        "contents",
        "type"
      ],
      "members":{
        "contents":{
          "shape":"String",
          "documentation":"<p>The content of the artifact</p>"
        },
        "type":{
          "shape":"ArtifactType",
          "documentation":"<p>The file type of the artifact</p>"
        }
      },
      "documentation":"<p>Files containing relevant data for review</p>"
    },
    "ArtifactId":{
      "type":"string",
      "documentation":"<p>The id of the artifact</p>"
    },
    "ArtifactIds":{
      "type":"list",
      "member":{"shape":"ArtifactId"}
    },
    "ArtifactMetadataItem":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactId",
        "fileName",
        "updatedAt"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the artifact</p>"
        },
        "fileName":{
          "shape":"String",
          "documentation":"<p>Name of the artifact file</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the artifact was last updated</p>"
        }
      },
      "documentation":"<p>Metadata in relation to the artifact</p>"
    },
    "ArtifactMetadataList":{
      "type":"list",
      "member":{"shape":"ArtifactMetadataItem"},
      "documentation":"<p>List of metadata objects containing artifacts details</p>"
    },
    "ArtifactSummary":{
      "type":"structure",
      "required":[
        "artifactId",
        "fileName",
        "artifactType"
      ],
      "members":{
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the artifact</p>"
        },
        "fileName":{
          "shape":"String",
          "documentation":"<p>Name of the artifact file</p>"
        },
        "artifactType":{
          "shape":"ArtifactType",
          "documentation":"<p>Type of the artifact file</p>"
        }
      },
      "documentation":"<p>Summary information about an artifact</p>"
    },
    "ArtifactSummaryList":{
      "type":"list",
      "member":{"shape":"ArtifactSummary"},
      "documentation":"<p>List of artifact summaries</p>"
    },
    "ArtifactType":{
      "type":"string",
      "documentation":"<p>Supported file extension types for artifacts</p>",
      "enum":[
        "TXT",
        "PNG",
        "JPEG",
        "MD",
        "PDF",
        "DOCX",
        "DOC",
        "JSON",
        "YAML"
      ]
    },
    "Assets":{
      "type":"structure",
      "members":{
        "endpoints":{
          "shape":"EndpointList",
          "documentation":"<p>List of web application endpoints to test</p>"
        },
        "actors":{
          "shape":"ActorList",
          "documentation":"<p>List of actors that interact with the system</p>"
        },
        "documents":{
          "shape":"DocumentList",
          "documentation":"<p>List of documents providing context for testing</p>"
        },
        "sourceCode":{
          "shape":"SourceCodeRepositoryList",
          "documentation":"<p>List of source code repositories for static analysis</p>"
        },
        "integratedRepositories":{
          "shape":"IntegratedRepositoryList",
          "documentation":"<p>List of integrated code repositories</p>"
        }
      },
      "documentation":"<p>Collection of assets to be tested or used during a pentest</p>"
    },
    "AuthCode":{
      "type":"string",
      "documentation":"<p>Authorization code from OAuth flow</p>"
    },
    "Authentication":{
      "type":"structure",
      "members":{
        "providerType":{
          "shape":"AuthenticationProviderType",
          "documentation":"<p>Provider type for the authentication credentials</p>"
        },
        "value":{
          "shape":"String",
          "documentation":"<p>Authentication credential value or reference</p>"
        }
      },
      "documentation":"<p>Authentication information used to access protected resources</p>"
    },
    "AuthenticationProviderType":{
      "type":"string",
      "documentation":"<p>Type of authentication provider</p>",
      "enum":[
        "SECRETS_MANAGER",
        "AWS_LAMBDA",
        "AWS_IAM_ROLE",
        "AWS_INTERNAL"
      ]
    },
    "BatchDeletePentestsInput":{
      "type":"structure",
      "required":[
        "pentestIds",
        "agentSpaceId"
      ],
      "members":{
        "pentestIds":{
          "shape":"PentestIdList",
          "documentation":"<p>List of pentest IDs to delete</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentests exist</p>"
        }
      },
      "documentation":"<p>Input for deleting multiple pentests</p>"
    },
    "BatchDeletePentestsOutput":{
      "type":"structure",
      "members":{
        "deleted":{
          "shape":"PentestList",
          "documentation":"<p>List of successfully deleted pentests</p>"
        },
        "failed":{
          "shape":"DeletePentestFailureList",
          "documentation":"<p>List of pentests that could not be deleted and the reasons for failure</p>"
        }
      },
      "documentation":"<p>Output for the BatchDeletePentests operation</p>"
    },
    "BatchGetAgentSpacesInput":{
      "type":"structure",
      "required":["agentSpaceIds"],
      "members":{
        "agentSpaceIds":{
          "shape":"AgentSpaceIdList",
          "documentation":"<p>List of agent space IDs to retrieve</p>"
        }
      },
      "documentation":"<p>Input for batch retrieving agent spaces</p>"
    },
    "BatchGetAgentSpacesOutput":{
      "type":"structure",
      "members":{
        "agentSpaces":{
          "shape":"AgentSpaceList",
          "documentation":"<p>List of agent spaces that were successfully retrieved</p>"
        },
        "notFound":{
          "shape":"AgentSpaceIdList",
          "documentation":"<p>List of agent space IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetAgentSpaces operation</p>"
    },
    "BatchGetArtifactMetadataInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactIds"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactIds":{
          "shape":"ArtifactIds",
          "documentation":"<p>List of artifact identifiers</p>"
        }
      }
    },
    "BatchGetArtifactMetadataOutput":{
      "type":"structure",
      "required":["artifactMetadataList"],
      "members":{
        "artifactMetadataList":{
          "shape":"ArtifactMetadataList",
          "documentation":"<p>List of artifact metadata</p>"
        }
      }
    },
    "BatchGetFindingsInput":{
      "type":"structure",
      "required":[
        "findingIds",
        "agentSpaceId"
      ],
      "members":{
        "findingIds":{
          "shape":"FindingIdList",
          "documentation":"<p>List of finding IDs to retrieve</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the findings exist</p>"
        }
      },
      "documentation":"<p>Input for BatchGetFindings operation</p>"
    },
    "BatchGetFindingsOutput":{
      "type":"structure",
      "members":{
        "findings":{
          "shape":"FindingList",
          "documentation":"<p>List of successfully retrieved findings</p>"
        },
        "notFound":{
          "shape":"FindingIdList",
          "documentation":"<p>List of finding IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetFindings operation</p>"
    },
    "BatchGetPentestJobTasksInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "taskIds"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "taskIds":{
          "shape":"TaskIdList",
          "documentation":"<p>List of task IDs to retrieve</p>"
        }
      },
      "documentation":"<p>Input for retrieving multiple tasks by their IDs for a pentest job</p>"
    },
    "BatchGetPentestJobTasksOutput":{
      "type":"structure",
      "members":{
        "tasks":{
          "shape":"TaskList",
          "documentation":"<p>List of successfully retrieved tasks</p>"
        },
        "notFound":{
          "shape":"TaskIdList",
          "documentation":"<p>List of task IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetPentestJobTasks operation</p>"
    },
    "BatchGetPentestJobsInput":{
      "type":"structure",
      "required":[
        "pentestJobIds",
        "agentSpaceId"
      ],
      "members":{
        "pentestJobIds":{
          "shape":"PentestJobIdList",
          "documentation":"<p>List of pentest job IDs to retrieve</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        }
      },
      "documentation":"<p>Input for BatchGetPentestJobs operation</p>"
    },
    "BatchGetPentestJobsOutput":{
      "type":"structure",
      "members":{
        "pentestJobs":{
          "shape":"PentestJobList",
          "documentation":"<p>List of successfully retrieved pentest jobs</p>"
        },
        "notFound":{
          "shape":"PentestJobIdList",
          "documentation":"<p>List of pentest job IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetPentestJobs operation</p>"
    },
    "BatchGetPentestsInput":{
      "type":"structure",
      "required":[
        "pentestIds",
        "agentSpaceId"
      ],
      "members":{
        "pentestIds":{
          "shape":"PentestIdList",
          "documentation":"<p>List of pentest IDs to retrieve</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        }
      },
      "documentation":"<p>Input for retrieving multiple pentests by their IDs</p>"
    },
    "BatchGetPentestsOutput":{
      "type":"structure",
      "members":{
        "pentests":{
          "shape":"PentestList",
          "documentation":"<p>List of successfully retrieved pentests</p>"
        },
        "notFound":{
          "shape":"PentestIdList",
          "documentation":"<p>List of pentest IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetPentests operation</p>"
    },
    "BatchGetTargetDomainsInput":{
      "type":"structure",
      "required":["targetDomainIds"],
      "members":{
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>List of target domain IDs to retrieve</p>"
        }
      },
      "documentation":"<p>Input for batch retrieving target domains</p>"
    },
    "BatchGetTargetDomainsOutput":{
      "type":"structure",
      "members":{
        "targetDomains":{
          "shape":"TargetDomainList",
          "documentation":"<p>List of target domains that were successfully retrieved</p>"
        },
        "notFound":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>List of target domain IDs that could not be found</p>"
        }
      },
      "documentation":"<p>Output for the BatchGetTargetDomains operation</p>"
    },
    "Blob":{"type":"blob"},
    "Boolean":{
      "type":"boolean",
      "box":true
    },
    "Category":{
      "type":"structure",
      "members":{
        "name":{
          "shape":"String",
          "documentation":"<p>Name of the category</p>"
        },
        "isPrimary":{
          "shape":"Boolean",
          "documentation":"<p>Whether this is the primary category for the task</p>"
        }
      },
      "documentation":"<p>Represents a category classification for tasks</p>"
    },
    "CategoryList":{
      "type":"list",
      "member":{"shape":"Category"}
    },
    "CloudWatchLog":{
      "type":"structure",
      "members":{
        "logGroup":{
          "shape":"String",
          "documentation":"<p>Name of the CloudWatch log group</p>"
        },
        "logStream":{
          "shape":"String",
          "documentation":"<p>Name of the CloudWatch log stream</p>"
        }
      },
      "documentation":"<p>Reference to logs stored in CloudWatch</p>"
    },
    "CodeRemediationStrategy":{
      "type":"string",
      "documentation":"<p>Strategy for automated code remediation</p>",
      "enum":[
        "AUTOMATIC",
        "DISABLED"
      ]
    },
    "CodeRemediationTask":{
      "type":"structure",
      "required":["status"],
      "members":{
        "status":{
          "shape":"CodeRemediationTaskStatus",
          "documentation":"<p>Current status of the code remediation task</p>"
        },
        "statusReason":{
          "shape":"String",
          "documentation":"<p>Reason for the current code remediation task status</p>"
        },
        "taskDetails":{
          "shape":"CodeRemediationTaskDetailsList",
          "documentation":"<p>Details of the code remediation for each repository</p>"
        }
      },
      "documentation":"<p>Information about task for code remediation</p>"
    },
    "CodeRemediationTaskDetails":{
      "type":"structure",
      "members":{
        "repoName":{
          "shape":"String",
          "documentation":"<p>Name of the repository</p>"
        },
        "codeDiffLink":{
          "shape":"String",
          "documentation":"<p>Link to the code diff for the remediation</p>"
        },
        "pullRequestLink":{
          "shape":"String",
          "documentation":"<p>Link to the pull request for the remediation</p>"
        }
      },
      "documentation":"<p>Code remediation details for a single repository</p>"
    },
    "CodeRemediationTaskDetailsList":{
      "type":"list",
      "member":{"shape":"CodeRemediationTaskDetails"}
    },
    "CodeRemediationTaskStatus":{
      "type":"string",
      "documentation":"<p>Code remediation task status</p>",
      "enum":[
        "IN_PROGRESS",
        "COMPLETED",
        "FAILED"
      ]
    },
    "CodeReviewSettings":{
      "type":"structure",
      "required":[
        "controlsScanning",
        "generalPurposeScanning"
      ],
      "members":{
        "controlsScanning":{
          "shape":"Boolean",
          "documentation":"<p>Whether Controls are utilized for code review analysis</p>"
        },
        "generalPurposeScanning":{
          "shape":"Boolean",
          "documentation":"<p>Whether general purpose analysis is performed for code review</p>"
        }
      },
      "documentation":"<p>Details of code review settings</p>"
    },
    "ConfidenceLevel":{
      "type":"string",
      "documentation":"<p>Finding confidence level</p>",
      "enum":[
        "FALSE_POSITIVE",
        "UNCONFIRMED",
        "LOW",
        "MEDIUM",
        "HIGH"
      ]
    },
    "ConflictException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>Error description</p>"
        }
      },
      "documentation":"<p>Request conflicts with current resource state</p>",
      "error":{
        "httpStatusCode":409,
        "senderFault":true
      },
      "exception":true
    },
    "ContextType":{
      "type":"string",
      "documentation":"<p>Category of execution context</p>",
      "enum":[
        "ERROR",
        "CLIENT_ERROR",
        "WARNING",
        "INFO"
      ]
    },
    "CreateAgentSpaceInput":{
      "type":"structure",
      "required":["name"],
      "members":{
        "name":{
          "shape":"AgentName",
          "documentation":"<p>Name of the agent space</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Description of the agent space</p>"
        },
        "awsResources":{
          "shape":"AWSResources",
          "documentation":"<p>AWS resource configurations associated with the agent space</p>"
        },
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>Target domain IDs to associate with the agent space</p>"
        },
        "codeReviewSettings":{
          "shape":"CodeReviewSettings",
          "documentation":"<p>Configuration for code review analysis, including controls scanning and general purpose scanning settings</p>"
        },
        "kmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>Identifier of the KMS key used to encrypt data. Can be a key ID, key ARN, alias name, or alias ARN. If not specified, an AWS managed key is used.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags to associate with the agent space</p>"
        }
      },
      "documentation":"<p>Input for creating a new agent space</p>"
    },
    "CreateAgentSpaceOutput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "name"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the created agent space</p>"
        },
        "name":{
          "shape":"AgentName",
          "documentation":"<p>Name of the created agent space</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Description of the created agent space</p>"
        },
        "awsResources":{
          "shape":"AWSResources",
          "documentation":"<p>AWS resource configurations associated with the agent space</p>"
        },
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>List of target domain IDs registered with the agent space</p>"
        },
        "codeReviewSettings":{
          "shape":"CodeReviewSettings",
          "documentation":"<p>Configuration for code review analysis, including controls scanning and general purpose scanning settings</p>"
        },
        "kmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>Identifier of the KMS key used to encrypt data. Can be a key ID, key ARN, alias name, or alias ARN. If not specified, an AWS managed key is used.</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was last updated</p>"
        }
      },
      "documentation":"<p>Output for the CreateAgentSpace operation</p>"
    },
    "CreateApplicationRequest":{
      "type":"structure",
      "members":{
        "idcInstanceArn":{
          "shape":"IdCInstanceArn",
          "documentation":"<p>ARN of the IAM Identity Center instance used for user authentication. Optional for non-IdC applications</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>ARN of the IAM role that the application uses to access AWS resources on your behalf</p>"
        },
        "defaultKmsKeyId":{
          "shape":"DefaultKmsKeyId",
          "documentation":"<p>Default KMS key identifier used to encrypt application data</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags to associate with the application</p>"
        }
      }
    },
    "CreateApplicationResponse":{
      "type":"structure",
      "required":["applicationId"],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        }
      }
    },
    "CreateIntegrationInput":{
      "type":"structure",
      "required":[
        "provider",
        "input",
        "integrationDisplayName"
      ],
      "members":{
        "provider":{
          "shape":"Provider",
          "documentation":"<p>Provider to integrate with</p>"
        },
        "input":{
          "shape":"ProviderInput",
          "documentation":"<p>Provider-specific input parameters</p>"
        },
        "integrationDisplayName":{
          "shape":"String",
          "documentation":"<p>Display name for the integration</p>"
        },
        "kmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>KMS key ID for encrypting integration details</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags to associate with the integration</p>"
        }
      }
    },
    "CreateIntegrationOutput":{
      "type":"structure",
      "required":["integrationId"],
      "members":{
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the created integration</p>"
        }
      }
    },
    "CreateMembershipRequest":{
      "type":"structure",
      "required":[
        "applicationId",
        "agentSpaceId",
        "membershipId",
        "memberType"
      ],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application identifier</p>"
        },
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Agent space identifier</p>"
        },
        "membershipId":{
          "shape":"MembershipId",
          "documentation":"<p>Member identifier (userId or agentSpaceId)</p>"
        },
        "memberType":{
          "shape":"MembershipType",
          "documentation":"<p>Type of member (USER or AGENT_SPACE)</p>"
        },
        "config":{
          "shape":"MembershipConfig",
          "documentation":"<p>Membership details (user or agent specific)</p>"
        }
      },
      "documentation":"<p>Request structure for adding a single member to an agent space</p>"
    },
    "CreateMembershipResponse":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Response structure for adding a single member to an agent space</p>"
    },
    "CreatePentestInput":{
      "type":"structure",
      "required":[
        "title",
        "agentSpaceId"
      ],
      "members":{
        "title":{
          "shape":"String",
          "documentation":"<p>Title of the pentest</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest should be created</p>"
        },
        "assets":{
          "shape":"Assets",
          "documentation":"<p>Assets to be tested during the pentest</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest execution</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest execution logs are stored</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration that the Security Agent accesses</p>"
        },
        "networkTrafficConfig":{
          "shape":"NetworkTrafficConfig",
          "documentation":"<p>Configuration for network traffic filtering</p>"
        },
        "codeRemediationStrategy":{
          "shape":"CodeRemediationStrategy",
          "documentation":"<p>Strategy for code remediation on findings</p>"
        }
      },
      "documentation":"<p>Input for creating a new pentest</p>"
    },
    "CreatePentestOutput":{
      "type":"structure",
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the created pentest</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title of the created pentest</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was last updated</p>"
        },
        "assets":{
          "shape":"Assets",
          "documentation":"<p>Assets to be tested in the created pentest</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest execution</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest execution logs are stored</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest was created</p>"
        }
      },
      "documentation":"<p>Output for the CreatePentest operation</p>"
    },
    "CreateTargetDomainInput":{
      "type":"structure",
      "required":[
        "targetDomainName",
        "verificationMethod"
      ],
      "members":{
        "targetDomainName":{
          "shape":"String",
          "documentation":"<p>Domain name of the target domain</p>"
        },
        "verificationMethod":{
          "shape":"DomainVerificationMethod",
          "documentation":"<p>Verification method for the target domain</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags to associate with the target domain</p>"
        }
      },
      "documentation":"<p>Input for creating a new target domain</p>"
    },
    "CreateTargetDomainOutput":{
      "type":"structure",
      "required":[
        "targetDomainId",
        "domainName",
        "verificationStatus"
      ],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the created target domain</p>"
        },
        "domainName":{
          "shape":"String",
          "documentation":"<p>Name of the created target domain</p>"
        },
        "verificationStatus":{
          "shape":"TargetDomainStatus",
          "documentation":"<p>Current verification status of the registered target domain</p>"
        },
        "verificationDetails":{
          "shape":"VerificationDetails",
          "documentation":"<p>Verification details to verify registered target domain</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was registered</p>"
        },
        "verifiedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was last successfully verified</p>"
        }
      },
      "documentation":"<p>Output for the CreateTargetDomain operation</p>"
    },
    "CsrfState":{
      "type":"string",
      "documentation":"<p>CSRF state token for OAuth security</p>"
    },
    "CustomHeader":{
      "type":"structure",
      "members":{
        "name":{
          "shape":"String",
          "documentation":"<p>Name of header to set value for</p>"
        },
        "value":{
          "shape":"String",
          "documentation":"<p>Value to set for header</p>"
        }
      },
      "documentation":"<p>Custom headers to be set for network requests</p>"
    },
    "CustomHeaderList":{
      "type":"list",
      "member":{"shape":"CustomHeader"},
      "documentation":"<p>List of custom headers</p>"
    },
    "DNSRecordType":{
      "type":"string",
      "documentation":"<p>Type of DNS record</p>",
      "enum":["TXT"]
    },
    "DefaultKmsKeyId":{
      "type":"string",
      "documentation":"<p>Identifier of a KMS key. Can be a key ID, key ARN, alias name, or alias ARN.</p>"
    },
    "DeleteAgentSpaceInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space to delete</p>"
        }
      },
      "documentation":"<p>Input for deleting an agent space</p>"
    },
    "DeleteAgentSpaceOutput":{
      "type":"structure",
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the deleted agent space</p>"
        }
      },
      "documentation":"<p>Output for the DeleteAgentSpace operation</p>"
    },
    "DeleteApplicationRequest":{
      "type":"structure",
      "required":["applicationId"],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        }
      }
    },
    "DeleteArtifactInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactId"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the artifact</p>"
        }
      }
    },
    "DeleteArtifactOutput":{
      "type":"structure",
      "members":{}
    },
    "DeleteIntegrationInput":{
      "type":"structure",
      "required":["integrationId"],
      "members":{
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the integration</p>"
        }
      }
    },
    "DeleteIntegrationOutput":{
      "type":"structure",
      "members":{}
    },
    "DeleteMembershipRequest":{
      "type":"structure",
      "required":[
        "applicationId",
        "agentSpaceId",
        "membershipId"
      ],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application identifier</p>"
        },
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Agent space identifier</p>"
        },
        "membershipId":{
          "shape":"MembershipId",
          "documentation":"<p>Member identifier (userId or agentSpaceId)</p>"
        },
        "memberType":{
          "shape":"MembershipType",
          "documentation":"<p>Type of member (USER or AGENT_SPACE)</p>"
        }
      },
      "documentation":"<p>Request structure for removing a single member from an agent space</p>"
    },
    "DeleteMembershipResponse":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Response structure for removing a single member from an agent space</p>"
    },
    "DeletePentestFailure":{
      "type":"structure",
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest that failed to delete</p>"
        },
        "reason":{
          "shape":"String",
          "documentation":"<p>Reason for the deletion failure</p>"
        }
      },
      "documentation":"<p>Information about a failed pentest deletion attempt</p>"
    },
    "DeletePentestFailureList":{
      "type":"list",
      "member":{"shape":"DeletePentestFailure"}
    },
    "DeleteTargetDomainInput":{
      "type":"structure",
      "required":["targetDomainId"],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain to delete</p>"
        }
      },
      "documentation":"<p>Input for deleting a target domain</p>"
    },
    "DeleteTargetDomainOutput":{
      "type":"structure",
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the deleted target domain</p>"
        }
      },
      "documentation":"<p>Output for the DeleteTargetDomain operation</p>"
    },
    "DiscoveredEndpoint":{
      "type":"structure",
      "required":[
        "uri",
        "pentestJobId",
        "taskId",
        "agentSpaceId"
      ],
      "members":{
        "uri":{
          "shape":"String",
          "documentation":"<p>The URI of the discovered endpoint</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job that discovered this endpoint</p>"
        },
        "taskId":{
          "shape":"String",
          "documentation":"<p>Identifier of the task that discovered this endpoint</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>Identifier of the agent space where the endpoint was discovered</p>"
        },
        "evidence":{
          "shape":"String",
          "documentation":"<p>Optional evidence or additional information about the endpoint</p>"
        },
        "operation":{
          "shape":"String",
          "documentation":"<p>Operation or action associated with the endpoint</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Additional description of the endpoint</p>"
        }
      },
      "documentation":"<p>Represents a discovered endpoint during pentest execution</p>"
    },
    "DiscoveredEndpointList":{
      "type":"list",
      "member":{"shape":"DiscoveredEndpoint"}
    },
    "DnsVerification":{
      "type":"structure",
      "members":{
        "token":{
          "shape":"String",
          "documentation":"<p>Token used to verify domain ownership</p>"
        },
        "dnsRecordName":{
          "shape":"String",
          "documentation":"<p>Record name to be added in DNS for target domain</p>"
        },
        "dnsRecordType":{
          "shape":"DNSRecordType",
          "documentation":"<p>Type of record to be added in DNS for target domain</p>"
        }
      },
      "documentation":"<p>Represents dns txt verification details</p>"
    },
    "DocumentInfo":{
      "type":"structure",
      "members":{
        "s3Location":{
          "shape":"String",
          "documentation":"<p>S3 storage location of the document</p>"
        },
        "artifactId":{
          "shape":"String",
          "documentation":"<p>Artifact ID of the document</p>"
        }
      },
      "documentation":"<p>Information about a document relevant to security testing</p>"
    },
    "DocumentList":{
      "type":"list",
      "member":{"shape":"DocumentInfo"}
    },
    "DomainVerificationMethod":{
      "type":"string",
      "documentation":"<p>Method used to verify domain ownership</p>",
      "enum":[
        "DNS_TXT",
        "HTTP_ROUTE"
      ]
    },
    "Endpoint":{
      "type":"structure",
      "members":{
        "uri":{
          "shape":"String",
          "documentation":"<p>URI of the endpoint to test</p>"
        }
      },
      "documentation":"<p>Represents a web application endpoint to be tested</p>"
    },
    "EndpointList":{
      "type":"list",
      "member":{"shape":"Endpoint"}
    },
    "ErrorCode":{
      "type":"string",
      "documentation":"<p>Error code for pentest job failure</p>",
      "enum":[
        "CLIENT_ERROR",
        "INTERNAL_ERROR",
        "STOPPED_BY_USER"
      ]
    },
    "ErrorInformation":{
      "type":"structure",
      "members":{
        "code":{
          "shape":"ErrorCode",
          "documentation":"<p>Pentest job failure error code</p>"
        },
        "message":{
          "shape":"String",
          "documentation":"<p>Pentest job failure error message</p>"
        }
      },
      "documentation":"<p>Error information regarding the pentest job</p>"
    },
    "ExecutionContext":{
      "type":"structure",
      "members":{
        "contextType":{
          "shape":"ContextType",
          "documentation":"<p>The category of context</p>"
        },
        "context":{
          "shape":"String",
          "documentation":"<p>Context associated with a pentest or task execution</p>"
        },
        "timestamp":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp associated with a pentest or task execution</p>"
        }
      },
      "documentation":"<p>Additional context about a pentest or task execution</p>"
    },
    "ExecutionContextList":{
      "type":"list",
      "member":{"shape":"ExecutionContext"}
    },
    "Finding":{
      "type":"structure",
      "required":[
        "findingId",
        "agentSpaceId"
      ],
      "members":{
        "findingId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the finding</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>Identifier of the agent space that created this finding</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job</p>"
        },
        "taskId":{
          "shape":"String",
          "documentation":"<p>Identifier of the associated task</p>"
        },
        "name":{
          "shape":"String",
          "documentation":"<p>Name or title of the finding</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Detailed description of the security vulnerability</p>"
        },
        "status":{
          "shape":"FindingStatus",
          "documentation":"<p>Current status of the finding</p>"
        },
        "riskType":{
          "shape":"String",
          "documentation":"<p>Type of security risk identified</p>"
        },
        "riskLevel":{
          "shape":"RiskLevel",
          "documentation":"<p>Severity level of the identified risk</p>"
        },
        "riskScore":{
          "shape":"String",
          "documentation":"<p>Risk score associated with the finding</p>"
        },
        "reasoning":{
          "shape":"String",
          "documentation":"<p>Justification for the assigned risk score</p>"
        },
        "confidence":{
          "shape":"ConfidenceLevel",
          "documentation":"<p>Confidence level of the finding</p>"
        },
        "attackScript":{
          "shape":"String",
          "documentation":"<p>Proof-of-concept code demonstrating the vulnerability</p>"
        },
        "codeRemediationTask":{
          "shape":"CodeRemediationTask",
          "documentation":"<p>Code remediation task associated with this finding</p>"
        },
        "lastUpdatedBy":{
          "shape":"String",
          "documentation":"<p>Identifier of the task or agent that last updated this finding</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the finding was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the finding was last updated</p>"
        }
      },
      "documentation":"<p>Represents a security vulnerability or issue discovered during testing</p>"
    },
    "FindingIdList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "FindingList":{
      "type":"list",
      "member":{"shape":"Finding"},
      "documentation":"<p>List of findings</p>"
    },
    "FindingStatus":{
      "type":"string",
      "documentation":"<p>Finding status</p>",
      "enum":[
        "ACTIVE",
        "RESOLVED",
        "ACCEPTED",
        "FALSE_POSITIVE"
      ]
    },
    "FindingSummary":{
      "type":"structure",
      "required":[
        "findingId",
        "agentSpaceId"
      ],
      "members":{
        "findingId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the finding</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>Identifier of the agent space that created this finding</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job</p>"
        },
        "name":{
          "shape":"String",
          "documentation":"<p>Name or title of the finding</p>"
        },
        "status":{
          "shape":"FindingStatus",
          "documentation":"<p>Current status of the finding</p>"
        },
        "riskType":{
          "shape":"String",
          "documentation":"<p>Type of security risk identified</p>"
        },
        "riskLevel":{
          "shape":"RiskLevel",
          "documentation":"<p>Severity level of the identified risk</p>"
        },
        "confidence":{
          "shape":"ConfidenceLevel",
          "documentation":"<p>Confidence level of the finding</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the finding was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the finding was last updated</p>"
        }
      },
      "documentation":"<p>Summary information for a security finding</p>"
    },
    "FindingSummaryList":{
      "type":"list",
      "member":{"shape":"FindingSummary"},
      "documentation":"<p>List of finding summaries</p>"
    },
    "GetApplicationRequest":{
      "type":"structure",
      "required":["applicationId"],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        }
      }
    },
    "GetApplicationResponse":{
      "type":"structure",
      "required":[
        "applicationId",
        "domain"
      ],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        },
        "domain":{
          "shape":"ApplicationDomain",
          "documentation":"<p>Domain where the application is available</p>"
        },
        "applicationName":{
          "shape":"String",
          "documentation":"<p>Name of the application, automatically assigned by the service</p>"
        },
        "idcConfiguration":{
          "shape":"IdCConfiguration",
          "documentation":"<p>IAM Identity Center configuration for the application</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>ARN of the IAM role that the application uses to access AWS resources on your behalf</p>"
        },
        "defaultKmsKeyId":{
          "shape":"DefaultKmsKeyId",
          "documentation":"<p>Default KMS key identifier used to encrypt application data</p>"
        }
      }
    },
    "GetArtifactInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactId"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the artifact</p>"
        }
      }
    },
    "GetArtifactOutput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "artifactId",
        "artifact",
        "fileName",
        "updatedAt"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "artifactId":{
          "shape":"ArtifactId",
          "documentation":"<p>Unique identifier of the artifact</p>"
        },
        "artifact":{
          "shape":"Artifact",
          "documentation":"<p>Artifact details</p>"
        },
        "fileName":{
          "shape":"String",
          "documentation":"<p>Name of the artifact file</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the artifact was last updated</p>"
        }
      }
    },
    "GetIntegrationInput":{
      "type":"structure",
      "required":["integrationId"],
      "members":{
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the integration</p>"
        }
      }
    },
    "GetIntegrationOutput":{
      "type":"structure",
      "required":[
        "integrationId",
        "installationId",
        "provider",
        "providerType"
      ],
      "members":{
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the integration</p>"
        },
        "installationId":{
          "shape":"String",
          "documentation":"<p>Installation identifier from the provider</p>"
        },
        "provider":{
          "shape":"Provider",
          "documentation":"<p>Provider type</p>"
        },
        "providerType":{
          "shape":"ProviderType",
          "documentation":"<p>Type of provider integration</p>"
        },
        "displayName":{
          "shape":"String",
          "documentation":"<p>Display name for the integration</p>"
        },
        "kmsKeyId":{
          "shape":"KmsKeyId",
          "documentation":"<p>KMS key ID for encrypting integration details</p>"
        }
      }
    },
    "GitHubIntegrationInput":{
      "type":"structure",
      "required":[
        "code",
        "state"
      ],
      "members":{
        "code":{
          "shape":"AuthCode",
          "documentation":"<p>Authorization code from OAuth flow</p>"
        },
        "state":{
          "shape":"CsrfState",
          "documentation":"<p>CSRF state token for OAuth security</p>"
        },
        "organizationName":{
          "shape":"String",
          "documentation":"<p>Name of the GitHub organization</p>"
        }
      },
      "documentation":"<p>Input parameters for GitHub integration</p>"
    },
    "GitHubOwner":{
      "type":"string",
      "documentation":"<p>Name of the GitHub Account or Organization</p>"
    },
    "GitHubRepositoryMetadata":{
      "type":"structure",
      "required":[
        "name",
        "providerResourceId",
        "owner"
      ],
      "members":{
        "name":{
          "shape":"ProviderResourceName",
          "documentation":"<p>Name of the resource e.g. repository name, etc</p>"
        },
        "providerResourceId":{
          "shape":"ProviderResourceId",
          "documentation":"<p>Unique resource identifier from the vendor</p>"
        },
        "owner":{
          "shape":"GitHubOwner",
          "documentation":"<p>Owner of the repository</p>"
        },
        "accessType":{
          "shape":"AccessType",
          "documentation":"<p>Access / Visibility Type of the integrated resource</p>"
        }
      },
      "documentation":"<p>Metadata specific to a GitHub repository integrated resource</p>"
    },
    "GitHubRepositoryResource":{
      "type":"structure",
      "required":[
        "name",
        "owner"
      ],
      "members":{
        "name":{
          "shape":"ProviderResourceName",
          "documentation":"<p>Name of the resource e.g. repository name, etc</p>"
        },
        "owner":{
          "shape":"GitHubOwner",
          "documentation":"<p>Owner of the repository</p>"
        }
      },
      "documentation":"<p>GitHub repository resource details</p>"
    },
    "GitHubResourceCapabilities":{
      "type":"structure",
      "members":{
        "leaveComments":{
          "shape":"Boolean",
          "documentation":"<p>Post code review comments on pull requests</p>"
        },
        "remediateCode":{
          "shape":"Boolean",
          "documentation":"<p>Create pull requests with automated fixes</p>"
        }
      },
      "documentation":"<p>Capabilities for GitHub repositories</p>"
    },
    "HttpVerification":{
      "type":"structure",
      "members":{
        "token":{
          "shape":"String",
          "documentation":"<p>Token used to verify domain ownership</p>"
        },
        "routePath":{
          "shape":"String",
          "documentation":"<p>Route path where verification token should be placed</p>"
        }
      },
      "documentation":"<p>Represents http route verification details</p>"
    },
    "IamRoles":{
      "type":"list",
      "member":{"shape":"ServiceRole"}
    },
    "IdCApplicationArn":{
      "type":"string",
      "documentation":"<p>ARN of the IAM Identity Center application associated with this application</p>"
    },
    "IdCConfiguration":{
      "type":"structure",
      "members":{
        "idcApplicationArn":{
          "shape":"IdCApplicationArn",
          "documentation":"<p>ARN of the IAM Identity Center application associated with this application</p>"
        },
        "idcInstanceArn":{
          "shape":"IdCInstanceArn",
          "documentation":"<p>ARN of the IAM Identity Center instance used for user authentication</p>"
        }
      },
      "documentation":"<p>IdC configuration containing application and instance ARNs</p>"
    },
    "IdCInstanceArn":{
      "type":"string",
      "documentation":"<p>ARN of the IAM Identity Center instance used for user authentication</p>"
    },
    "InitiateProviderRegistrationInput":{
      "type":"structure",
      "required":["provider"],
      "members":{
        "provider":{
          "shape":"Provider",
          "documentation":"<p>Provider to register with</p>"
        }
      }
    },
    "InitiateProviderRegistrationOutput":{
      "type":"structure",
      "required":[
        "redirectTo",
        "csrfState"
      ],
      "members":{
        "redirectTo":{
          "shape":"Location",
          "documentation":"<p>OAuth redirect URL</p>"
        },
        "csrfState":{
          "shape":"CsrfState",
          "documentation":"<p>CSRF state token for OAuth security</p>"
        }
      }
    },
    "IntegratedRepository":{
      "type":"structure",
      "required":[
        "integrationId",
        "providerResourceId"
      ],
      "members":{
        "integrationId":{
          "shape":"String",
          "documentation":"<p>Integration identifier</p>"
        },
        "providerResourceId":{
          "shape":"String",
          "documentation":"<p>External provider resource identifier, e.g., Github repository identifier</p>"
        }
      },
      "documentation":"<p>Information about an integrated repository</p>"
    },
    "IntegratedRepositoryList":{
      "type":"list",
      "member":{"shape":"IntegratedRepository"}
    },
    "IntegratedResource":{
      "type":"structure",
      "members":{
        "githubRepository":{
          "shape":"GitHubRepositoryResource",
          "documentation":"<p>GitHub repository resource</p>"
        }
      },
      "documentation":"<p>Integrated resource details from a provider</p>",
      "union":true
    },
    "IntegratedResourceInputItem":{
      "type":"structure",
      "required":["resource"],
      "members":{
        "resource":{
          "shape":"IntegratedResource",
          "documentation":"<p>Configuration of the resource</p>"
        },
        "capabilities":{
          "shape":"ProviderResourceCapabilities",
          "documentation":"<p>Provider-specific capabilities for the resource</p>"
        }
      },
      "documentation":"<p>Input item for updating an integrated resource</p>"
    },
    "IntegratedResourceInputItemList":{
      "type":"list",
      "member":{"shape":"IntegratedResourceInputItem"},
      "documentation":"<p>List of integrated resources</p>"
    },
    "IntegratedResourceMetadata":{
      "type":"structure",
      "members":{
        "githubRepository":{
          "shape":"GitHubRepositoryMetadata",
          "documentation":"<p>Metadata for a GitHub repository resource</p>"
        }
      },
      "documentation":"<p>Metadata about an integrated resource</p>",
      "union":true
    },
    "IntegratedResourceSummary":{
      "type":"structure",
      "required":[
        "integrationId",
        "resource"
      ],
      "members":{
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the integration</p>"
        },
        "resource":{
          "shape":"IntegratedResourceMetadata",
          "documentation":"<p>The integrated resource details</p>"
        },
        "capabilities":{
          "shape":"ProviderResourceCapabilities",
          "documentation":"<p>Capabilities of the integrated resource</p>"
        }
      },
      "documentation":"<p>Summary information about an integrated resource</p>"
    },
    "IntegratedResourceSummaryList":{
      "type":"list",
      "member":{"shape":"IntegratedResourceSummary"},
      "documentation":"<p>List of integrated resource items</p>"
    },
    "IntegrationFilter":{
      "type":"structure",
      "members":{
        "provider":{
          "shape":"Provider",
          "documentation":"<p>Filter by provider</p>"
        },
        "providerType":{
          "shape":"ProviderType",
          "documentation":"<p>Filter by provider type</p>"
        }
      },
      "documentation":"<p>Filter criteria for integrations</p>",
      "union":true
    },
    "IntegrationId":{
      "type":"string",
      "documentation":"<p>Unique identifier for an integration</p>"
    },
    "IntegrationSummary":{
      "type":"structure",
      "required":[
        "integrationId",
        "installationId",
        "provider",
        "providerType",
        "displayName"
      ],
      "members":{
        "integrationId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the integration</p>"
        },
        "installationId":{
          "shape":"String",
          "documentation":"<p>Installation identifier from the provider</p>"
        },
        "provider":{
          "shape":"Provider",
          "documentation":"<p>Provider type</p>"
        },
        "providerType":{
          "shape":"ProviderType",
          "documentation":"<p>Type of provider integration</p>"
        },
        "displayName":{
          "shape":"String",
          "documentation":"<p>Display name for the integration</p>"
        }
      },
      "documentation":"<p>Summary information about an integration</p>"
    },
    "IntegrationSummaryList":{
      "type":"list",
      "member":{"shape":"IntegrationSummary"},
      "documentation":"<p>List of integration summaries</p>"
    },
    "InternalServerException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>Error description</p>"
        }
      },
      "documentation":"<p>Unexpected server error occurred</p>",
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true
    },
    "JobStatus":{
      "type":"string",
      "documentation":"<p>Status of a pentest job</p>",
      "enum":[
        "IN_PROGRESS",
        "STOPPING",
        "STOPPED",
        "FAILED",
        "COMPLETED"
      ]
    },
    "KmsKeyId":{
      "type":"string",
      "documentation":"<p>Identifier of a KMS key. Can be a key ID, key ARN, alias name, or alias ARN.</p>"
    },
    "LambdaFunctionArn":{
      "type":"string",
      "documentation":"<p>Lambda function ARN or name for agent space AWS resources</p>"
    },
    "LambdaFunctionArns":{
      "type":"list",
      "member":{"shape":"LambdaFunctionArn"}
    },
    "ListAgentSpacesInput":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of agent spaces to return</p>"
        }
      },
      "documentation":"<p>Input for listing agent spaces</p>"
    },
    "ListAgentSpacesOutput":{
      "type":"structure",
      "members":{
        "agentSpaceSummaries":{
          "shape":"AgentSpaceSummaryList",
          "documentation":"<p>List of agent space summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for next page of results</p>"
        }
      },
      "documentation":"<p>Output for the ListAgentSpaces operation</p>"
    },
    "ListApplicationsRequest":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return</p>"
        }
      }
    },
    "ListApplicationsResponse":{
      "type":"structure",
      "required":["applicationSummaries"],
      "members":{
        "applicationSummaries":{
          "shape":"ApplicationSummaryList",
          "documentation":"<p>List of application summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for next page of results</p>"
        }
      }
    },
    "ListArtifactsInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return</p>"
        }
      }
    },
    "ListArtifactsOutput":{
      "type":"structure",
      "required":["artifactSummaries"],
      "members":{
        "artifactSummaries":{
          "shape":"ArtifactSummaryList",
          "documentation":"<p>List of artifact summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      }
    },
    "ListDiscoveredEndpointsInput":{
      "type":"structure",
      "required":[
        "pentestJobId",
        "agentSpaceId"
      ],
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of discovered endpoints to return in a single request (default: 50)</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job for which to retrieve discovered endpoints</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest job exists</p>"
        },
        "prefix":{
          "shape":"String",
          "documentation":"<p>Optional URI prefix filter to narrow down results</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        }
      },
      "documentation":"<p>Input for ListDiscoveredEndpoints operation</p>"
    },
    "ListDiscoveredEndpointsOutput":{
      "type":"structure",
      "members":{
        "discoveredEndpoints":{
          "shape":"DiscoveredEndpointList",
          "documentation":"<p>List of discovered endpoints for the pentest job</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Output for the ListDiscoveredEndpoints operation</p>"
    },
    "ListFindingsInput":{
      "type":"structure",
      "required":[
        "pentestJobId",
        "agentSpaceId"
      ],
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of findings to return in a single request (default: 50)</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job for which to retrieve associated findings</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest job exists</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "riskType":{
          "shape":"String",
          "documentation":"<p>Filter findings by risk type</p>"
        },
        "riskLevel":{
          "shape":"RiskLevel",
          "documentation":"<p>Filter findings by risk level</p>"
        },
        "status":{
          "shape":"FindingStatus",
          "documentation":"<p>Filter findings by status</p>"
        },
        "confidence":{
          "shape":"ConfidenceLevel",
          "documentation":"<p>Filter findings by confidence level</p>"
        },
        "name":{
          "shape":"String",
          "documentation":"<p>Filter findings by name (case-insensitive substring search)</p>"
        }
      },
      "documentation":"<p>Input for ListFindings operation with filtering support</p>"
    },
    "ListFindingsOutput":{
      "type":"structure",
      "members":{
        "findingsSummaries":{
          "shape":"FindingSummaryList",
          "documentation":"<p>List of finding summaries matching the filter criteria</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Output for the ListFindings operation</p>"
    },
    "ListIntegratedResourcesInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Filter integrated resources by a specific integration</p>"
        },
        "resourceType":{
          "shape":"ResourceType",
          "documentation":"<p>Filter integrated resources by resource type</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return</p>"
        }
      }
    },
    "ListIntegratedResourcesOutput":{
      "type":"structure",
      "required":["integratedResourceSummaries"],
      "members":{
        "integratedResourceSummaries":{
          "shape":"IntegratedResourceSummaryList",
          "documentation":"<p>List of integrated resources</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      }
    },
    "ListIntegrationsInput":{
      "type":"structure",
      "members":{
        "filter":{
          "shape":"IntegrationFilter",
          "documentation":"<p>Filter criteria for integrations</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return</p>"
        }
      }
    },
    "ListIntegrationsOutput":{
      "type":"structure",
      "required":["integrationSummaries"],
      "members":{
        "integrationSummaries":{
          "shape":"IntegrationSummaryList",
          "documentation":"<p>List of integration summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      }
    },
    "ListMembershipsRequest":{
      "type":"structure",
      "required":[
        "applicationId",
        "agentSpaceId"
      ],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application identifier</p>"
        },
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Agent space identifier</p>"
        },
        "memberType":{
          "shape":"MembershipTypeFilter",
          "documentation":"<p>Filter by member type</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of results to return</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        }
      },
      "documentation":"<p>Request structure for listing agent space members</p>"
    },
    "ListMembershipsResponse":{
      "type":"structure",
      "required":["membershipSummaries"],
      "members":{
        "membershipSummaries":{
          "shape":"MembershipSummaryList",
          "documentation":"<p>List of membership summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for next page of results</p>"
        }
      },
      "documentation":"<p>Response structure for listing members associated to an agent space</p>"
    },
    "ListPentestJobTasksInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of tasks to return in a single request</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job whose tasks to list</p>"
        },
        "stepName":{
          "shape":"StepName",
          "documentation":"<p>Filter tasks by step name</p>"
        },
        "categoryName":{
          "shape":"String",
          "documentation":"<p>Filter tasks by category name.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Input for listing tasks associated with a specific pentest job</p>"
    },
    "ListPentestJobTasksOutput":{
      "type":"structure",
      "members":{
        "taskSummaries":{
          "shape":"TaskSummaryList",
          "documentation":"<p>List of task summaries associated with the specified pentest job</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Output for the ListPentestJobTasks operation</p>"
    },
    "ListPentestJobsForPentestInput":{
      "type":"structure",
      "required":[
        "pentestId",
        "agentSpaceId"
      ],
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of pentest jobs to return in a single request</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest for which to retrieve associated jobs</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        }
      },
      "documentation":"<p>Input for ListPentestJobsForPentest operation</p>"
    },
    "ListPentestJobsForPentestOutput":{
      "type":"structure",
      "members":{
        "pentestJobSummaries":{
          "shape":"PentestJobSummaryList",
          "documentation":"<p>List of pentest job summaries associated with the pentest</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Output for the ListPentestJobsForPentest operation</p>"
    },
    "ListPentestsInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of pentests to return in a single request</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        }
      },
      "documentation":"<p>Input for listing pentests with optional filtering</p>"
    },
    "ListPentestsOutput":{
      "type":"structure",
      "members":{
        "pentestSummaries":{
          "shape":"PentestSummaryList",
          "documentation":"<p>List of pentest summaries matching the filter criteria</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination to retrieve the next set of results</p>"
        }
      },
      "documentation":"<p>Output for the ListPentests operation</p>"
    },
    "ListTagsForResourceInput":{
      "type":"structure",
      "required":["resourceArn"],
      "members":{
        "resourceArn":{
          "shape":"ResourceArn",
          "documentation":"<p>ARN of the resource to list tags for</p>",
          "location":"uri",
          "locationName":"resourceArn"
        }
      },
      "documentation":"<p>Input for ListTagsForResource operation</p>"
    },
    "ListTagsForResourceOutput":{
      "type":"structure",
      "members":{
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags associated with the resource</p>"
        }
      },
      "documentation":"<p>Output for ListTagsForResource operation</p>"
    },
    "ListTargetDomainsInput":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for pagination</p>"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>Maximum number of target domains to return</p>"
        }
      },
      "documentation":"<p>Input for listing target domains</p>"
    },
    "ListTargetDomainsOutput":{
      "type":"structure",
      "members":{
        "targetDomainSummaries":{
          "shape":"TargetDomainSummaryList",
          "documentation":"<p>List of target domain summaries</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>Token for next page of results</p>"
        }
      },
      "documentation":"<p>Output for the ListTargetDomains operation</p>"
    },
    "Location":{
      "type":"string",
      "documentation":"<p>Location URL for OAuth redirect</p>"
    },
    "LogGroupArn":{
      "type":"string",
      "documentation":"<p>Log group ARN or name for agent space AWS resources</p>"
    },
    "LogGroupArns":{
      "type":"list",
      "member":{"shape":"LogGroupArn"}
    },
    "LogLocation":{
      "type":"structure",
      "members":{
        "logType":{
          "shape":"LogType",
          "documentation":"<p>Type of log storage</p>"
        },
        "cloudWatchLog":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log information if logs are stored in CloudWatch</p>"
        }
      },
      "documentation":"<p>Location information for execution logs</p>"
    },
    "LogType":{
      "type":"string",
      "documentation":"<p>Type of log storage</p>",
      "enum":["CLOUDWATCH"]
    },
    "MaxResults":{
      "type":"integer",
      "documentation":"<p>Maximum results for pagination</p>",
      "box":true
    },
    "MemberMetadata":{
      "type":"structure",
      "members":{
        "user":{
          "shape":"UserMetadata",
          "documentation":"<p>User metadata for USER members</p>"
        }
      },
      "documentation":"<p>Metadata associated with the member</p>",
      "union":true
    },
    "MembershipConfig":{
      "type":"structure",
      "members":{
        "user":{
          "shape":"UserConfig",
          "documentation":"<p>Configuration for user members</p>"
        }
      },
      "documentation":"<p>Member-specific configuration</p>",
      "union":true
    },
    "MembershipId":{
      "type":"string",
      "documentation":"<p>Member identifier</p>"
    },
    "MembershipSummary":{
      "type":"structure",
      "required":[
        "membershipId",
        "applicationId",
        "agentSpaceId",
        "memberType",
        "createdAt",
        "updatedAt",
        "createdBy",
        "updatedBy"
      ],
      "members":{
        "membershipId":{
          "shape":"MembershipId",
          "documentation":"<p>Member identifier (userId or agentSpaceId)</p>"
        },
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application identifier</p>"
        },
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Agent space identifier</p>"
        },
        "memberType":{
          "shape":"MembershipType",
          "documentation":"<p>Type of member</p>"
        },
        "config":{
          "shape":"MembershipConfig",
          "documentation":"<p>Configuration specific to the member type</p>"
        },
        "metadata":{
          "shape":"MemberMetadata",
          "documentation":"<p>Member-specific metadata</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the membership was created (ISO 8601)</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the membership was last updated (ISO 8601)</p>"
        },
        "createdBy":{
          "shape":"String",
          "documentation":"<p>User ID who created the membership</p>"
        },
        "updatedBy":{
          "shape":"String",
          "documentation":"<p>User ID who last updated the membership</p>"
        }
      },
      "documentation":"<p>Membership summary for list operations</p>"
    },
    "MembershipSummaryList":{
      "type":"list",
      "member":{"shape":"MembershipSummary"},
      "documentation":"<p>List of membership summaries</p>"
    },
    "MembershipType":{
      "type":"string",
      "documentation":"<p>Type of membership</p>",
      "enum":["USER"]
    },
    "MembershipTypeFilter":{
      "type":"string",
      "documentation":"<p>Filter for member type in list operations</p>",
      "enum":[
        "USER",
        "ALL"
      ]
    },
    "NetworkTrafficConfig":{
      "type":"structure",
      "members":{
        "rules":{
          "shape":"NetworkTrafficRuleList",
          "documentation":"<p>Traffic filtering rules</p>"
        },
        "customHeaders":{
          "shape":"CustomHeaderList",
          "documentation":"<p>Custom headers for requests</p>"
        }
      },
      "documentation":"<p>Configuration for network traffic filtering</p>"
    },
    "NetworkTrafficRule":{
      "type":"structure",
      "members":{
        "effect":{
          "shape":"NetworkTrafficRuleEffect",
          "documentation":"<p>Action to take when the rule matches</p>"
        },
        "pattern":{
          "shape":"String",
          "documentation":"<p>Pattern to match against</p>"
        },
        "networkTrafficRuleType":{
          "shape":"NetworkTrafficRuleType",
          "documentation":"<p>Type of network traffic rule</p>"
        }
      },
      "documentation":"<p>Network traffic filtering rule</p>"
    },
    "NetworkTrafficRuleEffect":{
      "type":"string",
      "documentation":"<p>Effect of a network traffic rule</p>",
      "enum":[
        "ALLOW",
        "DENY"
      ]
    },
    "NetworkTrafficRuleList":{
      "type":"list",
      "member":{"shape":"NetworkTrafficRule"},
      "documentation":"<p>List of network traffic rules</p>"
    },
    "NetworkTrafficRuleType":{
      "type":"string",
      "documentation":"<p>Type of network traffic rule</p>",
      "enum":["URL"]
    },
    "NextToken":{
      "type":"string",
      "documentation":"<p>Pagination token</p>"
    },
    "Pentest":{
      "type":"structure",
      "required":[
        "pentestId",
        "agentSpaceId",
        "title",
        "assets"
      ],
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the pentest</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the pentest</p>"
        },
        "assets":{
          "shape":"Assets",
          "documentation":"<p>Collection of assets to be tested or used during the pentest</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest execution</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest execution logs are stored</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration that the Security Agent accesses</p>"
        },
        "networkTrafficConfig":{
          "shape":"NetworkTrafficConfig",
          "documentation":"<p>Configuration for network traffic filtering</p>"
        },
        "codeRemediationStrategy":{
          "shape":"CodeRemediationStrategy",
          "documentation":"<p>Strategy for code remediation on findings</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was last updated</p>"
        }
      },
      "documentation":"<p>Represents a pentest configuration and execution details</p>"
    },
    "PentestIdList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "PentestJob":{
      "type":"structure",
      "members":{
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the pentest job</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the pentest</p>"
        },
        "overview":{
          "shape":"String",
          "documentation":"<p>Overview or description of the pentest job</p>"
        },
        "status":{
          "shape":"JobStatus",
          "documentation":"<p>Current status of the pentest job</p>"
        },
        "endpoints":{
          "shape":"EndpointList",
          "documentation":"<p>List of web application endpoints to test</p>"
        },
        "actors":{
          "shape":"ActorList",
          "documentation":"<p>List of actors that interact with the system</p>"
        },
        "documents":{
          "shape":"DocumentList",
          "documentation":"<p>List of documents providing context for testing</p>"
        },
        "sourceCode":{
          "shape":"SourceCodeRepositoryList",
          "documentation":"<p>List of source code repositories for static analysis</p>"
        },
        "excludePaths":{
          "shape":"EndpointList",
          "documentation":"<p>List of URL paths to exclude from testing</p>"
        },
        "allowedDomains":{
          "shape":"EndpointList",
          "documentation":"<p>List of allowed domains for network access</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest job</p>"
        },
        "steps":{
          "shape":"StepList",
          "documentation":"<p>List of execution steps for the pentest job</p>"
        },
        "executionContext":{
          "shape":"ExecutionContextList",
          "documentation":"<p>A list of execution context messages associated with the pentest job</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest job logs are stored</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration that the Security Agent accesses</p>"
        },
        "networkTrafficConfig":{
          "shape":"NetworkTrafficConfig",
          "documentation":"<p>Configuration for network traffic filtering</p>"
        },
        "errorInformation":{
          "shape":"ErrorInformation",
          "documentation":"<p>Error information regarding the pentest job</p>"
        },
        "integratedRepositories":{
          "shape":"IntegratedRepositoryList",
          "documentation":"<p>List of integrated code repositories</p>"
        },
        "codeRemediationStrategy":{
          "shape":"CodeRemediationStrategy",
          "documentation":"<p>Strategy for code remediation on findings</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was last updated</p>"
        }
      },
      "documentation":"<p>Represents a pentest job</p>"
    },
    "PentestJobIdList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "PentestJobList":{
      "type":"list",
      "member":{"shape":"PentestJob"}
    },
    "PentestJobSummary":{
      "type":"structure",
      "required":[
        "pentestJobId",
        "pentestId"
      ],
      "members":{
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the pentest job</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the pentest</p>"
        },
        "status":{
          "shape":"JobStatus",
          "documentation":"<p>Current status of the pentest job</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was last updated</p>"
        }
      },
      "documentation":"<p>Summary information for a pentest job</p>"
    },
    "PentestJobSummaryList":{
      "type":"list",
      "member":{"shape":"PentestJobSummary"}
    },
    "PentestList":{
      "type":"list",
      "member":{"shape":"Pentest"}
    },
    "PentestSummary":{
      "type":"structure",
      "required":[
        "pentestId",
        "agentSpaceId",
        "title"
      ],
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the pentest</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the pentest</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was last updated</p>"
        }
      },
      "documentation":"<p>Summary information for a pentest</p>"
    },
    "PentestSummaryList":{
      "type":"list",
      "member":{"shape":"PentestSummary"}
    },
    "Provider":{
      "type":"string",
      "documentation":"<p>Third-party provider type</p>",
      "enum":["GITHUB"]
    },
    "ProviderInput":{
      "type":"structure",
      "members":{
        "github":{
          "shape":"GitHubIntegrationInput",
          "documentation":"<p>GitHub integration input</p>"
        }
      },
      "documentation":"<p>Provider-specific input parameters for integration</p>",
      "union":true
    },
    "ProviderResourceCapabilities":{
      "type":"structure",
      "members":{
        "github":{"shape":"GitHubResourceCapabilities"}
      },
      "documentation":"<p>Provider-specific capabilities for integrated resources</p>",
      "union":true
    },
    "ProviderResourceId":{
      "type":"string",
      "documentation":"<p>Provider Id of the resource e.g. GitHub repository id, etc</p>"
    },
    "ProviderResourceName":{
      "type":"string",
      "documentation":"<p>Name of the resource e.g. repository name, etc</p>"
    },
    "ProviderType":{
      "type":"string",
      "documentation":"<p>Type of provider integration</p>",
      "enum":[
        "SOURCE_CODE",
        "DOCUMENTATION"
      ]
    },
    "ResourceArn":{
      "type":"string",
      "documentation":"<p>ARN of a taggable resource</p>"
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>Error description</p>"
        }
      },
      "documentation":"<p>Specified resource was not found</p>",
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "ResourceType":{
      "type":"string",
      "documentation":"<p>Type of resource</p>",
      "enum":["CODE_REPOSITORY"]
    },
    "RiskLevel":{
      "type":"string",
      "documentation":"<p>Risk severity level</p>",
      "enum":[
        "UNKNOWN",
        "INFORMATIONAL",
        "LOW",
        "MEDIUM",
        "HIGH",
        "CRITICAL"
      ]
    },
    "RiskType":{
      "type":"string",
      "documentation":"<p>Type of security risk</p>",
      "enum":[
        "CROSS_SITE_SCRIPTING",
        "DEFAULT_CREDENTIALS",
        "INSECURE_DIRECT_OBJECT_REFERENCE",
        "PRIVILEGE_ESCALATION",
        "SERVER_SIDE_TEMPLATE_INJECTION",
        "COMMAND_INJECTION",
        "CODE_INJECTION",
        "SQL_INJECTION",
        "ARBITRARY_FILE_UPLOAD",
        "INSECURE_DESERIALIZATION",
        "LOCAL_FILE_INCLUSION",
        "INFORMATION_DISCLOSURE",
        "PATH_TRAVERSAL",
        "SERVER_SIDE_REQUEST_FORGERY",
        "JSON_WEB_TOKEN_VULNERABILITIES",
        "XML_EXTERNAL_ENTITY",
        "FILE_DELETION",
        "OTHER",
        "GRAPHQL_VULNERABILITIES",
        "BUSINESS_LOGIC_VULNERABILITIES",
        "CRYPTOGRAPHIC_VULNERABILITIES",
        "DENIAL_OF_SERVICE",
        "FILE_ACCESS",
        "FILE_CREATION",
        "DATABASE_MODIFICATION",
        "DATABASE_ACCESS",
        "OUTBOUND_SERVICE_REQUEST",
        "UNKNOWN"
      ]
    },
    "RiskTypeList":{
      "type":"list",
      "member":{"shape":"RiskType"}
    },
    "RoleArn":{
      "type":"string",
      "documentation":"<p>ARN of the IAM role that the application uses to access AWS resources on your behalf</p>"
    },
    "S3BucketArn":{
      "type":"string",
      "documentation":"<p>S3 bucket ARN or name for agent space AWS resources</p>"
    },
    "S3BucketArns":{
      "type":"list",
      "member":{"shape":"S3BucketArn"}
    },
    "SecretArn":{
      "type":"string",
      "documentation":"<p>Secret ARN or name for agent space AWS resources</p>"
    },
    "SecretArns":{
      "type":"list",
      "member":{"shape":"SecretArn"}
    },
    "SecurityGroupArn":{
      "type":"string",
      "documentation":"<p>ARN or ID of a security group</p>"
    },
    "SecurityGroupArns":{
      "type":"list",
      "member":{"shape":"SecurityGroupArn"},
      "documentation":"<p>A list of one or more security group ARNs or IDs in the customer VPC</p>"
    },
    "SensitiveEmail":{
      "type":"string",
      "documentation":"<p>Sensitive email address</p>"
    },
    "ServiceRole":{
      "type":"string",
      "documentation":"<p>ARN of an IAM role that the service can assume to access customer resources</p>"
    },
    "SourceCodeRepository":{
      "type":"structure",
      "members":{
        "s3Location":{
          "shape":"String",
          "documentation":"<p>S3 storage location of the repository</p>"
        }
      },
      "documentation":"<p>Information about a source code repository for static analysis</p>"
    },
    "SourceCodeRepositoryList":{
      "type":"list",
      "member":{"shape":"SourceCodeRepository"}
    },
    "StartCodeRemediationInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "pentestJobId",
        "findingIds"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest job exists</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job to start code remediation for</p>"
        },
        "findingIds":{
          "shape":"FindingIdList",
          "documentation":"<p>Identifiers of the findings to start code remediation for</p>"
        }
      },
      "documentation":"<p>Input for the StartCodeRemediation operation</p>"
    },
    "StartCodeRemediationOutput":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Output for the StartCodeRemediation operation</p>"
    },
    "StartPentestJobInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "pentestId"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest to execute</p>"
        }
      },
      "documentation":"<p>Input for starting the execution of a pentest</p>"
    },
    "StartPentestJobOutput":{
      "type":"structure",
      "members":{
        "title":{
          "shape":"String",
          "documentation":"<p>Title of the pentest job</p>"
        },
        "status":{
          "shape":"JobStatus",
          "documentation":"<p>Current status of the pentest job</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest job was last updated</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the pentest</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the pentest job</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        }
      },
      "documentation":"<p>Output for the StartPentestJob operation</p>"
    },
    "Step":{
      "type":"structure",
      "members":{
        "name":{
          "shape":"StepName",
          "documentation":"<p>Name of the execution step</p>"
        },
        "status":{
          "shape":"StepStatus",
          "documentation":"<p>Current status of the step</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the step was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the step was last updated</p>"
        }
      },
      "documentation":"<p>Represents a single step in pentest job execution</p>"
    },
    "StepList":{
      "type":"list",
      "member":{"shape":"Step"},
      "documentation":"<p>List of pentest job steps</p>"
    },
    "StepName":{
      "type":"string",
      "documentation":"<p>Pentest job step names</p>",
      "enum":[
        "PREFLIGHT",
        "STATIC_ANALYSIS",
        "PENTEST",
        "FINALIZING"
      ]
    },
    "StepStatus":{
      "type":"string",
      "documentation":"<p>Pentest job step status</p>",
      "enum":[
        "NOT_STARTED",
        "IN_PROGRESS",
        "COMPLETED",
        "FAILED",
        "STOPPED"
      ]
    },
    "StopPentestJobInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "pentestJobId"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job to stop</p>"
        }
      },
      "documentation":"<p>Input for stopping the execution of a pentest</p>"
    },
    "StopPentestJobOutput":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Output for the StopPentestJob operation</p>"
    },
    "String":{"type":"string"},
    "SubnetArn":{
      "type":"string",
      "documentation":"<p>ARN or ID of a subnet</p>"
    },
    "SubnetArns":{
      "type":"list",
      "member":{"shape":"SubnetArn"},
      "documentation":"<p>A list of one or more subnet ARNs or IDs in the customer VPC</p>"
    },
    "SyntheticTimestamp_date_time":{
      "type":"timestamp",
      "timestampFormat":"iso8601"
    },
    "TagKey":{
      "type":"string",
      "documentation":"<p>Key for a resource tag</p>"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "documentation":"<p>List of tag keys</p>"
    },
    "TagMap":{
      "type":"map",
      "key":{"shape":"TagKey"},
      "value":{"shape":"TagValue"},
      "documentation":"<p>Map of tags for a resource</p>"
    },
    "TagResourceInput":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tags"
      ],
      "members":{
        "resourceArn":{
          "shape":"ResourceArn",
          "documentation":"<p>ARN of the resource to tag</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>Tags to add to the resource</p>"
        }
      },
      "documentation":"<p>Input for TagResource operation</p>"
    },
    "TagResourceOutput":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Output for TagResource operation</p>"
    },
    "TagValue":{
      "type":"string",
      "documentation":"<p>Value for a resource tag</p>"
    },
    "TargetDomain":{
      "type":"structure",
      "required":[
        "targetDomainId",
        "domainName"
      ],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain</p>"
        },
        "domainName":{
          "shape":"String",
          "documentation":"<p>Name of the registered target domain</p>"
        },
        "verificationStatus":{
          "shape":"TargetDomainStatus",
          "documentation":"<p>Current verification status of the registered target domain</p>"
        },
        "verificationDetails":{
          "shape":"VerificationDetails",
          "documentation":"<p>Verification details to verify registered target domain</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was registered</p>"
        },
        "verifiedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was last successfully verified</p>"
        }
      },
      "documentation":"<p>Represents a target domain</p>"
    },
    "TargetDomainId":{
      "type":"string",
      "documentation":"<p>Unique identifier of the target domain</p>"
    },
    "TargetDomainIdList":{
      "type":"list",
      "member":{"shape":"String"},
      "documentation":"<p>List of target domain IDs</p>"
    },
    "TargetDomainList":{
      "type":"list",
      "member":{"shape":"TargetDomain"},
      "documentation":"<p>List of target domains</p>"
    },
    "TargetDomainStatus":{
      "type":"string",
      "documentation":"<p>Verification status of a target domain</p>",
      "enum":[
        "PENDING",
        "VERIFIED",
        "FAILED",
        "UNREACHABLE"
      ]
    },
    "TargetDomainSummary":{
      "type":"structure",
      "required":[
        "targetDomainId",
        "domainName"
      ],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain</p>"
        },
        "domainName":{
          "shape":"String",
          "documentation":"<p>Name of the registered target domain</p>"
        },
        "verificationStatus":{
          "shape":"TargetDomainStatus",
          "documentation":"<p>Current verification status of the registered target domain</p>"
        }
      },
      "documentation":"<p>Summary information for a target domain</p>"
    },
    "TargetDomainSummaryList":{
      "type":"list",
      "member":{"shape":"TargetDomainSummary"}
    },
    "Task":{
      "type":"structure",
      "required":["taskId"],
      "members":{
        "taskId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the task</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job this task belongs to</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>Identifier of the agent space this task belongs to</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the task</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Detailed description of the task's purpose and scope</p>"
        },
        "categories":{
          "shape":"CategoryList",
          "documentation":"<p>List of categories associated with this task</p>"
        },
        "riskType":{
          "shape":"RiskType",
          "documentation":"<p>Type of security risk this task is designed to test</p>"
        },
        "targetEndpoint":{
          "shape":"Endpoint",
          "documentation":"<p>Target endpoint for this security test</p>"
        },
        "executionStatus":{
          "shape":"TaskExecutionStatus",
          "documentation":"<p>Current status of the task execution</p>"
        },
        "logsLocation":{
          "shape":"LogLocation",
          "documentation":"<p>Location of execution logs for auditing and review</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the task was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the task was last updated</p>"
        }
      },
      "documentation":"<p>Represents a task within a pentest job</p>"
    },
    "TaskExecutionStatus":{
      "type":"string",
      "documentation":"<p>Execution status of a task</p>",
      "enum":[
        "IN_PROGRESS",
        "ABORTED",
        "COMPLETED",
        "INTERNAL_ERROR",
        "FAILED"
      ]
    },
    "TaskIdList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "TaskList":{
      "type":"list",
      "member":{"shape":"Task"}
    },
    "TaskSummary":{
      "type":"structure",
      "required":["taskId"],
      "members":{
        "taskId":{
          "shape":"String",
          "documentation":"<p>Unique identifier for the task</p>"
        },
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the parent pentest</p>"
        },
        "pentestJobId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest job this task belongs to</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>Identifier of the agent space this task belongs to</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title or name of the task</p>"
        },
        "riskType":{
          "shape":"RiskType",
          "documentation":"<p>Type of security risk this task is designed to test</p>"
        },
        "executionStatus":{
          "shape":"TaskExecutionStatus",
          "documentation":"<p>Current status of the task execution</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the task was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the task was last updated</p>"
        }
      },
      "documentation":"<p>Summary information for a task</p>"
    },
    "TaskSummaryList":{
      "type":"list",
      "member":{"shape":"TaskSummary"}
    },
    "ThrottlingException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>Error description</p>"
        },
        "serviceCode":{
          "shape":"String",
          "documentation":"<p>Service code for throttling limit</p>"
        },
        "quotaCode":{
          "shape":"String",
          "documentation":"<p>Quota code for throttling limit</p>"
        }
      },
      "documentation":"<p>Request denied due to throttling</p>",
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true
    },
    "UntagResourceInput":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tagKeys"
      ],
      "members":{
        "resourceArn":{
          "shape":"ResourceArn",
          "documentation":"<p>ARN of the resource to untag</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tagKeys":{
          "shape":"TagKeyList",
          "documentation":"<p>List of tag keys to remove from the resource</p>",
          "location":"querystring",
          "locationName":"tagKeys"
        }
      },
      "documentation":"<p>Input for UntagResource operation</p>"
    },
    "UntagResourceOutput":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Output for UntagResource operation</p>"
    },
    "UpdateAgentSpaceInput":{
      "type":"structure",
      "required":["agentSpaceId"],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>ID of the agent space to update</p>"
        },
        "name":{
          "shape":"AgentName",
          "documentation":"<p>Name of the agent space</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Description of the agent space</p>"
        },
        "awsResources":{
          "shape":"AWSResources",
          "documentation":"<p>AWS resource configurations associated with the agent space</p>"
        },
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>Target domain IDs to associate with the agent space</p>"
        },
        "codeReviewSettings":{
          "shape":"CodeReviewSettings",
          "documentation":"<p>Configuration for code review analysis, including controls scanning and general purpose scanning settings</p>"
        }
      },
      "documentation":"<p>Input for updating an agent space</p>"
    },
    "UpdateAgentSpaceOutput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "name"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "name":{
          "shape":"AgentName",
          "documentation":"<p>Name of the agent space</p>"
        },
        "description":{
          "shape":"String",
          "documentation":"<p>Description of the agent space</p>"
        },
        "awsResources":{
          "shape":"AWSResources",
          "documentation":"<p>AWS resource configurations associated with the agent space</p>"
        },
        "targetDomainIds":{
          "shape":"TargetDomainIdList",
          "documentation":"<p>List of target domain IDs registered with the agent space</p>"
        },
        "codeReviewSettings":{
          "shape":"CodeReviewSettings",
          "documentation":"<p>Configuration for code review analysis, including controls scanning and general purpose scanning settings</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the agent space was last updated</p>"
        }
      },
      "documentation":"<p>Output for the UpdateAgentSpace operation</p>"
    },
    "UpdateApplicationRequest":{
      "type":"structure",
      "required":["applicationId"],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        },
        "roleArn":{
          "shape":"RoleArn",
          "documentation":"<p>ARN of the IAM role that the application uses to access AWS resources on your behalf</p>"
        },
        "defaultKmsKeyId":{
          "shape":"DefaultKmsKeyId",
          "documentation":"<p>Default KMS key identifier. Use an empty string to remove the default KMS key.</p>"
        }
      }
    },
    "UpdateApplicationResponse":{
      "type":"structure",
      "required":["applicationId"],
      "members":{
        "applicationId":{
          "shape":"ApplicationId",
          "documentation":"<p>Application ID</p>"
        }
      }
    },
    "UpdateFindingInput":{
      "type":"structure",
      "required":[
        "findingId",
        "agentSpaceId"
      ],
      "members":{
        "findingId":{
          "shape":"String",
          "documentation":"<p>Identifier of the finding to update</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the finding exists</p>"
        },
        "riskLevel":{
          "shape":"RiskLevel",
          "documentation":"<p>Updated severity level of the identified risk</p>"
        },
        "status":{
          "shape":"FindingStatus",
          "documentation":"<p>Updated status of the finding</p>"
        }
      },
      "documentation":"<p>Input for updating an existing security finding</p>"
    },
    "UpdateFindingOutput":{
      "type":"structure",
      "members":{},
      "documentation":"<p>Output for the UpdateFinding operation</p>"
    },
    "UpdateIntegratedResourcesInput":{
      "type":"structure",
      "required":[
        "agentSpaceId",
        "integrationId",
        "items"
      ],
      "members":{
        "agentSpaceId":{
          "shape":"AgentSpaceId",
          "documentation":"<p>Unique identifier of the agent space</p>"
        },
        "integrationId":{
          "shape":"IntegrationId",
          "documentation":"<p>Unique identifier of the integration</p>"
        },
        "items":{
          "shape":"IntegratedResourceInputItemList",
          "documentation":"<p>List of integrated resources to update</p>"
        }
      }
    },
    "UpdateIntegratedResourcesOutput":{
      "type":"structure",
      "members":{}
    },
    "UpdatePentestInput":{
      "type":"structure",
      "required":[
        "pentestId",
        "agentSpaceId"
      ],
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Identifier of the pentest to update</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>New title for the pentest</p>"
        },
        "assets":{
          "shape":"Assets",
          "documentation":"<p>Updated assets to be tested</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest execution</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Updated service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest execution logs are stored</p>"
        },
        "vpcConfig":{
          "shape":"VpcConfig",
          "documentation":"<p>VPC configuration that the Security Agent accesses</p>"
        },
        "networkTrafficConfig":{
          "shape":"NetworkTrafficConfig",
          "documentation":"<p>Configuration for network traffic filtering</p>"
        },
        "codeRemediationStrategy":{
          "shape":"CodeRemediationStrategy",
          "documentation":"<p>Strategy for code remediation on findings</p>"
        }
      },
      "documentation":"<p>Input for updating an existing pentest</p>"
    },
    "UpdatePentestOutput":{
      "type":"structure",
      "members":{
        "pentestId":{
          "shape":"String",
          "documentation":"<p>Unique identifier of the updated pentest</p>"
        },
        "title":{
          "shape":"String",
          "documentation":"<p>Title of the updated pentest</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was created</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the pentest was last updated</p>"
        },
        "assets":{
          "shape":"Assets",
          "documentation":"<p>Assets to be tested in the updated pentest</p>"
        },
        "excludeRiskTypes":{
          "shape":"RiskTypeList",
          "documentation":"<p>A list of risk types excluded from the pentest execution</p>"
        },
        "serviceRole":{
          "shape":"ServiceRole",
          "documentation":"<p>Service role ARN for accessing customer resources</p>"
        },
        "logConfig":{
          "shape":"CloudWatchLog",
          "documentation":"<p>CloudWatch log group and stream prefix where pentest execution logs are stored</p>"
        },
        "agentSpaceId":{
          "shape":"String",
          "documentation":"<p>ID of the agent space where the pentest exists</p>"
        }
      },
      "documentation":"<p>Output for the UpdatePentest operation</p>"
    },
    "UpdateTargetDomainInput":{
      "type":"structure",
      "required":[
        "targetDomainId",
        "verificationMethod"
      ],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain to update</p>"
        },
        "verificationMethod":{
          "shape":"DomainVerificationMethod",
          "documentation":"<p>Verification method for the target domain</p>"
        }
      },
      "documentation":"<p>Input for updating a target domain</p>"
    },
    "UpdateTargetDomainOutput":{
      "type":"structure",
      "required":[
        "targetDomainId",
        "domainName",
        "verificationStatus"
      ],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain</p>"
        },
        "domainName":{
          "shape":"String",
          "documentation":"<p>Name of the target domain</p>"
        },
        "verificationStatus":{
          "shape":"TargetDomainStatus",
          "documentation":"<p>Current verification status of the registered target domain</p>"
        },
        "verificationDetails":{
          "shape":"VerificationDetails",
          "documentation":"<p>Verification details to verify registered target domain</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was registered</p>"
        },
        "verifiedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was last successfully verified</p>"
        }
      },
      "documentation":"<p>Output for the UpdateTargetDomain operation</p>"
    },
    "UriList":{
      "type":"list",
      "member":{"shape":"String"}
    },
    "UserConfig":{
      "type":"structure",
      "members":{
        "role":{
          "shape":"UserRole",
          "documentation":"<p>Role of the user associated to the agent space</p>"
        }
      },
      "documentation":"<p>User membership configuration</p>"
    },
    "UserMetadata":{
      "type":"structure",
      "required":[
        "username",
        "email"
      ],
      "members":{
        "username":{
          "shape":"String",
          "documentation":"<p>User name/display name</p>"
        },
        "email":{
          "shape":"SensitiveEmail",
          "documentation":"<p>User email address</p>"
        }
      },
      "documentation":"<p>User-specific metadata</p>"
    },
    "UserRole":{
      "type":"string",
      "documentation":"<p>Role of a user member associated to an agent space</p>",
      "enum":["MEMBER"]
    },
    "ValidationException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>A summary of the validation failure.</p>"
        },
        "fieldList":{
          "shape":"ValidationExceptionFieldList",
          "documentation":"<p>A list of specific failures encountered while validating the input. A member can appear in this list more than once if it failed to satisfy multiple constraints.</p>"
        }
      },
      "documentation":"<p>A standard error for input validation failures. This should be thrown by services when a member of the input structure falls outside of the modeled or documented constraints.</p>",
      "exception":true
    },
    "ValidationExceptionField":{
      "type":"structure",
      "required":[
        "path",
        "message"
      ],
      "members":{
        "path":{
          "shape":"String",
          "documentation":"<p>A JSONPointer expression to the structure member whose value failed to satisfy the modeled constraints.</p>"
        },
        "message":{
          "shape":"String",
          "documentation":"<p>A detailed description of the validation failure.</p>"
        }
      },
      "documentation":"<p>Describes one specific validation failure for an input member.</p>"
    },
    "ValidationExceptionFieldList":{
      "type":"list",
      "member":{"shape":"ValidationExceptionField"}
    },
    "VerificationDetails":{
      "type":"structure",
      "members":{
        "method":{
          "shape":"DomainVerificationMethod",
          "documentation":"<p>Type of domain ownership verification method</p>"
        },
        "dnsTxt":{
          "shape":"DnsVerification",
          "documentation":"<p>Represents dns txt verification details</p>"
        },
        "httpRoute":{
          "shape":"HttpVerification",
          "documentation":"<p>Represents http route verification details</p>"
        }
      },
      "documentation":"<p>Verification details to verify registered target domain</p>"
    },
    "VerifyTargetDomainInput":{
      "type":"structure",
      "required":["targetDomainId"],
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain</p>"
        }
      },
      "documentation":"<p>Input for verifying ownership for a registered target domain in an agent space</p>"
    },
    "VerifyTargetDomainOutput":{
      "type":"structure",
      "members":{
        "targetDomainId":{
          "shape":"TargetDomainId",
          "documentation":"<p>Unique identifier of the target domain</p>"
        },
        "domainName":{
          "shape":"String",
          "documentation":"<p>Name of the registered target domain</p>"
        },
        "createdAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was registered</p>"
        },
        "updatedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was last updated</p>"
        },
        "verifiedAt":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>Timestamp when the target domain was last successfully verified</p>"
        },
        "status":{
          "shape":"TargetDomainStatus",
          "documentation":"<p>Current verification status of the registered target domain</p>"
        }
      },
      "documentation":"<p>Output for verifying ownership for a registered target domain in an agent space</p>"
    },
    "VpcArn":{
      "type":"string",
      "documentation":"<p>ARN or ID of a VPC</p>"
    },
    "VpcConfig":{
      "type":"structure",
      "members":{
        "vpcArn":{
          "shape":"VpcArn",
          "documentation":"<p>ARN or ID of the customer VPC</p>"
        },
        "securityGroupArns":{
          "shape":"SecurityGroupArns",
          "documentation":"<p>List of security group ARNs or IDs in the customer VPC</p>"
        },
        "subnetArns":{
          "shape":"SubnetArns",
          "documentation":"<p>List of subnet ARNs or IDs in the customer VPC</p>"
        }
      },
      "documentation":"<p>Customer VPC configuration that the Security Agent accesses</p>"
    },
    "VpcConfigs":{
      "type":"list",
      "member":{"shape":"VpcConfig"}
    }
  },
  "documentation":"<p>AWS Security Agent service documentation.</p>"
}
