API Reference
This section contains the complete API reference for the Community DevOps Agent API, which provides boto3 integration for multiple AWS DevOps services including the Community DevOps Agent and AWS DevOps Agent Control Plane.
Core Module
Community DevOps Agent API - boto3 Service Integration
A Python client library that provides native boto3 integration for the AWS DevOps Agent API. This library registers ‘community-devops-agent’ as a custom boto3 service, enabling familiar AWS SDK patterns for DevOps Agent operations.
- Usage:
import devopsagent_api # Registers the service import boto3
client = boto3.client(‘community-devops-agent’, region_name=’us-east-1’) tasks = client.list_tasks(agentSpaceId=’your-agent-space-uuid’)
Authentication Module
Authentication module for DevOps Agent API.
This module implements direct AWS SigV4 authentication for boto3 integration. No JWT generation or credential exchange is needed - we use AWS credentials directly.
- class devopsagent_api.auth.DevOpsAgentCredentialProvider[source]
Bases:
CredentialProviderCustom credential provider for the DevOps Agent API.
This provider uses direct AWS SigV4 authentication, passing through the user’s AWS credentials directly without JWT exchange.
Initialize the credential provider.
- load(service_name: str | None = None) Credentials | None[source]
Load credentials for the DevOps Agent service.
This method is called by botocore when credentials are needed. It only provides credentials for the community-devops-agent service.
- Parameters:
service_name – The service name requesting credentials
- Returns:
Credentials object or None if unable to obtain credentials
Models Module
Pydantic data models for the DevOps Agent API.
This module provides type-safe Python models for all API operations, enabling validation, serialization, and IDE autocomplete support.
- class devopsagent_api.models.TaskStatus(value)[source]
Bases:
str,EnumTask execution status.
- PENDING_START = 'PENDING_START'
- IN_PROGRESS = 'IN_PROGRESS'
- COMPLETED = 'COMPLETED'
- FAILED = 'FAILED'
- CANCELLED = 'CANCELLED'
- CANCELLED_ALT = 'CANCELLED'
- TIMED_OUT = 'TIMED_OUT'
- PENDING_CUSTOMER_APPROVAL = 'PENDING_CUSTOMER_APPROVAL'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.TaskType(value)[source]
Bases:
str,EnumType of task.
- INVESTIGATION = 'INVESTIGATION'
- EVALUATION = 'EVALUATION'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.TaskPriority(value)[source]
Bases:
str,EnumTask priority level.
- CRITICAL = 'CRITICAL'
- HIGH = 'HIGH'
- MEDIUM = 'MEDIUM'
- LOW = 'LOW'
- MINIMAL = 'MINIMAL'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.GoalType(value)[source]
Bases:
str,EnumType of automated goal/workflow.
- CUSTOMER_DEFINED = 'CUSTOMER_DEFINED'
- ONCALL_REPORT = 'ONCALL_REPORT'
- PREDEFINED = 'PREDEFINED'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.GoalStatus(value)[source]
Bases:
str,EnumGoal execution status.
- ACTIVE = 'ACTIVE'
- COMPLETE = 'COMPLETE'
- PAUSED = 'PAUSED'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.RecommendationStatus(value)[source]
Bases:
str,EnumRecommendation status.
- PROPOSED = 'PROPOSED'
- ACCEPTED = 'ACCEPTED'
- REJECTED = 'REJECTED'
- CLOSED = 'CLOSED'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.JournalRecordType(value)[source]
Bases:
str,EnumType of journal record.
- MESSAGE = 'message'
- PLAN = 'plan'
- ACTIVITY = 'activity'
- OBSERVATION = 'observation'
- SYMPTOM = 'symptom'
- FINDING = 'finding'
- INVESTIGATION_SUMMARY = 'investigation_summary'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.SortField(value)[source]
Bases:
str,EnumField to sort results by.
- CREATED_AT = 'CREATED_AT'
- UPDATED_AT = 'UPDATED_AT'
- PRIORITY = 'PRIORITY'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.SortOrder(value)[source]
Bases:
str,EnumSort direction.
- ASC = 'ASC'
- DESC = 'DESC'
- __format__(format_spec)
Returns format using actual value type unless __str__ has been overridden.
- class devopsagent_api.models.Metadata[source]
Bases:
BaseModelGeneric metadata container.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Reference(*, system: str | None = None, id: str | None = None)[source]
Bases:
BaseModelReference to external system.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- system: str | None
- id: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportMetadata(*, case_id: str | None = None, visual_id: str | None = None, case_url: str | None = None)[source]
Bases:
BaseModelSupport case metadata.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- case_id: str | None
- visual_id: str | None
- case_url: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.PaginationInfo(*, next_token: str | None = None, has_more: bool = False, total_count: int | None = None)[source]
Bases:
BaseModelPagination metadata.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- has_more: bool
- total_count: int | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Task(*, agent_space_id: str, task_id: str, execution_id: str | None = None, title: Annotated[str, MinLen(min_length=1), MaxLen(max_length=500)], description: Annotated[str, MaxLen(max_length=5000)], task_type: TaskType, priority: TaskPriority = TaskPriority.MEDIUM, status: TaskStatus, created_at: str, updated_at: str, version: Annotated[int, Ge(ge=0)], metadata: Metadata | None = None, reference: Reference | None = None, support_metadata: SupportMetadata | None = None)[source]
Bases:
BaseModelComplete task representation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str
- execution_id: str | None
- title: str
- description: str
- priority: TaskPriority
- status: TaskStatus
- created_at: str
- updated_at: str
- version: int
- support_metadata: SupportMetadata | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskFilter(*, task_type: List[TaskType] | None = None, status: List[TaskStatus] | None = None, priority: List[TaskPriority] | None = None, created_after: str | None = None, created_before: str | None = None, updated_after: str | None = None, updated_before: str | None = None)[source]
Bases:
BaseModelFilter criteria for task queries.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- status: List[TaskStatus] | None
- priority: List[TaskPriority] | None
- created_after: str | None
- created_before: str | None
- updated_after: str | None
- updated_before: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskListRequest(*, agent_space_id: str, limit: Annotated[int | None, Ge(ge=1), Le(le=1000)] = None, next_token: str | None = None, sort_field: SortField | None = SortField.CREATED_AT, order: SortOrder | None = SortOrder.DESC, filter: TaskFilter | None = None)[source]
Bases:
BaseModelRequest for listing tasks.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- limit: int | None
- next_token: str | None
- filter: TaskFilter | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskListResponse(*, tasks: ~typing.List[~devopsagent_api.models.Task] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelResponse from task listing.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskCreateRequest(*, title: Annotated[str, MinLen(min_length=1), MaxLen(max_length=500)], description: Annotated[str, MaxLen(max_length=5000)], task_type: TaskType, priority: TaskPriority | None = TaskPriority.MEDIUM, metadata: Metadata | None = None)[source]
Bases:
BaseModelRequest to create a new task.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- title: str
- description: str
- priority: TaskPriority | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskCreateResponse(*, task: Task)[source]
Bases:
BaseModelResponse from task creation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskUpdateRequest(*, agent_space_id: str, task_id: str, task_status: TaskStatus | None = None, current_version: int | None = None, metadata: Metadata | None = None, support_metadata: SupportMetadata | None = None)[source]
Bases:
BaseModelRequest to update a task.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str
- task_status: TaskStatus | None
- current_version: int | None
- support_metadata: SupportMetadata | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TaskUpdateResponse(*, task: Task)[source]
Bases:
BaseModelResponse from task update.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Goal(*, goal_id: str, goal_type: GoalType, title: str, status: GoalStatus, execution_status: str | None = None, last_task_id: str | None = None, last_evaluated_at: str | None = None, created_at: str, updated_at: str)[source]
Bases:
BaseModelAutomated goal/workflow representation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- goal_id: str
- title: str
- status: GoalStatus
- execution_status: str | None
- last_task_id: str | None
- last_evaluated_at: str | None
- created_at: str
- updated_at: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.GoalList(*, goals: ~typing.List[~devopsagent_api.models.Goal] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelList of goals.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.GoalListRequest(*, agent_space_id: str, limit: Annotated[int | None, Ge(ge=1), Le(le=100)] = None, next_token: str | None = None, goal_type: GoalType | None = None, status: GoalStatus | None = None, execution_status: str | None = None)[source]
Bases:
BaseModelRequest for listing goals.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- limit: int | None
- next_token: str | None
- status: GoalStatus | None
- execution_status: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.GoalListResponse(*, goals: ~typing.List[~devopsagent_api.models.Goal] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelResponse from goal listing.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationSummary(*, title: str, category: str, overview: str, background: str | None = None, next_steps: str | None = None, considerations: str | None = None, action_plan: str | None = None, affected_incidents: List[str] | None = None)[source]
Bases:
BaseModelRecommendation summary content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- title: str
- category: str
- overview: str
- background: str | None
- next_steps: str | None
- considerations: str | None
- action_plan: str | None
- affected_incidents: List[str] | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationContent(*, summary: RecommendationSummary)[source]
Bases:
BaseModelRecommendation content structure.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- summary: RecommendationSummary
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Recommendation(*, recommendation_id: str, title: str, status: RecommendationStatus, priority: TaskPriority, content: RecommendationContent, goal_id: str | None = None, goal_version: int | None = None, created_at: str, updated_at: str, version: int)[source]
Bases:
BaseModelRecommendation representation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- recommendation_id: str
- title: str
- status: RecommendationStatus
- priority: TaskPriority
- content: RecommendationContent
- goal_id: str | None
- goal_version: int | None
- created_at: str
- updated_at: str
- version: int
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationList(*, recommendations: ~typing.List[~devopsagent_api.models.Recommendation] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelList of recommendations.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- recommendations: List[Recommendation]
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationListRequest(*, agent_space_id: str, limit: Annotated[int | None, Ge(ge=1), Le(le=100)] = None, next_token: str | None = None, task_id: str | None = None, goal_id: str | None = None, status: RecommendationStatus | None = None, priority: TaskPriority | None = None)[source]
Bases:
BaseModelRequest for listing recommendations.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- limit: int | None
- next_token: str | None
- task_id: str | None
- goal_id: str | None
- status: RecommendationStatus | None
- priority: TaskPriority | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationListResponse(*, recommendations: ~typing.List[~devopsagent_api.models.Recommendation] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelResponse from recommendation listing.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- recommendations: List[Recommendation]
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationUpdateRequest(*, agent_space_id: str, recommendation_id: str, client_token: str | None = None, status: RecommendationStatus, additional_context: str | None = None)[source]
Bases:
BaseModelRequest to update a recommendation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- recommendation_id: str
- client_token: str | None
- status: RecommendationStatus
- additional_context: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.RecommendationUpdateResponse(*, recommendation: Recommendation)[source]
Bases:
BaseModelResponse from recommendation update.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- recommendation: Recommendation
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.JournalRecordContent(*, type: str, id: str)[source]
Bases:
BaseModelBase class for journal record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- id: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.MessageContent(*, type: str = 'message', id: str, role: str, content: List[Dict[str, Any]], user_reference: str | None = None)[source]
Bases:
JournalRecordContentMessage record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- role: str
- content: List[Dict[str, Any]]
- user_reference: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.PlanContent(*, type: str = 'plan', id: str, title: str, description: str, activity_ids: ~typing.List[str] = <factory>)[source]
Bases:
JournalRecordContentPlan record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- title: str
- description: str
- activity_ids: List[str]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ActivityContent(*, type: str = 'activity', id: str, title: str, description: str, status: str, child_activity_ids: ~typing.List[str] = <factory>)[source]
Bases:
JournalRecordContentActivity record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- title: str
- description: str
- status: str
- child_activity_ids: List[str]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ObservationContent(*, type: str = 'observation', id: str, plan_id: str | None = None, activity_id: str | None = None, title: str, analysis: str, signals: ~typing.List[~typing.Dict[str, ~typing.Any]] = <factory>)[source]
Bases:
JournalRecordContentObservation record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- plan_id: str | None
- activity_id: str | None
- title: str
- analysis: str
- signals: List[Dict[str, Any]]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SymptomContent(*, type: str = 'symptom', id: str, title: str, description: str, start_time: str, end_time: str | None = None)[source]
Bases:
JournalRecordContentSymptom record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- title: str
- description: str
- start_time: str
- end_time: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.FindingContent(*, type: str = 'finding', id: str, title: str, description: str, supporting_observations: ~typing.List[~typing.Any] = <factory>, cascaded_cause_ids: ~typing.List[str] = <factory>, related_resources: ~typing.List[str] = <factory>)[source]
Bases:
JournalRecordContentFinding record content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- title: str
- description: str
- supporting_observations: List[Any]
- cascaded_cause_ids: List[str]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.InvestigationSummaryContent(*, type: str = 'investigation_summary', id: str, symptoms: ~typing.List[~typing.Any] = <factory>, findings: ~typing.List[~typing.Any] = <factory>, investigation_gaps: ~typing.List[~typing.Any] = <factory>)[source]
Bases:
JournalRecordContentInvestigation summary content.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- type: str
- symptoms: List[Any]
- findings: List[Any]
- investigation_gaps: List[Any]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.JournalRecord(*, agent_space_id: str, execution_id: str, record_id: str, content: str, created_at: float, record_type: JournalRecordType)[source]
Bases:
BaseModelJournal record entry.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- execution_id: str
- record_id: str
- content: str
- created_at: float
- record_type: JournalRecordType
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.JournalRecordList(*, records: ~typing.List[~devopsagent_api.models.JournalRecord] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelList of journal records.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- records: List[JournalRecord]
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.JournalRecordsRequest(*, agent_space_id: str, execution_id: str, record_type: JournalRecordType | None = None, order: SortOrder | None = SortOrder.ASC, limit: Annotated[int | None, Ge(ge=1), Le(le=1000)] = None, next_token: str | None = None)[source]
Bases:
BaseModelRequest for journal records.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- execution_id: str
- record_type: JournalRecordType | None
- limit: int | None
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.JournalRecordsResponse(*, records: ~typing.List[~devopsagent_api.models.JournalRecord] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelResponse from journal records query.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- records: List[JournalRecord]
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Execution(*, agent_space_id: str, execution_id: str, agent_sub_task: str, agent_type: str, created_at: float, updated_at: float, execution_status: str, uid: str | None = None)[source]
Bases:
BaseModelExecution metadata.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- execution_id: str
- agent_sub_task: str
- agent_type: str
- created_at: float
- updated_at: float
- execution_status: str
- uid: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ExecutionList(*, executions: ~typing.List[~devopsagent_api.models.Execution] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelList of executions.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ExecutionListRequest(*, agent_space_id: str, task_id: str | None = None, limit: Annotated[int | None, Ge(ge=1), Le(le=100)] = None, next_token: str | None = None)[source]
Bases:
BaseModelRequest for execution list.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str | None
- limit: int | None
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ExecutionListResponse(*, executions: ~typing.List[~devopsagent_api.models.Execution] = <factory>, next_token: str | None = None)[source]
Bases:
BaseModelResponse from execution list.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- next_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.IdentifierMetadata(*, account_id: str, region: str, arn: str | None = None, name: str | None = None)[source]
Bases:
BaseModelResource identifier metadata.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- account_id: str
- region: str
- arn: str | None
- name: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TopologyNode(*, identifier: str, node_metadata_id: str, type: str, resource_type: str, identifier_metadata: IdentifierMetadata)[source]
Bases:
BaseModelInfrastructure resource node.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- identifier: str
- node_metadata_id: str
- type: str
- resource_type: str
- identifier_metadata: IdentifierMetadata
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TopologyEdge(*, source: str, target: str, source_node_metadata: str, target_node_metadata: str)[source]
Bases:
BaseModelRelationship between topology nodes.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- source: str
- target: str
- source_node_metadata: str
- target_node_metadata: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.Topology(*, nodes: ~typing.List[~devopsagent_api.models.TopologyNode] = <factory>, edges: ~typing.List[~devopsagent_api.models.TopologyEdge] = <factory>)[source]
Bases:
BaseModelTopology data structure.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- nodes: List[TopologyNode]
- edges: List[TopologyEdge]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TopologyData(*, topology: Topology)[source]
Bases:
BaseModelTopology query response data.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TopologyQueryRequest(*, agent_space_id: str, query: str, variables: Dict[str, Any] | None = None)[source]
Bases:
BaseModelRequest for topology query.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- query: str
- variables: Dict[str, Any] | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.TopologyQueryResponse(*, data: TopologyData)[source]
Bases:
BaseModelResponse from topology query.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- data: TopologyData
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportLevel(*, code: str, name: str)[source]
Bases:
BaseModelAWS Support level information.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- code: str
- name: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportLevelRequest(*, agent_space_id: str, task_id: str)[source]
Bases:
BaseModelRequest for support level.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportLevelResponse(*, support_level: SupportLevel)[source]
Bases:
BaseModelResponse with support level.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- support_level: SupportLevel
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportChatRequest(*, agent_space_id: str, task_id: str, client_token: str | None = None)[source]
Bases:
BaseModelRequest to create support chat.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str
- client_token: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportChatResponse(*, chat_id: str, status: str, created_at: str)[source]
Bases:
BaseModelResponse from support chat creation.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- chat_id: str
- status: str
- created_at: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportChatEndRequest(*, agent_space_id: str, task_id: str, client_token: str | None = None, reason: str | None = None, requester: str | None = None)[source]
Bases:
BaseModelRequest to end support chat.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- agent_space_id: str
- task_id: str
- client_token: str | None
- reason: str | None
- requester: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.SupportChatEndResponse(*, status: str, ended_at: str)[source]
Bases:
BaseModelResponse from support chat ending.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- status: str
- ended_at: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class devopsagent_api.models.ErrorResponse(*, error: str, message: str, status_code: int, request_id: str | None = None)[source]
Bases:
BaseModelAPI error response.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- error: str
- message: str
- status_code: int
- request_id: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- devopsagent_api.models.parse_journal_content(content: str) MessageContent | PlanContent | ActivityContent | ObservationContent | SymptomContent | FindingContent | InvestigationSummaryContent | Dict[str, Any][source]
Parse JSON-encoded journal record content.
- Parameters:
content – JSON string from journal record
- Returns:
Parsed content object or dict if unknown type
Exceptions Module
Exception classes for the DevOps Agent API.
This module provides a comprehensive exception hierarchy that extends botocore’s exception system while adding DevOps Agent specific error handling.
- exception devopsagent_api.exceptions.DevOpsAgentError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
ClientErrorBase exception class for DevOps Agent API errors.
This extends botocore’s ClientError to provide a common base for all DevOps Agent specific exceptions while maintaining compatibility with boto3’s exception handling patterns.
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- property error_code: str | None
Get the error code from the response.
- property error_message: str | None
Get the error message from the response.
- property http_status_code: int | None
Get the HTTP status code.
- property request_id: str | None
Get the AWS request ID.
- exception devopsagent_api.exceptions.AuthenticationError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorAuthentication-related errors.
Raised when there are issues with AWS credentials, JWT generation, or credential exchange authentication flow.
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.CredentialRefreshError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
AuthenticationErrorCredential refresh errors.
Raised when automatic credential refresh fails, typically due to: - Expired AWS credentials - Network connectivity issues - Invalid agent space configuration - API service unavailability
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.JWTGenerationError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
AuthenticationErrorJWT token generation errors.
Raised when JWT token generation fails, typically due to: - Invalid AWS credentials - Insufficient IAM permissions - Network connectivity issues - Control plane API unavailability
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.CredentialExchangeError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
AuthenticationErrorCredential exchange errors.
Raised when JWT to temporary credential exchange fails, typically due to: - Expired or invalid JWT token - Authorizer service unavailability - Invalid agent space ID - Cookie/session issues
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ConfigurationError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorConfiguration and setup errors.
Raised when there are issues with library configuration, typically due to: - Missing or invalid service model files - Incorrect boto3 integration - Invalid region or endpoint configuration - Package installation issues
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ServiceRegistrationError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
ConfigurationErrorService registration errors.
Raised when the boto3 service registration fails, typically due to: - Missing service model files - Botocore integration issues - Import or initialization failures
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ModelValidationError(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
ConfigurationErrorModel validation errors.
Raised when Pydantic model validation fails, typically due to: - Invalid data types - Missing required fields - Constraint violations - Schema mismatches
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ValidationException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorRequest validation errors.
Corresponds to HTTP 400 errors from the API, raised when: - Required parameters are missing - Parameter values are invalid - Request format is incorrect - Business rule violations
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.UnauthorizedException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorAuthentication and authorization errors.
Corresponds to HTTP 401/403 errors from the API, raised when: - Invalid or missing credentials - Insufficient permissions - Expired authentication - Invalid agent space access
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ResourceNotFoundException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorResource not found errors.
Corresponds to HTTP 404 errors from the API, raised when: - Task ID does not exist - Agent space ID is invalid - Recommendation ID not found - Execution ID is missing
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ConflictException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorResource conflict errors.
Corresponds to HTTP 409 errors from the API, raised when: - Resource already exists - Version conflicts in updates - Concurrent modification issues
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.ThrottlingException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorRate limiting errors.
Corresponds to HTTP 429 errors from the API, raised when: - Request rate exceeds limits - Burst limits exceeded - Backoff required
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.InternalServerException(error_response: Dict[str, Any], operation_name: str, service_name: str = 'community-devops-agent', **kwargs)[source]
Bases:
DevOpsAgentErrorInternal server errors.
Corresponds to HTTP 500 errors from the API, raised when: - Unexpected server errors - Service unavailability - Database or backend issues
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
Bases:
DevOpsAgentErrorService unavailable errors.
Corresponds to HTTP 503 errors from the API, raised when: - Service maintenance - Temporary outages - Capacity issues
Initialize the DevOps Agent error.
- Parameters:
error_response – Error response dictionary
operation_name – Name of the operation that failed
service_name – Service name (defaults to community-devops-agent)
**kwargs – Additional arguments passed to ClientError
- exception devopsagent_api.exceptions.NetworkError(**kwargs)[source]
Bases:
BotoCoreErrorNetwork and connectivity errors.
Extends BotoCoreError for network-related issues that occur before reaching the API service.
- exception devopsagent_api.exceptions.ConnectionError(**kwargs)[source]
Bases:
NetworkErrorConnection establishment errors.
Raised when unable to establish connection to API endpoints, typically due to: - DNS resolution failures - Network connectivity issues - Firewall or proxy problems - SSL/TLS handshake failures
- exception devopsagent_api.exceptions.TimeoutError(**kwargs)[source]
Bases:
NetworkErrorRequest timeout errors.
Raised when requests exceed configured timeouts, typically due to: - Slow network connections - API service overload - Large response payloads - Network congestion
- devopsagent_api.exceptions.handle_client_error(error: ClientError) DevOpsAgentError[source]
Convert botocore ClientError to DevOpsAgentError.
This utility function takes a standard botocore ClientError and converts it to the appropriate DevOpsAgentError subclass.
- Parameters:
error – Original ClientError from botocore
- Returns:
Appropriate DevOpsAgentError subclass
- Raises:
DevOpsAgentError – Converted exception
Loaders Module
Custom service loaders for boto3 service integration.
This module contains custom loader implementations for registering the Community DevOps Agent service with boto3.
- class devopsagent_api.loaders.ServiceLoader(service_name: str)[source]
Bases:
objectLoads service model files for community AWS services.
Initialize the service loader for a specific service.
- SERVICES = {'community-aidevops': {'api_version': '2018-05-10', 'service_name': 'community-aidevops'}, 'community-devops-agent': {'api_version': '2025-12-09', 'service_name': 'community-devops-agent'}}
- load_service_model(type_name: str = 'service-2') Dict[str, Any][source]
Load a service model file.
- Parameters:
type_name – The type of model to load (e.g., ‘service-2’, ‘paginators-1’)
- Returns:
The loaded service model as a dictionary
Service loader for registering community services with boto3.
- class devopsagent_api.loaders.service_loader.ServiceLoader(service_name: str)[source]
Bases:
objectLoads service model files for community AWS services.
Initialize the service loader for a specific service.
- SERVICES = {'community-aidevops': {'api_version': '2018-05-10', 'service_name': 'community-aidevops'}, 'community-devops-agent': {'api_version': '2025-12-09', 'service_name': 'community-devops-agent'}}
- load_service_model(type_name: str = 'service-2') Dict[str, Any][source]
Load a service model file.
- Parameters:
type_name – The type of model to load (e.g., ‘service-2’, ‘paginators-1’)
- Returns:
The loaded service model as a dictionary