sagemaker

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 24, 2026 License: MIT Imports: 28 Imported by: 0

README

SageMaker

Parity grade: A · SDK aws-sdk-go-v2/service/sagemaker@v1.263.2 · last audited 2026-08-08 (5f91d37c7)

Coverage

Metric Value
PARITY entries audited 69 (69 ok)
Feature families 32 (9 ok, 23 partial)
Known gaps 22
Deferred items 5
Resource leaks clean
Known gaps
  • Pagination across the service is a hand-rolled integer-offset NextToken (parseNextToken/strconv.Atoi) rather than pkgs/page's opaque-token helper. Functionally correct (AWS clients treat NextToken as opaque) and internally consistent, but is a pkgs-catalog convention deviation across ~15 call sites. Not fixed this pass — refactor is cross-cutting and out of budget for a single-family sweep. (no bd issue filed yet)
  • ProductionVariantSummary.VariantStatus is populated with a single synthetic {Status: "Creating"|"InService"} entry, not a full AWS VariantStatus enum/message model (StatusMessage is always empty, no DeployedImages/CapacityReservationConfig/ManagedInstanceScaling/RoutingConfig fields). Sufficient for status-polling clients; deeper fidelity deferred. (no bd issue filed yet)
  • parity-4: AIBenchmarkJob's BenchmarkTarget/OutputConfig/NetworkConfig, AIRecommendationJob's ModelSource/OutputConfig/PerformanceTarget/ComputeSpec/InferenceSpecification, and AIWorkloadConfig's AIWorkloadConfigs/DatasetConfig are all stored+echoed as opaque json.RawMessage rather than modeled as fully-typed structs (same convention as algorithms.go's TrainingSpecification/InferenceSpecification/ValidationSpecification). Every field the client sends round-trips exactly; the only thing not reproduced is AWS server-synthesized sub-fields that don't exist in the Create input at all (e.g. AIBenchmarkOutputResult.CloudWatchLogs). Not a wire-shape bug for any field a client actually populates, but real if a client depends on those server-only sub-fields appearing. (no bd issue filed yet)
  • parity-4: AIRecommendationJob.Recommendations ([]types.AIRecommendation) is a real, always-empty slice — this backend never fabricates optimization recommendations, deployment configs, or performance-metric numbers a client could mistake for a measured result. A client polling DescribeAIRecommendationJob for actual recommendations will never see any, even after the job reaches Completed. Deliberate per this campaign's 'no fabricated metrics' rule, but is a real functional gap for any test asserting recommendation content. (no bd issue filed yet)
  • parity-4: DescribeJobSchemaVersion/ListJobSchemaVersions serve a single synthetic JobConfigSchemaVersion ("1.0") with a generic, not-per-category JSON-schema document for every JobCategory — AWS does not publish real per-category schema content anywhere in the SDK module, so there is no ground truth to model against. CreateJob does validate JobConfigSchemaVersion against this same registry (real ResourceNotFound if unknown), so the three ops are at least internally consistent, just not a reproduction of AWS's actual (unpublished) schema catalog. (no bd issue filed yet)
  • parity-5: DescribePipeline never returns PipelineVersionDescription/PipelineVersionDisplayName/CreatedBy/LastModifiedBy (PipelineVersionId input + LastRunTime output FIXED parity-6, see Notes). ListPipelines' PipelineSummary is also missing PipelineDescription/PipelineDisplayName/RoleArn/LastExecutionTime (real optional PipelineSummary fields) and has a PipelineStatus field that does not exist on the real type at all (harmless for JSON-protocol clients, which ignore unknown fields, but not a reproduction of AWS's shape). (no bd issue filed yet)
  • parity-5: TrialComponent/Experiment/Trial's CreatedBy/LastModifiedBy/Source/ExperimentSource/TrialSource (types.UserContext / *Source ARN+type pairs) are not modeled at all — there is no IAM-identity or resource-provenance model in this backend to honestly derive them from (class d, not fabricated). (no bd issue filed yet)
  • parity-6: feature_store's UpdateFeatureGroup does not accept OnlineStoreConfigUpdate/ThroughputConfigUpdate (CreateFeatureGroupInput's OnlineStoreConfig/OfflineStoreConfig/ThroughputConfig FIXED parity-6, see Notes — this is the separate Update-path pair of fields, out of that fix's scope) — nor LastUpdateStatus/OfflineStoreStatus/FailureReason/OnlineStoreTotalSizeBytes (DescribeFeatureGroupOutput fields describing async store-creation progress this backend has no notion of, since store creation is synchronous here). (no bd issue filed yet)
  • gopherstack-i359 (session 3, re-confirmed): cluster's RestrictedInstanceGroups/RestrictedInstanceGroupsConfig (CreateClusterInput/UpdateClusterInput/DescribeClusterOutput) remain accept-and-drop — Orchestrator/AutoScaling/NodeProvisioningMode/TieredStorageConfig were fixed in session 2 (see cluster: note above); PipelineDefinitionS3Location was fixed for real in session 3 (see pipeline_pipeline_execution: note above). RestrictedInstanceGroups was re-examined a third time this session rather than deferred by default, and the scope is confirmed larger than session 2's write-up: ClusterRestrictedInstanceGroupSpecification (types/types.go:5622) nests EnvironmentConfig->FSxLustreConfig (2 required fields), a real 3-member ClusterInstanceStorageConfig union (types/types.go:5107, EbsVolumeConfig/FsxLustreConfig/FsxOpenZfsConfig — confirmed a genuine Go interface union, not a struct-with-business-rule like ClusterOrchestrator turned out to be), and ScheduledUpdateConfig->DeploymentConfiguration->RollingDeploymentPolicy->CapacitySizeConfig (x2)/AutoRollbackConfiguration []AlarmDetails — 8 new leaf/union types, not 6, once the union's 3 members and RollingDeploymentPolicy's nested CapacitySizeConfig are counted individually. On top of that, CreateClusterInput/UpdateClusterInput/DescribeClusterOutput carry a SEPARATE field this campaign had not previously named — RestrictedInstanceGroupsConfig (types/types.go:5598) -> ClusterSharedEnvironmentConfig (types/types.go:5727, a required FSxLustreConfig + a required FSxLustreDeletionPolicy enum) — meaning the honest scope of 'RestrictedInstanceGroups' is two independent top-level fields, not one. Modeling all of this without shaving any field (this campaign's explicit rule, restated for this issue) is comparable in size to the entire session-2 pass that modeled Orchestrator/AutoScaling/NodeProvisioningMode/TieredStorageConfig combined. Left entirely untouched a third time, now with this deeper accounting on record so a future pass can scope it accurately instead of re-deriving the type tree from scratch. (no bd issue filed yet)
  • parity-5: InferenceRecommendationsJob.InputConfig (fixed this pass to stop being silently dropped) is stored as opaque json.RawMessage passthrough rather than the fully-typed RecommendationJobInputConfig union (ContainerConfig/Endpoints/ModelPackageVersionArn/ModelName/...) — same convention as the parity-4 AI-job families' passthrough fields. Every field a client sends round-trips exactly; no server-synthesized sub-field is fabricated. (no bd issue filed yet)
  • parity-5: lineage's CreateAction/CreateArtifact accept no MetadataProperties field (a real, optional CreateActionInput/CreateArtifactInput field) — low-severity accept-and-drop left for a follow-up pass since the rest of this family was clean. (no bd issue filed yet)
  • parity-6: CreateAutoMLJobV2/DescribeAutoMLJobV2's AutoMLProblemTypeConfig is a 5-member tagged union (ImageClassificationJobConfig/TabularJobConfig/TextClassificationJobConfig/TextGenerationJobConfig/TimeSeriesForecastingJobConfig), each itself a materially large nested struct (e.g. TabularJobConfig alone has CandidateGenerationConfig/FeatureSpecificationS3Uri/Mode/ProblemType/TargetAttributeName/...). Carried as opaque json.RawMessage passthrough, same established convention as this file's other deeply-nested unions (ai_benchmark_job/ai_recommendation_job/inference_recommendations_job) — every field a client sends round-trips exactly; only AutoMLProblemTypeConfigName (which member is present) is derived, not the member's internal fields. (no bd issue filed yet)
  • parity-6: DescribeAutoMLJobV2Output's BestCandidate/PartialFailureReasons/ResolvedAttributes/AutoMLJobArtifacts/EndTime/FailureReason/ModelDeployResult are not modeled — these are server-synthesized/derived fields that mirror V1 DescribeAutoMLJobOutput's pre-existing, disclosed depth limit (V1 has never modeled BestCandidate/ResolvedAttributes/etc. either); not a V2-specific regression, just not newly fixed by this pass. (no bd issue filed yet)
  • parity-7 (gopherstack-oc9v): Domain's DefaultUserSettings/DefaultSpaceSettings/DomainSettings, UserProfile's UserSettings, Space's OwnershipSettings/SpaceSettings/SpaceSharingSettings, and App's ResourceSpec are all carried as opaque json.RawMessage passthrough rather than fully-typed structs — UserSettings alone has ~20 app-specific sub-configs (JupyterServerAppSettings, KernelGatewayAppSettings, CanvasAppSettings, CodeEditorAppSettings, SpaceStorageSettings, ...), each individually as large as a small family already in this file. Every field a client sends round-trips exactly; no server-synthesized sub-field is fabricated. (no bd issue filed yet)
  • parity-7 (gopherstack-oc9v): DescribeApp/DescribeDomain still omit several real optional output-only fields this pass didn't add backend state for: App's EffectiveTrustedIdentityPropagationStatus/BuiltInLifecycleConfigArn/FailureReason/LastHealthCheckTimestamp/LastUserActivityTimestamp; Domain's FailureReason/HomeEfsFileSystemId/SecurityGroupIdForDomainBoundary/SingleSignOnApplicationArn/SingleSignOnManagedApplicationInstanceId/HomeEfsFileSystemKmsKeyId (deprecated, superseded by KmsKeyId which IS modeled). These are server-derived/lifecycle fields with no synchronous backend process to derive them from truthfully; left absent rather than fabricated. (no bd issue filed yet)
  • parity-24 (gopherstack-oc9v): ProcessingInput.DatasetDefinition (AthenaDatasetDefinition/RedshiftDatasetDefinition sub-fields beyond the pre-existing DataDistributionType/InputMode) and ProcessingOutput.FeatureStoreOutput remain unmodeled/accept-and-drop — both are deep, low-traffic optional unions; NetworkConfig/ExperimentConfig/StoppingCondition (the higher-severity findings this pass) were fixed instead. (no bd issue filed yet)
  • parity-24 (gopherstack-oc9v): TransformJob's DataCaptureConfig/DataProcessing/ExperimentConfig/ModelClientConfig (all real, optional CreateTransformJobInput fields) and LabelingJobArn/AutoMLJobArn (real, optional DescribeTransformJobOutput-only fields) remain accept-and-drop or unmodeled — this pass fixed the fabricated RoleArn field and the List filter/sort surface instead, both higher severity. (no bd issue filed yet)
  • parity-24 (gopherstack-oc9v): CreateAutoMLJobInput's AutoMLJobConfig (CandidateGenerationConfig/CompletionCriteria/Mode) remains accept-and-drop on the V1 path — DataSplitConfig/SecurityConfig are already modeled (reused from CreateAutoMLJobV2) but not wired to V1 Create, since V1's own AutoMLJobConfig field is itself still unmodeled. StopAutoMLJob also transitions directly InProgress->Stopped with no intermediate Stopping state, unlike the real AutoMLJobStatus enum (which declares Stopping) and unlike this backend's own TransformJob/ProcessingJob/EdgePackagingJob FSMs — pre-existing, not introduced this pass, left as a disclosed stuck-status-class finding for a future pass. (no bd issue filed yet)
  • parity-24 (gopherstack-oc9v): DescribeEdgePackagingJobOutput's ModelArtifact/ModelSignature/PresetDeploymentOutput/EdgePackagingJobStatusMessage remain unmodeled — server-derived fields from an async packaging pipeline this backend does not simulate; left absent rather than fabricated. (no bd issue filed yet)
  • parity-25 (gopherstack-oc9v): algorithm's TrainingSpecification/InferenceSpecification/ValidationSpecification (all now required-checked/present, see families: algorithm) remain opaque json.RawMessage passthrough rather than fully-typed structs — TrainingSpecification alone nests ChannelSpecification/MetricDefinition/HyperParameterSpecification, deep and low-traffic; every field a client sends round-trips exactly. (no bd issue filed yet)
  • parity-25 (gopherstack-oc9v): model_endpoint_config_crud's CreateEndpointConfigInput.ExplainerConfig (types.ExplainerConfig -> ClarifyExplainerConfig -> ClarifyShapConfig/...) is stored+echoed as opaque json.RawMessage rather than fully modeled, same passthrough convention as algorithm's specs above; every field a client sends round-trips exactly, proven via a real-SDK-client test. (no bd issue filed yet)
  • parity-25 (gopherstack-oc9v): presigned_session's CreatePresignedDomainUrlInput.ExpiresInSeconds/LandingUri/SessionExpirationDurationInSeconds are decoded but are disclosed no-ops — CreatePresignedDomainUrlOutput has no field to reflect them into, and this backend's synthetic authorized-URL token carries no verified real query-parameter format to encode them, the same stance already established for PartnerApps' identical fields. (no bd issue filed yet)
Deferred
  • model_package_model_package_group (beyond ModelPackageStatusDetails fix; InferenceSpecification etc. not audited)
  • edge_deployment_device_fleet (EdgeDeploymentPlan portion; DeviceFleet/Device fixed parity-earlier, EdgePackagingJob's Create/List wire surface fixed parity-24 — see families: edge_deployment_device_fleet)
  • training_plan (beyond timestamp fix)
  • monitoring_schedule_workteam_compilation_job (Workteam portion; MonitoringSchedule/CompilationJob timestamps fixed)
  • inference_recommendations_edge_packaging (EdgePackagingJob portion only; InferenceRecommendationsJob itself audited+fixed parity-5)

More

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAlgorithmNotFound is returned when an algorithm does not exist.
	ErrAlgorithmNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrAlgorithmAlreadyExists is returned when an algorithm already exists.
	ErrAlgorithmAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrAppNotFound is returned when a SageMaker app does not exist.
	ErrAppNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrAppAlreadyExists is returned when an app already exists.
	ErrAppAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrAssociationNotFound is returned when an association does not exist.
	ErrAssociationNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrAssociationAlreadyExists is returned when an association already exists.
	ErrAssociationAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrAutoMLJobNotFound is returned when an AutoML job does not exist.
	ErrAutoMLJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrAutoMLJobNotStoppable is returned when stopping an already-terminal AutoML job.
	ErrAutoMLJobNotStoppable = awserr.New("ValidationException", awserr.ErrInvalidParameter)
)
View Source
var (
	// ErrClusterNotFound is returned when a cluster does not exist.
	ErrClusterNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrClusterAlreadyExists is returned when a cluster with the same name already exists.
	ErrClusterAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrCompilationJobNotFound is returned when a compilation job does not exist.
	ErrCompilationJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrCompilationJobNotStoppable is returned when stopping an already-terminal compilation job.
	ErrCompilationJobNotStoppable = awserr.New("ValidationException", awserr.ErrInvalidParameter)
)
View Source
var (
	// ErrDeviceFleetNotFound is returned when a device fleet does not exist.
	ErrDeviceFleetNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrDeviceFleetAlreadyExists is returned when a device fleet already exists.
	ErrDeviceFleetAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrDomainNotFound is returned when a domain does not exist.
	ErrDomainNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrDomainAlreadyExists is returned when a domain already exists.
	ErrDomainAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrEdgeDeploymentPlanNotFound is returned when an edge deployment plan does not exist.
	ErrEdgeDeploymentPlanNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrEdgeDeploymentPlanAlreadyExists is returned when an edge deployment plan already exists.
	ErrEdgeDeploymentPlanAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrEdgeDeploymentStageNotFound is returned when a stage does not exist within a plan.
	ErrEdgeDeploymentStageNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
)
View Source
var (
	// ErrEdgePackagingJobNotFound is returned when an edge packaging job does not exist.
	ErrEdgePackagingJobNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrEdgePackagingJobAlreadyExists is returned when an edge packaging job already exists.
	ErrEdgePackagingJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrEndpointConfigNotFound is returned when an endpoint config does not exist.
	ErrEndpointConfigNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrEndpointConfigAlreadyExists is returned when an endpoint config already exists.
	ErrEndpointConfigAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrEndpointNotFound is returned when an endpoint does not exist.
	ErrEndpointNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrEndpointAlreadyExists is returned when an endpoint already exists.
	ErrEndpointAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrExperimentNotFound is returned when an experiment does not exist.
	ErrExperimentNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrExperimentAlreadyExists is returned when an experiment already exists.
	ErrExperimentAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrFeatureGroupNotFound is returned when a feature group does not exist.
	ErrFeatureGroupNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrFeatureGroupAlreadyExists is returned when a feature group already exists.
	ErrFeatureGroupAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrHPTuningJobNotFound is returned when an HP tuning job does not exist.
	ErrHPTuningJobNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrHPTuningJobAlreadyExists is returned when an HP tuning job already exists.
	ErrHPTuningJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrHubNotFound is returned when a hub does not exist.
	ErrHubNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrHubAlreadyExists is returned when a hub already exists.
	ErrHubAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrHubNotEmpty is returned when deleting a hub that still contains hub content.
	ErrHubNotEmpty = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrHubContentNotFound is returned when a hub content resource does not exist.
	ErrHubContentNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrHubContentAlreadyExists is returned when a hub content resource already exists.
	ErrHubContentAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrClusterSchedulerConfigNotFound is returned when a cluster scheduler config does not
	// exist. sagemaker@v1.263.2 api_op_DescribeClusterSchedulerConfig.go:1 (and
	// Update/Delete) list only ResourceNotFound as an error, not ValidationException.
	ErrClusterSchedulerConfigNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)
	// ErrClusterSchedulerConfigAlreadyExists is returned when a cluster scheduler config
	// already exists. Create's only documented error is ConflictException — see
	// api_op_CreateClusterSchedulerConfig.go's addOperation error list.
	ErrClusterSchedulerConfigAlreadyExists = awserr.New("ConflictException", ErrConflictException)
	// ErrClusterSchedulerConfigVersionConflict is returned when Update's required
	// TargetVersion doesn't match the resource's current version.
	ErrClusterSchedulerConfigVersionConflict = awserr.New("ConflictException", ErrConflictException)
)
View Source
var (
	// ErrComputeQuotaNotFound is returned when a compute quota does not exist.
	// sagemaker@v1.263.2 api_op_DescribeComputeQuota.go (and Update/Delete) list
	// only ResourceNotFound as an error, not ValidationException.
	ErrComputeQuotaNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)
	// ErrComputeQuotaAlreadyExists is returned when a compute quota already
	// exists. Create's only documented error is ConflictException.
	ErrComputeQuotaAlreadyExists = awserr.New("ConflictException", ErrConflictException)
	// ErrComputeQuotaVersionConflict is returned when Update's required
	// TargetVersion doesn't match the resource's current version.
	ErrComputeQuotaVersionConflict = awserr.New("ConflictException", ErrConflictException)
)
View Source
var (
	// ErrSMImageNotFound is returned when a SageMaker image does not exist.
	ErrSMImageNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrImageHasVersions is returned when deleting an image that still has versions.
	ErrImageHasVersions = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrImageVersionNotFound is returned when an image version does not exist.
	ErrImageVersionNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
)
View Source
var (
	// ErrInferenceComponentNotFound is returned when an inference component does not exist.
	ErrInferenceComponentNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrInferenceComponentAlreadyExists is returned when an inference component already exists.
	ErrInferenceComponentAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrInferenceRecommendationsJobNotFound is returned when the job does not exist.
	ErrInferenceRecommendationsJobNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrInferenceRecommendationsJobAlreadyExists is returned when the job already exists.
	ErrInferenceRecommendationsJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrLabelingJobNotFound is returned when a labeling job does not exist.
	ErrLabelingJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrLabelingJobAlreadyExists is returned when a labeling job already exists.
	ErrLabelingJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrSubscribedWorkteamNotFound is returned for DescribeSubscribedWorkteam,
	// since no Amazon Web Services Marketplace vendor subscriptions are modeled.
	ErrSubscribedWorkteamNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrWorkteamInUse is returned when deleting a workforce that still has work teams.
	ErrWorkteamInUse = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrActionNotFound is returned when an action does not exist.
	ErrActionNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrActionAlreadyExists is returned when an action already exists.
	ErrActionAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrArtifactNotFound is returned when a lineage artifact does not exist.
	ErrArtifactNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrArtifactAlreadyExists is returned when a lineage artifact already exists.
	ErrArtifactAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrContextNotFound is returned when a lineage context does not exist.
	ErrContextNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrContextAlreadyExists is returned when a lineage context already exists.
	ErrContextAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrLineageGroupNotFound is returned when a lineage group does not exist.
	ErrLineageGroupNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrLineageGroupPolicyNotFound is returned when a lineage group has no resource policy attached.
	ErrLineageGroupPolicyNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
)
View Source
var (
	// ErrMlflowTrackingServerNotFound is returned when an MLflow tracking server does not exist.
	ErrMlflowTrackingServerNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrMlflowAppNotFound is returned when an MLflow App does not exist.
	ErrMlflowAppNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
)
View Source
var (
	// ErrModelPackageNotFound is returned when a model package does not exist.
	ErrModelPackageNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrModelPackageGroupNotFound is returned when a model package group does not exist.
	ErrModelPackageGroupNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrModelPackageGroupHasPackages is returned when deleting a group that
	// still has packages. DeleteModelPackageGroup's only documented error is
	// ConflictException (botocore sagemaker/2017-07-24@1.43.56
	// service-2.json's DeleteModelPackageGroup.errors), not the generic
	// ResourceInUse handleError emits for awserr.ErrConflict — wrap the
	// service's ErrConflictException sentinel so handleError's special case
	// (see errors.go) picks the accurate wire type.
	ErrModelPackageGroupHasPackages = awserr.New("ConflictException", ErrConflictException)
)
View Source
var (
	// ErrModelNotFound is returned when a model does not exist.
	ErrModelNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrModelAlreadyExists is returned when a model already exists.
	ErrModelAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrDataQualityJobDefNotFound is returned when a data quality job definition does not exist.
	ErrDataQualityJobDefNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrDataQualityJobDefExists is returned when creating a data quality job definition whose name is taken.
	ErrDataQualityJobDefExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrModelBiasJobDefNotFound is returned when a model bias job definition does not exist.
	ErrModelBiasJobDefNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrModelBiasJobDefExists is returned when creating a model bias job definition whose name is taken.
	ErrModelBiasJobDefExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrModelQualityJobDefNotFound is returned when a model quality job definition does not exist.
	ErrModelQualityJobDefNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrModelQualityJobDefExists is returned when creating a model quality job definition whose name is taken.
	ErrModelQualityJobDefExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrModelExplainJobDefNotFound is returned when a model explainability job definition does not exist.
	ErrModelExplainJobDefNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrModelExplainJobDefExists is returned when creating a model explainability job definition whose name is taken.
	ErrModelExplainJobDefExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrMonitoringScheduleNotFound is returned when a monitoring schedule does not exist.
	ErrMonitoringScheduleNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrMonitoringScheduleAlreadyStopped is returned when stopping an already-stopped schedule.
	ErrMonitoringScheduleAlreadyStopped = awserr.New("ValidationException", awserr.ErrInvalidParameter)
	// ErrMonitoringScheduleNotStopped is returned when starting a non-stopped schedule.
	ErrMonitoringScheduleNotStopped = awserr.New("ValidationException", awserr.ErrInvalidParameter)
)
View Source
var (
	// ErrNotebookNotFound is returned when a notebook instance does not exist.
	ErrNotebookNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrNotebookAlreadyExists is returned when a notebook instance already exists.
	ErrNotebookAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
	// ErrNotebookLifecycleConfigNotFound is returned when a lifecycle config does not exist.
	ErrNotebookLifecycleConfigNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrNotebookLifecycleConfigAlreadyExists is returned when a lifecycle config already exists.
	ErrNotebookLifecycleConfigAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrPipelineNotFound is returned when a pipeline does not exist.
	ErrPipelineNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrPipelineAlreadyExists is returned when a pipeline already exists.
	// CreatePipeline's error list is ConflictException, not ResourceInUse
	// (botocore sagemaker/2017-07-24@1.43.56 service-2.json's
	// CreatePipeline.errors) — wrap ErrConflictException so handleError's
	// special case (see errors.go) picks the accurate wire type.
	ErrPipelineAlreadyExists = awserr.New("ConflictException", ErrConflictException)
	// ErrPipelineExecutionNotFound is returned when a pipeline execution does not exist.
	ErrPipelineExecutionNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
)
View Source
var (
	// ErrProcessingJobNotFound is returned when a processing job does not exist.
	ErrProcessingJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrProcessingJobAlreadyExists is returned when a processing job already exists.
	ErrProcessingJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrTrainingJobNotFound is returned when a training job does not exist.
	ErrTrainingJobNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrTrainingJobAlreadyExists is returned when a training job already exists.
	ErrTrainingJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrTransformJobNotFound is returned when a transform job does not exist.
	ErrTransformJobNotFound = awserr.New("ValidationException", awserr.ErrNotFound)
	// ErrTransformJobAlreadyExists is returned when a transform job already exists.
	ErrTransformJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrTrialComponentNotFound is returned when a trial component does not exist.
	ErrTrialComponentNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrTrialComponentAlreadyExists is returned when a trial component already exists.
	ErrTrialComponentAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrTrialNotFound is returned when a trial does not exist.
	ErrTrialNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrTrialAlreadyExists is returned when a trial already exists.
	ErrTrialAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var (
	// ErrUserProfileNotFound is returned when a user profile does not exist.
	ErrUserProfileNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)
	// ErrUserProfileAlreadyExists is returned when a user profile already exists.
	ErrUserProfileAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)
)
View Source
var ErrAIBenchmarkJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)

ErrAIBenchmarkJobAlreadyExists is returned on a duplicate AIBenchmarkJobName.

View Source
var ErrAIBenchmarkJobNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)

ErrAIBenchmarkJobNotFound is returned when an AI benchmark job does not exist. Field-diffed against deserializers.go: Describe/Stop/Delete AIBenchmarkJob all recognize only a "ResourceNotFound" wire exception.

View Source
var ErrAIRecommendationJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)

ErrAIRecommendationJobAlreadyExists is returned on a duplicate AIRecommendationJobName.

View Source
var ErrAIRecommendationJobNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)

ErrAIRecommendationJobNotFound is returned when an AI recommendation job does not exist. Field-diffed against deserializers.go: Describe/Stop/ Delete AIRecommendationJob all recognize only a "ResourceNotFound" wire exception.

View Source
var ErrAIWorkloadConfigAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)

ErrAIWorkloadConfigAlreadyExists is returned on a duplicate AIWorkloadConfigName. AWS resource-creation conflicts uniformly surface as ResourceInUse, which handleError already maps correctly for awserr.ErrConflict.

View Source
var ErrAIWorkloadConfigNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)

ErrAIWorkloadConfigNotFound is returned when an AI workload configuration does not exist. Field-diffed against aws-sdk-go-v2/service/sagemaker's deserializers.go: DescribeAIWorkloadConfig's error deserializer only recognizes a "ResourceNotFound" wire exception, so this wraps the shared ErrResourceNotFound sentinel rather than the generic ValidationException path the rest of the service's older CRUD families take.

View Source
var ErrAppImageConfigNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrAppImageConfigNotFound is returned when an app image config does not exist.

View Source
var ErrCodeRepositoryNotFound = awserr.New("ValidationException", awserr.ErrNotFound)

ErrCodeRepositoryNotFound is returned when a code repository does not exist.

View Source
var ErrConflictException = awserr.New("ConflictException", awserr.ErrConflict)

ErrConflictException is the shared base sentinel for the resources whose real conflict error is ConflictException rather than the ResourceInUse handleError emits for the generic awserr.ErrConflict sentinel: verified per-resource against botocore sagemaker/2017-07-24@1.43.56 service-2.json's operation error lists — ClusterSchedulerConfig and ComputeQuota (Create/UpdateClusterSchedulerConfig, Create/UpdateComputeQuota), ModelPackageGroup (DeleteModelPackageGroup), and Pipeline (Create/Update/DeletePipeline). Most other "already exists"/"in use" sentinels in this service do declare ResourceInUse and are unaffected; see gopherstack-kbxx for the resource-by-resource audit. handleError special-cases errors.Is(err, ErrConflictException) ahead of the generic ErrConflict branch, mirroring ErrResourceNotFound above.

View Source
var ErrDeviceNotFound = awserr.New("ValidationException", awserr.ErrNotFound)

ErrDeviceNotFound is returned when a device does not exist.

View Source
var ErrFlowDefinitionNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrFlowDefinitionNotFound is returned when a flow definition does not exist.

View Source
var ErrHumanTaskUINotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrHumanTaskUINotFound is returned when a human task UI does not exist.

View Source
var ErrInferenceExperimentNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrInferenceExperimentNotFound is returned when an inference experiment does not exist.

View Source
var ErrJobAlreadyExists = awserr.New("ResourceInUse", awserr.ErrConflict)

ErrJobAlreadyExists is returned on a duplicate JobName.

View Source
var ErrJobNotFound = awserr.New("ResourceNotFound", ErrResourceNotFound)

ErrJobNotFound is returned when a Job does not exist (or exists under a different JobCategory than requested — see resolveJobLocked). Field-diffed against deserializers.go: Describe/Stop/Delete/CreateJob all recognize a "ResourceNotFound" wire exception.

View Source
var ErrJobRunning = awserr.New("ResourceInUse", awserr.ErrConflict)

ErrJobRunning is returned by DeleteJob when the job is still InProgress — real AWS requires StopJob first ("If the job is currently running, you must stop it before deleting it by calling StopJob", confirmed against DeleteJob's doc comment and its "ResourceInUse" error branch).

View Source
var ErrModelCardExportJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrModelCardExportJobNotFound is returned when a model card export job ARN does not exist.

View Source
var ErrModelCardNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrModelCardNotFound is returned when a model card does not exist.

View Source
var ErrModelPackageGroupPolicyNotFound = awserr.New("ValidationException", awserr.ErrNotFound)

ErrModelPackageGroupPolicyNotFound is returned when a model package group has no resource policy attached.

View Source
var ErrNilAppContext = errors.New("sagemaker: nil AppContext")

ErrNilAppContext is returned by Init when a nil AppContext is passed.

View Source
var ErrOptimizationJobNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrOptimizationJobNotFound is returned when an optimization job does not exist.

View Source
var ErrPartnerAppNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrPartnerAppNotFound is returned when a partner app does not exist.

View Source
var ErrProjectNotFound = awserr.New("ValidationException", awserr.ErrNotFound)

ErrProjectNotFound is returned when a project does not exist.

View Source
var ErrReservedCapacityNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrReservedCapacityNotFound is returned when a reserved capacity ARN does not exist.

View Source
var ErrResourceNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrResourceNotFound is the shared base sentinel for the AIBenchmarkJob, AIRecommendationJob, AIWorkloadConfig, and generic Job families (all added in the SDK bump that introduced CreateJob et al.). Field-diffed against aws-sdk-go-v2/service/sagemaker's deserializers.go: every one of these ops' error deserializers recognizes a "ResourceNotFound" wire exception on not-found — distinct from "ValidationException", which handleError still emits for the generic awserr.ErrNotFound sentinel used by the rest of the service's (older, previously-audited) CRUD families. handleError special-cases errors.Is(err, ErrResourceNotFound) ahead of the generic ErrNotFound branch so only these new families get the accurate wire type; nothing else in the service constructs an error wrapping this sentinel.

View Source
var ErrSpaceNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrSpaceNotFound is returned when a space does not exist.

View Source
var ErrStudioLifecycleConfigNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrStudioLifecycleConfigNotFound is returned when a studio lifecycle config does not exist.

View Source
var ErrTrainingPlanNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrTrainingPlanNotFound is returned when a training plan does not exist.

View Source
var ErrValidation = awserr.New("ValidationException", awserr.ErrInvalidParameter)

ErrValidation is returned for invalid input parameters.

View Source
var ErrWorkforceNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrWorkforceNotFound is returned when a workforce does not exist.

View Source
var ErrWorkteamNotFound = awserr.New("ResourceNotFound", awserr.ErrNotFound)

ErrWorkteamNotFound is returned when a workteam does not exist.

Functions

This section is empty.

Types

type AIBenchmarkJob added in v1.2.0

type AIBenchmarkJob struct {
	CreationTime               time.Time         `json:"CreationTime"`
	StartTime                  *time.Time        `json:"StartTime,omitempty"`
	EndTime                    *time.Time        `json:"EndTime,omitempty"`
	Tags                       map[string]string `json:"Tags,omitempty"`
	AIBenchmarkJobName         string            `json:"AIBenchmarkJobName"`
	AIBenchmarkJobArn          string            `json:"AIBenchmarkJobArn"`
	AIBenchmarkJobStatus       string            `json:"AIBenchmarkJobStatus"`
	AIWorkloadConfigIdentifier string            `json:"AIWorkloadConfigIdentifier"`
	RoleArn                    string            `json:"RoleArn"`
	FailureReason              string            `json:"FailureReason,omitempty"`
	BenchmarkTarget            json.RawMessage   `json:"BenchmarkTarget"`
	OutputConfig               json.RawMessage   `json:"OutputConfig"`
	NetworkConfig              json.RawMessage   `json:"NetworkConfig,omitempty"`
}

AIBenchmarkJob represents a SageMaker AI benchmark job. BenchmarkTarget, OutputConfig, and NetworkConfig are stored as opaque JSON (the json.RawMessage passthrough convention already used by algorithms.go): BenchmarkTarget and NetworkConfig are union/config shapes whose only server-computed sub-fields (e.g. OutputConfig's CloudWatchLogs) are optional in DescribeAIBenchmarkJobOutput, so echoing the client's Create payload back verbatim is wire-accurate for every field a real client would read.

func (*AIBenchmarkJob) MarshalJSON added in v1.2.0

func (j *AIBenchmarkJob) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/StartTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings.

func (*AIBenchmarkJob) UnmarshalJSON added in v1.2.0

func (j *AIBenchmarkJob) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of AIBenchmarkJob.MarshalJSON, used by persistence.go's snapshot restore path.

type AIRecommendationJob added in v1.2.0

type AIRecommendationJob struct {
	CreationTime               time.Time         `json:"CreationTime"`
	StartTime                  *time.Time        `json:"StartTime,omitempty"`
	EndTime                    *time.Time        `json:"EndTime,omitempty"`
	OptimizeModel              *bool             `json:"OptimizeModel,omitempty"`
	Tags                       map[string]string `json:"Tags,omitempty"`
	AIRecommendationJobName    string            `json:"AIRecommendationJobName"`
	AIRecommendationJobArn     string            `json:"AIRecommendationJobArn"`
	AIRecommendationJobStatus  string            `json:"AIRecommendationJobStatus"`
	AIWorkloadConfigIdentifier string            `json:"AIWorkloadConfigIdentifier"`
	RoleArn                    string            `json:"RoleArn"`
	FailureReason              string            `json:"FailureReason,omitempty"`
	ModelSource                json.RawMessage   `json:"ModelSource"`
	OutputConfig               json.RawMessage   `json:"OutputConfig"`
	PerformanceTarget          json.RawMessage   `json:"PerformanceTarget,omitempty"`
	ComputeSpec                json.RawMessage   `json:"ComputeSpec,omitempty"`
	InferenceSpecification     json.RawMessage   `json:"InferenceSpecification,omitempty"`
	AdapterSource              json.RawMessage   `json:"AdapterSource,omitempty"`
}

AIRecommendationJob represents a SageMaker AI recommendation job. ModelSource, OutputConfig, PerformanceTarget, ComputeSpec, and InferenceSpecification are stored as opaque JSON (the json.RawMessage passthrough convention already used by algorithms.go): all are union/config shapes whose server-computed sub-fields are optional in DescribeAIRecommendationJobOutput, so echoing the client's Create payload back verbatim is wire-accurate. Recommendations is intentionally never populated by this backend — a real job would fill it with measured benchmark results, which this synthetic backend does not fabricate.

func (*AIRecommendationJob) MarshalJSON added in v1.2.0

func (j *AIRecommendationJob) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/StartTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings.

func (*AIRecommendationJob) UnmarshalJSON added in v1.2.0

func (j *AIRecommendationJob) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of AIRecommendationJob.MarshalJSON, used by persistence.go's snapshot restore path.

type AIWorkloadConfig added in v1.2.0

type AIWorkloadConfig struct {
	CreationTime         time.Time         `json:"CreationTime"`
	Tags                 map[string]string `json:"Tags,omitempty"`
	AIWorkloadConfigName string            `json:"AIWorkloadConfigName"`
	AIWorkloadConfigArn  string            `json:"AIWorkloadConfigArn"`
	WorkloadSpec         json.RawMessage   `json:"AIWorkloadConfigs,omitempty"`
	DatasetConfig        json.RawMessage   `json:"DatasetConfig,omitempty"`
}

AIWorkloadConfig represents a SageMaker AI workload configuration. WorkloadSpec and DatasetConfig are stored as opaque JSON (mirroring the json.RawMessage passthrough convention already used by algorithms.go for deeply-nested union/config shapes) — the client's Create payload is echoed back verbatim on Describe, which is wire-accurate for every field the client actually sent (both are optional in the real API and have no server-synthesized sub-fields).

func (*AIWorkloadConfig) MarshalJSON added in v1.2.0

func (c *AIWorkloadConfig) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime as an AWS awsjson1.1 epoch-seconds number and Tags as the []{Key,Value} list DescribeAIWorkloadConfigOutput.Tags ([]types.Tag) declares -- the embedded map[string]string field would otherwise serialize as a JSON object, which a real client's []types.Tag deserializer rejects outright.

func (*AIWorkloadConfig) UnmarshalJSON added in v1.2.0

func (c *AIWorkloadConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of AIWorkloadConfig.MarshalJSON, used by persistence.go's snapshot restore path.

type AcceleratorPartitionConfig added in v1.3.1

type AcceleratorPartitionConfig struct {
	Type  string `json:"Type"`
	Count int32  `json:"Count"`
}

AcceleratorPartitionConfig is a ComputeQuotaResourceConfig's fractional-GPU allocation. sagemaker@v1.263.2 types/types.go:11 (accelerator_partition_config.go).

type Action

type Action struct {
	CreationTime       time.Time           `json:"CreationTime"`
	LastModifiedTime   time.Time           `json:"LastModifiedTime"`
	Tags               map[string]string   `json:"Tags,omitempty"`
	Properties         map[string]string   `json:"Properties,omitempty"`
	MetadataProperties *MetadataProperties `json:"MetadataProperties,omitempty"`
	Source             ActionSource        `json:"Source"`
	ActionName         string              `json:"ActionName"`
	ActionArn          string              `json:"ActionArn"`
	ActionType         string              `json:"ActionType"`
	Description        string              `json:"Description,omitempty"`
	Status             string              `json:"Status,omitempty"`
}

Action represents a SageMaker ML lineage action.

type ActionSource

type ActionSource struct {
	SourceURI  string `json:"SourceUri"`
	SourceType string `json:"SourceType,omitempty"`
}

ActionSource represents the source of a SageMaker action.

type AddClusterNodeSpec added in v1.5.0

type AddClusterNodeSpec struct {
	InstanceGroupName      string
	IncrementTargetCountBy int32
}

AddClusterNodeSpec is the backend-facing shape of one BatchAddClusterNodes NodesToAdd entry (types.AddClusterNodeSpecification, types/types.go:79-99, sagemaker@v1.263.2). AvailabilityZones/InstanceTypes are decoded by the handler for wire-shape fidelity but are a disclosed no-op here: this backend places every added node using its instance group's InstanceType, the same convention CreateCluster's node provisioning already uses (newClusterNode).

type Algorithm

type Algorithm struct {
	CreationTime            time.Time              `json:"CreationTime"`
	Tags                    map[string]string      `json:"Tags,omitempty"`
	AlgorithmName           string                 `json:"AlgorithmName"`
	AlgorithmArn            string                 `json:"AlgorithmArn"`
	AlgorithmDescription    string                 `json:"AlgorithmDescription,omitempty"`
	AlgorithmStatus         string                 `json:"AlgorithmStatus"`
	ProductID               string                 `json:"ProductId,omitempty"`
	AlgorithmStatusDetails  AlgorithmStatusDetails `json:"AlgorithmStatusDetails"`
	TrainingSpecification   json.RawMessage        `json:"TrainingSpecification,omitempty"`
	InferenceSpecification  json.RawMessage        `json:"InferenceSpecification,omitempty"`
	ValidationSpecification json.RawMessage        `json:"ValidationSpecification,omitempty"`
	CertifyForMarketplace   bool                   `json:"CertifyForMarketplace,omitempty"`
}

Algorithm represents a SageMaker algorithm specification.

type AlgorithmSpecification

type AlgorithmSpecification struct {
	TrainingImage                    string             `json:"TrainingImage,omitempty"`
	AlgorithmName                    string             `json:"AlgorithmName,omitempty"`
	TrainingInputMode                string             `json:"TrainingInputMode,omitempty"`
	MetricDefinitions                []MetricDefinition `json:"MetricDefinitions,omitempty"`
	ContainerEntrypoint              []string           `json:"ContainerEntrypoint,omitempty"`
	ContainerArguments               []string           `json:"ContainerArguments,omitempty"`
	EnableSageMakerMetricsTimeSeries bool               `json:"EnableSageMakerMetricsTimeSeries,omitempty"`
}

AlgorithmSpecification is the typed algorithm spec for a training job.

type AlgorithmStatusDetails

type AlgorithmStatusDetails struct {
	ImageScanStatuses  []AlgorithmStatusItem `json:"ImageScanStatuses"`
	ValidationStatuses []AlgorithmStatusItem `json:"ValidationStatuses"`
}

AlgorithmStatusDetails represents the detailed status of an algorithm.

type AlgorithmStatusItem

type AlgorithmStatusItem struct {
	Name          string `json:"Name"`
	Status        string `json:"Status"`
	FailureReason string `json:"FailureReason,omitempty"`
}

AlgorithmStatusItem represents the status of a single algorithm image scan or validation check.

type App

type App struct {
	CreationTime    time.Time         `json:"CreationTime"`
	Tags            map[string]string `json:"Tags,omitempty"`
	DomainID        string            `json:"DomainId"`
	UserProfileName string            `json:"UserProfileName,omitempty"`
	SpaceName       string            `json:"SpaceName,omitempty"`
	AppType         string            `json:"AppType"`
	AppName         string            `json:"AppName"`
	AppArn          string            `json:"AppArn"`
	Status          string            `json:"Status"`
	ResourceSpec    json.RawMessage   `json:"ResourceSpec,omitempty"`
	RecoveryMode    bool              `json:"RecoveryMode,omitempty"`
}

App represents a SageMaker Studio app. ResourceSpec is stored as opaque JSON (the json.RawMessage passthrough convention used elsewhere in this service for deeply-nested config shapes).

type AppImageConfig

type AppImageConfig struct {
	CreationTime             time.Time         `json:"CreationTime"`
	LastModifiedTime         time.Time         `json:"LastModifiedTime"`
	Tags                     map[string]string `json:"Tags,omitempty"`
	AppImageConfigName       string            `json:"AppImageConfigName"`
	AppImageConfigArn        string            `json:"AppImageConfigArn"`
	KernelGatewayImageConfig json.RawMessage   `json:"KernelGatewayImageConfig,omitempty"`
	JupyterLabAppImageConfig json.RawMessage   `json:"JupyterLabAppImageConfig,omitempty"`
	CodeEditorAppImageConfig json.RawMessage   `json:"CodeEditorAppImageConfig,omitempty"`
}

AppImageConfig represents a SageMaker app image configuration. KernelGatewayImageConfig/JupyterLabAppImageConfig/CodeEditorAppImageConfig are stored as opaque JSON (the json.RawMessage passthrough convention already used elsewhere in this campaign): this backend never actually runs a Studio app image, so echoing the client's Create/Update payload back verbatim is wire-accurate for every field a real client would read.

func (*AppImageConfig) MarshalJSON added in v1.2.0

func (a *AppImageConfig) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeAppImageConfig.

func (*AppImageConfig) UnmarshalJSON added in v1.2.0

func (a *AppImageConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of AppImageConfig.MarshalJSON, read by persistence.go's snapshot restore path.

type Artifact

type Artifact struct {
	CreationTime       time.Time           `json:"CreationTime"`
	LastModifiedTime   time.Time           `json:"LastModifiedTime"`
	Tags               map[string]string   `json:"Tags,omitempty"`
	Properties         map[string]string   `json:"Properties,omitempty"`
	MetadataProperties *MetadataProperties `json:"MetadataProperties,omitempty"`
	ArtifactName       string              `json:"ArtifactName,omitempty"`
	ArtifactArn        string              `json:"ArtifactArn"`
	ArtifactType       string              `json:"ArtifactType"`
	Source             ArtifactSource      `json:"Source"`
}

Artifact represents a SageMaker ML lineage artifact.

type ArtifactSource

type ArtifactSource struct {
	SourceURI   string               `json:"SourceUri"`
	SourceTypes []ArtifactSourceType `json:"SourceTypes,omitempty"`
}

ArtifactSource represents the source of a SageMaker artifact.

type ArtifactSourceType

type ArtifactSourceType struct {
	SourceIDType string `json:"SourceIdType"`
	Value        string `json:"Value"`
}

ArtifactSourceType is the ID and ID type of an artifact source.

type Association

type Association struct {
	CreationTime    time.Time         `json:"CreationTime"`
	Tags            map[string]string `json:"Tags,omitempty"`
	SourceArn       string            `json:"SourceArn"`
	DestinationArn  string            `json:"DestinationArn"`
	AssociationType string            `json:"AssociationType,omitempty"`
	AssociationArn  string            `json:"AssociationArn"`
}

Association represents a SageMaker ML lineage association.

type AsyncInferenceConfig

type AsyncInferenceConfig struct {
	OutputConfig AsyncOutputConfig `json:"OutputConfig"`
}

AsyncInferenceConfig configures asynchronous inference for an endpoint.

type AsyncOutputConfig

type AsyncOutputConfig struct {
	S3OutputPath string `json:"S3OutputPath"`
	KmsKeyID     string `json:"KmsKeyId,omitempty"`
}

AsyncOutputConfig specifies the async inference output location.

type AttachedVolume added in v1.5.0

type AttachedVolume struct {
	AttachTime time.Time
	ClusterArn string
	NodeID     string
	VolumeID   string
	DeviceName string
	Status     string
}

AttachedVolume describes the result of attaching an EBS volume to a cluster node.

type AutoMLCandidate

type AutoMLCandidate struct {
	CreationTime                  time.Time              `json:"CreationTime"`
	LastModifiedTime              time.Time              `json:"LastModifiedTime"`
	FinalAutoMLJobObjectiveMetric *AutoMLObjectiveMetric `json:"FinalAutoMLJobObjectiveMetric,omitempty"`
	CandidateName                 string                 `json:"CandidateName"`
	CandidateStatus               string                 `json:"CandidateStatus"`
	ObjectiveStatus               string                 `json:"ObjectiveStatus"`
	CandidateSteps                []map[string]any       `json:"CandidateSteps"`
}

AutoMLCandidate mirrors types.AutoMLCandidate.

type AutoMLChannel added in v1.3.1

type AutoMLChannel struct {
	DataSource                *AutoMLDataSource `json:"DataSource,omitempty"`
	ChannelType               string            `json:"ChannelType,omitempty"`
	CompressionType           string            `json:"CompressionType,omitempty"`
	ContentType               string            `json:"ContentType,omitempty"`
	TargetAttributeName       string            `json:"TargetAttributeName,omitempty"`
	SampleWeightAttributeName string            `json:"SampleWeightAttributeName,omitempty"`
}

AutoMLChannel is a named input source for CreateAutoMLJob/DescribeAutoMLJob (V1). SDK ref: types.AutoMLChannel — the field on CreateAutoMLJobInput/ DescribeAutoMLJobOutput is InputDataConfig ([]types.AutoMLChannel). The V2 field of a similar name, AutoMLJobInputDataConfig ([]types.AutoMLJobChannel, CreateAutoMLJobV2Input:91), is a distinct, narrower type — see AutoMLJobChannel.

type AutoMLComputeConfig added in v1.3.1

type AutoMLComputeConfig struct {
	EmrServerlessComputeConfig *EmrServerlessComputeConfig `json:"EmrServerlessComputeConfig,omitempty"`
}

AutoMLComputeConfig mirrors types.AutoMLComputeConfig.

type AutoMLDataSource added in v1.3.1

type AutoMLDataSource struct {
	S3DataSource *AutoMLS3DataSource `json:"S3DataSource,omitempty"`
}

AutoMLDataSource is the data source for an AutoML channel.

type AutoMLDataSplitConfig added in v1.3.1

type AutoMLDataSplitConfig struct {
	ValidationFraction *float32 `json:"ValidationFraction,omitempty"`
}

AutoMLDataSplitConfig mirrors types.AutoMLDataSplitConfig.

type AutoMLJob

type AutoMLJob struct {
	CreationTime             time.Time               `json:"CreationTime"`
	LastModifiedTime         time.Time               `json:"LastModifiedTime"`
	Tags                     map[string]string       `json:"Tags,omitempty"`
	OutputDataConfig         *AutoMLOutputDataConfig `json:"OutputDataConfig,omitempty"`
	AutoMLJobObjective       *AutoMLJobObjective     `json:"AutoMLJobObjective,omitempty"`
	AutoMLComputeConfig      *AutoMLComputeConfig    `json:"AutoMLComputeConfig,omitempty"`
	DataSplitConfig          *AutoMLDataSplitConfig  `json:"DataSplitConfig,omitempty"`
	SecurityConfig           *AutoMLSecurityConfig   `json:"SecurityConfig,omitempty"`
	ModelDeployConfig        *ModelDeployConfig      `json:"ModelDeployConfig,omitempty"`
	AutoMLJobName            string                  `json:"AutoMLJobName"`
	AutoMLJobArn             string                  `json:"AutoMLJobArn"`
	AutoMLJobStatus          string                  `json:"AutoMLJobStatus"`
	AutoMLJobSecondaryStatus string                  `json:"AutoMLJobSecondaryStatus"`
	RoleArn                  string                  `json:"RoleArn,omitempty"`
	InputDataConfig          []AutoMLChannel         `json:"InputDataConfig"`
	AutoMLJobInputDataConfig []AutoMLJobChannel      `json:"AutoMLJobInputDataConfig,omitempty"`
	AutoMLProblemTypeConfig  json.RawMessage         `json:"AutoMLProblemTypeConfig,omitempty"`
}

AutoMLJob represents a SageMaker AutoML job. It backs both V1 (CreateAutoMLJob/DescribeAutoMLJob) and V2 (CreateAutoMLJobV2/ DescribeAutoMLJobV2) jobs; the V2-only fields are zero-valued for a V1-created job and vice versa, matching AWS's job-name-uniqueness-across- versions behavior. Each op's handler marshals its own wire-accurate subset rather than emitting this struct verbatim (see handler_automl.go / handler_automl_v2.go).

func (*AutoMLJob) MarshalJSON added in v1.2.0

func (j *AutoMLJob) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeAutoMLJob.

func (*AutoMLJob) UnmarshalJSON added in v1.2.0

func (j *AutoMLJob) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of AutoMLJob.MarshalJSON, read by persistence.go's snapshot restore path.

type AutoMLJobChannel added in v1.3.1

type AutoMLJobChannel struct {
	DataSource      *AutoMLDataSource `json:"DataSource,omitempty"`
	ChannelType     string            `json:"ChannelType,omitempty"`
	CompressionType string            `json:"CompressionType,omitempty"`
	ContentType     string            `json:"ContentType,omitempty"`
}

AutoMLJobChannel is a named input source for CreateAutoMLJobV2/ DescribeAutoMLJobV2. SDK ref: types.AutoMLJobChannel — narrower than AutoMLChannel: no TargetAttributeName/SampleWeightAttributeName, since V2 carries those inside AutoMLProblemTypeConfig instead.

type AutoMLJobObjective

type AutoMLJobObjective struct {
	MetricName string `json:"MetricName"`
}

AutoMLJobObjective specifies the optimization metric for an AutoML job.

type AutoMLJobV2Extras added in v1.3.1

type AutoMLJobV2Extras struct {
	AutoMLProblemTypeConfig  json.RawMessage
	OutputDataConfig         *AutoMLOutputDataConfig
	AutoMLJobObjective       *AutoMLJobObjective
	AutoMLComputeConfig      *AutoMLComputeConfig
	DataSplitConfig          *AutoMLDataSplitConfig
	SecurityConfig           *AutoMLSecurityConfig
	ModelDeployConfig        *ModelDeployConfig
	AutoMLJobInputDataConfig []AutoMLJobChannel
}

AutoMLJobV2Extras bundles the CreateAutoMLJobV2-only fields set after the shared CreateAutoMLJob record is created.

type AutoMLObjectiveMetric

type AutoMLObjectiveMetric struct {
	MetricName string  `json:"MetricName"`
	Value      float64 `json:"Value"`
}

AutoMLObjectiveMetric mirrors types.FinalAutoMLJobObjectiveMetric.

type AutoMLOutputDataConfig

type AutoMLOutputDataConfig struct {
	S3OutputPath string `json:"S3OutputPath,omitempty"`
	KmsKeyID     string `json:"KmsKeyId,omitempty"`
}

AutoMLOutputDataConfig specifies the S3 output location for an AutoML job.

type AutoMLS3DataSource added in v1.3.1

type AutoMLS3DataSource struct {
	S3DataType string `json:"S3DataType"`
	S3Uri      string `json:"S3Uri"`
}

AutoMLS3DataSource locates AutoML channel input data in Amazon S3. SDK ref: aws-sdk-go-v2/service/sagemaker/types.AutoMLS3DataSource.

type AutoMLSecurityConfig added in v1.3.1

type AutoMLSecurityConfig struct {
	VpcConfig                             *VpcConfig `json:"VpcConfig,omitempty"`
	EnableInterContainerTrafficEncryption *bool      `json:"EnableInterContainerTrafficEncryption,omitempty"`
	VolumeKmsKeyID                        string     `json:"VolumeKmsKeyId,omitempty"`
}

AutoMLSecurityConfig mirrors types.AutoMLSecurityConfig. VpcConfig reuses the shared type from training_jobs.go (identical SecurityGroupIds/Subnets shape).

type BatchAddClusterNodesFailure added in v1.5.0

type BatchAddClusterNodesFailure struct {
	InstanceGroupName string
	ErrorCode         string
	FailedCount       int32
}

BatchAddClusterNodesFailure describes one NodesToAdd spec that could not be applied, mirroring types.BatchAddClusterNodesError's InstanceGroupName/ ErrorCode/FailedCount (types/types.go:3168-3184).

type BatchGetRecordResult

type BatchGetRecordResult struct {
	FeatureGroupName              string            `json:"FeatureGroupName"`
	RecordIdentifierValueAsString string            `json:"RecordIdentifierValueAsString"`
	Record                        map[string]string `json:"Record,omitempty"`
	ErrorCode                     string            `json:"ErrorCode,omitempty"`
	ErrorMessage                  string            `json:"ErrorMessage,omitempty"`
}

BatchGetRecordResult holds the result for a single record lookup.

type CaptureContentTypeHeader added in v1.5.0

type CaptureContentTypeHeader struct {
	CsvContentTypes  []string `json:"CsvContentTypes,omitempty"`
	JSONContentTypes []string `json:"JsonContentTypes,omitempty"`
}

CaptureContentTypeHeader mirrors types.CaptureContentTypeHeader (types/types.go), both members optional.

type Channel

type Channel struct {
	DataSource        ChannelDataSource `json:"DataSource"`
	ChannelName       string            `json:"ChannelName"`
	ContentType       string            `json:"ContentType,omitempty"`
	CompressionType   string            `json:"CompressionType,omitempty"`
	RecordWrapperType string            `json:"RecordWrapperType,omitempty"`
	InputMode         string            `json:"InputMode,omitempty"`
}

Channel is one input data channel for a training job.

type ChannelDataSource

type ChannelDataSource struct {
	S3DataSource *S3DataSource `json:"S3DataSource,omitempty"`
}

ChannelDataSource holds either an S3 or file system data source.

type CheckpointConfig

type CheckpointConfig struct {
	S3Uri     string `json:"S3Uri"`
	LocalPath string `json:"LocalPath,omitempty"`
}

CheckpointConfig stores checkpoint location for managed spot.

type Cluster

type Cluster struct {
	CreationTime         time.Time                   `json:"CreationTime"`
	Nodes                map[string]*ClusterNode     `json:"-"`
	Tags                 map[string]string           `json:"Tags,omitempty"`
	VpcConfig            *VpcConfig                  `json:"VpcConfig,omitempty"`
	AutoScaling          *ClusterAutoScalingConfig   `json:"AutoScaling,omitempty"`
	Orchestrator         *ClusterOrchestrator        `json:"Orchestrator,omitempty"`
	TieredStorageConfig  *ClusterTieredStorageConfig `json:"TieredStorageConfig,omitempty"`
	ClusterArn           string                      `json:"ClusterArn"`
	ClusterName          string                      `json:"ClusterName"`
	ClusterStatus        string                      `json:"ClusterStatus"`
	NodeRecovery         string                      `json:"NodeRecovery,omitempty"`
	ClusterRole          string                      `json:"ClusterRole,omitempty"`
	NodeProvisioningMode string                      `json:"NodeProvisioningMode,omitempty"`
	InstanceGroups       []ClusterInstanceGroup      `json:"InstanceGroups,omitempty"`
}

Cluster represents a SageMaker HyperPod cluster.

type ClusterAutoScalingConfig added in v1.3.1

type ClusterAutoScalingConfig struct {
	Mode           string `json:"Mode"`
	AutoScalerType string `json:"AutoScalerType,omitempty"`
}

ClusterAutoScalingConfig mirrors types.ClusterAutoScalingConfig (api_op_CreateCluster.go:41-43, types/types.go:4492, sagemaker@v1.263.2). Status is not stored: it is synthesized as InService on read, the same convention this service already uses for instance-group status (instanceGroupStatusInService), since this emulator does not model asynchronous autoscaler provisioning.

type ClusterInstanceGroup

type ClusterInstanceGroup struct {
	InstanceGroupName string `json:"InstanceGroupName"`
	InstanceType      string `json:"InstanceType,omitempty"`
	ExecutionRole     string `json:"ExecutionRole,omitempty"`
	InstanceCount     int32  `json:"InstanceCount,omitempty"`
}

ClusterInstanceGroup represents an instance group specification/details for a SageMaker HyperPod cluster (a merged view of the AWS ClusterInstanceGroupSpecification and ClusterInstanceGroupDetails shapes).

type ClusterNode

type ClusterNode struct {
	CreationTime      time.Time           `json:"CreationTime"`
	NodeID            string              `json:"NodeId"`
	InstanceType      string              `json:"InstanceType,omitempty"`
	NodeStatus        string              `json:"NodeStatus"`
	InstanceGroupName string              `json:"InstanceGroupName,omitempty"`
	Volumes           []ClusterNodeVolume `json:"Volumes,omitempty"`
}

ClusterNode represents a node in a SageMaker cluster.

type ClusterNodeVolume

type ClusterNodeVolume struct {
	VolumeName string `json:"VolumeName"`
	SizeInGB   int32  `json:"SizeInGB,omitempty"`
}

ClusterNodeVolume represents a volume attached to a cluster node.

type ClusterOrchestrator added in v1.3.1

type ClusterOrchestrator struct {
	Eks   *ClusterOrchestratorEksConfig   `json:"Eks,omitempty"`
	Slurm *ClusterOrchestratorSlurmConfig `json:"Slurm,omitempty"`
}

ClusterOrchestrator mirrors types.ClusterOrchestrator (types/types.go:5456, sagemaker@v1.263.2). Despite AWS's docs stating "you must provide exactly one orchestrator configuration: either Eks or Slurm", botocore's sagemaker/2017-07-24 service-2.json models ClusterOrchestrator as a plain "structure" (not "union"), and serializers.go:27593-27612 emit Eks/Slurm as two independent optional keys — so this is a struct with a runtime-validated business rule, not a discriminated wire union.

type ClusterOrchestratorEksConfig added in v1.3.1

type ClusterOrchestratorEksConfig struct {
	ClusterArn string `json:"ClusterArn"`
}

ClusterOrchestratorEksConfig mirrors types.ClusterOrchestratorEksConfig (types/types.go:5470, sagemaker@v1.263.2).

type ClusterOrchestratorSlurmConfig added in v1.3.1

type ClusterOrchestratorSlurmConfig struct {
	SlurmConfigStrategy string `json:"SlurmConfigStrategy,omitempty"`
}

ClusterOrchestratorSlurmConfig mirrors types.ClusterOrchestratorSlurmConfig (types/types.go:5483, sagemaker@v1.263.2).

type ClusterSchedulerConfig

type ClusterSchedulerConfig struct {
	CreationTime                  time.Time         `json:"CreationTime"`
	LastModifiedTime              time.Time         `json:"LastModifiedTime"`
	SchedulerConfig               *SchedulerConfig  `json:"SchedulerConfig,omitempty"`
	Tags                          map[string]string `json:"Tags,omitempty"`
	ClusterSchedulerConfigName    string            `json:"Name"`
	ClusterSchedulerConfigArn     string            `json:"ClusterSchedulerConfigArn"`
	ClusterSchedulerConfigID      string            `json:"ClusterSchedulerConfigId"`
	ClusterArn                    string            `json:"ClusterArn,omitempty"`
	Description                   string            `json:"Description,omitempty"`
	Status                        string            `json:"Status"`
	ClusterSchedulerConfigVersion int32             `json:"ClusterSchedulerConfigVersion"`
}

ClusterSchedulerConfig represents a SageMaker cluster scheduler configuration.

FailureReason/StatusDetails (both on DescribeClusterSchedulerConfigOutput, api_op_DescribeClusterSchedulerConfig.go:82-94) are not modeled: Status never reaches a Failed state in this backend (no failure FSM), so there is no real failure to report a reason or per-status detail for. CreatedBy/ LastModifiedBy (types.UserContext) are disclosed absent, the same no-caller-identity-model gap already disclosed for every other CreatedBy/LastModifiedBy field in this service (e.g. handler_mlflow.go, model_packages.go).

func (*ClusterSchedulerConfig) MarshalJSON added in v1.2.0

func (c *ClusterSchedulerConfig) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeClusterSchedulerConfig.

func (*ClusterSchedulerConfig) UnmarshalJSON added in v1.2.0

func (c *ClusterSchedulerConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ClusterSchedulerConfig.MarshalJSON, read by persistence.go's snapshot restore path.

type ClusterTieredStorageConfig added in v1.3.1

type ClusterTieredStorageConfig struct {
	Mode                               string `json:"Mode"`
	InstanceMemoryAllocationPercentage int32  `json:"InstanceMemoryAllocationPercentage,omitempty"`
}

ClusterTieredStorageConfig mirrors types.ClusterTieredStorageConfig (types/types.go:5847, sagemaker@v1.263.2).

type CodeRepository

type CodeRepository struct {
	CreationTime       time.Time         `json:"CreationTime"`
	LastModifiedTime   time.Time         `json:"LastModifiedTime"`
	Tags               map[string]string `json:"Tags,omitempty"`
	GitConfig          map[string]string `json:"GitConfig,omitempty"`
	CodeRepositoryName string            `json:"CodeRepositoryName"`
	CodeRepositoryArn  string            `json:"CodeRepositoryArn"`
}

CodeRepository represents a SageMaker code repository.

func (*CodeRepository) MarshalJSON added in v1.2.0

func (r *CodeRepository) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeCodeRepository, so the wire timestamp encoding must match the JSON protocol's numeric convention (a real AWS SDK client fails to deserialize a string where it expects a number).

func (*CodeRepository) UnmarshalJSON added in v1.2.0

func (r *CodeRepository) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of CodeRepository.MarshalJSON, read by persistence.go's snapshot restore path.

type CognitoConfig

type CognitoConfig struct {
	UserPool string `json:"UserPool"`
	ClientID string `json:"ClientId"`
}

CognitoConfig configures an Amazon Cognito private workforce.

type CognitoMemberDefinition

type CognitoMemberDefinition struct {
	UserPool  string `json:"UserPool"`
	UserGroup string `json:"UserGroup"`
	ClientID  string `json:"ClientId"`
}

CognitoMemberDefinition identifies an Amazon Cognito user group.

type CompilationInputConfig

type CompilationInputConfig struct {
	S3Uri            string `json:"S3Uri,omitempty"`
	DataInputConfig  string `json:"DataInputConfig,omitempty"`
	Framework        string `json:"Framework,omitempty"`
	FrameworkVersion string `json:"FrameworkVersion,omitempty"`
}

CompilationInputConfig specifies the model source for a Neo compilation job.

type CompilationJob

type CompilationJob struct {
	CreationTime           time.Time                `json:"CreationTime"`
	LastModifiedTime       time.Time                `json:"LastModifiedTime"`
	CompilationStartTime   *time.Time               `json:"CompilationStartTime,omitempty"`
	CompilationEndTime     *time.Time               `json:"CompilationEndTime,omitempty"`
	Tags                   map[string]string        `json:"Tags,omitempty"`
	InputConfig            *CompilationInputConfig  `json:"InputConfig,omitempty"`
	OutputConfig           *CompilationOutputConfig `json:"OutputConfig,omitempty"`
	StoppingCondition      *StoppingCondition       `json:"StoppingCondition,omitempty"`
	ModelArtifacts         *ModelArtifacts          `json:"ModelArtifacts,omitempty"`
	CompilationJobName     string                   `json:"CompilationJobName"`
	CompilationJobArn      string                   `json:"CompilationJobArn"`
	CompilationJobStatus   string                   `json:"CompilationJobStatus"`
	RoleArn                string                   `json:"RoleArn,omitempty"`
	FailureReason          string                   `json:"FailureReason,omitempty"`
	ModelPackageVersionArn string                   `json:"ModelPackageVersionArn,omitempty"`
	VpcConfig              json.RawMessage          `json:"VpcConfig,omitempty"`
}

CompilationJob represents a SageMaker Neo compilation job.

func (*CompilationJob) MarshalJSON added in v1.2.0

func (j *CompilationJob) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime/CompilationStartTime/ CompilationEndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeCompilationJob.

func (*CompilationJob) UnmarshalJSON added in v1.2.0

func (j *CompilationJob) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of CompilationJob.MarshalJSON, read by persistence.go's snapshot restore path.

type CompilationOutputConfig

type CompilationOutputConfig struct {
	S3OutputLocation string `json:"S3OutputLocation,omitempty"`
	TargetDevice     string `json:"TargetDevice,omitempty"`
	KmsKeyID         string `json:"KmsKeyId,omitempty"`
}

CompilationOutputConfig specifies the output destination for a Neo compilation job.

type ComputeQuota

type ComputeQuota struct {
	CreationTime        time.Time           `json:"CreationTime"`
	LastModifiedTime    time.Time           `json:"LastModifiedTime"`
	ComputeQuotaConfig  *ComputeQuotaConfig `json:"ComputeQuotaConfig,omitempty"`
	ComputeQuotaTarget  *ComputeQuotaTarget `json:"ComputeQuotaTarget,omitempty"`
	Tags                map[string]string   `json:"Tags,omitempty"`
	ComputeQuotaName    string              `json:"Name"`
	ComputeQuotaArn     string              `json:"ComputeQuotaArn"`
	ComputeQuotaID      string              `json:"ComputeQuotaId"`
	Status              string              `json:"Status"`
	ActivationState     string              `json:"ActivationState,omitempty"`
	ClusterArn          string              `json:"ClusterArn,omitempty"`
	Description         string              `json:"Description,omitempty"`
	ComputeQuotaVersion int32               `json:"ComputeQuotaVersion"`
}

ComputeQuota represents a SageMaker compute quota.

FailureReason (DescribeComputeQuotaOutput, api_op_DescribeComputeQuota.go's FailureReason field) is not modeled: Status never reaches a Failed state in this backend (no failure FSM). CreatedBy/LastModifiedBy (types.UserContext) are disclosed absent, the same no-caller-identity-model gap as ClusterSchedulerConfig above.

func (*ComputeQuota) MarshalJSON added in v1.2.0

func (q *ComputeQuota) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeComputeQuota.

func (*ComputeQuota) UnmarshalJSON added in v1.2.0

func (q *ComputeQuota) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ComputeQuota.MarshalJSON, read by persistence.go's snapshot restore path.

type ComputeQuotaConfig added in v1.3.1

type ComputeQuotaConfig struct {
	ResourceSharingConfig *ResourceSharingConfig       `json:"ResourceSharingConfig,omitempty"`
	PreemptTeamTasks      string                       `json:"PreemptTeamTasks,omitempty"`
	ComputeQuotaResources []ComputeQuotaResourceConfig `json:"ComputeQuotaResources,omitempty"`
}

ComputeQuotaConfig is a ComputeQuota's resource allocation configuration. sagemaker@v1.263.2 types/types.go:6094.

type ComputeQuotaResourceConfig added in v1.3.1

type ComputeQuotaResourceConfig struct {
	AcceleratorPartition *AcceleratorPartitionConfig `json:"AcceleratorPartition,omitempty"`
	Accelerators         *int32                      `json:"Accelerators,omitempty"`
	Count                *int32                      `json:"Count,omitempty"`
	MemoryInGiB          *float32                    `json:"MemoryInGiB,omitempty"`
	VCpu                 *float32                    `json:"VCpu,omitempty"`
	InstanceType         string                      `json:"InstanceType"`
}

ComputeQuotaResourceConfig is one resource allocation entry, used both by ComputeQuotaConfig.ComputeQuotaResources and ResourceSharingConfig.AbsoluteBorrowLimits. sagemaker@v1.263.2 types/types.go:6114.

type ComputeQuotaTarget added in v1.3.1

type ComputeQuotaTarget struct {
	FairShareWeight *int32 `json:"FairShareWeight,omitempty"`
	TeamName        string `json:"TeamName"`
}

ComputeQuotaTarget is the entity a ComputeQuota allocates compute to. sagemaker@v1.263.2 types/types.go:6208.

type ContainerDefinition

type ContainerDefinition struct {
	Environment                map[string]string `json:"Environment,omitempty"`
	ImageConfig                *ImageConfig      `json:"ImageConfig,omitempty"`
	MultiModelConfig           *MultiModelConfig `json:"MultiModelConfig,omitempty"`
	Image                      string            `json:"Image,omitempty"`
	ModelDataURL               string            `json:"ModelDataUrl,omitempty"`
	ModelPackageName           string            `json:"ModelPackageName,omitempty"`
	ModelDataSource            string            `json:"ModelDataSource,omitempty"`
	InferenceSpecificationName string            `json:"InferenceSpecificationName,omitempty"`
	ContainerHostname          string            `json:"ContainerHostname,omitempty"`
	Mode                       string            `json:"Mode,omitempty"`
}

ContainerDefinition holds image details for a model container.

type Context

type Context struct {
	CreationTime     time.Time         `json:"CreationTime"`
	LastModifiedTime time.Time         `json:"LastModifiedTime"`
	Tags             map[string]string `json:"Tags,omitempty"`
	Properties       map[string]string `json:"Properties,omitempty"`
	Source           ContextSource     `json:"Source"`
	ContextName      string            `json:"ContextName"`
	ContextArn       string            `json:"ContextArn"`
	ContextType      string            `json:"ContextType"`
	Description      string            `json:"Description,omitempty"`
}

Context represents a SageMaker ML lineage context.

type ContextSource

type ContextSource struct {
	SourceURI  string `json:"SourceUri"`
	SourceID   string `json:"SourceId,omitempty"`
	SourceType string `json:"SourceType,omitempty"`
}

ContextSource represents the source of a SageMaker context.

type CoreDumpConfig

type CoreDumpConfig struct {
	DestinationS3Uri string `json:"DestinationS3Uri,omitempty"`
	KmsKeyID         string `json:"KmsKeyId,omitempty"`
}

CoreDumpConfig specifies where core dumps are stored.

type CreateAIBenchmarkJobOptions added in v1.2.0

type CreateAIBenchmarkJobOptions struct {
	Tags                       map[string]string
	AIBenchmarkJobName         string
	AIWorkloadConfigIdentifier string
	RoleArn                    string
	BenchmarkTarget            json.RawMessage
	OutputConfig               json.RawMessage
	NetworkConfig              json.RawMessage
}

CreateAIBenchmarkJobOptions holds input fields for CreateAIBenchmarkJob.

type CreateAIRecommendationJobOptions added in v1.2.0

type CreateAIRecommendationJobOptions struct {
	OptimizeModel              *bool
	Tags                       map[string]string
	AIRecommendationJobName    string
	AIWorkloadConfigIdentifier string
	RoleArn                    string
	ModelSource                json.RawMessage
	OutputConfig               json.RawMessage
	PerformanceTarget          json.RawMessage
	ComputeSpec                json.RawMessage
	InferenceSpecification     json.RawMessage
	AdapterSource              json.RawMessage
}

CreateAIRecommendationJobOptions holds input fields for CreateAIRecommendationJob.

type CreateAIWorkloadConfigOptions added in v1.2.0

type CreateAIWorkloadConfigOptions struct {
	Tags                 map[string]string
	AIWorkloadConfigName string
	WorkloadSpec         json.RawMessage
	DatasetConfig        json.RawMessage
}

CreateAIWorkloadConfigOptions holds input fields for CreateAIWorkloadConfig.

type CreateAlgorithmOptions

type CreateAlgorithmOptions struct {
	Tags                    map[string]string
	AlgorithmName           string
	AlgorithmDescription    string
	TrainingSpecification   json.RawMessage
	InferenceSpecification  json.RawMessage
	ValidationSpecification json.RawMessage
	CertifyForMarketplace   bool
}

CreateAlgorithmOptions holds the optional fields accepted by CreateAlgorithm.

type CreateAppImageConfigOptions added in v1.5.0

type CreateAppImageConfigOptions struct {
	AppImageConfigName       string
	Tags                     map[string]string
	KernelGatewayImageConfig json.RawMessage
	JupyterLabAppImageConfig json.RawMessage
	CodeEditorAppImageConfig json.RawMessage
}

CreateAppImageConfigOptions holds input fields for CreateAppImageConfig (api_op_CreateAppImageConfig.go:28-52).

type CreateAppOptions added in v1.3.1

type CreateAppOptions struct {
	SpaceName    string
	ResourceSpec json.RawMessage
	RecoveryMode bool
}

CreateAppOptions bundles CreateApp's optional fields.

type CreateClusterOptions added in v1.3.1

type CreateClusterOptions struct {
	VpcConfig            *VpcConfig
	AutoScaling          *ClusterAutoScalingConfig
	Orchestrator         *ClusterOrchestrator
	TieredStorageConfig  *ClusterTieredStorageConfig
	Tags                 map[string]string
	ClusterName          string
	NodeRecovery         string
	ClusterRole          string
	NodeProvisioningMode string
	InstanceGroups       []ClusterInstanceGroup
}

CreateClusterOptions holds the parameters CreateCluster accepts.

type CreateClusterSchedulerConfigOptions

type CreateClusterSchedulerConfigOptions struct {
	SchedulerConfig            *SchedulerConfig
	Tags                       map[string]string
	ClusterSchedulerConfigName string
	ClusterArn                 string
	Description                string
}

CreateClusterSchedulerConfigOptions holds input fields for CreateClusterSchedulerConfig.

type CreateComputeQuotaOptions

type CreateComputeQuotaOptions struct {
	ComputeQuotaConfig *ComputeQuotaConfig
	ComputeQuotaTarget *ComputeQuotaTarget
	Tags               map[string]string
	ComputeQuotaName   string
	ClusterArn         string
	ActivationState    string
	Description        string
}

CreateComputeQuotaOptions holds input fields for CreateComputeQuota.

type CreateDeviceFleetOptions

type CreateDeviceFleetOptions struct {
	Tags               map[string]string
	OutputConfig       *DeviceFleetOutputConfig
	DeviceFleetName    string
	Description        string
	RoleArn            string
	EnableIotRoleAlias bool
}

CreateDeviceFleetOptions holds input fields for CreateDeviceFleet.

type CreateDomainOptions added in v1.3.1

type CreateDomainOptions struct {
	AppNetworkAccessType       string
	AppSecurityGroupManagement string
	HomeEfsFileSystemCreation  string
	KmsKeyID                   string
	VpcID                      string
	TagPropagation             string
	SubnetIDs                  []string
	DefaultUserSettings        json.RawMessage
	DefaultSpaceSettings       json.RawMessage
	DomainSettings             json.RawMessage
}

CreateDomainOptions bundles CreateDomain's fields beyond the always-required DomainName/AuthMode/Tags trio the backend already took as positional params — named per this file's own precedent (CreateDeviceFleetOptions, ListAssociationsParams) rather than growing the positional signature.

type CreateEdgeDeploymentPlanOptions

type CreateEdgeDeploymentPlanOptions struct {
	Tags                   map[string]string
	EdgeDeploymentPlanName string
	DeviceFleetName        string
	ModelConfigs           []EdgeDeploymentModelConfig
	Stages                 []EdgeDeploymentStageInput
}

CreateEdgeDeploymentPlanOptions holds input fields for CreateEdgeDeploymentPlan.

type CreateEdgePackagingJobOptions

type CreateEdgePackagingJobOptions struct {
	Tags                 map[string]string
	EdgePackagingJobName string
	ModelName            string
	ModelVersion         string
	RoleArn              string
	CompilationJobName   string
	ResourceKey          string
	OutputConfig         EdgeOutputConfig
}

CreateEdgePackagingJobOptions holds input fields for CreateEdgePackagingJob.

type CreateEndpointOptions added in v1.5.0

type CreateEndpointOptions struct {
	Tags               map[string]string
	Name               string
	EndpointConfigName string
	DeploymentConfig   json.RawMessage
}

CreateEndpointOptions holds input fields for CreateEndpoint (api_op_CreateEndpoint.go:1-49).

type CreateFeatureGroupOptions added in v1.3.1

type CreateFeatureGroupOptions struct {
	Tags                        map[string]string
	OnlineStoreConfig           *OnlineStoreConfig
	OfflineStoreConfig          *OfflineStoreConfig
	ThroughputConfig            *ThroughputConfig
	FeatureGroupName            string
	RecordIdentifierFeatureName string
	EventTimeFeatureName        string
	Description                 string
	RoleArn                     string
	FeatureDefinitions          []FeatureDefinition
}

CreateFeatureGroupOptions holds the parameters CreateFeatureGroup accepts.

type CreateHubContentPresignedURLsParams added in v1.5.0

type CreateHubContentPresignedURLsParams struct {
	NextToken    string
	AccessConfig PresignedURLAccessConfig
	MaxResults   int32
}

CreateHubContentPresignedURLsParams bundles CreateHubContentPresignedURLs' optional request fields (api_op_CreateHubContentPresignedUrls.go).

type CreateHyperParameterTuningJobOptions added in v1.5.0

type CreateHyperParameterTuningJobOptions struct {
	Tags                          map[string]string
	Name                          string
	Strategy                      string
	HyperParameterTuningJobConfig json.RawMessage
	Autotune                      json.RawMessage
	WarmStartConfig               json.RawMessage
	TrainingJobDefinition         json.RawMessage
	TrainingJobDefinitions        json.RawMessage
	Limits                        HPResourceLimits
}

CreateHyperParameterTuningJobOptions holds the parameters for creating an HP tuning job (api_op_CreateHyperParameterTuningJob.go:44-77).

type CreateImageVersionOptions added in v1.5.0

type CreateImageVersionOptions struct {
	Horovod         *bool
	JobType         string
	MLFramework     string
	Processor       string
	ProgrammingLang string
	ReleaseNotes    string
	VendorGuidance  string
	Aliases         []string
}

CreateImageVersionOptions bundles CreateImageVersion's optional fields (api_op_CreateImageVersion.go:30-100, sagemaker@v1.263.2). ClientToken is omitted, matching every other Create op in this service.

type CreateInferenceComponentOptions

type CreateInferenceComponentOptions struct {
	Tags                   map[string]string
	Specification          *InferenceComponentSpecification
	InferenceComponentName string
	EndpointName           string
	VariantName            string
	Specifications         []InferenceComponentSpecification
	CopyCount              int32
}

CreateInferenceComponentOptions holds input fields for CreateInferenceComponent.

type CreateInferenceExperimentOptions added in v1.5.0

type CreateInferenceExperimentOptions struct {
	DataStorageConfig *InferenceExperimentDataStorageConfig
	Schedule          *InferenceExperimentSchedule
	ShadowModeConfig  *ShadowModeConfig
	Tags              map[string]string
	Name              string
	Type              string
	RoleArn           string
	EndpointName      string
	KmsKey            string
	ModelVariants     []ModelVariantConfig
}

CreateInferenceExperimentOptions holds input fields for CreateInferenceExperiment, mirroring CreateInferenceExperimentInput (api_op_CreateInferenceExperiment.go:29-90).

type CreateInferenceRecommendationsJobOptions

type CreateInferenceRecommendationsJobOptions struct {
	Tags               map[string]string
	JobName            string
	JobType            string
	JobDescription     string
	RoleArn            string
	InputConfig        json.RawMessage
	OutputConfig       json.RawMessage
	StoppingConditions json.RawMessage
}

CreateInferenceRecommendationsJobOptions holds input fields.

type CreateJobOptions added in v1.2.0

type CreateJobOptions struct {
	Tags                   map[string]string
	JobCategory            string
	JobConfigDocument      string
	JobConfigSchemaVersion string
	JobName                string
	RoleArn                string
}

CreateJobOptions holds input fields for CreateJob.

type CreateLabelingJobOptions

type CreateLabelingJobOptions struct {
	StoppingConditions          *LabelingJobStoppingConditions
	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig
	Tags                        map[string]string
	LabelingJobName             string
	LabelAttributeName          string
	RoleArn                     string
	LabelCategoryConfigS3Uri    string
	InputConfig                 LabelingJobInputConfig
	OutputConfig                LabelingJobOutputConfig
	HumanTaskConfig             HumanTaskConfig
}

CreateLabelingJobOptions holds the parameters for creating a labeling job.

type CreateMlflowAppOptions

type CreateMlflowAppOptions struct {
	Tags                         map[string]string
	Name                         string
	ArtifactStoreURI             string
	RoleArn                      string
	AccountDefaultStatus         string
	ModelRegistrationMode        string
	WeeklyMaintenanceWindowStart string
	DefaultDomainIDList          []string
}

CreateMlflowAppOptions holds the fields accepted by CreateMlflowApp.

type CreateMlflowTrackingServerOptions added in v1.5.0

type CreateMlflowTrackingServerOptions struct {
	Tags                         map[string]string
	TrackingServerName           string
	ArtifactStoreURI             string
	RoleArn                      string
	MlflowVersion                string
	S3BucketOwnerAccountID       string
	TrackingServerSize           string
	WeeklyMaintenanceWindowStart string
	AutomaticModelRegistration   bool
	S3BucketOwnerVerification    bool
}

CreateMlflowTrackingServerOptions holds the fields accepted by CreateMlflowTrackingServer (api_op_CreateMlflowTrackingServer.go:31-96, sagemaker@v1.263.2). Callers resolve the documented AutomaticModelRegistration (default false), S3BucketOwnerVerification (default true) and TrackingServerSize (default "Small") defaults before calling, since the wire request must distinguish "not sent" from "explicitly false" for the two booleans.

type CreateModelCardOptions added in v1.5.0

type CreateModelCardOptions struct {
	SecurityConfig *ModelCardSecurityConfig
	Tags           map[string]string
	Name           string
	Content        string
	Status         string
}

CreateModelCardOptions holds input fields for CreateModelCard, mirroring CreateModelCardInput (api_op_CreateModelCard.go:32-66).

type CreateModelPackageGroupOptions added in v1.5.0

type CreateModelPackageGroupOptions struct {
	Name               string
	Description        string
	Tags               map[string]string
	ManagedStorageType string
}

CreateModelPackageGroupOptions holds the fields accepted by CreateModelPackageGroup (api_op_CreateModelPackageGroup.go:16-40, sagemaker@v1.263.2).

type CreateModelPackageOptions added in v1.5.0

type CreateModelPackageOptions struct {
	Name                              string
	GroupName                         string
	Description                       string
	Domain                            string
	SamplePayloadURL                  string
	SourceURI                         string
	Task                              string
	ManagedStorageType                string
	RegistrationType                  string
	SkipModelValidation               string
	ApprovalStatus                    string
	Tags                              map[string]string
	CustomerMetadataProperties        map[string]string
	InferenceSpecification            json.RawMessage
	SourceAlgorithmSpecification      json.RawMessage
	ValidationSpecification           json.RawMessage
	DriftCheckBaselines               json.RawMessage
	ModelMetrics                      json.RawMessage
	ModelCard                         json.RawMessage
	ModelLifeCycle                    json.RawMessage
	MetadataProperties                json.RawMessage
	SecurityConfig                    json.RawMessage
	AdditionalInferenceSpecifications json.RawMessage
	CertifyForMarketplace             bool
}

CreateModelPackageOptions holds the fields accepted by CreateModelPackage (api_op_CreateModelPackage.go:47-171, sagemaker@v1.263.2). ClientToken (a pure client-side idempotency token with no server-observable effect, per a repo-wide grep of this convention elsewhere in the service) is deliberately omitted.

type CreateOptimizationJobOptions added in v1.5.0

type CreateOptimizationJobOptions struct {
	OptimizationEnvironment map[string]string
	Tags                    map[string]string
	StoppingCondition       *StoppingCondition
	Name                    string
	RoleArn                 string
	DeploymentInstanceType  string
	ModelSource             json.RawMessage
	OptimizationConfigs     json.RawMessage
	OutputConfig            json.RawMessage
	VpcConfig               json.RawMessage
	TrainingPlanArns        []string
	MaxInstanceCount        int32
}

CreateOptimizationJobOptions holds the parameters for creating an optimization job (api_op_CreateOptimizationJob.go:48-114).

type CreatePartnerAppOptions

type CreatePartnerAppOptions struct {
	Tags                          map[string]string
	MaintenanceConfig             *PartnerAppMaintenanceConfig
	Name                          string
	Type                          string
	ExecutionRoleArn              string
	AuthType                      string
	Tier                          string
	KmsKeyID                      string
	ApplicationConfig             json.RawMessage
	EnableAutoMinorVersionUpgrade bool
	EnableIamSessionBasedIdentity bool
}

CreatePartnerAppOptions holds the fields accepted by CreatePartnerApp (api_op_CreatePartnerApp.go:36-93). ClientToken (a pure client-side idempotency token with no server-observable effect, per this service's repo-wide convention — see CreateModelPackageOptions) is deliberately omitted.

type CreatePipelineOptions

type CreatePipelineOptions struct {
	Tags                     map[string]string
	ParallelismConfiguration *ParallelismConfiguration
	PipelineName             string
	PipelineDefinition       string
	PipelineDisplayName      string
	PipelineDescription      string
	RoleArn                  string
}

CreatePipelineOptions holds full input for CreatePipeline.

type CreateProjectOptions added in v1.5.0

type CreateProjectOptions struct {
	Tags                              map[string]string
	Name                              string
	Description                       string
	ServiceCatalogProvisioningDetails json.RawMessage
	TemplateProviders                 json.RawMessage
}

CreateProjectOptions holds the parameters for creating a project.

type CreateSpaceOptions added in v1.3.1

type CreateSpaceOptions struct {
	SpaceDisplayName     string
	OwnershipSettings    json.RawMessage
	SpaceSettings        json.RawMessage
	SpaceSharingSettings json.RawMessage
}

CreateSpaceOptions bundles CreateSpace's optional fields.

type CreateTrialComponentOptions added in v1.3.1

type CreateTrialComponentOptions struct {
	StartTime          *time.Time
	EndTime            *time.Time
	Status             *TrialComponentStatus
	Parameters         map[string]TrialComponentValue
	InputArtifacts     map[string]TrialComponentArtifact
	OutputArtifacts    map[string]TrialComponentArtifact
	MetadataProperties *MetadataProperties
	Tags               map[string]string
	TrialComponentName string
	DisplayName        string
}

CreateTrialComponentOptions holds the parameters CreateTrialComponent accepts.

type CreateUserProfileOptions added in v1.3.1

type CreateUserProfileOptions struct {
	SingleSignOnUserIdentifier string
	SingleSignOnUserValue      string
	UserSettings               json.RawMessage
}

CreateUserProfileOptions bundles CreateUserProfile's optional fields.

type CreateWorkforceOptions

type CreateWorkforceOptions struct {
	CognitoConfig      *CognitoConfig
	OidcConfig         *OidcConfig
	SourceIPConfig     *SourceIPConfig
	WorkforceVpcConfig *WorkforceVpcConfig
	Tags               map[string]string
	Name               string
	IPAddressType      string
}

CreateWorkforceOptions holds the parameters for creating a workforce.

type CreateWorkteamOptions

type CreateWorkteamOptions struct {
	Tags                      map[string]string
	NotificationConfiguration *NotificationConfiguration
	WorkerAccessConfiguration *WorkerAccessConfiguration
	Name                      string
	Description               string
	WorkforceName             string
	MemberDefinitions         []MemberDefinition
}

CreateWorkteamOptions holds the parameters for creating a workteam.

type DataCaptureConfig

type DataCaptureConfig struct {
	DestinationS3Uri          string `json:"DestinationS3Uri"`
	CaptureMode               string `json:"CaptureMode,omitempty"`
	KmsKeyID                  string `json:"KmsKeyId,omitempty"`
	InitialSamplingPercentage int32  `json:"InitialSamplingPercentage,omitempty"`
	EnableCapture             bool   `json:"EnableCapture,omitempty"`
}

DataCaptureConfig specifies real-time data capture for an endpoint config.

type DataCatalogConfig added in v1.3.1

type DataCatalogConfig struct {
	Catalog   string `json:"Catalog,omitempty"`
	Database  string `json:"Database,omitempty"`
	TableName string `json:"TableName,omitempty"`
}

DataCatalogConfig mirrors types.DataCatalogConfig.

type DatasetDefinition

type DatasetDefinition struct {
	DataDistributionType string `json:"DataDistributionType,omitempty"`
	InputMode            string `json:"InputMode,omitempty"`
}

DatasetDefinition is an alternative to S3Input for Athena/Redshift.

type DesiredWeightAndCapacity

type DesiredWeightAndCapacity struct {
	DesiredWeight        *float64 `json:"DesiredWeight,omitempty"`
	DesiredInstanceCount *int32   `json:"DesiredInstanceCount,omitempty"`
	VariantName          string   `json:"VariantName"`
}

DesiredWeightAndCapacity is one entry in UpdateEndpointWeightsAndCapacities.

type DetachedVolume

type DetachedVolume struct {
	AttachTime time.Time
	ClusterArn string
	NodeID     string
	VolumeID   string
	DeviceName string
	Status     string
}

DetachedVolume describes the result of detaching an EBS volume from a cluster node.

type Device

type Device struct {
	RegistrationTime time.Time         `json:"RegistrationTime"`
	LastModifiedTime time.Time         `json:"LastModifiedTime"`
	Tags             map[string]string `json:"Tags,omitempty"`
	DeviceName       string            `json:"DeviceName"`
	DeviceFleetName  string            `json:"DeviceFleetName"`
	DeviceArn        string            `json:"DeviceArn"`
	Description      string            `json:"Description,omitempty"`
	IotThingName     string            `json:"IotThingName,omitempty"`
}

Device represents a SageMaker edge device registered in a fleet.

func (*Device) MarshalJSON added in v1.2.0

func (d *Device) MarshalJSON() ([]byte, error)

MarshalJSON emits RegistrationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeDevice.

func (*Device) UnmarshalJSON added in v1.2.0

func (d *Device) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of Device.MarshalJSON, read by persistence.go's snapshot restore path.

type DeviceFleet

type DeviceFleet struct {
	CreationTime     time.Time                `json:"CreationTime"`
	LastModifiedTime time.Time                `json:"LastModifiedTime"`
	Tags             map[string]string        `json:"Tags,omitempty"`
	OutputConfig     *DeviceFleetOutputConfig `json:"OutputConfig,omitempty"`
	DeviceFleetName  string                   `json:"DeviceFleetName"`
	DeviceFleetArn   string                   `json:"DeviceFleetArn"`
	Description      string                   `json:"Description,omitempty"`
	RoleArn          string                   `json:"RoleArn,omitempty"`
	// IotRoleAlias is synthesized as "SageMakerEdge-{DeviceFleetName}" when
	// EnableIotRoleAlias is set on Create/UpdateDeviceFleet (api_op_
	// CreateDeviceFleet.go:43-48) -- this backend has no real IoT Core to
	// register the alias with, so the name is stored but never resolves to
	// an actual IoT role alias.
	IotRoleAlias string `json:"IotRoleAlias,omitempty"`
}

DeviceFleet represents a SageMaker device fleet.

func (*DeviceFleet) MarshalJSON added in v1.2.0

func (f *DeviceFleet) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeDeviceFleet.

func (*DeviceFleet) UnmarshalJSON added in v1.2.0

func (f *DeviceFleet) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of DeviceFleet.MarshalJSON, read by persistence.go's snapshot restore path.

type DeviceFleetOutputConfig

type DeviceFleetOutputConfig struct {
	S3OutputLocation       string `json:"S3OutputLocation"`
	KmsKeyID               string `json:"KmsKeyId,omitempty"`
	PresetDeploymentConfig string `json:"PresetDeploymentConfig,omitempty"`
	PresetDeploymentType   string `json:"PresetDeploymentType,omitempty"`
}

DeviceFleetOutputConfig holds the S3 output location for a device fleet's sampled data, as configured on CreateDeviceFleet/UpdateDeviceFleet (types.EdgeOutputConfig, types/types.go:7856-7903).

type Domain

type Domain struct {
	CreationTime               time.Time         `json:"CreationTime"`
	LastModifiedTime           time.Time         `json:"LastModifiedTime"`
	Tags                       map[string]string `json:"Tags,omitempty"`
	DomainID                   string            `json:"DomainId"`
	DomainArn                  string            `json:"DomainArn"`
	DomainName                 string            `json:"DomainName"`
	Status                     string            `json:"Status"`
	URL                        string            `json:"Url,omitempty"`
	AuthMode                   string            `json:"AuthMode,omitempty"`
	AppNetworkAccessType       string            `json:"AppNetworkAccessType,omitempty"`
	AppSecurityGroupManagement string            `json:"AppSecurityGroupManagement,omitempty"`
	HomeEfsFileSystemCreation  string            `json:"HomeEfsFileSystemCreation,omitempty"`
	KmsKeyID                   string            `json:"KmsKeyId,omitempty"`
	VpcID                      string            `json:"VpcId,omitempty"`
	TagPropagation             string            `json:"TagPropagation,omitempty"`
	SubnetIDs                  []string          `json:"SubnetIds,omitempty"`
	DefaultUserSettings        json.RawMessage   `json:"DefaultUserSettings,omitempty"`
	DefaultSpaceSettings       json.RawMessage   `json:"DefaultSpaceSettings,omitempty"`
	DomainSettings             json.RawMessage   `json:"DomainSettings,omitempty"`
}

Domain represents a SageMaker Studio domain. DefaultUserSettings/ DefaultSpaceSettings/DomainSettings are stored as opaque JSON (the json.RawMessage passthrough convention already used by algorithms.go and the parity-4 AI-job families for deeply-nested union/config shapes) — the client's Create payload is echoed back verbatim on Describe, wire-accurate for every field the client actually sent.

type Edge

type Edge struct {
	SourceArn       string `json:"SourceArn"`
	DestinationArn  string `json:"DestinationArn"`
	AssociationType string `json:"AssociationType,omitempty"`
}

Edge represents a directed association traversed by QueryLineage.

type EdgeDeploymentModelConfig

type EdgeDeploymentModelConfig struct {
	ModelHandle          string `json:"ModelHandle"`
	EdgePackagingJobName string `json:"EdgePackagingJobName"`
}

EdgeDeploymentModelConfig describes one model packaged for edge deployment.

type EdgeDeploymentPlan

type EdgeDeploymentPlan struct {
	CreationTime           time.Time                   `json:"CreationTime"`
	LastModifiedTime       time.Time                   `json:"LastModifiedTime"`
	Tags                   map[string]string           `json:"Tags,omitempty"`
	EdgeDeploymentPlanName string                      `json:"EdgeDeploymentPlanName"`
	EdgeDeploymentPlanArn  string                      `json:"EdgeDeploymentPlanArn"`
	DeviceFleetName        string                      `json:"DeviceFleetName"`
	ModelConfigs           []EdgeDeploymentModelConfig `json:"ModelConfigs,omitempty"`
	Stages                 []*EdgeDeploymentStage      `json:"Stages,omitempty"`
}

EdgeDeploymentPlan represents a SageMaker edge deployment plan. EdgeDeploymentSuccess/Pending/Failed (both DescribeEdgeDeploymentPlanOutput and EdgeDeploymentPlanSummary) are not modeled as stored counters: like per-stage DeploymentStatus above, this emulator does not simulate per-device deployment progress, so every real client sees zero for all three regardless of stage state.

type EdgeDeploymentStage

type EdgeDeploymentStage struct {
	StageName             string          `json:"StageName"`
	DeploymentStatus      string          `json:"DeploymentStatus"`
	DeviceSelectionConfig json.RawMessage `json:"DeviceSelectionConfig,omitempty"`
	DeploymentConfig      json.RawMessage `json:"DeploymentConfig,omitempty"`
}

EdgeDeploymentStage represents one stage of an edge deployment plan. The device selection and deployment configs are stored opaquely (as submitted) since this emulator does not act on them beyond round-tripping.

type EdgeDeploymentStageInput

type EdgeDeploymentStageInput struct {
	StageName             string
	DeviceSelectionConfig json.RawMessage
	DeploymentConfig      json.RawMessage
}

EdgeDeploymentStageInput is a single stage supplied to CreateEdgeDeploymentPlan or CreateEdgeDeploymentStage.

type EdgeOutputConfig added in v1.5.0

type EdgeOutputConfig struct {
	S3OutputLocation       string `json:"S3OutputLocation"`
	KmsKeyID               string `json:"KmsKeyId,omitempty"`
	PresetDeploymentConfig string `json:"PresetDeploymentConfig,omitempty"`
	PresetDeploymentType   string `json:"PresetDeploymentType,omitempty"`
}

EdgeOutputConfig mirrors types.EdgeOutputConfig (api_op_CreateEdgePackagingJob.go: OutputConfig, "This member is required").

type EdgePackagingJob

type EdgePackagingJob struct {
	CreationTime           time.Time         `json:"CreationTime"`
	LastModifiedTime       time.Time         `json:"LastModifiedTime"`
	Tags                   map[string]string `json:"Tags,omitempty"`
	OutputConfig           EdgeOutputConfig  `json:"OutputConfig"`
	EdgePackagingJobName   string            `json:"EdgePackagingJobName"`
	EdgePackagingJobArn    string            `json:"EdgePackagingJobArn"`
	EdgePackagingJobStatus string            `json:"EdgePackagingJobStatus"`
	ModelName              string            `json:"ModelName,omitempty"`
	ModelVersion           string            `json:"ModelVersion,omitempty"`
	RoleArn                string            `json:"RoleArn,omitempty"`
	CompilationJobName     string            `json:"CompilationJobName,omitempty"`
	ResourceKey            string            `json:"ResourceKey,omitempty"`
	FailureReason          string            `json:"FailureReason,omitempty"`
}

EdgePackagingJob represents a SageMaker edge packaging job.

type EmrServerlessComputeConfig added in v1.3.1

type EmrServerlessComputeConfig struct {
	ExecutionRoleARN string `json:"ExecutionRoleARN"`
}

EmrServerlessComputeConfig mirrors types.EmrServerlessComputeConfig.

type Endpoint

type Endpoint struct {
	LastModifiedTime         time.Time                  `json:"LastModifiedTime"`
	CreationTime             time.Time                  `json:"CreationTime"`
	Tags                     map[string]string          `json:"Tags,omitempty"`
	AsyncInferenceConfig     *AsyncInferenceConfig      `json:"AsyncInferenceConfig,omitempty"`
	DataCaptureConfig        *DataCaptureConfig         `json:"DataCaptureConfig,omitempty"`
	EndpointArn              string                     `json:"EndpointArn"`
	EndpointName             string                     `json:"EndpointName"`
	EndpointConfigName       string                     `json:"EndpointConfigName"`
	EndpointStatus           string                     `json:"EndpointStatus"`
	FailureReason            string                     `json:"FailureReason,omitempty"`
	ProductionVariants       []ProductionVariantSummary `json:"ProductionVariants,omitempty"`
	ShadowProductionVariants []ProductionVariantSummary `json:"ShadowProductionVariants,omitempty"`
	DeploymentConfig         json.RawMessage            `json:"DeploymentConfig,omitempty"`
}

Endpoint represents a SageMaker endpoint. AsyncInferenceConfig/ DataCaptureConfig/ShadowProductionVariants are copied from the active EndpointConfig at Create/Update time and surfaced on Describe (api_op_DescribeEndpoint.go:39-97) — types.ExplainerConfig/MetricsConfig have no counterpart on this service's EndpointConfig type and are disclosed no-ops; PendingDeploymentSummary is not simulated at all.

type EndpointConfig

type EndpointConfig struct {
	CreationTime             time.Time             `json:"CreationTime"`
	Tags                     map[string]string     `json:"Tags,omitempty"`
	VpcConfig                *VpcConfig            `json:"VpcConfig,omitempty"`
	DataCaptureConfig        *DataCaptureConfig    `json:"DataCaptureConfig,omitempty"`
	AsyncInferenceConfig     *AsyncInferenceConfig `json:"AsyncInferenceConfig,omitempty"`
	ExplainerConfig          json.RawMessage       `json:"ExplainerConfig,omitempty"`
	MetricsConfig            json.RawMessage       `json:"MetricsConfig,omitempty"`
	EndpointConfigName       string                `json:"EndpointConfigName"`
	EndpointConfigARN        string                `json:"EndpointConfigARN"`
	ExecutionRoleArn         string                `json:"ExecutionRoleArn,omitempty"`
	KmsKeyID                 string                `json:"KmsKeyId,omitempty"`
	ProductionVariants       []ProductionVariant   `json:"ProductionVariants,omitempty"`
	ShadowProductionVariants []ProductionVariant   `json:"ShadowProductionVariants,omitempty"`
	EnableNetworkIsolation   bool                  `json:"EnableNetworkIsolation,omitempty"`
}

EndpointConfig represents a SageMaker endpoint configuration.

ExplainerConfig/MetricsConfig are carried as opaque json.RawMessage passthrough rather than fully-typed structs, the same convention as ModelPackage's deep union/config fields — every field a client actually sends round-trips exactly.

type Experiment

type Experiment struct {
	CreationTime     time.Time         `json:"CreationTime"`
	LastModifiedTime time.Time         `json:"LastModifiedTime"`
	Tags             map[string]string `json:"Tags,omitempty"`
	ExperimentName   string            `json:"ExperimentName"`
	ExperimentArn    string            `json:"ExperimentArn"`
	DisplayName      string            `json:"DisplayName,omitempty"`
	Description      string            `json:"Description,omitempty"`
}

Experiment represents a SageMaker Experiment. CreatedBy/LastModifiedBy (types.UserContext) and Source (types.ExperimentSource) are disclosed absent -- this service models no caller-identity concept, and experiments here are always created directly rather than derived from another resource (e.g. a Pipeline execution).

type FeatureDefinition

type FeatureDefinition struct {
	FeatureName string `json:"FeatureName"`
	FeatureType string `json:"FeatureType,omitempty"`
}

FeatureDefinition holds the definition of a single feature.

type FeatureGroup

type FeatureGroup struct {
	CreationTime                time.Time           `json:"CreationTime"`
	LastModifiedTime            time.Time           `json:"LastModifiedTime"`
	Tags                        map[string]string   `json:"Tags,omitempty"`
	OnlineStoreConfig           *OnlineStoreConfig  `json:"OnlineStoreConfig,omitempty"`
	OfflineStoreConfig          *OfflineStoreConfig `json:"OfflineStoreConfig,omitempty"`
	ThroughputConfig            *ThroughputConfig   `json:"ThroughputConfig,omitempty"`
	LastUpdateStatus            *LastUpdateStatus   `json:"LastUpdateStatus,omitempty"`
	FeatureGroupName            string              `json:"FeatureGroupName"`
	FeatureGroupArn             string              `json:"FeatureGroupArn"`
	RecordIdentifierFeatureName string              `json:"RecordIdentifierFeatureName,omitempty"`
	EventTimeFeatureName        string              `json:"EventTimeFeatureName,omitempty"`
	FeatureGroupStatus          string              `json:"FeatureGroupStatus"`
	OfflineStoreStatus          string              `json:"OfflineStoreStatus,omitempty"`
	Description                 string              `json:"Description,omitempty"`
	RoleArn                     string              `json:"RoleArn,omitempty"`
	FeatureDefinitions          []FeatureDefinition `json:"FeatureDefinitions,omitempty"`
}

FeatureGroup represents a SageMaker Feature Store feature group. OfflineStoreStatus is a static "Active" once an OfflineStoreConfig is set (this backend never simulates offline replication failure).

type FeatureMetadata

type FeatureMetadata struct {
	// LastModifiedTime is the zero value until the first UpdateFeatureMetadata
	// call; DescribeFeatureMetadataOutput.LastModifiedTime (This member is
	// required, api_op_DescribeFeatureMetadata.go) falls back to the owning
	// feature group's CreationTime for a feature never updated.
	LastModifiedTime time.Time         `json:"LastModifiedTime"`
	Description      string            `json:"Description,omitempty"`
	Parameters       map[string]string `json:"Parameters,omitempty"`
	FeatureName      string            `json:"FeatureName"`
	// GroupName is the owning feature group's name, carried internally so the
	// store.Table's keyFn can derive featureMetaKey(GroupName, FeatureName) and
	// Restore can rebuild it after a JSON round-trip. Exported (with a json tag)
	// solely so it survives persistence — handler.go never marshals
	// FeatureMetadata directly to API callers, so this has no effect on the AWS
	// wire shape.
	GroupName   string `json:"groupName"`
	FeatureType string `json:"FeatureType,omitempty"`
}

FeatureMetadata stores metadata (description + parameters) for a feature in a group.

type FeatureRecord

type FeatureRecord struct {
	// Record maps feature name → feature value
	Record map[string]string `json:"Record"`
	// Key is the internal store.Table primary key (featureRecordKey(featureGroupName,
	// recordIDValue)), carried on the value itself so the Table's keyFn can derive it
	// and Restore can rebuild it after a JSON round-trip. Exported (with a json tag)
	// solely so it survives persistence — handler.go never marshals FeatureRecord
	// directly to API callers, so this has no effect on the AWS wire shape.
	Key string `json:"key"`
}

FeatureRecord represents a stored feature record.

type FlowDefinition

type FlowDefinition struct {
	CreationTime                     time.Time         `json:"CreationTime"`
	Tags                             map[string]string `json:"Tags,omitempty"`
	FlowDefinitionName               string            `json:"FlowDefinitionName"`
	FlowDefinitionArn                string            `json:"FlowDefinitionArn"`
	FlowDefinitionStatus             string            `json:"FlowDefinitionStatus"`
	RoleArn                          string            `json:"RoleArn,omitempty"`
	S3OutputPath                     string            `json:"-"`
	KmsKeyID                         string            `json:"-"`
	HumanLoopActivationConditions    string            `json:"-"`
	HumanLoopConfig                  *HumanLoopConfig  `json:"-"`
	AwsManagedHumanLoopRequestSource string            `json:"-"`
}

FlowDefinition represents a SageMaker Augmented AI flow definition.

func (*FlowDefinition) MarshalJSON added in v1.2.0

func (f *FlowDefinition) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime as an AWS awsjson1.1 epoch-seconds number rather than Go's default RFC3339 string, and nests OutputConfig (always present -- required on Create) and the optional HumanLoopActivationConfig/ HumanLoopConfig/HumanLoopRequestSource -- this struct is marshaled directly by handleDescribeFlowDefinition.

func (*FlowDefinition) UnmarshalJSON added in v1.2.0

func (f *FlowDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of FlowDefinition.MarshalJSON, read by persistence.go's snapshot restore path.

type FlowDefinitionOptions added in v1.5.0

type FlowDefinitionOptions struct {
	S3OutputPath                     string
	KmsKeyID                         string
	HumanLoopActivationConditions    string
	HumanLoopConfig                  *HumanLoopConfig
	AwsManagedHumanLoopRequestSource string
}

FlowDefinitionOptions bundles the optional/required configuration CreateFlowDefinitionInput declares beyond FlowDefinitionName/RoleArn/Tags (api_op_CreateFlowDefinition.go:28-66). Previously OutputConfig (required) and every HumanLoop* field were entirely absent from decode.

type HPObjectiveStatusCounters added in v1.2.0

type HPObjectiveStatusCounters struct {
	Succeeded int32 `json:"Succeeded"`
	Pending   int32 `json:"Pending"`
	Failed    int32 `json:"Failed"`
}

HPObjectiveStatusCounters mirrors AWS's ObjectiveStatusCounters: counts of child training jobs by objective-metric-evaluation status. This emulator does not launch child training jobs, so these always read zero.

type HPResourceLimits added in v1.2.0

type HPResourceLimits struct {
	MaxParallelTrainingJobs int32 `json:"MaxParallelTrainingJobs"`
	MaxNumberOfTrainingJobs int32 `json:"MaxNumberOfTrainingJobs,omitempty"`
	MaxRuntimeInSeconds     int32 `json:"MaxRuntimeInSeconds,omitempty"`
}

HPResourceLimits mirrors AWS's ResourceLimits: the maximum number of training jobs (total and concurrent) a tuning job may launch.

type HPTrainingJobStatusCounters added in v1.2.0

type HPTrainingJobStatusCounters struct {
	Completed         int32 `json:"Completed"`
	InProgress        int32 `json:"InProgress"`
	NonRetryableError int32 `json:"NonRetryableError"`
	RetryableError    int32 `json:"RetryableError"`
	Stopped           int32 `json:"Stopped"`
}

HPTrainingJobStatusCounters mirrors AWS's TrainingJobStatusCounters: counts of child training jobs by status. This emulator does not launch child training jobs, so these always read zero.

type Handler

type Handler struct {
	Backend   *InMemoryBackend
	AccountID string
	Region    string
}

Handler is the HTTP handler for the AWS SageMaker JSON API.

func NewHandler

func NewHandler(backend *InMemoryBackend) *Handler

NewHandler creates a new SageMaker handler.

func (*Handler) ChaosOperations

func (h *Handler) ChaosOperations() []string

ChaosOperations returns all operations that can be fault-injected.

func (*Handler) ChaosRegions

func (h *Handler) ChaosRegions() []string

ChaosRegions returns all regions this handler handles.

func (*Handler) ChaosServiceName

func (h *Handler) ChaosServiceName() string

ChaosServiceName returns the lowercase AWS service name for fault rule matching.

func (*Handler) ExtractOperation

func (h *Handler) ExtractOperation(c *echo.Context) string

ExtractOperation extracts the operation name from the X-Amz-Target header.

func (*Handler) ExtractResource

func (h *Handler) ExtractResource(c *echo.Context) string

ExtractResource extracts the resource identifier from the request.

func (*Handler) GetSupportedOperations

func (h *Handler) GetSupportedOperations() []string

GetSupportedOperations returns the list of supported SageMaker operations.

func (*Handler) Handler

func (h *Handler) Handler() echo.HandlerFunc

Handler returns the Echo handler function for SageMaker requests.

func (*Handler) MatchPriority

func (h *Handler) MatchPriority() int

MatchPriority returns the routing priority.

func (*Handler) Name

func (h *Handler) Name() string

Name returns the service name.

func (*Handler) Reset

func (h *Handler) Reset()

Reset clears all resources from the backend.

func (*Handler) Restore

func (h *Handler) Restore(ctx context.Context, data []byte) error

Restore implements persistence.Persistable by delegating to the backend.

func (*Handler) RouteMatcher

func (h *Handler) RouteMatcher() service.Matcher

RouteMatcher returns a function that matches SageMaker API requests. SageMaker requests carry an X-Amz-Target header beginning with "SageMaker.".

func (*Handler) Shutdown

func (h *Handler) Shutdown(ctx context.Context)

Shutdown implements service.Shutdowner. It cancels pending lifecycle-transition goroutines (training/processing/transform jobs, endpoints, notebooks, pipeline executions advancing through statuses) and waits for in-flight ones to drain, bounded by ctx, so no goroutines leak on server shutdown.

func (*Handler) Snapshot

func (h *Handler) Snapshot(ctx context.Context) []byte

Snapshot implements persistence.Persistable by delegating to the backend.

type Hub

type Hub struct {
	CreationTime      time.Time         `json:"CreationTime"`
	LastModifiedTime  time.Time         `json:"LastModifiedTime"`
	Tags              map[string]string `json:"Tags,omitempty"`
	HubName           string            `json:"HubName"`
	HubArn            string            `json:"HubArn"`
	HubDisplayName    string            `json:"HubDisplayName,omitempty"`
	HubDescription    string            `json:"HubDescription,omitempty"`
	S3OutputPath      string            `json:"S3OutputPath,omitempty"`
	HubStatus         string            `json:"HubStatus"`
	FailureReason     string            `json:"FailureReason,omitempty"`
	HubSearchKeywords []string          `json:"HubSearchKeywords,omitempty"`
}

Hub represents a SageMaker private model hub.

type HubContent

type HubContent struct {
	CreationTime                 time.Time              `json:"CreationTime"`
	LastModifiedTime             time.Time              `json:"LastModifiedTime"`
	Tags                         map[string]string      `json:"Tags,omitempty"`
	HubContentType               string                 `json:"HubContentType"`
	HubContentDisplayName        string                 `json:"HubContentDisplayName,omitempty"`
	HubName                      string                 `json:"HubName"`
	HubArn                       string                 `json:"HubArn"`
	HubContentName               string                 `json:"HubContentName"`
	HubContentArn                string                 `json:"HubContentArn"`
	HubContentVersion            string                 `json:"HubContentVersion"`
	FailureReason                string                 `json:"FailureReason,omitempty"`
	DocumentSchemaVersion        string                 `json:"DocumentSchemaVersion"`
	HubContentStatus             string                 `json:"HubContentStatus"`
	HubContentDescription        string                 `json:"HubContentDescription,omitempty"`
	HubContentMarkdown           string                 `json:"HubContentMarkdown,omitempty"`
	HubContentDocument           string                 `json:"HubContentDocument"`
	SageMakerPublicHubContentArn string                 `json:"SageMakerPublicHubContentArn,omitempty"`
	ReferenceMinVersion          string                 `json:"ReferenceMinVersion,omitempty"`
	SupportStatus                string                 `json:"SupportStatus,omitempty"`
	HubContentDependencies       []HubContentDependency `json:"HubContentDependencies,omitempty"`
	HubContentSearchKeywords     []string               `json:"HubContentSearchKeywords,omitempty"`
}

HubContent represents a single versioned resource (model, notebook, or model reference) imported into a Hub.

type HubContentDependency

type HubContentDependency struct {
	DependencyOriginPath string `json:"DependencyOriginPath,omitempty"`
	DependencyCopyPath   string `json:"DependencyCopyPath,omitempty"`
}

HubContentDependency describes a single dependency copied alongside hub content.

type HubContentPresignedURL

type HubContentPresignedURL struct {
	URL       string
	LocalPath string
}

HubContentPresignedURL is a single presigned URL / local-path pair.

type HumanLoopConfig added in v1.5.0

type HumanLoopConfig struct {
	HumanTaskUIArn                    string   `json:"HumanTaskUiArn"`
	WorkteamArn                       string   `json:"WorkteamArn"`
	TaskTitle                         string   `json:"TaskTitle"`
	TaskDescription                   string   `json:"TaskDescription"`
	TaskKeywords                      []string `json:"TaskKeywords,omitempty"`
	TaskCount                         int32    `json:"TaskCount"`
	TaskAvailabilityLifetimeInSeconds int32    `json:"TaskAvailabilityLifetimeInSeconds,omitempty"`
	TaskTimeLimitInSeconds            int32    `json:"TaskTimeLimitInSeconds,omitempty"`
}

HumanLoopConfig mirrors types.HumanLoopConfig (types/types.go:9457-9560). PublicWorkforceTaskPrice remains unmodeled -- this backend never simulates paid Mechanical Turk work, disclosed.

type HumanTaskConfig

type HumanTaskConfig struct {
	UIConfig                          UIConfigInfo `json:"UiConfig"`
	WorkteamArn                       string       `json:"WorkteamArn"`
	PreHumanTaskLambdaArn             string       `json:"PreHumanTaskLambdaArn,omitempty"`
	TaskTitle                         string       `json:"TaskTitle"`
	TaskDescription                   string       `json:"TaskDescription"`
	AnnotationConsolidationLambdaArn  string       `json:"AnnotationConsolidationLambdaArn,omitempty"`
	TaskKeywords                      []string     `json:"TaskKeywords,omitempty"`
	NumberOfHumanWorkersPerDataObject int32        `json:"NumberOfHumanWorkersPerDataObject"`
	TaskTimeLimitInSeconds            int32        `json:"TaskTimeLimitInSeconds"`
	TaskAvailabilityLifetimeInSeconds int32        `json:"TaskAvailabilityLifetimeInSeconds,omitempty"`
	MaxConcurrentTaskCount            int32        `json:"MaxConcurrentTaskCount,omitempty"`
}

HumanTaskConfig configures how a labeling task is presented to human workers.

type HumanTaskUI

type HumanTaskUI struct {
	CreationTime      time.Time         `json:"CreationTime"`
	Tags              map[string]string `json:"Tags,omitempty"`
	HumanTaskUIName   string            `json:"HumanTaskUiName"`
	HumanTaskUIArn    string            `json:"HumanTaskUiArn"`
	HumanTaskUIStatus string            `json:"HumanTaskUiStatus"`
	// UITemplateContentSha256 backs the required
	// DescribeHumanTaskUiOutput.UiTemplate.ContentSha256
	// (api_op_DescribeHumanTaskUi.go:62, types.UiTemplateInfo) -- emitted
	// nested under "UiTemplate" by [HumanTaskUI.MarshalJSON], not at the
	// top level, so it carries json:"-" here.
	UITemplateContentSha256 string `json:"-"`
}

HumanTaskUI represents a SageMaker human task UI.

func (*HumanTaskUI) MarshalJSON added in v1.2.0

func (h *HumanTaskUI) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime as an AWS awsjson1.1 epoch-seconds number rather than Go's default RFC3339 string — this struct is marshaled directly by handleDescribeHumanTaskUI.

func (*HumanTaskUI) UnmarshalJSON added in v1.2.0

func (h *HumanTaskUI) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of HumanTaskUI.MarshalJSON, read by persistence.go's snapshot restore path.

type HyperParameterTuningJob

type HyperParameterTuningJob struct {
	LastModifiedTime              time.Time                   `json:"LastModifiedTime"`
	CreationTime                  time.Time                   `json:"CreationTime"`
	Tags                          map[string]string           `json:"Tags,omitempty"`
	HyperParameterTuningJobName   string                      `json:"HyperParameterTuningJobName"`
	Strategy                      string                      `json:"Strategy,omitempty"`
	HyperParameterTuningJobStatus string                      `json:"HyperParameterTuningJobStatus"`
	HyperParameterTuningJobArn    string                      `json:"HyperParameterTuningJobArn"`
	HyperParameterTuningJobConfig json.RawMessage             `json:"HyperParameterTuningJobConfig,omitempty"`
	TrainingJobDefinitions        json.RawMessage             `json:"TrainingJobDefinitions,omitempty"`
	TrainingJobDefinition         json.RawMessage             `json:"TrainingJobDefinition,omitempty"`
	WarmStartConfig               json.RawMessage             `json:"WarmStartConfig,omitempty"`
	Autotune                      json.RawMessage             `json:"Autotune,omitempty"`
	TrainingJobStatusCounters     HPTrainingJobStatusCounters `json:"TrainingJobStatusCounters"`
	ResourceLimits                HPResourceLimits            `json:"ResourceLimits"`
	ObjectiveStatusCounters       HPObjectiveStatusCounters   `json:"ObjectiveStatusCounters"`
}

HyperParameterTuningJob represents a SageMaker hyperparameter tuning job. HyperParameterTuningJobConfig/Autotune/WarmStartConfig/TrainingJobDefinition/ TrainingJobDefinitions are stored as opaque json.RawMessage passthrough (same convention as ai_workload_configs.go): this backend never launches child training jobs or actually searches hyperparameters, so only the client-supplied config round-trips — every field a real client sent is echoed back verbatim, since DescribeHyperParameterTuningJobOutput never mutates any of these after Create. Strategy/ResourceLimits are additionally kept as their own typed fields because ListHyperParameterTuningJobs' summary and this file's own filter/sort logic need them independent of the raw config blob.

type IamPolicyConstraints added in v1.5.0

type IamPolicyConstraints struct {
	SourceIP    string `json:"SourceIp,omitempty"`
	VpcSourceIP string `json:"VpcSourceIp,omitempty"`
}

IamPolicyConstraints mirrors types.IamPolicyConstraints (types/types.go:11466-11480).

type ImageConfig

type ImageConfig struct {
	RepositoryAccessMode string `json:"RepositoryAccessMode,omitempty"`
}

ImageConfig specifies where SageMaker should pull the container image from.

type ImageVersion

type ImageVersion struct {
	CreationTime       time.Time `json:"CreationTime"`
	LastModifiedTime   time.Time `json:"LastModifiedTime"`
	JobType            string    `json:"JobType,omitempty"`
	BaseImage          string    `json:"BaseImage,omitempty"`
	ContainerImage     string    `json:"ContainerImage,omitempty"`
	ImageArn           string    `json:"ImageArn"`
	ImageVersionArn    string    `json:"ImageVersionArn"`
	ImageVersionStatus string    `json:"ImageVersionStatus"`
	MLFramework        string    `json:"MLFramework,omitempty"`
	Processor          string    `json:"Processor,omitempty"`
	ProgrammingLang    string    `json:"ProgrammingLang,omitempty"`
	ReleaseNotes       string    `json:"ReleaseNotes,omitempty"`
	VendorGuidance     string    `json:"VendorGuidance,omitempty"`
	Aliases            []string  `json:"Aliases,omitempty"`
	Version            int       `json:"Version"`
	Horovod            bool      `json:"Horovod,omitempty"`
}

ImageVersion represents a version of a SageMaker image. FailureReason (DescribeImageVersionOutput/types.ImageVersion) is not modeled for the same reason as SMImage's: ImageVersionStatus never reaches CREATE_FAILED/ DELETE_FAILED here.

func (*ImageVersion) MarshalJSON added in v1.2.0

func (v *ImageVersion) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeImageVersion.

func (*ImageVersion) UnmarshalJSON added in v1.2.0

func (v *ImageVersion) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ImageVersion.MarshalJSON, read by persistence.go's snapshot restore path.

type ImportHubContentInput

type ImportHubContentInput struct {
	Tags                     map[string]string
	HubName                  string
	HubContentName           string
	HubContentVersion        string
	HubContentType           string
	DocumentSchemaVersion    string
	HubContentDisplayName    string
	HubContentDescription    string
	HubContentMarkdown       string
	HubContentDocument       string
	SupportStatus            string
	HubContentSearchKeywords []string
}

ImportHubContentInput carries the fields accepted by ImportHubContent.

type InMemoryBackend

type InMemoryBackend struct {
	// contains filtered or unexported fields
}

InMemoryBackend is an in-memory store for SageMaker resources.

All resource maps are nested by region (outer key = region) so that same-named resources are isolated across regions. The per-region inner maps are created lazily via the *Store helpers. Callers must hold b.mu while accessing the inner maps.

func NewInMemoryBackend

func NewInMemoryBackend(accountID, region string) *InMemoryBackend

NewInMemoryBackend creates a new in-memory SageMaker backend.

func NewInMemoryBackendWithContext

func NewInMemoryBackendWithContext(
	svcCtx context.Context,
	accountID, region string,
) *InMemoryBackend

NewInMemoryBackendWithContext creates a new in-memory SageMaker backend whose lifecycle goroutines (status-transition simulators) are children of svcCtx, so they are cancelled when the service shuts down rather than leaking. If svcCtx is nil, context.Background is used.

func (*InMemoryBackend) AccountID

func (b *InMemoryBackend) AccountID() string

AccountID returns the AWS account ID this backend is configured for.

func (*InMemoryBackend) AddActionInternal

func (b *InMemoryBackend) AddActionInternal(ctx context.Context, name, actionType string) *Action

AddActionInternal adds an action directly for seeding tests.

func (*InMemoryBackend) AddAlgorithmInternal

func (b *InMemoryBackend) AddAlgorithmInternal(ctx context.Context, name string) *Algorithm

AddAlgorithmInternal adds an algorithm directly for seeding tests.

func (*InMemoryBackend) AddAssociation

func (b *InMemoryBackend) AddAssociation(
	ctx context.Context,
	sourceArn, destinationArn, associationType string,
	tags map[string]string,
) (*Association, error)

AddAssociation creates an association between a source and destination entity in the ML lineage graph.

func (*InMemoryBackend) AddClusterInternal

func (b *InMemoryBackend) AddClusterInternal(ctx context.Context, clusterName string) *Cluster

AddClusterInternal adds a cluster directly for seeding tests.

func (*InMemoryBackend) AddClusterNodeInternal added in v1.5.0

func (b *InMemoryBackend) AddClusterNodeInternal(
	ctx context.Context,
	clusterName string,
	node ClusterNode,
) *ClusterNode

AddClusterNodeInternal directly inserts a node into an existing cluster, bypassing BatchAddClusterNodes' instance-group semantics, for seeding tests.

func (*InMemoryBackend) AddModelPackageInternal

func (b *InMemoryBackend) AddModelPackageInternal(ctx context.Context, mp *ModelPackage)

AddModelPackageInternal adds a model package directly for testing.

func (*InMemoryBackend) AddTags

func (b *InMemoryBackend) AddTags(ctx context.Context, resourceARN string, tags map[string]string) error

AddTags adds or updates tags on a resource identified by ARN.

func (*InMemoryBackend) AssociateTrialComponent

func (b *InMemoryBackend) AssociateTrialComponent(
	ctx context.Context,
	trialName, trialComponentName string,
) (*TrialComponentAssociation, error)

AssociateTrialComponent associates a trial component with a trial.

func (*InMemoryBackend) AttachClusterNodeVolume

func (b *InMemoryBackend) AttachClusterNodeVolume(
	ctx context.Context,
	clusterArn, nodeID, volumeID string,
) (*AttachedVolume, error)

AttachClusterNodeVolume attaches a volume to a cluster node. The volume is tracked by the VolumeId supplied here, since this emulator does not mint a separate immutable VolumeId at attach time — DetachClusterNodeVolume matches on the same value.

func (*InMemoryBackend) BatchAddClusterNodes

func (b *InMemoryBackend) BatchAddClusterNodes(
	ctx context.Context,
	clusterName string,
	specs []AddClusterNodeSpec,
) (string, []ClusterNode, []BatchAddClusterNodesFailure, error)

BatchAddClusterNodes increments the target count for one or more instance groups, provisioning IncrementTargetCountBy new running nodes per spec. Returns clusterArn, the nodes added, and the specs that failed because their InstanceGroupName does not exist on the cluster.

func (*InMemoryBackend) BatchDeleteClusterNodes

func (b *InMemoryBackend) BatchDeleteClusterNodes(
	ctx context.Context,
	clusterName string,
	nodeIDs []string,
) (string, []string, []string, error)

BatchDeleteClusterNodes removes multiple nodes from a cluster. Returns clusterArn, a slice of nodeIDs with errors, and a slice of successfully deleted nodeIDs.

func (*InMemoryBackend) BatchDescribeModelPackage

func (b *InMemoryBackend) BatchDescribeModelPackage(
	ctx context.Context,
	modelPackageArns []string,
) map[string]ModelPackageBatchResult

BatchDescribeModelPackage returns descriptions of multiple model packages by ARN.

func (*InMemoryBackend) BatchGetRecord

func (b *InMemoryBackend) BatchGetRecord(
	ctx context.Context,
	identifiers []struct {
		FeatureGroupName              string
		RecordIdentifierValueAsString string
		FeatureNames                  []string
	},
) []BatchGetRecordResult

BatchGetRecord retrieves multiple feature records in a single call.

func (*InMemoryBackend) BatchRebootClusterNodes

func (b *InMemoryBackend) BatchRebootClusterNodes(
	ctx context.Context,
	clusterName string,
	nodeIDs []string,
) (string, []string, []string, error)

BatchRebootClusterNodes reboots multiple nodes in a cluster. Returns clusterArn, a slice of failed nodeIDs, and successful nodeIDs.

func (*InMemoryBackend) BatchReplaceClusterNodes

func (b *InMemoryBackend) BatchReplaceClusterNodes(
	ctx context.Context,
	clusterName string,
	nodeIDs []string,
) (string, []string, []string, error)

BatchReplaceClusterNodes replaces multiple nodes in a cluster, identified by node ID (types.BatchReplaceClusterNodesInput.NodeIds is a flat []string with no per-node InstanceType, api_op_BatchReplaceClusterNodes.go:60-92, sagemaker@v1.263.2). Returns clusterArn, the nodeIDs that failed to replace, and the nodeIDs that were replaced successfully.

func (*InMemoryBackend) CreateAIBenchmarkJob added in v1.2.0

func (b *InMemoryBackend) CreateAIBenchmarkJob(
	ctx context.Context,
	opts CreateAIBenchmarkJobOptions,
) (*AIBenchmarkJob, error)

CreateAIBenchmarkJob creates an AI benchmark job and schedules its InProgress -> Completed transition after [aiJobInProgressToCompleted].

func (*InMemoryBackend) CreateAIRecommendationJob added in v1.2.0

func (b *InMemoryBackend) CreateAIRecommendationJob(
	ctx context.Context,
	opts CreateAIRecommendationJobOptions,
) (*AIRecommendationJob, error)

CreateAIRecommendationJob creates an AI recommendation job and schedules its InProgress -> Completed transition after [aiJobInProgressToCompleted].

func (*InMemoryBackend) CreateAIWorkloadConfig added in v1.2.0

func (b *InMemoryBackend) CreateAIWorkloadConfig(
	ctx context.Context,
	opts CreateAIWorkloadConfigOptions,
) (*AIWorkloadConfig, error)

CreateAIWorkloadConfig creates an AI workload configuration.

func (*InMemoryBackend) CreateAction

func (b *InMemoryBackend) CreateAction(
	ctx context.Context,
	name, actionType, description, status string,
	source ActionSource,
	properties map[string]string,
	tags map[string]string,
	metadataProperties *MetadataProperties,
) (*Action, error)

CreateAction creates a SageMaker ML lineage action.

func (*InMemoryBackend) CreateAlgorithm

func (b *InMemoryBackend) CreateAlgorithm(ctx context.Context, opts CreateAlgorithmOptions) (*Algorithm, error)

CreateAlgorithm creates a SageMaker algorithm specification.

func (*InMemoryBackend) CreateApp

func (b *InMemoryBackend) CreateApp(
	ctx context.Context,
	domainID, userProfile, appType, appName string,
	tags map[string]string,
	opts CreateAppOptions,
) (*App, error)

CreateApp creates a new SageMaker Studio app, owned by either a UserProfile or a Space (exactly one of userProfile/opts.SpaceName must be set, matching CreateAppInput's real contract).

func (*InMemoryBackend) CreateAppImageConfig

func (b *InMemoryBackend) CreateAppImageConfig(
	ctx context.Context,
	opts CreateAppImageConfigOptions,
) (*AppImageConfig, error)

CreateAppImageConfig creates an app image config.

func (*InMemoryBackend) CreateArtifact

func (b *InMemoryBackend) CreateArtifact(
	ctx context.Context,
	name, artifactType string,
	source ArtifactSource,
	properties map[string]string,
	tags map[string]string,
	metadataProperties *MetadataProperties,
) (*Artifact, error)

CreateArtifact creates a new ML lineage artifact.

func (*InMemoryBackend) CreateAutoMLJob

func (b *InMemoryBackend) CreateAutoMLJob(
	ctx context.Context,
	name, roleArn string,
	tags map[string]string,
) (*AutoMLJob, error)

CreateAutoMLJob creates an AutoML job.

func (*InMemoryBackend) CreateCluster

func (b *InMemoryBackend) CreateCluster(
	ctx context.Context,
	opts CreateClusterOptions,
) (*Cluster, error)

CreateCluster creates a new SageMaker HyperPod cluster and auto-provisions InstanceCount running nodes for each requested instance group.

func (*InMemoryBackend) CreateClusterSchedulerConfig

func (b *InMemoryBackend) CreateClusterSchedulerConfig(
	ctx context.Context,
	opts CreateClusterSchedulerConfigOptions,
) (*ClusterSchedulerConfig, error)

CreateClusterSchedulerConfig creates a SageMaker cluster scheduler configuration.

func (*InMemoryBackend) CreateCodeRepository

func (b *InMemoryBackend) CreateCodeRepository(
	ctx context.Context,
	name string,
	gitConfig map[string]string,
	tags map[string]string,
) (*CodeRepository, error)

CreateCodeRepository creates a code repository.

func (*InMemoryBackend) CreateCompilationJob

func (b *InMemoryBackend) CreateCompilationJob(
	ctx context.Context,
	name, roleArn string,
	tags map[string]string,
) (*CompilationJob, error)

CreateCompilationJob creates a compilation job.

func (*InMemoryBackend) CreateComputeQuota

func (b *InMemoryBackend) CreateComputeQuota(
	ctx context.Context,
	opts CreateComputeQuotaOptions,
) (*ComputeQuota, error)

CreateComputeQuota creates a SageMaker compute quota.

func (*InMemoryBackend) CreateContext

func (b *InMemoryBackend) CreateContext(
	ctx context.Context,
	name, contextType, description string,
	source ContextSource,
	properties map[string]string,
	tags map[string]string,
) (*Context, error)

CreateContext creates a new ML lineage context.

func (*InMemoryBackend) CreateDataQualityJobDefinition

func (b *InMemoryBackend) CreateDataQualityJobDefinition(
	ctx context.Context,
	name, roleArn, endpointName string,
	config map[string]json.RawMessage,
	tags map[string]string,
) (*JobDefinition, error)

CreateDataQualityJobDefinition creates a data quality job definition.

func (*InMemoryBackend) CreateDeviceFleet

func (b *InMemoryBackend) CreateDeviceFleet(ctx context.Context, opts CreateDeviceFleetOptions) (*DeviceFleet, error)

CreateDeviceFleet creates a SageMaker device fleet.

func (*InMemoryBackend) CreateDomain

func (b *InMemoryBackend) CreateDomain(
	ctx context.Context,
	name, authMode string,
	tags map[string]string,
	opts CreateDomainOptions,
) (*Domain, error)

CreateDomain creates a new SageMaker Studio domain.

func (*InMemoryBackend) CreateEdgeDeploymentPlan

func (b *InMemoryBackend) CreateEdgeDeploymentPlan(
	ctx context.Context,
	opts CreateEdgeDeploymentPlanOptions,
) (*EdgeDeploymentPlan, error)

CreateEdgeDeploymentPlan creates a SageMaker edge deployment plan.

func (*InMemoryBackend) CreateEdgeDeploymentStage

func (b *InMemoryBackend) CreateEdgeDeploymentStage(
	ctx context.Context,
	planName string,
	stages []EdgeDeploymentStageInput,
) error

CreateEdgeDeploymentStage appends new stages to an existing edge deployment plan.

func (*InMemoryBackend) CreateEdgePackagingJob

func (b *InMemoryBackend) CreateEdgePackagingJob(
	ctx context.Context,
	opts CreateEdgePackagingJobOptions,
) (*EdgePackagingJob, error)

CreateEdgePackagingJob creates a SageMaker edge packaging job.

func (*InMemoryBackend) CreateEndpoint

func (b *InMemoryBackend) CreateEndpoint(
	ctx context.Context,
	opts CreateEndpointOptions,
) (*Endpoint, error)

CreateEndpoint creates a new SageMaker endpoint.

func (*InMemoryBackend) CreateEndpointConfig

func (b *InMemoryBackend) CreateEndpointConfig(
	ctx context.Context,
	name string,
	productionVariants []ProductionVariant,
	tags map[string]string,
) (*EndpointConfig, error)

CreateEndpointConfig creates a new SageMaker endpoint configuration.

func (*InMemoryBackend) CreateEndpointFSM

func (b *InMemoryBackend) CreateEndpointFSM(ctx context.Context, opts CreateEndpointOptions) (*Endpoint, error)

CreateEndpointFSM creates an endpoint and schedules Creating → InService.

func (*InMemoryBackend) CreateExperiment

func (b *InMemoryBackend) CreateExperiment(
	ctx context.Context,
	name, displayName, description string,
	tags map[string]string,
) (*Experiment, error)

CreateExperiment creates a new experiment.

func (*InMemoryBackend) CreateFeatureGroup

func (b *InMemoryBackend) CreateFeatureGroup(
	ctx context.Context,
	opts CreateFeatureGroupOptions,
) (*FeatureGroup, error)

CreateFeatureGroup creates a new feature group.

func (*InMemoryBackend) CreateFlowDefinition

func (b *InMemoryBackend) CreateFlowDefinition(
	ctx context.Context,
	name, roleArn string,
	tags map[string]string,
	opts FlowDefinitionOptions,
) (*FlowDefinition, error)

CreateFlowDefinition creates a flow definition.

func (*InMemoryBackend) CreateHub

func (b *InMemoryBackend) CreateHub(
	ctx context.Context,
	name, description, displayName, s3OutputPath string,
	searchKeywords []string,
	tags map[string]string,
) (*Hub, error)

CreateHub creates a new private model hub.

func (*InMemoryBackend) CreateHubContentPresignedURLs

func (b *InMemoryBackend) CreateHubContentPresignedURLs(
	ctx context.Context,
	hubName, contentType, contentName, version string,
	params CreateHubContentPresignedURLsParams,
) ([]HubContentPresignedURL, string, error)

CreateHubContentPresignedURLs returns presigned download URLs for the files backing a hub content resource. If version is empty, the latest version is used. The result is paginated per params.MaxResults (real default: 100, api_op_CreateHubContentPresignedUrls.go:34) / params.NextToken.

func (*InMemoryBackend) CreateHubContentReference

func (b *InMemoryBackend) CreateHubContentReference(
	ctx context.Context,
	hubName, publicHubContentArn, contentName, minVersion string,
	tags map[string]string,
) (*HubContent, error)

CreateHubContentReference creates a ModelReference hub content resource that points at a public hub's content.

func (*InMemoryBackend) CreateHumanTaskUI

func (b *InMemoryBackend) CreateHumanTaskUI(
	ctx context.Context,
	name, content string,
	tags map[string]string,
) (*HumanTaskUI, error)

CreateHumanTaskUI creates a human task UI. contentSha256 backs the required DescribeHumanTaskUiOutput.UiTemplate.ContentSha256 -- the raw template content itself is never returned by the real DescribeHumanTaskUi response (only its digest), so only the digest is retained.

func (*InMemoryBackend) CreateHyperParameterTuningJob

func (b *InMemoryBackend) CreateHyperParameterTuningJob(
	ctx context.Context,
	opts CreateHyperParameterTuningJobOptions,
) (*HyperParameterTuningJob, error)

CreateHyperParameterTuningJob creates a new HPO job.

func (*InMemoryBackend) CreateImage

func (b *InMemoryBackend) CreateImage(
	ctx context.Context,
	name, description, displayName, roleArn string,
	tags map[string]string,
) (*SMImage, error)

CreateImage creates a SageMaker image.

func (*InMemoryBackend) CreateImageVersion

func (b *InMemoryBackend) CreateImageVersion(
	ctx context.Context,
	imageName, baseImage string,
	opts CreateImageVersionOptions,
) (*ImageVersion, error)

CreateImageVersion creates a new version for an image. ContainerImage is set equal to BaseImage at creation: this backend has no ECR subsystem to resolve BaseImage to a distinct digest-pinned registry path, so the two coincide from the moment the version exists (they may later diverge on real AWS, which this backend does not model).

func (*InMemoryBackend) CreateInferenceComponent

func (b *InMemoryBackend) CreateInferenceComponent(
	ctx context.Context,
	opts CreateInferenceComponentOptions,
) (*InferenceComponent, error)

CreateInferenceComponent creates a SageMaker inference component and schedules its Creating -> InService transition.

func (*InMemoryBackend) CreateInferenceExperiment

func (b *InMemoryBackend) CreateInferenceExperiment(
	ctx context.Context,
	opts CreateInferenceExperimentOptions,
) (*InferenceExperiment, error)

CreateInferenceExperiment creates an inference experiment. EndpointName, ModelVariants, and ShadowModeConfig are all required by the real API — a previous version of this backend never read any of the three, so no real client's endpoint association, variant infrastructure, or shadow-traffic split was ever stored.

func (*InMemoryBackend) CreateInferenceRecommendationsJob

func (b *InMemoryBackend) CreateInferenceRecommendationsJob(
	ctx context.Context,
	opts CreateInferenceRecommendationsJobOptions,
) (*InferenceRecommendationsJob, error)

CreateInferenceRecommendationsJob creates an inference recommendations job.

func (*InMemoryBackend) CreateJob added in v1.2.0

func (b *InMemoryBackend) CreateJob(ctx context.Context, opts CreateJobOptions) (*Job, error)

CreateJob creates a generic model-customization job and schedules its InProgress -> Completed transition after [aiJobInProgressToCompleted].

func (*InMemoryBackend) CreateLabelingJob

func (b *InMemoryBackend) CreateLabelingJob(
	ctx context.Context,
	opts CreateLabelingJobOptions,
) (*LabelingJob, error)

CreateLabelingJob creates and schedules a Ground Truth labeling job.

func (*InMemoryBackend) CreateMlflowApp

func (b *InMemoryBackend) CreateMlflowApp(ctx context.Context, opts CreateMlflowAppOptions) (*MlflowApp, error)

CreateMlflowApp creates an MLflow App. Stores by ARN; Name is used only to build the ARN.

func (*InMemoryBackend) CreateMlflowTrackingServer

func (b *InMemoryBackend) CreateMlflowTrackingServer(
	ctx context.Context,
	opts CreateMlflowTrackingServerOptions,
) (*MlflowTrackingServer, error)

CreateMlflowTrackingServer creates an MLflow tracking server.

func (*InMemoryBackend) CreateModel

func (b *InMemoryBackend) CreateModel(
	ctx context.Context,
	name string,
	executionRoleARN string,
	primaryContainer *ContainerDefinition,
	containers []ContainerDefinition,
	tags map[string]string,
) (*Model, error)

CreateModel creates a new SageMaker model.

func (*InMemoryBackend) CreateModelBiasJobDefinition

func (b *InMemoryBackend) CreateModelBiasJobDefinition(
	ctx context.Context,
	name, roleArn, endpointName string,
	config map[string]json.RawMessage,
	tags map[string]string,
) (*JobDefinition, error)

CreateModelBiasJobDefinition creates a model bias job definition.

func (*InMemoryBackend) CreateModelCard

func (b *InMemoryBackend) CreateModelCard(ctx context.Context, opts CreateModelCardOptions) (*ModelCard, error)

CreateModelCard creates a model card. ModelCardStatus is required by the real API (api_op_CreateModelCard.go:47-59) — a previous version of this backend hardcoded it to "Draft" and never read the caller's value at all.

func (*InMemoryBackend) CreateModelCardExportJob

func (b *InMemoryBackend) CreateModelCardExportJob(
	ctx context.Context,
	jobName, modelCardName string,
	modelCardVersion int,
	s3OutputPath string,
) (*ModelCardExportJob, error)

CreateModelCardExportJob creates a model card export job for an existing model card. The job completes synchronously (status Completed) since there is no real S3 export to perform in-memory.

func (*InMemoryBackend) CreateModelExplainabilityJobDefinition

func (b *InMemoryBackend) CreateModelExplainabilityJobDefinition(
	ctx context.Context,
	name, roleArn, endpointName string,
	config map[string]json.RawMessage,
	tags map[string]string,
) (*JobDefinition, error)

CreateModelExplainabilityJobDefinition creates a model explainability job definition.

func (*InMemoryBackend) CreateModelPackage

func (b *InMemoryBackend) CreateModelPackage(
	ctx context.Context,
	opts CreateModelPackageOptions,
) (*ModelPackage, error)

CreateModelPackage creates a model package.

func (*InMemoryBackend) CreateModelPackageGroup

func (b *InMemoryBackend) CreateModelPackageGroup(
	ctx context.Context,
	opts CreateModelPackageGroupOptions,
) (*ModelPackageGroup, error)

CreateModelPackageGroup creates a new model package group.

func (*InMemoryBackend) CreateModelQualityJobDefinition

func (b *InMemoryBackend) CreateModelQualityJobDefinition(
	ctx context.Context,
	name, roleArn, endpointName string,
	config map[string]json.RawMessage,
	tags map[string]string,
) (*JobDefinition, error)

CreateModelQualityJobDefinition creates a model quality job definition.

func (*InMemoryBackend) CreateMonitoringSchedule

func (b *InMemoryBackend) CreateMonitoringSchedule(
	ctx context.Context,
	name string,
	config *MonitoringScheduleConfig,
	tags map[string]string,
) (*MonitoringSchedule, error)

CreateMonitoringSchedule creates a monitoring schedule. config is required by the real API (api_op_CreateMonitoringSchedule.go:29-50) — a previous version of this backend never read it at all, so no real client's monitoring job definition, schedule expression, or endpoint association was ever stored.

func (*InMemoryBackend) CreateNotebookInstance

func (b *InMemoryBackend) CreateNotebookInstance(
	ctx context.Context,
	name, instanceType, roleArn string,
	tags map[string]string,
) (*NotebookInstance, error)

CreateNotebookInstance creates a new notebook instance.

func (*InMemoryBackend) CreateNotebookInstanceFSM

func (b *InMemoryBackend) CreateNotebookInstanceFSM(
	ctx context.Context,
	opts NotebookInstanceOptions,
) (*NotebookInstance, error)

CreateNotebookInstanceFSM creates a notebook and immediately schedules Pending → InService.

func (*InMemoryBackend) CreateNotebookInstanceFull

func (b *InMemoryBackend) CreateNotebookInstanceFull(
	ctx context.Context,
	opts NotebookInstanceOptions,
) (*NotebookInstance, error)

CreateNotebookInstanceFull persists all NotebookInstanceOptions fields.

func (*InMemoryBackend) CreateNotebookInstanceLifecycleConfig

func (b *InMemoryBackend) CreateNotebookInstanceLifecycleConfig(
	ctx context.Context,
	name string,
	onCreate, onStart []NotebookLifecycleHook,
	tags map[string]string,
) (*NotebookInstanceLifecycleConfig, error)

CreateNotebookInstanceLifecycleConfig creates a new lifecycle config.

func (*InMemoryBackend) CreateOptimizationJob

func (b *InMemoryBackend) CreateOptimizationJob(
	ctx context.Context,
	opts CreateOptimizationJobOptions,
) (*OptimizationJob, error)

CreateOptimizationJob creates an optimization job.

func (*InMemoryBackend) CreatePartnerApp

func (b *InMemoryBackend) CreatePartnerApp(ctx context.Context, opts CreatePartnerAppOptions) (*PartnerApp, error)

CreatePartnerApp creates a partner app. Stores by ARN; returns both name and ARN.

func (*InMemoryBackend) CreatePartnerAppPresignedURL

func (b *InMemoryBackend) CreatePartnerAppPresignedURL(ctx context.Context, arnStr string) (string, error)

CreatePartnerAppPresignedURL returns a one-time presigned URL for accessing an existing partner app.

func (*InMemoryBackend) CreatePipeline

func (b *InMemoryBackend) CreatePipeline(
	ctx context.Context,
	name, definition, roleArn string,
	tags map[string]string,
) (*Pipeline, error)

CreatePipeline creates a new pipeline.

func (*InMemoryBackend) CreatePipelineFull

func (b *InMemoryBackend) CreatePipelineFull(ctx context.Context, opts CreatePipelineOptions) (*Pipeline, error)

CreatePipelineFull creates a pipeline with full AWS input fields.

func (*InMemoryBackend) CreatePresignedDomainURL

func (b *InMemoryBackend) CreatePresignedDomainURL(
	ctx context.Context,
	domainID, userProfileName string,
) (string, error)

CreatePresignedDomainURL validates that domainID and userProfileName refer to existing resources and returns a synthetic (but stably-shaped) presigned authorization URL for the domain's user profile.

func (*InMemoryBackend) CreatePresignedMlflowAppURL

func (b *InMemoryBackend) CreatePresignedMlflowAppURL(ctx context.Context, arnStr string) (string, error)

CreatePresignedMlflowAppURL returns a one-time presigned URL for accessing the MLflow UI of an existing MLflow App.

func (*InMemoryBackend) CreatePresignedMlflowTrackingServerURL

func (b *InMemoryBackend) CreatePresignedMlflowTrackingServerURL(ctx context.Context, name string) (string, error)

CreatePresignedMlflowTrackingServerURL returns a one-time presigned URL for accessing the MLflow UI of an existing tracking server.

func (*InMemoryBackend) CreatePresignedNotebookInstanceURL

func (b *InMemoryBackend) CreatePresignedNotebookInstanceURL(ctx context.Context, name string) (string, error)

CreatePresignedNotebookInstanceURL returns a presigned URL for a notebook instance.

func (*InMemoryBackend) CreateProcessingJob

func (b *InMemoryBackend) CreateProcessingJob(ctx context.Context, opts ProcessingJob) (*ProcessingJob, error)

CreateProcessingJob creates and schedules a processing job.

func (*InMemoryBackend) CreateProject

func (b *InMemoryBackend) CreateProject(ctx context.Context, opts CreateProjectOptions) (*Project, error)

CreateProject creates a SageMaker project.

func (*InMemoryBackend) CreateSpace

func (b *InMemoryBackend) CreateSpace(
	ctx context.Context,
	domainID, spaceName string,
	tags map[string]string,
	opts CreateSpaceOptions,
) (*Space, error)

CreateSpace creates a SageMaker Studio space.

func (*InMemoryBackend) CreateStudioLifecycleConfig

func (b *InMemoryBackend) CreateStudioLifecycleConfig(
	ctx context.Context,
	name, appType, content string,
	tags map[string]string,
) (*StudioLifecycleConfig, error)

CreateStudioLifecycleConfig creates a Studio lifecycle configuration.

func (*InMemoryBackend) CreateTrainingJob

func (b *InMemoryBackend) CreateTrainingJob(
	ctx context.Context,
	name, roleArn string,
	algorithmSpec map[string]string,
	tags map[string]string,
) (*TrainingJob, error)

CreateTrainingJob creates a new training job (legacy signature, kept for compatibility).

func (*InMemoryBackend) CreateTrainingJobFull

func (b *InMemoryBackend) CreateTrainingJobFull(ctx context.Context, opts TrainingJobOptions) (*TrainingJob, error)

CreateTrainingJobFull creates a training job from a full options struct and schedules InProgress → Completed after a short delay.

func (*InMemoryBackend) CreateTrainingPlan

func (b *InMemoryBackend) CreateTrainingPlan(
	ctx context.Context,
	name, offeringID string,
	spareInstanceCountPerUltraServer int32,
	tags map[string]string,
) (*TrainingPlan, error)

CreateTrainingPlan creates a training plan. If offeringID matches a catalog entry from SearchTrainingPlanOfferings, the plan inherits its duration, pricing and target resources and a backing ReservedCapacity is provisioned; otherwise a minimal Active plan is created (offeringID == "").

func (*InMemoryBackend) CreateTransformJob

func (b *InMemoryBackend) CreateTransformJob(ctx context.Context, opts TransformJobOptions) (*TransformJob, error)

CreateTransformJob creates a new batch transform job.

func (*InMemoryBackend) CreateTrial

func (b *InMemoryBackend) CreateTrial(
	ctx context.Context,
	name, experimentName, displayName string,
	metadataProperties *MetadataProperties,
	tags map[string]string,
) (*Trial, error)

CreateTrial creates a new trial.

func (*InMemoryBackend) CreateTrialComponent

func (b *InMemoryBackend) CreateTrialComponent(
	ctx context.Context,
	opts CreateTrialComponentOptions,
) (*TrialComponent, error)

CreateTrialComponent creates a new trial component.

func (*InMemoryBackend) CreateUserProfile

func (b *InMemoryBackend) CreateUserProfile(
	ctx context.Context,
	domainID, name string,
	tags map[string]string,
	opts CreateUserProfileOptions,
) (*UserProfile, error)

CreateUserProfile creates a new user profile in a domain.

func (*InMemoryBackend) CreateWorkforce

func (b *InMemoryBackend) CreateWorkforce(ctx context.Context, opts CreateWorkforceOptions) (*Workforce, error)

CreateWorkforce creates a workforce. AWS allows at most one workforce per account per region.

func (*InMemoryBackend) CreateWorkteam

func (b *InMemoryBackend) CreateWorkteam(ctx context.Context, opts CreateWorkteamOptions) (*Workteam, error)

CreateWorkteam creates a workteam.

func (*InMemoryBackend) DeleteAIBenchmarkJob added in v1.2.0

func (b *InMemoryBackend) DeleteAIBenchmarkJob(ctx context.Context, name string) (string, error)

DeleteAIBenchmarkJob removes an AI benchmark job by name, returning its ARN.

func (*InMemoryBackend) DeleteAIRecommendationJob added in v1.2.0

func (b *InMemoryBackend) DeleteAIRecommendationJob(ctx context.Context, name string) (string, error)

DeleteAIRecommendationJob removes an AI recommendation job by name, returning its ARN.

func (*InMemoryBackend) DeleteAIWorkloadConfig added in v1.2.0

func (b *InMemoryBackend) DeleteAIWorkloadConfig(ctx context.Context, name string) (string, error)

DeleteAIWorkloadConfig removes an AI workload configuration by name, returning its ARN.

func (*InMemoryBackend) DeleteAction

func (b *InMemoryBackend) DeleteAction(ctx context.Context, name string) (*Action, error)

DeleteAction deletes an action by name.

func (*InMemoryBackend) DeleteAlgorithm

func (b *InMemoryBackend) DeleteAlgorithm(ctx context.Context, name string) error

DeleteAlgorithm removes an algorithm by name.

func (*InMemoryBackend) DeleteApp

func (b *InMemoryBackend) DeleteApp(
	ctx context.Context, domainID, userProfile, spaceName, appType, appName string,
) error

DeleteApp deletes an app owned by either the given userProfile or spaceName (exactly one is expected to be non-empty, mirroring Create).

func (*InMemoryBackend) DeleteAppImageConfig

func (b *InMemoryBackend) DeleteAppImageConfig(ctx context.Context, name string) error

DeleteAppImageConfig removes an app image config by name.

func (*InMemoryBackend) DeleteArtifact

func (b *InMemoryBackend) DeleteArtifact(
	ctx context.Context, artifactArn string, source *ArtifactSource,
) (*Artifact, error)

DeleteArtifact deletes an artifact identified either by ARN or, per the real DeleteArtifactInput ("Either ArtifactArn or Source must be specified" — docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteArtifact.html, since neither field is marked required on the Go SDK struct itself), by Source.SourceUri. When multiple artifacts share a SourceUri (the real API does not document a tie-break), the lowest ArtifactArn is deleted, matching this emulator's other deterministic-by-ARN tie-break conventions.

func (*InMemoryBackend) DeleteAssociation

func (b *InMemoryBackend) DeleteAssociation(ctx context.Context, sourceArn, destinationArn string) error

DeleteAssociation removes an association between a source and destination entity.

func (*InMemoryBackend) DeleteCluster

func (b *InMemoryBackend) DeleteCluster(ctx context.Context, nameOrArn string) (string, error)

DeleteCluster removes a cluster by name or ARN, returning its ARN.

func (*InMemoryBackend) DeleteClusterSchedulerConfig

func (b *InMemoryBackend) DeleteClusterSchedulerConfig(ctx context.Context, id string) error

DeleteClusterSchedulerConfig deletes a cluster scheduler config by id.

func (*InMemoryBackend) DeleteCodeRepository

func (b *InMemoryBackend) DeleteCodeRepository(ctx context.Context, name string) error

DeleteCodeRepository removes a code repository by name.

func (*InMemoryBackend) DeleteCompilationJob

func (b *InMemoryBackend) DeleteCompilationJob(ctx context.Context, name string) error

DeleteCompilationJob removes a compilation job by name.

func (*InMemoryBackend) DeleteComputeQuota

func (b *InMemoryBackend) DeleteComputeQuota(ctx context.Context, id string) error

DeleteComputeQuota deletes a compute quota by id.

func (*InMemoryBackend) DeleteContext

func (b *InMemoryBackend) DeleteContext(ctx context.Context, name string) (*Context, error)

DeleteContext deletes a context by name.

func (*InMemoryBackend) DeleteDataQualityJobDefinition

func (b *InMemoryBackend) DeleteDataQualityJobDefinition(ctx context.Context, name string) error

DeleteDataQualityJobDefinition removes a data quality job definition by name.

func (*InMemoryBackend) DeleteDeviceFleet

func (b *InMemoryBackend) DeleteDeviceFleet(ctx context.Context, name string) error

DeleteDeviceFleet deletes a device fleet by name.

func (*InMemoryBackend) DeleteDomain

func (b *InMemoryBackend) DeleteDomain(ctx context.Context, idOrName string) error

DeleteDomain deletes a domain by ID or name.

func (*InMemoryBackend) DeleteEdgeDeploymentPlan

func (b *InMemoryBackend) DeleteEdgeDeploymentPlan(ctx context.Context, name string) error

DeleteEdgeDeploymentPlan deletes an edge deployment plan by name.

func (*InMemoryBackend) DeleteEdgeDeploymentStage

func (b *InMemoryBackend) DeleteEdgeDeploymentStage(ctx context.Context, planName, stageName string) error

DeleteEdgeDeploymentStage removes a stage from an edge deployment plan.

func (*InMemoryBackend) DeleteEndpoint

func (b *InMemoryBackend) DeleteEndpoint(ctx context.Context, name string) error

DeleteEndpoint deletes an endpoint by name.

func (*InMemoryBackend) DeleteEndpointConfig

func (b *InMemoryBackend) DeleteEndpointConfig(ctx context.Context, name string) error

DeleteEndpointConfig deletes an endpoint configuration by name.

func (*InMemoryBackend) DeleteExperiment

func (b *InMemoryBackend) DeleteExperiment(ctx context.Context, name string) (*Experiment, error)

DeleteExperiment deletes an experiment.

func (*InMemoryBackend) DeleteFeatureGroup

func (b *InMemoryBackend) DeleteFeatureGroup(ctx context.Context, name string) error

DeleteFeatureGroup deletes a feature group.

func (*InMemoryBackend) DeleteFlowDefinition

func (b *InMemoryBackend) DeleteFlowDefinition(ctx context.Context, name string) error

DeleteFlowDefinition removes a flow definition by name.

func (*InMemoryBackend) DeleteHub

func (b *InMemoryBackend) DeleteHub(ctx context.Context, idOrArn string) error

DeleteHub deletes a hub. AWS rejects deletion when hub content still exists.

func (*InMemoryBackend) DeleteHubContent

func (b *InMemoryBackend) DeleteHubContent(
	ctx context.Context,
	hubName, contentType, contentName, version string,
) error

DeleteHubContent deletes a single version of a hub content resource.

func (*InMemoryBackend) DeleteHubContentReference

func (b *InMemoryBackend) DeleteHubContentReference(
	ctx context.Context,
	hubName, contentType, contentName string,
) error

DeleteHubContentReference deletes all versions of a ModelReference hub content resource.

func (*InMemoryBackend) DeleteHumanTaskUI

func (b *InMemoryBackend) DeleteHumanTaskUI(ctx context.Context, name string) error

DeleteHumanTaskUI removes a human task UI by name.

func (*InMemoryBackend) DeleteHyperParameterTuningJob

func (b *InMemoryBackend) DeleteHyperParameterTuningJob(ctx context.Context, name string) error

DeleteHyperParameterTuningJob removes an HP tuning job from the backend.

func (*InMemoryBackend) DeleteImage

func (b *InMemoryBackend) DeleteImage(ctx context.Context, name string) error

DeleteImage removes a SageMaker image by name.

func (*InMemoryBackend) DeleteImageVersion

func (b *InMemoryBackend) DeleteImageVersion(ctx context.Context, imageName, alias string, version int) error

DeleteImageVersion removes an image version identified by alias or version number. Unlike DescribeImageVersion/UpdateImageVersion, the real op's doc (api_op_DeleteImageVersion.go:28-42) states no "if unspecified" default, so one of alias/version is required here.

func (*InMemoryBackend) DeleteInferenceComponent

func (b *InMemoryBackend) DeleteInferenceComponent(ctx context.Context, name string) error

DeleteInferenceComponent deletes an inference component by name.

func (*InMemoryBackend) DeleteInferenceExperiment

func (b *InMemoryBackend) DeleteInferenceExperiment(ctx context.Context, name string) (string, error)

DeleteInferenceExperiment removes an inference experiment by name.

func (*InMemoryBackend) DeleteJob added in v1.2.0

func (b *InMemoryBackend) DeleteJob(ctx context.Context, category, name string) error

DeleteJob removes a Job by category and name. It rejects deletion of a still-InProgress job with ErrJobRunning (real AWS requires StopJob first — see ErrJobRunning's doc comment).

func (*InMemoryBackend) DeleteMlflowApp

func (b *InMemoryBackend) DeleteMlflowApp(ctx context.Context, arnStr string) error

DeleteMlflowApp removes an MLflow App by ARN.

func (*InMemoryBackend) DeleteMlflowTrackingServer

func (b *InMemoryBackend) DeleteMlflowTrackingServer(ctx context.Context, name string) (string, error)

DeleteMlflowTrackingServer removes an MLflow tracking server by name and returns its ARN (DeleteMlflowTrackingServerOutput.TrackingServerArn, api_op_DeleteMlflowTrackingServer.go:39-45).

func (*InMemoryBackend) DeleteModel

func (b *InMemoryBackend) DeleteModel(ctx context.Context, name string) error

DeleteModel deletes a model by name.

func (*InMemoryBackend) DeleteModelBiasJobDefinition

func (b *InMemoryBackend) DeleteModelBiasJobDefinition(ctx context.Context, name string) error

DeleteModelBiasJobDefinition removes a model bias job definition by name.

func (*InMemoryBackend) DeleteModelCard

func (b *InMemoryBackend) DeleteModelCard(ctx context.Context, name string) error

DeleteModelCard removes a model card by name.

func (*InMemoryBackend) DeleteModelExplainabilityJobDefinition

func (b *InMemoryBackend) DeleteModelExplainabilityJobDefinition(ctx context.Context, name string) error

DeleteModelExplainabilityJobDefinition removes a model explainability job definition by name.

func (*InMemoryBackend) DeleteModelPackage

func (b *InMemoryBackend) DeleteModelPackage(ctx context.Context, nameOrArn string) error

DeleteModelPackage removes a model package by name or ARN.

func (*InMemoryBackend) DeleteModelPackageGroup

func (b *InMemoryBackend) DeleteModelPackageGroup(ctx context.Context, name string) error

DeleteModelPackageGroup removes a model package group by name.

func (*InMemoryBackend) DeleteModelPackageGroupPolicy

func (b *InMemoryBackend) DeleteModelPackageGroupPolicy(ctx context.Context, name string) error

DeleteModelPackageGroupPolicy removes the resource policy from a model package group.

func (*InMemoryBackend) DeleteModelQualityJobDefinition

func (b *InMemoryBackend) DeleteModelQualityJobDefinition(ctx context.Context, name string) error

DeleteModelQualityJobDefinition removes a model quality job definition by name.

func (*InMemoryBackend) DeleteMonitoringSchedule

func (b *InMemoryBackend) DeleteMonitoringSchedule(ctx context.Context, name string) error

DeleteMonitoringSchedule removes a monitoring schedule.

func (*InMemoryBackend) DeleteNotebookInstance

func (b *InMemoryBackend) DeleteNotebookInstance(ctx context.Context, name string) error

DeleteNotebookInstance removes a notebook instance from the backend.

func (*InMemoryBackend) DeleteNotebookInstanceLifecycleConfig

func (b *InMemoryBackend) DeleteNotebookInstanceLifecycleConfig(ctx context.Context, name string) error

DeleteNotebookInstanceLifecycleConfig removes a lifecycle config.

func (*InMemoryBackend) DeleteOptimizationJob

func (b *InMemoryBackend) DeleteOptimizationJob(ctx context.Context, name string) error

DeleteOptimizationJob removes an optimization job by name.

func (*InMemoryBackend) DeletePartnerApp

func (b *InMemoryBackend) DeletePartnerApp(ctx context.Context, arnStr string) error

DeletePartnerApp removes a partner app by ARN.

func (*InMemoryBackend) DeletePipeline

func (b *InMemoryBackend) DeletePipeline(ctx context.Context, name string) (*Pipeline, error)

DeletePipeline deletes a pipeline.

func (*InMemoryBackend) DeleteProcessingJob

func (b *InMemoryBackend) DeleteProcessingJob(ctx context.Context, name string) error

DeleteProcessingJob removes a processing job's record. Only terminal (non-InProgress, non-Stopping) jobs may be deleted.

func (*InMemoryBackend) DeleteProject

func (b *InMemoryBackend) DeleteProject(ctx context.Context, name string) error

DeleteProject removes a project by name.

func (*InMemoryBackend) DeleteRecord

func (b *InMemoryBackend) DeleteRecord(ctx context.Context, featureGroupName, recordIDValue string) error

DeleteRecord deletes a feature record from a feature group.

func (*InMemoryBackend) DeleteSpace

func (b *InMemoryBackend) DeleteSpace(ctx context.Context, domainID, spaceName string) error

DeleteSpace removes a space.

func (*InMemoryBackend) DeleteStudioLifecycleConfig

func (b *InMemoryBackend) DeleteStudioLifecycleConfig(ctx context.Context, name string) error

DeleteStudioLifecycleConfig removes a Studio lifecycle configuration by name.

func (*InMemoryBackend) DeleteTags

func (b *InMemoryBackend) DeleteTags(ctx context.Context, resourceARN string, tagKeys []string) error

DeleteTags removes tag keys from a resource identified by ARN.

func (*InMemoryBackend) DeleteTrainingJob

func (b *InMemoryBackend) DeleteTrainingJob(ctx context.Context, name string) error

DeleteTrainingJob removes a training job from the backend.

func (*InMemoryBackend) DeleteTrial

func (b *InMemoryBackend) DeleteTrial(ctx context.Context, name string) (*Trial, error)

DeleteTrial deletes a trial.

func (*InMemoryBackend) DeleteTrialComponent

func (b *InMemoryBackend) DeleteTrialComponent(ctx context.Context, name string) (*TrialComponent, error)

DeleteTrialComponent deletes a trial component.

func (*InMemoryBackend) DeleteUserProfile

func (b *InMemoryBackend) DeleteUserProfile(ctx context.Context, domainID, name string) error

DeleteUserProfile deletes a user profile.

func (*InMemoryBackend) DeleteWorkforce

func (b *InMemoryBackend) DeleteWorkforce(ctx context.Context, name string) error

DeleteWorkforce removes a workforce. Fails with ResourceInUse if the workforce still has one or more work teams (AWS requires DeleteWorkteam first, per the DeleteWorkforce API contract).

func (*InMemoryBackend) DeleteWorkteam

func (b *InMemoryBackend) DeleteWorkteam(ctx context.Context, name string) error

DeleteWorkteam removes a workteam.

func (*InMemoryBackend) DeregisterDevices

func (b *InMemoryBackend) DeregisterDevices(ctx context.Context, fleetName string, deviceNames []string) error

DeregisterDevices removes devices from a device fleet.

func (*InMemoryBackend) DescribeAIBenchmarkJob added in v1.2.0

func (b *InMemoryBackend) DescribeAIBenchmarkJob(ctx context.Context, name string) (*AIBenchmarkJob, error)

DescribeAIBenchmarkJob returns an AI benchmark job by name.

func (*InMemoryBackend) DescribeAIRecommendationJob added in v1.2.0

func (b *InMemoryBackend) DescribeAIRecommendationJob(
	ctx context.Context,
	name string,
) (*AIRecommendationJob, error)

DescribeAIRecommendationJob returns an AI recommendation job by name.

func (*InMemoryBackend) DescribeAIWorkloadConfig added in v1.2.0

func (b *InMemoryBackend) DescribeAIWorkloadConfig(ctx context.Context, nameOrArn string) (*AIWorkloadConfig, error)

DescribeAIWorkloadConfig returns an AI workload configuration by name or ARN.

func (*InMemoryBackend) DescribeAction

func (b *InMemoryBackend) DescribeAction(ctx context.Context, name string) (*Action, error)

DescribeAction returns an action by name.

func (*InMemoryBackend) DescribeAlgorithm

func (b *InMemoryBackend) DescribeAlgorithm(ctx context.Context, name string) (*Algorithm, error)

DescribeAlgorithm returns an algorithm by name.

func (*InMemoryBackend) DescribeApp

func (b *InMemoryBackend) DescribeApp(
	ctx context.Context,
	domainID, userProfile, spaceName, appType, appName string,
) (*App, error)

DescribeApp returns an app owned by either the given userProfile or spaceName (exactly one is expected to be non-empty, mirroring Create).

func (*InMemoryBackend) DescribeAppImageConfig

func (b *InMemoryBackend) DescribeAppImageConfig(ctx context.Context, name string) (*AppImageConfig, error)

DescribeAppImageConfig returns an app image config by name.

func (*InMemoryBackend) DescribeArtifact

func (b *InMemoryBackend) DescribeArtifact(ctx context.Context, artifactArn string) (*Artifact, error)

DescribeArtifact returns an artifact by ARN.

func (*InMemoryBackend) DescribeAutoMLJob

func (b *InMemoryBackend) DescribeAutoMLJob(ctx context.Context, name string) (*AutoMLJob, error)

DescribeAutoMLJob returns an AutoML job by name.

func (*InMemoryBackend) DescribeCluster

func (b *InMemoryBackend) DescribeCluster(ctx context.Context, nameOrArn string) (*Cluster, error)

DescribeCluster returns a cluster by name or ARN.

func (*InMemoryBackend) DescribeClusterEvent

func (b *InMemoryBackend) DescribeClusterEvent(ctx context.Context, clusterNameOrArn, eventID string) error

DescribeClusterEvent looks up a single cluster event by ID. This emulator never generates cluster events (they require the Continuous provisioning mode with an EKS/Slurm orchestrator), so any lookup on an existing cluster correctly reports that the event does not exist.

func (*InMemoryBackend) DescribeClusterNode

func (b *InMemoryBackend) DescribeClusterNode(
	ctx context.Context,
	clusterNameOrArn, nodeID string,
) (*ClusterNode, error)

DescribeClusterNode returns a single node of a cluster by NodeId.

func (*InMemoryBackend) DescribeClusterSchedulerConfig

func (b *InMemoryBackend) DescribeClusterSchedulerConfig(
	ctx context.Context,
	id string,
	version *int32,
) (*ClusterSchedulerConfig, error)

DescribeClusterSchedulerConfig returns a cluster scheduler config by id. version, if non-nil, must equal the resource's current ClusterSchedulerConfigVersion: this backend keeps only the live version counter, not a historical snapshot per version (api_op_DescribeClusterSchedulerConfig.go:38's optional ClusterSchedulerConfigVersion), so a request for any other version returns NotFound rather than fabricating a snapshot that was never stored.

func (*InMemoryBackend) DescribeCodeRepository

func (b *InMemoryBackend) DescribeCodeRepository(ctx context.Context, name string) (*CodeRepository, error)

DescribeCodeRepository returns a code repository by name.

func (*InMemoryBackend) DescribeCompilationJob

func (b *InMemoryBackend) DescribeCompilationJob(ctx context.Context, name string) (*CompilationJob, error)

DescribeCompilationJob returns a compilation job by name.

func (*InMemoryBackend) DescribeComputeQuota

func (b *InMemoryBackend) DescribeComputeQuota(
	ctx context.Context,
	id string,
	version *int32,
) (*ComputeQuota, error)

DescribeComputeQuota returns a compute quota by id. version, if non-nil, must equal the resource's current ComputeQuotaVersion — same rationale as DescribeClusterSchedulerConfig's version parameter above: no historical snapshot exists to honor any other value.

func (*InMemoryBackend) DescribeContext

func (b *InMemoryBackend) DescribeContext(ctx context.Context, name string) (*Context, error)

DescribeContext returns a context by name.

func (*InMemoryBackend) DescribeDataQualityJobDefinition

func (b *InMemoryBackend) DescribeDataQualityJobDefinition(ctx context.Context, name string) (*JobDefinition, error)

DescribeDataQualityJobDefinition returns a data quality job definition by name.

func (*InMemoryBackend) DescribeDevice

func (b *InMemoryBackend) DescribeDevice(ctx context.Context, fleetName, deviceName string) (*Device, error)

DescribeDevice returns a device by fleet and device name.

func (*InMemoryBackend) DescribeDeviceFleet

func (b *InMemoryBackend) DescribeDeviceFleet(ctx context.Context, name string) (*DeviceFleet, error)

DescribeDeviceFleet returns a device fleet by name.

func (*InMemoryBackend) DescribeDomain

func (b *InMemoryBackend) DescribeDomain(ctx context.Context, idOrName string) (*Domain, error)

DescribeDomain returns a domain by ID or name.

func (*InMemoryBackend) DescribeEdgeDeploymentPlan

func (b *InMemoryBackend) DescribeEdgeDeploymentPlan(
	ctx context.Context,
	name, nextToken string,
	maxResults int32,
) (*EdgeDeploymentPlan, string, error)

DescribeEdgeDeploymentPlan returns an edge deployment plan by name, with Stages paginated per maxResults/nextToken (api_op_DescribeEdgeDeploymentPlan.go:39-41: "If the edge deployment plan has enough stages to require tokening, then this is the response from the last list of stages returned").

func (*InMemoryBackend) DescribeEdgePackagingJob

func (b *InMemoryBackend) DescribeEdgePackagingJob(ctx context.Context, name string) (*EdgePackagingJob, error)

DescribeEdgePackagingJob returns an edge packaging job by name.

func (*InMemoryBackend) DescribeEndpoint

func (b *InMemoryBackend) DescribeEndpoint(ctx context.Context, name string) (*Endpoint, error)

DescribeEndpoint returns an endpoint by name.

func (*InMemoryBackend) DescribeEndpointConfig

func (b *InMemoryBackend) DescribeEndpointConfig(ctx context.Context, name string) (*EndpointConfig, error)

DescribeEndpointConfig returns an endpoint config by name.

func (*InMemoryBackend) DescribeExperiment

func (b *InMemoryBackend) DescribeExperiment(ctx context.Context, name string) (*Experiment, error)

DescribeExperiment returns an experiment by name. CreatedBy/LastModifiedBy and Source are absent from the response -- see the disclosure on Experiment above.

func (*InMemoryBackend) DescribeFeatureGroup

func (b *InMemoryBackend) DescribeFeatureGroup(ctx context.Context, name string) (*FeatureGroup, error)

DescribeFeatureGroup returns a feature group by name.

func (*InMemoryBackend) DescribeFlowDefinition

func (b *InMemoryBackend) DescribeFlowDefinition(ctx context.Context, name string) (*FlowDefinition, error)

DescribeFlowDefinition returns a flow definition by name.

func (*InMemoryBackend) DescribeHub

func (b *InMemoryBackend) DescribeHub(ctx context.Context, idOrArn string) (*Hub, error)

DescribeHub returns a hub by name or ARN.

func (*InMemoryBackend) DescribeHubContent

func (b *InMemoryBackend) DescribeHubContent(
	ctx context.Context,
	hubName, contentType, contentName, version string,
) (*HubContent, error)

DescribeHubContent returns a hub content resource. If version is empty, the most recently imported version is returned.

func (*InMemoryBackend) DescribeHumanTaskUI

func (b *InMemoryBackend) DescribeHumanTaskUI(ctx context.Context, name string) (*HumanTaskUI, error)

DescribeHumanTaskUI returns a human task UI by name.

func (*InMemoryBackend) DescribeHyperParameterTuningJob

func (b *InMemoryBackend) DescribeHyperParameterTuningJob(
	ctx context.Context,
	name string,
) (*HyperParameterTuningJob, error)

DescribeHyperParameterTuningJob returns an HP tuning job by name.

func (*InMemoryBackend) DescribeImage

func (b *InMemoryBackend) DescribeImage(ctx context.Context, name string) (*SMImage, error)

DescribeImage returns a SageMaker image by name.

func (*InMemoryBackend) DescribeImageVersion

func (b *InMemoryBackend) DescribeImageVersion(
	ctx context.Context,
	imageName, alias string,
	version int,
) (*ImageVersion, error)

DescribeImageVersion returns an image version by image name, identified by alias or version number, defaulting to the latest version when neither is given (api_op_DescribeImageVersion.go:44: "If not specified, the latest version is described").

func (*InMemoryBackend) DescribeInferenceComponent

func (b *InMemoryBackend) DescribeInferenceComponent(ctx context.Context, name string) (*InferenceComponent, error)

DescribeInferenceComponent returns an inference component by name.

func (*InMemoryBackend) DescribeInferenceExperiment

func (b *InMemoryBackend) DescribeInferenceExperiment(ctx context.Context, name string) (*InferenceExperiment, error)

DescribeInferenceExperiment returns an inference experiment by name, with EndpointMetadata freshly computed from the live Endpoint store.

func (*InMemoryBackend) DescribeInferenceRecommendationsJob

func (b *InMemoryBackend) DescribeInferenceRecommendationsJob(
	ctx context.Context,
	name string,
) (*InferenceRecommendationsJob, error)

DescribeInferenceRecommendationsJob returns an inference recommendations job by name.

func (*InMemoryBackend) DescribeJob added in v1.2.0

func (b *InMemoryBackend) DescribeJob(ctx context.Context, category, name string) (*Job, error)

DescribeJob returns a Job by category and name.

func (*InMemoryBackend) DescribeJobSchemaVersion added in v1.2.0

func (b *InMemoryBackend) DescribeJobSchemaVersion(
	_ context.Context,
	category, version string,
) (*JobConfigSchemaVersionInfo, error)

DescribeJobSchemaVersion returns the schema document for category/version. If version is empty, the latest known version for category is used.

func (*InMemoryBackend) DescribeLabelingJob

func (b *InMemoryBackend) DescribeLabelingJob(ctx context.Context, name string) (*LabelingJob, error)

DescribeLabelingJob returns a labeling job by name.

func (*InMemoryBackend) DescribeLineageGroup

func (b *InMemoryBackend) DescribeLineageGroup(ctx context.Context, name string) (string, time.Time, error)

DescribeLineageGroup returns the default lineage group if name matches it.

func (*InMemoryBackend) DescribeMlflowApp

func (b *InMemoryBackend) DescribeMlflowApp(ctx context.Context, arnStr string) (*MlflowApp, error)

DescribeMlflowApp returns an MLflow App by ARN.

func (*InMemoryBackend) DescribeMlflowTrackingServer

func (b *InMemoryBackend) DescribeMlflowTrackingServer(
	ctx context.Context,
	name string,
) (*MlflowTrackingServer, error)

DescribeMlflowTrackingServer returns an MLflow tracking server by name.

func (*InMemoryBackend) DescribeModel

func (b *InMemoryBackend) DescribeModel(ctx context.Context, name string) (*Model, error)

DescribeModel returns a model by name.

func (*InMemoryBackend) DescribeModelBiasJobDefinition

func (b *InMemoryBackend) DescribeModelBiasJobDefinition(ctx context.Context, name string) (*JobDefinition, error)

DescribeModelBiasJobDefinition returns a model bias job definition by name.

func (*InMemoryBackend) DescribeModelCard

func (b *InMemoryBackend) DescribeModelCard(
	ctx context.Context,
	name string,
	version int32,
	includedData string,
) (*ModelCard, error)

DescribeModelCard returns a model card by name. If version is non-zero it must match the card's current (only tracked) version — this backend keeps no historical per-version snapshot, matching the precedent already established for ClusterSchedulerConfig/ComputeQuota's own version parameter (parity-15). If includedData is "MetadataOnly", Content is sanitized down to the fixed set of JSON paths the real op documents (api_op_DescribeModelCard.go:66-90); any other value (including empty, which defaults to "AllData") returns Content verbatim.

func (*InMemoryBackend) DescribeModelCardExportJob

func (b *InMemoryBackend) DescribeModelCardExportJob(
	ctx context.Context,
	jobArn string,
) (*ModelCardExportJob, error)

DescribeModelCardExportJob returns a model card export job by ARN.

func (*InMemoryBackend) DescribeModelExplainabilityJobDefinition

func (b *InMemoryBackend) DescribeModelExplainabilityJobDefinition(
	ctx context.Context,
	name string,
) (*JobDefinition, error)

DescribeModelExplainabilityJobDefinition returns a model explainability job definition by name.

func (*InMemoryBackend) DescribeModelPackage

func (b *InMemoryBackend) DescribeModelPackage(ctx context.Context, nameOrArn, _ string) (*ModelPackage, error)

DescribeModelPackage returns a model package by name or ARN. includedData (AllData/MetadataOnly) is accepted for wire-shape fidelity but is a no-op: this backend has no KMS-gated ModelCard redaction to apply — ModelCard is carried as opaque json.RawMessage with no field-level access control either way, so MetadataOnly cannot honestly sanitize it further than AllData already does. Disclosed, not modeled.

func (*InMemoryBackend) DescribeModelPackageGroup

func (b *InMemoryBackend) DescribeModelPackageGroup(ctx context.Context, name string) (*ModelPackageGroup, error)

DescribeModelPackageGroup returns a model package group by name.

func (*InMemoryBackend) DescribeModelQualityJobDefinition

func (b *InMemoryBackend) DescribeModelQualityJobDefinition(ctx context.Context, name string) (*JobDefinition, error)

DescribeModelQualityJobDefinition returns a model quality job definition by name.

func (*InMemoryBackend) DescribeMonitoringSchedule

func (b *InMemoryBackend) DescribeMonitoringSchedule(ctx context.Context, name string) (*MonitoringSchedule, error)

DescribeMonitoringSchedule returns a monitoring schedule by name.

func (*InMemoryBackend) DescribeNotebookInstance

func (b *InMemoryBackend) DescribeNotebookInstance(ctx context.Context, name string) (*NotebookInstance, error)

DescribeNotebookInstance returns a notebook instance by name.

func (*InMemoryBackend) DescribeNotebookInstanceLifecycleConfig

func (b *InMemoryBackend) DescribeNotebookInstanceLifecycleConfig(
	ctx context.Context,
	name string,
) (*NotebookInstanceLifecycleConfig, error)

DescribeNotebookInstanceLifecycleConfig returns a lifecycle config by name.

func (*InMemoryBackend) DescribeOptimizationJob

func (b *InMemoryBackend) DescribeOptimizationJob(ctx context.Context, name string) (*OptimizationJob, error)

DescribeOptimizationJob returns an optimization job by name.

func (*InMemoryBackend) DescribePartnerApp

func (b *InMemoryBackend) DescribePartnerApp(ctx context.Context, arnStr string) (*PartnerApp, error)

DescribePartnerApp returns a partner app by ARN.

func (*InMemoryBackend) DescribePipeline

func (b *InMemoryBackend) DescribePipeline(
	ctx context.Context, name string, versionID int64,
) (*Pipeline, time.Time, error)

DescribePipeline returns a pipeline by name. If versionID is non-zero, the returned Pipeline's PipelineDefinition reflects that specific historical version instead of the current one (DescribePipelineInput.PipelineVersionId, api_op_DescribePipeline.go). lastRunTime is the StartTime of the most recent PipelineExecution for this pipeline (DescribePipelineOutput.LastRunTime), or the zero time if the pipeline has never been run.

func (*InMemoryBackend) DescribePipelineDefinitionForExecution

func (b *InMemoryBackend) DescribePipelineDefinitionForExecution(
	ctx context.Context,
	execArn string,
) (string, time.Time, error)

DescribePipelineDefinitionForExecution returns the pipeline definition JSON that was in effect when the given execution started.

func (*InMemoryBackend) DescribePipelineExecution

func (b *InMemoryBackend) DescribePipelineExecution(ctx context.Context, execArn string) (*PipelineExecution, error)

DescribePipelineExecution returns a pipeline execution.

func (*InMemoryBackend) DescribeProcessingJob

func (b *InMemoryBackend) DescribeProcessingJob(ctx context.Context, name string) (*ProcessingJob, error)

DescribeProcessingJob returns a processing job by name.

func (*InMemoryBackend) DescribeProject

func (b *InMemoryBackend) DescribeProject(ctx context.Context, name string) (*Project, error)

DescribeProject returns a project by name.

func (*InMemoryBackend) DescribeReservedCapacity

func (b *InMemoryBackend) DescribeReservedCapacity(
	ctx context.Context,
	reservedCapacityArn string,
) (*ReservedCapacity, error)

DescribeReservedCapacity returns a reserved capacity by ARN.

func (*InMemoryBackend) DescribeSpace

func (b *InMemoryBackend) DescribeSpace(ctx context.Context, domainID, spaceName string) (*Space, error)

DescribeSpace returns a space by domain ID and space name.

func (*InMemoryBackend) DescribeStudioLifecycleConfig

func (b *InMemoryBackend) DescribeStudioLifecycleConfig(
	ctx context.Context,
	name string,
) (*StudioLifecycleConfig, error)

DescribeStudioLifecycleConfig returns a Studio lifecycle configuration by name.

func (*InMemoryBackend) DescribeTrainingJob

func (b *InMemoryBackend) DescribeTrainingJob(ctx context.Context, name string) (*TrainingJob, error)

DescribeTrainingJob returns a training job by name.

func (*InMemoryBackend) DescribeTrainingPlan

func (b *InMemoryBackend) DescribeTrainingPlan(ctx context.Context, name string) (*TrainingPlan, error)

DescribeTrainingPlan returns a training plan by name.

func (*InMemoryBackend) DescribeTrainingPlanExtensionHistory

func (b *InMemoryBackend) DescribeTrainingPlanExtensionHistory(
	ctx context.Context,
	trainingPlanArn, nextToken string,
	maxResults int32,
) ([]*TrainingPlanExtension, string, error)

DescribeTrainingPlanExtensionHistory returns the extension history for a training plan.

func (*InMemoryBackend) DescribeTransformJob

func (b *InMemoryBackend) DescribeTransformJob(ctx context.Context, name string) (*TransformJob, error)

DescribeTransformJob returns a transform job by name.

func (*InMemoryBackend) DescribeTrial

func (b *InMemoryBackend) DescribeTrial(ctx context.Context, name string) (*Trial, error)

DescribeTrial returns a trial by name.

func (*InMemoryBackend) DescribeTrialComponent

func (b *InMemoryBackend) DescribeTrialComponent(ctx context.Context, name string) (*TrialComponent, error)

DescribeTrialComponent returns a trial component by name.

func (*InMemoryBackend) DescribeUserProfile

func (b *InMemoryBackend) DescribeUserProfile(ctx context.Context, domainID, name string) (*UserProfile, error)

DescribeUserProfile returns a user profile.

func (*InMemoryBackend) DescribeWorkforce

func (b *InMemoryBackend) DescribeWorkforce(ctx context.Context, name string) (*Workforce, error)

DescribeWorkforce returns a workforce by name.

func (*InMemoryBackend) DescribeWorkteam

func (b *InMemoryBackend) DescribeWorkteam(ctx context.Context, name string) (*Workteam, error)

DescribeWorkteam returns a workteam by name.

func (*InMemoryBackend) DetachClusterNodeVolume

func (b *InMemoryBackend) DetachClusterNodeVolume(
	ctx context.Context,
	clusterArn, nodeID, volumeID string,
) (*DetachedVolume, error)

DetachClusterNodeVolume detaches an EBS volume from a cluster node. Volumes are matched by the VolumeName supplied to AttachClusterNodeVolume, since this emulator does not mint a separate immutable VolumeId at attach time.

func (*InMemoryBackend) DisableSagemakerServicecatalogPortfolio

func (b *InMemoryBackend) DisableSagemakerServicecatalogPortfolio(ctx context.Context)

DisableSagemakerServicecatalogPortfolio marks the Service Catalog portfolio disabled.

func (*InMemoryBackend) DisassociateTrialComponent

func (b *InMemoryBackend) DisassociateTrialComponent(
	ctx context.Context,
	trialName, trialComponentName string,
) (string, string, error)

DisassociateTrialComponent removes the association between a trial and a trial component, if one exists. It is idempotent: disassociating a component that was never associated succeeds and simply returns the resources' ARNs (mirroring AssociateTrialComponent's non-strict existence checks).

func (*InMemoryBackend) EnableSagemakerServicecatalogPortfolio

func (b *InMemoryBackend) EnableSagemakerServicecatalogPortfolio(ctx context.Context)

EnableSagemakerServicecatalogPortfolio marks the Service Catalog portfolio enabled.

func (*InMemoryBackend) ExtendTrainingPlan

func (b *InMemoryBackend) ExtendTrainingPlan(
	ctx context.Context,
	extensionOfferingID string,
) ([]*TrainingPlanExtension, error)

ExtendTrainingPlan consumes a pending extension offering (returned earlier by SearchTrainingPlanOfferings) and extends the associated plan's duration.

func (*InMemoryBackend) GetDeviceFleetReport

func (b *InMemoryBackend) GetDeviceFleetReport(ctx context.Context, fleetName string) (*DeviceFleet, int, error)

GetDeviceFleetReport returns the device fleet along with its current registered device count.

func (*InMemoryBackend) GetFeatureMetadata

func (b *InMemoryBackend) GetFeatureMetadata(
	ctx context.Context,
	featureGroupName, featureName string,
) (*FeatureMetadata, error)

GetFeatureMetadata returns metadata for a feature in a feature group.

func (*InMemoryBackend) GetLineageGroupPolicy

func (b *InMemoryBackend) GetLineageGroupPolicy(ctx context.Context, nameOrArn string) (string, error)

GetLineageGroupPolicy returns the resource policy attached to a lineage group. nameOrArn may be either the lineage group's name or its ARN. No policy-attachment operation exists in this batch, so a lineage group never has a policy attached and this always reports not-found for a valid group.

func (*InMemoryBackend) GetModelPackageGroupPolicy

func (b *InMemoryBackend) GetModelPackageGroupPolicy(ctx context.Context, name string) (string, error)

GetModelPackageGroupPolicy returns the resource policy attached to a model package group.

func (*InMemoryBackend) GetRecord

func (b *InMemoryBackend) GetRecord(
	ctx context.Context,
	featureGroupName, recordIDValue string,
	featureNames []string,
) (*FeatureRecord, error)

GetRecord retrieves a feature record from a feature group.

func (*InMemoryBackend) GetSagemakerServicecatalogPortfolioStatus

func (b *InMemoryBackend) GetSagemakerServicecatalogPortfolioStatus(ctx context.Context) string

GetSagemakerServicecatalogPortfolioStatus returns "Enabled" or "Disabled".

func (*InMemoryBackend) GetScalingConfigurationRecommendation

func (b *InMemoryBackend) GetScalingConfigurationRecommendation(
	ctx context.Context,
	jobName string,
	targetCPUUtilizationPerCore int32,
) (*ScalingConfigurationRecommendation, error)

GetScalingConfigurationRecommendation validates that the named inference recommendations job exists and returns a deterministic scaling recommendation derived from the requested target CPU utilization.

func (*InMemoryBackend) GetSearchSuggestions

func (b *InMemoryBackend) GetSearchSuggestions(resource, propertyNameHint string) ([]string, error)

GetSearchSuggestions returns candidate property names for resource whose name starts with propertyNameHint (case-insensitive), mirroring the suggestion behaviour of real AWS's Search property-name autocomplete.

func (*InMemoryBackend) HumanTaskUIExistsByARN

func (b *InMemoryBackend) HumanTaskUIExistsByARN(ctx context.Context, humanTaskUIArn string) bool

HumanTaskUIExistsByARN reports whether a human task UI with the given ARN exists.

func (*InMemoryBackend) ImportHubContent

func (b *InMemoryBackend) ImportHubContent(ctx context.Context, in ImportHubContentInput) (*HubContent, error)

ImportHubContent imports a new (or new-version) content resource into a hub.

func (*InMemoryBackend) LineageEntityInfo

func (b *InMemoryBackend) LineageEntityInfo(
	ctx context.Context, entityArn string,
) (string, string, string, bool)

LineageEntityInfo resolves an ARN to its lineage entity name, type and LineageType, for use by handlers enriching association/lineage responses.

func (*InMemoryBackend) ListAIBenchmarkJobs added in v1.2.0

func (b *InMemoryBackend) ListAIBenchmarkJobs(
	ctx context.Context,
	params ListAIBenchmarkJobsParams,
) ([]*AIBenchmarkJob, string)

ListAIBenchmarkJobs lists AI benchmark jobs, optionally filtered and sorted.

func (*InMemoryBackend) ListAIRecommendationJobs added in v1.2.0

func (b *InMemoryBackend) ListAIRecommendationJobs(
	ctx context.Context,
	params ListAIRecommendationJobsParams,
) ([]*AIRecommendationJob, string)

ListAIRecommendationJobs lists AI recommendation jobs, optionally filtered and sorted.

func (*InMemoryBackend) ListAIWorkloadConfigs added in v1.2.0

func (b *InMemoryBackend) ListAIWorkloadConfigs(
	ctx context.Context,
	params ListAIWorkloadConfigsParams,
) ([]*AIWorkloadConfig, string)

ListAIWorkloadConfigs lists AI workload configurations, optionally filtered and sorted.

func (*InMemoryBackend) ListActions

func (b *InMemoryBackend) ListActions(ctx context.Context, params ListActionsParams) ([]*Action, string)

ListActions returns actions, optionally filtered by type, source URI, and creation-time window, sorted per params.SortBy/SortOrder (real default: CreationTime, Descending). filterSortPaginateByNameOrTime for a distinct type, which already dedupes the real logic

func (*InMemoryBackend) ListAlgorithms

func (b *InMemoryBackend) ListAlgorithms(
	ctx context.Context, nextToken string, filter nameTimeFilter,
) ([]*Algorithm, string)

ListAlgorithms returns algorithms matching filter, sorted per filter.SortBy/SortOrder (default CreationTime/Ascending, api_op_ListAlgorithms.go — the one List op in this trio whose real default SortOrder is Ascending rather than Descending), with pagination capped at filter.MaxResults.

func (*InMemoryBackend) ListAppImageConfigs

func (b *InMemoryBackend) ListAppImageConfigs(
	ctx context.Context,
	nextToken string,
	f ListAppImageConfigsFilter,
) ([]*AppImageConfig, string)

ListAppImageConfigs lists app image configs, optionally filtered and sorted. Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

func (*InMemoryBackend) ListApps

func (b *InMemoryBackend) ListApps(ctx context.Context, params ListAppsParams) ([]*App, string)

ListApps returns apps matching params, sorted by CreationTime (the real AppSortKey's only value and documented default) per params.SortOrder (default Ascending), capped at params.MaxResults.

func (*InMemoryBackend) ListArtifacts

func (b *InMemoryBackend) ListArtifacts(ctx context.Context, params ListArtifactsParams) ([]*Artifact, string)

ListArtifacts returns artifacts, optionally filtered by type, source URI, and creation-time window, sorted per params.SortBy/SortOrder (real default: CreationTime, Descending).

func (*InMemoryBackend) ListAssociations

func (b *InMemoryBackend) ListAssociations(
	ctx context.Context, params ListAssociationsParams,
) ([]*Association, string)

ListAssociations returns associations, optionally filtered by source/destination ARN, source/destination entity type, association type, and creation-time window, sorted per params.SortBy/SortOrder (real default: CreationTime, Descending).

func (*InMemoryBackend) ListAutoMLJobs

func (b *InMemoryBackend) ListAutoMLJobs(
	ctx context.Context, nextToken string, filter ListAutoMLJobsFilter,
) ([]*AutoMLJob, string)

ListAutoMLJobs returns AutoML jobs matching filter, sorted per filter.SortBy/SortOrder.

func (*InMemoryBackend) ListCandidatesForAutoMLJob

func (b *InMemoryBackend) ListCandidatesForAutoMLJob(
	ctx context.Context,
	jobName string,
	params ListCandidatesForAutoMLJobParams,
) ([]*AutoMLCandidate, string, error)

ListCandidatesForAutoMLJob returns the (deterministically derived) candidates for a stored AutoML job.

api_op_ListCandidatesForAutoMLJob.go:38,41: SortBy's own doc text reads "The default is Descending" -- not a valid CandidateSortBy value at all (CreationTime/Status/FinalObjectiveMetricValue), so that half of the doc is corrupted copy-paste and not trusted; SortOrder's doc ("The default is Ascending") is taken at face value since it is internally consistent.

func (*InMemoryBackend) ListClusterEvents

func (b *InMemoryBackend) ListClusterEvents(ctx context.Context, clusterNameOrArn string) error

ListClusterEvents validates the cluster exists and returns an empty event list (see DescribeClusterEvent for why events are never populated).

func (*InMemoryBackend) ListClusterNodes

func (b *InMemoryBackend) ListClusterNodes(
	ctx context.Context,
	clusterNameOrArn string,
	params ListClusterNodesParams,
) ([]*ClusterNode, string, error)

ListClusterNodes returns nodes belonging to a cluster matching params, sorted by params.SortBy (default CreationTime) / params.SortOrder (default Ascending, per api_op_ListClusterNodes.go's documented defaults), capped at params.MaxResults.

func (*InMemoryBackend) ListClusterSchedulerConfigs

func (b *InMemoryBackend) ListClusterSchedulerConfigs(
	ctx context.Context,
	params ListClusterSchedulerConfigsParams,
) ([]*ClusterSchedulerConfig, string)

ListClusterSchedulerConfigs returns cluster scheduler configs matching params, sorted by params.SortBy (default CreationTime, undocumented — api_op_ListClusterSchedulerConfigs.go's SortBy doc names no default) / params.SortOrder (default Descending, documented at :62), capped at params.MaxResults.

func (*InMemoryBackend) ListClusters

func (b *InMemoryBackend) ListClusters(ctx context.Context, params ListClustersParams) ([]*Cluster, string)

ListClusters returns clusters matching params, sorted by params.SortBy (default CreationTime) / params.SortOrder (default Ascending, per api_op_ListClusters.go's documented defaults), capped at params.MaxResults.

func (*InMemoryBackend) ListCodeRepositories

func (b *InMemoryBackend) ListCodeRepositories(
	ctx context.Context,
	nextToken string,
	f ListCodeRepositoriesFilter,
) ([]*CodeRepository, string)

ListCodeRepositories lists code repositories, optionally filtered and sorted. Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

func (*InMemoryBackend) ListCompilationJobs

func (b *InMemoryBackend) ListCompilationJobs(
	ctx context.Context,
	nextToken string,
	f ListCompilationJobsFilter,
) ([]*CompilationJob, string)

ListCompilationJobs lists compilation jobs, optionally filtered and sorted. Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

func (*InMemoryBackend) ListComputeQuotas

func (b *InMemoryBackend) ListComputeQuotas(
	ctx context.Context,
	params ListComputeQuotasParams,
) ([]*ComputeQuota, string)

ListComputeQuotas returns compute quotas matching params, sorted by params.SortBy (default CreationTime, undocumented) / params.SortOrder (default Descending, documented at api_op_ListComputeQuotas.go:62), capped at params.MaxResults.

func (*InMemoryBackend) ListContexts

func (b *InMemoryBackend) ListContexts(ctx context.Context, params ListContextsParams) ([]*Context, string)

ListContexts returns contexts, optionally filtered by type, source URI, and creation-time window, sorted per params.SortBy/SortOrder (real default: CreationTime, Descending). filterSortPaginateByNameOrTime for a distinct type, which already dedupes the real logic

func (*InMemoryBackend) ListDataQualityJobDefinitions

func (b *InMemoryBackend) ListDataQualityJobDefinitions(
	ctx context.Context, nextToken string, f JobDefinitionFilter,
) ([]*JobDefinition, string)

ListDataQualityJobDefinitions returns data quality job definitions matching f.

func (*InMemoryBackend) ListDeviceFleets

func (b *InMemoryBackend) ListDeviceFleets(
	ctx context.Context,
	params ListDeviceFleetsParams,
) ([]*DeviceFleet, string)

ListDeviceFleets returns device fleets matching params, sorted by params.SortBy (default CreationTime; no default is documented for this op, per api_op_ListDeviceFleets.go, so CreationTime/Ascending is kept as the disclosed fallback used elsewhere in this service for undocumented defaults), capped at params.MaxResults.

func (*InMemoryBackend) ListDevices

func (b *InMemoryBackend) ListDevices(
	ctx context.Context,
	fleetFilter, nextToken string,
	maxResults int32,
) ([]*Device, string)

ListDevices returns devices, optionally filtered by fleet name and capped at maxResults (falls back to sagemakerDefaultPageSize when 0). ListDevices' LatestHeartbeatAfter/ModelName filters (api_op_ListDevices.go:36,42) are not modeled: this backend has no device-agent heartbeat/model-registration protocol (a separate service, SageMaker Edge Manager's device-agent API, not implemented here at all -- distinct from ListStageDevices' ExcludeDevicesDeployedInOtherStage no-op, which is a real member of this service that this backend simply can't evaluate).

func (*InMemoryBackend) ListDomains

func (b *InMemoryBackend) ListDomains(ctx context.Context, nextToken string, maxResults int32) ([]*Domain, string)

ListDomains returns all domains sorted by name, capped at maxResults (if positive) per page — ListDomainsInput.MaxResults is a real client-facing field (default 10 in the real API); previously always ignored in favor of the fixed sagemakerDefaultPageSize.

func (*InMemoryBackend) ListEdgeDeploymentPlans

func (b *InMemoryBackend) ListEdgeDeploymentPlans(
	ctx context.Context,
	params ListEdgeDeploymentPlansParams,
) ([]*EdgeDeploymentPlan, string)

ListEdgeDeploymentPlans returns edge deployment plans matching params. The real op's doc (api_op_ListEdgeDeploymentPlans.go:57-61) states no default SortBy/SortOrder; CreationTime/Ascending are kept as the disclosed fallback, this campaign's recurring ListHubs/ListPipelines precedent for an undocumented default.

func (*InMemoryBackend) ListEdgePackagingJobs

func (b *InMemoryBackend) ListEdgePackagingJobs(
	ctx context.Context,
	nextToken string,
	filter ListEdgePackagingJobsFilter,
) ([]*EdgePackagingJob, string)

ListEdgePackagingJobs returns edge packaging jobs with optional filters. SortBy is one of NAME|MODEL_NAME|CREATION_TIME|LAST_MODIFIED_TIME|STATUS (types/enums.go:5332-5341, ListEdgePackagingJobsSortBy). Neither SortBy nor SortOrder documents a default on this op (api_op_ListEdgePackagingJobs.go), so an unset value keeps this backend's own pre-existing order (ascending by name) rather than inventing one, the same conservative stance parity-23 applied to ListFlowDefinitions/ListHumanTaskUis.

func (*InMemoryBackend) ListEndpointConfigs

func (b *InMemoryBackend) ListEndpointConfigs(
	ctx context.Context, nextToken string, filter nameTimeFilter,
) ([]*EndpointConfig, string)

ListEndpointConfigs returns endpoint configurations matching filter, sorted per filter.SortBy/SortOrder (default CreationTime/Descending, api_op_ListEndpointConfigs.go), with pagination capped at filter.MaxResults.

func (*InMemoryBackend) ListEndpoints

func (b *InMemoryBackend) ListEndpoints(ctx context.Context, filter ListEndpointsFilter) ([]*Endpoint, string)

ListEndpoints returns endpoints matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Descending).

func (*InMemoryBackend) ListExperiments

func (b *InMemoryBackend) ListExperiments(
	ctx context.Context,
	nextToken string,
	f ListExperimentsFilter,
) ([]*Experiment, string)

ListExperiments returns experiments matching f, sorted and paginated.

api_op_ListExperiments.go:48,51: real defaults are CreationTime/Descending.

func (*InMemoryBackend) ListFeatureGroups

func (b *InMemoryBackend) ListFeatureGroups(
	ctx context.Context,
	nextToken string,
	f ListFeatureGroupsFilter,
) ([]*FeatureGroup, string)

ListFeatureGroups returns feature groups matching f, sorted and paginated. The op's own doc text states no explicit default for SortBy/SortOrder (unlike ListExperiments/ListCompilationJobs, which do); Name/Ascending is kept as this backend's pre-existing default rather than invented.

func (*InMemoryBackend) ListFlowDefinitions

func (b *InMemoryBackend) ListFlowDefinitions(
	ctx context.Context,
	nextToken string,
	f ListFlowDefinitionsFilter,
) ([]*FlowDefinition, string)

ListFlowDefinitions returns flow definitions matching f, paginated. Like ListHumanTaskUIs, the op declares no SortBy field and its own doc states no default order, so SortOrder is applied to this backend's pre-existing default order (ascending by name) rather than an invented dimension.

func (*InMemoryBackend) ListHubContentVersions

func (b *InMemoryBackend) ListHubContentVersions(
	ctx context.Context,
	hubName, contentType, contentName string,
	params ListHubContentVersionsParams,
) ([]*HubContent, string)

ListHubContentVersions returns every version of a named content resource matching params, sorted per params.SortBy / params.SortOrder (default ascending version order — HubContentSortBy's "HubContentName" key is a no-op here since every entry shares the same name, so version order is used as the tiebreak/default instead, matching the pre-existing behavior), capped at params.MaxResults.

func (*InMemoryBackend) ListHubContents

func (b *InMemoryBackend) ListHubContents(
	ctx context.Context,
	hubName, contentType string,
	params ListHubContentsParams,
) ([]*HubContent, string)

ListHubContents returns the latest surviving version of every distinct content name of the given type within a hub, filtered by params, sorted per params.SortBy (default HubContentName) / params.SortOrder (default Ascending, matching the pre-existing unconditional behavior), capped at params.MaxResults.

func (*InMemoryBackend) ListHubs

func (b *InMemoryBackend) ListHubs(ctx context.Context, params ListHubsParams) ([]*Hub, string)

ListHubs returns hubs matching params, sorted per params.SortBy (default HubName, ties broken by HubName) / params.SortOrder (default Ascending — neither default is documented by AWS for this op, so the pre-existing unconditional HubName-ascending behavior is kept as the fallback), capped at params.MaxResults.

func (*InMemoryBackend) ListHumanTaskUIs

func (b *InMemoryBackend) ListHumanTaskUIs(
	ctx context.Context,
	nextToken string,
	f ListHumanTaskUIsFilter,
) ([]*HumanTaskUI, string)

ListHumanTaskUIs returns human task UIs matching f, paginated. The op declares no SortBy field at all -- only SortOrder -- and its own doc states no default order either way. Rather than invent a sort dimension (e.g. CreationTime) no doc supports, SortOrder is applied to this backend's own pre-existing default order (ascending by name, the accidental byproduct of its former name-keyed pagination) so an unspecified SortOrder reproduces prior behavior exactly and an explicit "Descending" reverses it -- the same conservative stance ListFeatureGroups took on its own undocumented SortBy/SortOrder defaults.

func (*InMemoryBackend) ListHyperParameterTuningJobs

func (b *InMemoryBackend) ListHyperParameterTuningJobs(
	ctx context.Context,
	nextToken string,
	filter ListHyperParameterTuningJobsFilter,
) ([]*HyperParameterTuningJob, string)

ListHyperParameterTuningJobs returns jobs matching filter, sorted by filter.SortBy (default Name) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListImageAliases

func (b *InMemoryBackend) ListImageAliases(
	ctx context.Context,
	imageName, alias string,
	version int32,
	nextToken string,
	maxResults int32,
) ([]string, string, error)

ListImageAliases returns the aliases attached to an image. If version is positive or alias identifies a version, only that version's aliases are considered; otherwise, aliases from every version of the image are aggregated (api_op_ListAliases.go:44-45: "If image version is not specified, the aliases of all versions of the image are listed").

func (*InMemoryBackend) ListImageVersions

func (b *InMemoryBackend) ListImageVersions(
	ctx context.Context,
	imageName string,
	params ListImageVersionsParams,
) ([]*ImageVersion, string)

ListImageVersions returns all versions for an image matching params, sorted by params.SortBy (default CreationTime, per api_op_ListImageVersions.go: 1089) / params.SortOrder (default Descending, per api_op_ListImageVersions.go:61 — same non-Ascending-default family as ListImages), capped at params.MaxResults.

func (*InMemoryBackend) ListImages

func (b *InMemoryBackend) ListImages(ctx context.Context, params ListImagesParams) ([]*SMImage, string)

ListImages returns images matching params, sorted by params.SortBy (default CreationTime, per api_op_ListImages.go:57) / params.SortOrder (default Descending, per api_op_ListImages.go:60 — unlike most other List ops in this service, this one's real default sort order is Descending, not Ascending), capped at params.MaxResults.

func (*InMemoryBackend) ListInferenceComponents

func (b *InMemoryBackend) ListInferenceComponents(
	ctx context.Context,
	filter ListInferenceComponentsFilter,
) ([]*InferenceComponent, string)

ListInferenceComponents returns inference components matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Descending).

func (*InMemoryBackend) ListInferenceExperiments

func (b *InMemoryBackend) ListInferenceExperiments(
	ctx context.Context,
	params ListInferenceExperimentsParams,
) ([]*InferenceExperiment, string)

ListInferenceExperiments returns inference experiments, optionally filtered and sorted per params. Neither SortBy nor SortOrder has a documented default; both are kept as the disclosed undocumented-default fallback (CreationTime / Ascending) already used elsewhere in this campaign for equally undocumented cases.

func (*InMemoryBackend) ListInferenceRecommendationsJobs

func (b *InMemoryBackend) ListInferenceRecommendationsJobs(
	ctx context.Context,
	nextToken string,
	filter ListInferenceRecommendationsJobsFilter,
) ([]*InferenceRecommendationsJob, string)

ListInferenceRecommendationsJobs returns jobs matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListJobSchemaVersions added in v1.2.0

func (b *InMemoryBackend) ListJobSchemaVersions(
	_ context.Context,
	category, nextToken string,
	maxResults int32,
) ([]string, string, error)

ListJobSchemaVersions returns the known schema versions for category.

func (*InMemoryBackend) ListJobs added in v1.2.0

func (b *InMemoryBackend) ListJobs(ctx context.Context, params ListJobsParams) ([]*Job, string)

ListJobs lists Jobs within a single JobCategory (required by the real API), optionally further filtered and sorted.

func (*InMemoryBackend) ListLabelingJobs

func (b *InMemoryBackend) ListLabelingJobs(
	ctx context.Context,
	nextToken string,
	filter ListLabelingJobsFilter,
) ([]*LabelingJob, string)

ListLabelingJobs returns labeling jobs matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListLabelingJobsForWorkteam

func (b *InMemoryBackend) ListLabelingJobsForWorkteam(
	ctx context.Context,
	workteamArn, nextToken string,
	filter ListLabelingJobsForWorkteamFilter,
) ([]*LabelingJob, string)

ListLabelingJobsForWorkteam returns labeling jobs assigned to a workteam.

func (*InMemoryBackend) ListLineageGroups

func (b *InMemoryBackend) ListLineageGroups(
	ctx context.Context, params ListLineageGroupsParams,
) ([]LineageGroupInfo, string)

ListLineageGroups returns the account's single auto-provisioned lineage group, filtered by params.CreatedAfter/CreatedBefore — a group outside the requested window is correctly excluded, even though there is only ever one.

func (*InMemoryBackend) ListMlflowApps

func (b *InMemoryBackend) ListMlflowApps(ctx context.Context, params ListMlflowAppsParams) ([]*MlflowApp, string)

ListMlflowApps returns MLflow Apps matching params, sorted per params.SortBy (one of Name/CreationTime/Status) / params.SortOrder — both defaulted to CreationTime/Descending per the real op's documented default ("By default, MLflow Apps are listed in Descending order by creation time", api_op_ListMlflowApps.go:22-24) — capped at params.MaxResults.

func (*InMemoryBackend) ListMlflowTrackingServers

func (b *InMemoryBackend) ListMlflowTrackingServers(
	ctx context.Context,
	params ListMlflowTrackingServersParams,
) ([]*MlflowTrackingServer, string)

ListMlflowTrackingServers returns tracking servers matching params, sorted per params.SortBy (one of Name/CreationTime/Status) / params.SortOrder — both defaulted to CreationTime/Descending per the real op's documented default ("By default, tracking servers are listed in Descending order by creation time", api_op_ListMlflowTrackingServers.go:20-22) — capped at params.MaxResults.

func (*InMemoryBackend) ListModelBiasJobDefinitions

func (b *InMemoryBackend) ListModelBiasJobDefinitions(
	ctx context.Context, nextToken string, f JobDefinitionFilter,
) ([]*JobDefinition, string)

ListModelBiasJobDefinitions returns model bias job definitions matching f.

func (*InMemoryBackend) ListModelCardExportJobs

func (b *InMemoryBackend) ListModelCardExportJobs(
	ctx context.Context,
	params ListModelCardExportJobsParams,
) ([]*ModelCardExportJob, string)

ListModelCardExportJobs lists export jobs for a model card, optionally filtered and sorted per params. SortBy defaults to CreationTime (the real op's documented default); SortOrder has no documented default and is kept as Ascending, this campaign's recurring undocumented-default fallback.

func (*InMemoryBackend) ListModelCards

func (b *InMemoryBackend) ListModelCards(ctx context.Context, params ListModelCardsParams) ([]*ModelCard, string)

ListModelCards returns model cards, optionally filtered and sorted per params. SortBy has no documented default; kept as the disclosed undocumented-default CreationTime fallback, this campaign's recurring precedent. SortOrder likewise has no documented default; kept as Ascending.

func (*InMemoryBackend) ListModelExplainabilityJobDefinitions

func (b *InMemoryBackend) ListModelExplainabilityJobDefinitions(
	ctx context.Context, nextToken string, f JobDefinitionFilter,
) ([]*JobDefinition, string)

ListModelExplainabilityJobDefinitions returns model explainability job definitions matching f.

func (*InMemoryBackend) ListModelMetadata

func (b *InMemoryBackend) ListModelMetadata(
	filters []ModelMetadataFilter,
	nextToken string,
	maxResults int32,
) ([]ModelMetadataEntry, string)

ListModelMetadata lists curated model metadata, optionally filtered by Domain, Framework, FrameworkVersion or Task.

func (*InMemoryBackend) ListModelPackageGroups

func (b *InMemoryBackend) ListModelPackageGroups(
	ctx context.Context,
	params ListModelPackageGroupsParams,
) ([]*ModelPackageGroup, string)

ListModelPackageGroups returns model package groups matching params, sorted per params.SortBy (Name/CreationTime, default CreationTime per the real op's documented default) / params.SortOrder (default Ascending), capped at params.MaxResults. CrossAccountFilterOption is honored but this backend has no cross-account resource-sharing model at all (grepped repo-wide) — a CrossAccount request always yields an empty result, which is the correct answer for an account with zero shared groups, not a fabricated one.

func (*InMemoryBackend) ListModelPackages

func (b *InMemoryBackend) ListModelPackages(
	ctx context.Context,
	params ListModelPackagesParams,
) ([]*ModelPackage, string)

ListModelPackages returns model packages matching params, sorted per params.SortBy (Name/CreationTime, default CreationTime per the real op's documented default) / params.SortOrder (default Ascending), capped at params.MaxResults.

func (*InMemoryBackend) ListModelQualityJobDefinitions

func (b *InMemoryBackend) ListModelQualityJobDefinitions(
	ctx context.Context, nextToken string, f JobDefinitionFilter,
) ([]*JobDefinition, string)

ListModelQualityJobDefinitions returns model quality job definitions matching f.

func (*InMemoryBackend) ListModels

func (b *InMemoryBackend) ListModels(ctx context.Context, nextToken string, filter nameTimeFilter) ([]*Model, string)

ListModels returns models matching filter, sorted per filter.SortBy/SortOrder (default CreationTime/Descending, api_op_ListModels.go), with pagination capped at filter.MaxResults.

func (*InMemoryBackend) ListMonitoringAlertHistory

func (b *InMemoryBackend) ListMonitoringAlertHistory(
	ctx context.Context,
	nextToken string,
	f MonitoringAlertHistoryFilter,
) ([]*MonitoringAlertHistoryEntry, string)

ListMonitoringAlertHistory returns alert status history entries, optionally filtered by schedule/alert name, status, and creation-time window. AWS provides no API to record a transition directly — entries only appear here if seeded (e.g. via the test helper SeedMonitoringAlertHistory), matching real AWS accounts where a schedule with no completed monitoring runs has an empty history.

func (*InMemoryBackend) ListMonitoringAlerts

func (b *InMemoryBackend) ListMonitoringAlerts(
	ctx context.Context,
	scheduleName, nextToken string,
	maxResults int32,
) ([]*MonitoringAlert, string, error)

ListMonitoringAlerts returns the alerts configured for a monitoring schedule.

func (*InMemoryBackend) ListMonitoringExecutions

func (b *InMemoryBackend) ListMonitoringExecutions(
	ctx context.Context,
	nextToken string,
	f MonitoringExecutionFilter,
) ([]*MonitoringExecution, string)

ListMonitoringExecutions returns monitoring schedule execution runs. AWS creates these automatically when a schedule's periodic run completes; this emulator has no scheduler driving that, so entries only appear here if seeded (e.g. via the test helper SeedMonitoringExecution).

func (*InMemoryBackend) ListMonitoringSchedules

func (b *InMemoryBackend) ListMonitoringSchedules(
	ctx context.Context,
	params ListMonitoringSchedulesParams,
) ([]*MonitoringSchedule, string)

ListMonitoringSchedules returns monitoring schedules, optionally filtered and sorted per params. Both SortBy ("CreationTime") and SortOrder ("Descending") have documented defaults (api_op_ListMonitoringSchedules.go:59-66), implemented as documented. The doc comment's SortBy prose also mentions a "ScheduledTime" field that does not exist in the real MonitoringScheduleSortKey enum (Name/CreationTime/Status, types/enums.go:6363-6365) — a doc/enum mismatch, so SortBy is read from the enum, not the prose.

func (*InMemoryBackend) ListNotebookInstanceLifecycleConfigs

func (b *InMemoryBackend) ListNotebookInstanceLifecycleConfigs(
	ctx context.Context,
	params ListNotebookInstanceLifecycleConfigsParams,
) ([]*NotebookInstanceLifecycleConfig, string)

ListNotebookInstanceLifecycleConfigs returns lifecycle configs matching params, sorted by params.SortBy (default CreationTime, per api_op_ListNotebookInstanceLifecycleConfigs.go:62) / params.SortOrder (no default documented, Ascending kept as the disclosed fallback), capped at params.MaxResults.

func (*InMemoryBackend) ListNotebookInstances

func (b *InMemoryBackend) ListNotebookInstances(
	ctx context.Context,
	params ListNotebookInstancesParams,
) ([]*NotebookInstance, string)

ListNotebookInstances returns notebook instances matching params, sorted by params.SortBy (default Name, per api_op_ListNotebookInstances.go:80) / params.SortOrder (no default documented, Ascending kept as the disclosed fallback per this campaign's ListHubs/ListPipelines precedent), capped at params.MaxResults.

func (*InMemoryBackend) ListOptimizationJobs

func (b *InMemoryBackend) ListOptimizationJobs(
	ctx context.Context,
	nextToken string,
	filter ListOptimizationJobsFilter,
) ([]*OptimizationJob, string)

ListOptimizationJobs returns optimization jobs matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListPartnerApps

func (b *InMemoryBackend) ListPartnerApps(
	ctx context.Context, nextToken string, maxResults int32,
) ([]*PartnerApp, string)

ListPartnerApps returns a page of partner apps, capped at maxResults (<= 0 falls back to the service default page size).

func (*InMemoryBackend) ListPipelineExecutionSteps

func (b *InMemoryBackend) ListPipelineExecutionSteps(
	ctx context.Context, params ListPipelineExecutionStepsParams,
) ([]*PipelineExecutionStep, string)

ListPipelineExecutionSteps lists the steps for a pipeline execution.

func (*InMemoryBackend) ListPipelineExecutions

func (b *InMemoryBackend) ListPipelineExecutions(
	ctx context.Context,
	params ListPipelineExecutionsParams,
) ([]*PipelineExecution, string)

ListPipelineExecutions returns executions for a pipeline matching params, sorted per params.SortBy (documented default CreationTime, api_op_ ListPipelineExecutions.go:51) / SortOrder (no default documented, ascending kept as the disclosed fallback), capped at params.MaxResults.

func (*InMemoryBackend) ListPipelineVersions

func (b *InMemoryBackend) ListPipelineVersions(
	ctx context.Context,
	pipelineName, nextToken string,
	filter ListPipelineVersionsFilter,
) ([]*PipelineVersion, string, error)

ListPipelineVersions returns the version history for a pipeline, newest first by default (this op's own doc does not state a default SortOrder, but AWS's published behavior for it is Descending).

func (*InMemoryBackend) ListPipelines

func (b *InMemoryBackend) ListPipelines(ctx context.Context, params ListPipelinesParams) ([]*Pipeline, string)

ListPipelines returns pipelines matching params, sorted per params.SortBy (documented default CreationTime, api_op_ListPipelines.go:51) / SortOrder (no default documented — docs.aws.amazon.com/sagemaker/latest/APIReference/ API_ListPipelines.html states none, so ascending is kept as the disclosed fallback, matching ListHubs' precedent), capped at params.MaxResults.

func (*InMemoryBackend) ListProcessingJobs

func (b *InMemoryBackend) ListProcessingJobs(
	ctx context.Context,
	nextToken string,
	filter ListProcessingJobsFilter,
) ([]*ProcessingJob, string)

ListProcessingJobs returns processing jobs matching filter.

func (*InMemoryBackend) ListProjects

func (b *InMemoryBackend) ListProjects(
	ctx context.Context,
	nextToken string,
	filter ListProjectsFilter,
) ([]*Project, string)

ListProjects returns projects matching filter, sorted by filter.SortBy (default CreationTime) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListResourceCatalogs

func (b *InMemoryBackend) ListResourceCatalogs() []string

ListResourceCatalogs always returns an empty catalog list: there is no CreateResourceCatalog operation, so this backend never has any to report.

func (*InMemoryBackend) ListSpaces

func (b *InMemoryBackend) ListSpaces(ctx context.Context, params ListSpacesParams) ([]*Space, string)

ListSpaces returns spaces matching params, sorted per params.SortBy (default CreationTime)/params.SortOrder (default Ascending), capped at params.MaxResults.

func (*InMemoryBackend) ListStageDevices

func (b *InMemoryBackend) ListStageDevices(
	ctx context.Context,
	planName, stageName, nextToken string,
	maxResults int32,
	_ bool,
) (*EdgeDeploymentPlan, []*Device, string, string, error)

ListStageDevices returns the edge deployment plan, the devices in its device fleet, and the named stage's current deployment status, paginated. excludeOtherStage (ExcludeDevicesDeployedInOtherStage, api_op_ListStageDevices.go:42-43) is accepted for wire shape but is a real no-op: this backend tracks one DeploymentStatus per stage, not a per-device per-stage assignment, so there is no "deployed in another stage" fact to exclude on.

func (*InMemoryBackend) ListStudioLifecycleConfigs

func (b *InMemoryBackend) ListStudioLifecycleConfigs(
	ctx context.Context,
	nextToken string,
	f ListStudioLifecycleConfigsFilter,
) ([]*StudioLifecycleConfig, string)

ListStudioLifecycleConfigs returns Studio lifecycle configs matching f, sorted and paginated. The op's own doc states explicit defaults of CreationTime/Descending for SortBy/SortOrder, unlike ListFeatureGroups.

func (*InMemoryBackend) ListTags

func (b *InMemoryBackend) ListTags(ctx context.Context, resourceARN string) (map[string]string, error)

ListTags returns tags for a resource identified by ARN.

func (*InMemoryBackend) ListTrainingJobs

func (b *InMemoryBackend) ListTrainingJobs(ctx context.Context, nextToken string) ([]*TrainingJob, string)

ListTrainingJobs returns training jobs sorted by name with optional pagination.

func (*InMemoryBackend) ListTrainingJobsFiltered

func (b *InMemoryBackend) ListTrainingJobsFiltered(
	ctx context.Context,
	nextToken string,
	f ListTrainingJobsFilter,
) ([]*TrainingJob, string)

func (*InMemoryBackend) ListTrainingJobsForHyperParameterTuningJob

func (b *InMemoryBackend) ListTrainingJobsForHyperParameterTuningJob(
	ctx context.Context,
	jobName, nextToken string,
	filter ListTrainingJobsForHyperParameterTuningJobFilter,
) ([]*TrainingJob, string, error)

ListTrainingJobsForHyperParameterTuningJob returns training jobs for an HP tuning job matching filter, sorted by filter.SortBy (default Name) / filter.SortOrder (default Ascending).

func (*InMemoryBackend) ListTrainingPlans

func (b *InMemoryBackend) ListTrainingPlans(
	ctx context.Context,
	params ListTrainingPlansParams,
) ([]*TrainingPlan, string)

ListTrainingPlans lists training plans, optionally filtered by status and sorted.

func (*InMemoryBackend) ListTransformJobs

func (b *InMemoryBackend) ListTransformJobs(
	ctx context.Context,
	nextToken string,
	filter ListTransformJobsFilter,
) ([]*TransformJob, string)

ListTransformJobs returns transform jobs matching filter.

func (*InMemoryBackend) ListTrialComponents

func (b *InMemoryBackend) ListTrialComponents(
	ctx context.Context,
	params ListTrialComponentsParams,
) ([]*TrialComponent, string)

ListTrialComponents returns trial components, optionally filtered by the trial they're associated with, the experiment their trial belongs to, and a creation-time window, sorted by params.SortBy (default CreationTime) / params.SortOrder (default Descending — both documented defaults, per api_op_ListTrialComponents.go).

func (*InMemoryBackend) ListTrials

func (b *InMemoryBackend) ListTrials(
	ctx context.Context,
	nextToken string,
	filter ListTrialsFilter,
) ([]*Trial, string)

func (*InMemoryBackend) ListUltraServersByReservedCapacity

func (b *InMemoryBackend) ListUltraServersByReservedCapacity(
	ctx context.Context,
	reservedCapacityArn, nextToken string,
	maxResults int32,
) ([]*UltraServer, string, error)

ListUltraServersByReservedCapacity lists the UltraServers backing a reserved capacity.

func (*InMemoryBackend) ListUserProfiles

func (b *InMemoryBackend) ListUserProfiles(
	ctx context.Context, params ListUserProfilesParams,
) ([]*UserProfile, string)

ListUserProfiles returns user profiles matching params, sorted per params.SortBy (default CreationTime)/params.SortOrder (default Ascending), capped at params.MaxResults.

func (*InMemoryBackend) ListWorkforces

func (b *InMemoryBackend) ListWorkforces(
	ctx context.Context,
	nextToken string,
	filter ListWorkforcesFilter,
) ([]*Workforce, string)

ListWorkforces returns workforces matching filter, sorted by filter.SortBy (default CreateDate) / filter.SortOrder (default Ascending). AWS supports at most one private workforce per account per region, so this list contains at most one item — but the filter/sort/pagination fields are still wire-decoded and honored for shape fidelity.

func (*InMemoryBackend) ListWorkteams

func (b *InMemoryBackend) ListWorkteams(
	ctx context.Context,
	nextToken string,
	filter ListWorkteamsFilter,
) ([]*Workteam, string)

ListWorkteams returns workteams matching filter, sorted by filter.SortBy (default CreateDate) / filter.SortOrder (default Ascending, per the op's doc).

func (*InMemoryBackend) PipelineLastExecutionTime added in v1.5.0

func (b *InMemoryBackend) PipelineLastExecutionTime(ctx context.Context, pipelineArn string) time.Time

PipelineLastExecutionTime returns the StartTime of the most recent PipelineExecution belonging to pipelineArn, or the zero time if it has never been run. Exported so handleListPipelines can enrich PipelineSummary.LastExecutionTime (api_op_ListPipelines.go response) without reaching into the backend's internal store tables directly.

func (*InMemoryBackend) PutModelPackageGroupPolicy

func (b *InMemoryBackend) PutModelPackageGroupPolicy(
	ctx context.Context,
	name, policy string,
) (*ModelPackageGroup, error)

PutModelPackageGroupPolicy attaches (or replaces) the resource policy for a model package group.

func (*InMemoryBackend) PutRecord

func (b *InMemoryBackend) PutRecord(
	ctx context.Context,
	featureGroupName string,
	record map[string]string,
) error

PutRecord stores a feature record in a feature group.

func (*InMemoryBackend) QueryLineage

func (b *InMemoryBackend) QueryLineage(
	ctx context.Context, params QueryLineageParams,
) ([]Vertex, []Edge, string, error)

QueryLineage traverses the association graph starting from StartArns, following edges in the given direction up to MaxDepth hops. The reached vertices are narrowed by Filters, then paginated by MaxResults/NextToken (real docs describe both as bounding "the number of vertices", not edges — see api_op_QueryLineage.go:34,38 — so Edges is the full, unpaginated edge set between vertices that survive filtering).

Filters.Types (entity-type match for non-lineage-tracked vertices such as TrainingJob/Model/Endpoint ARNs) is accepted but NOT enforced: this backend has no per-service entity-type resolver for arbitrary ARNs outside Action/Artifact/Context, and building one is out of this pass's scope. Filters.CreatedAfter/CreatedBefore/ModifiedAfter/ModifiedBefore/Properties exclude any vertex that does not resolve to a tracked Action/Artifact/ Context (an external vertex's creation/modification time or properties are unknown here, so it cannot honestly be said to match).

func (*InMemoryBackend) Region

func (b *InMemoryBackend) Region() string

Region returns the AWS region this backend is configured for.

func (*InMemoryBackend) RegisterDevices

func (b *InMemoryBackend) RegisterDevices(
	ctx context.Context, fleetName string, devices []RegisterDeviceInput, tags map[string]string,
) error

RegisterDevices registers devices to a device fleet, tagging every registered device with tags (RegisterDevicesInput.Tags, api_op_RegisterDevices.go:36-38).

func (*InMemoryBackend) Reset

func (b *InMemoryBackend) Reset()

Reset reinitialises all maps to empty, clearing all stored resources.

func (*InMemoryBackend) Restore

func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error

Restore loads backend state from a JSON snapshot. It implements persistence.Persistable.

func (*InMemoryBackend) RetryPipelineExecution

func (b *InMemoryBackend) RetryPipelineExecution(
	ctx context.Context,
	execArn string,
	parallelismConfig *ParallelismConfiguration,
) (*PipelineExecution, error)

RetryPipelineExecution creates a new execution from a failed pipeline execution. parallelismConfig, if non-nil, overrides the parent pipeline's parallelism configuration for the new execution only; if nil, the parent pipeline's current configuration applies unchanged (api_op_ RetryPipelineExecution.go:34-38, sagemaker@v1.263.2 — "if specified, overrides the parallelism configuration of the parent pipeline").

func (*InMemoryBackend) Search

func (b *InMemoryBackend) Search(
	ctx context.Context,
	params SearchParams,
) ([]map[string]any, int, string, error)

Search evaluates a SearchExpression's top-level Filters against stored resources of the given type.

Previously SortBy/SortOrder were decoded by the handler and then dropped before reaching this function -- a real request specifying either had no effect at all. api_op_Search.go:56,60: SortBy's default is LastModifiedTime, SortOrder's default is Descending.

func (*InMemoryBackend) SearchTrainingPlanOfferings

SearchTrainingPlanOfferings searches the static offering catalog and, when a TrainingPlanArn is provided, generates extension offerings for that plan.

func (*InMemoryBackend) SendPipelineExecutionStepFailure

func (b *InMemoryBackend) SendPipelineExecutionStepFailure(
	ctx context.Context, callbackToken, failureReason string,
) error

SendPipelineExecutionStepFailure records a step failure for a callback step. callbackToken is treated as the owning execution's ARN — see pipelineCallbackStepName's doc comment for why.

func (*InMemoryBackend) SendPipelineExecutionStepSuccess

func (b *InMemoryBackend) SendPipelineExecutionStepSuccess(
	ctx context.Context,
	callbackToken string,
	outputParameters []PipelineParameter,
) error

SendPipelineExecutionStepSuccess records a step success for a callback step. callbackToken is treated as the owning execution's ARN — see pipelineCallbackStepName's doc comment for why.

func (*InMemoryBackend) SetAutoMLJobExtras

func (b *InMemoryBackend) SetAutoMLJobExtras(
	ctx context.Context,
	name string,
	outputDataConfig *AutoMLOutputDataConfig,
	objective *AutoMLJobObjective,
	inputDataConfig []AutoMLChannel,
	modelDeployConfig *ModelDeployConfig,
) error

SetAutoMLJobExtras sets optional configuration fields on an existing AutoML job that were not included in the original CreateAutoMLJob signature.

func (*InMemoryBackend) SetAutoMLJobV2Extras added in v1.3.1

func (b *InMemoryBackend) SetAutoMLJobV2Extras(ctx context.Context, name string, extras AutoMLJobV2Extras) error

SetAutoMLJobV2Extras sets the CreateAutoMLJobV2-only fields on an existing AutoML job — the fields CreateAutoMLJobV2Input requires or accepts that CreateAutoMLJobInput (V1) does not, most importantly the required AutoMLJobInputDataConfig ([]types.AutoMLJobChannel, CreateAutoMLJobV2Input:91).

func (*InMemoryBackend) SetCompilationJobExtras

func (b *InMemoryBackend) SetCompilationJobExtras(
	ctx context.Context,
	name string,
	inputConfig *CompilationInputConfig,
	outputConfig *CompilationOutputConfig,
	stoppingCondition *StoppingCondition,
	modelPackageVersionArn string,
	vpcConfig json.RawMessage,
) error

SetCompilationJobExtras sets optional configuration fields on an existing compilation job that were not included in the original CreateCompilationJob signature.

func (*InMemoryBackend) SetEndpointConfigExtras

func (b *InMemoryBackend) SetEndpointConfigExtras(
	ctx context.Context,
	name string,
	dataCaptureConfig *DataCaptureConfig,
	asyncInferenceConfig *AsyncInferenceConfig,
	vpcConfig *VpcConfig,
	executionRoleArn string,
	kmsKeyID string,
	shadowProductionVariants []ProductionVariant,
	enableNetworkIsolation bool,
	explainerConfig, metricsConfig json.RawMessage,
) error

SetEndpointConfigExtras sets optional fields on an existing endpoint config that were not included in the original CreateEndpointConfig signature.

func (*InMemoryBackend) SetModelExtras

func (b *InMemoryBackend) SetModelExtras(
	ctx context.Context,
	name string,
	vpcConfig *VpcConfig,
	enableNetworkIsolation bool,
	inferenceExecConfig *InferenceExecutionConfig,
) error

SetModelExtras sets optional fields on an existing model that were not included in the original CreateModel signature (VpcConfig, EnableNetworkIsolation, InferenceExecutionConfig).

func (*InMemoryBackend) SetS3Backend added in v1.3.1

func (b *InMemoryBackend) SetS3Backend(s3 S3Accessor)

SetS3Backend wires the S3 backend CreatePipeline/UpdatePipeline read a PipelineDefinitionS3Location's object from. Until this is called, a PipelineDefinitionS3Location fails with errPipelineDefinitionUnreadable rather than fabricating a definition.

func (*InMemoryBackend) Shutdown

func (b *InMemoryBackend) Shutdown(ctx context.Context)

Shutdown cancels all pending lifecycle-transition goroutines and waits for the in-flight ones to finish, bounded by ctx. It implements the shutdown half of the service.Shutdowner contract (wired through the Handler).

func (*InMemoryBackend) Snapshot

func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte

Snapshot serialises the backend state to JSON. It implements persistence.Persistable.

func (*InMemoryBackend) StartClusterHealthCheck added in v1.2.0

func (b *InMemoryBackend) StartClusterHealthCheck(
	ctx context.Context,
	nameOrArn string,
	hasDeepHealthCheckConfigurations bool,
) (string, error)

StartClusterHealthCheck validates that the cluster (by name or ARN) exists and that at least one deep-health-check configuration was supplied, returning the cluster's ARN. Real AWS asynchronously runs the requested deep health checks against the given instance groups/instances; this backend does not synthesize per-node pass/fail health-check results (no fabricated telemetry a client could mistake for a measured outcome) — consistent with this service's existing ClusterNode model, which only ever reports a static "Running" NodeStatus rather than invented health signals.

func (*InMemoryBackend) StartEdgeDeploymentStage

func (b *InMemoryBackend) StartEdgeDeploymentStage(ctx context.Context, planName, stageName string) error

StartEdgeDeploymentStage starts a deployment stage.

func (*InMemoryBackend) StartInferenceExperiment

func (b *InMemoryBackend) StartInferenceExperiment(ctx context.Context, name string) (*InferenceExperiment, error)

StartInferenceExperiment transitions an inference experiment to "Running".

func (*InMemoryBackend) StartMlflowTrackingServer

func (b *InMemoryBackend) StartMlflowTrackingServer(ctx context.Context, name string) (string, error)

StartMlflowTrackingServer sets an MLflow tracking server status to "Running" and returns its ARN (StartMlflowTrackingServerOutput.TrackingServerArn, api_op_StartMlflowTrackingServer.go:37-43).

func (*InMemoryBackend) StartMonitoringSchedule

func (b *InMemoryBackend) StartMonitoringSchedule(ctx context.Context, name string) error

StartMonitoringSchedule sets a monitoring schedule status to "Scheduled".

func (*InMemoryBackend) StartNotebookInstance

func (b *InMemoryBackend) StartNotebookInstance(ctx context.Context, name string) error

StartNotebookInstance transitions a notebook instance to InService.

func (*InMemoryBackend) StartNotebookInstanceFSM

func (b *InMemoryBackend) StartNotebookInstanceFSM(ctx context.Context, name string) error

StartNotebookInstanceFSM transitions: Stopped → Pending, then Pending → InService.

func (*InMemoryBackend) StartPipelineExecution

func (b *InMemoryBackend) StartPipelineExecution(ctx context.Context, pipelineName string) (*PipelineExecution, error)

StartPipelineExecution creates a pipeline execution.

func (*InMemoryBackend) StartPipelineExecutionFull

func (b *InMemoryBackend) StartPipelineExecutionFull(
	ctx context.Context,
	opts StartPipelineExecutionOptions,
) (*PipelineExecution, error)

StartPipelineExecutionFull creates an execution with full AWS input fields.

func (*InMemoryBackend) StartSession

func (b *InMemoryBackend) StartSession(_ context.Context, resourceIdentifier string) (*StartSessionResult, error)

StartSession validates resourceIdentifier is non-empty and returns a fresh synthetic session.

func (*InMemoryBackend) StopAIBenchmarkJob added in v1.2.0

func (b *InMemoryBackend) StopAIBenchmarkJob(ctx context.Context, name string) (string, error)

StopAIBenchmarkJob transitions an in-progress AI benchmark job InProgress -> Stopping -> Stopped, returning its ARN. Stopping a job that is not currently InProgress is a no-op (idempotent), matching the FSM convention already used by StopTrainingJobFSM.

func (*InMemoryBackend) StopAIRecommendationJob added in v1.2.0

func (b *InMemoryBackend) StopAIRecommendationJob(ctx context.Context, name string) (string, error)

StopAIRecommendationJob transitions an in-progress AI recommendation job InProgress -> Stopping -> Stopped, returning its ARN. Stopping a job that is not currently InProgress is a no-op (idempotent).

func (*InMemoryBackend) StopAutoMLJob

func (b *InMemoryBackend) StopAutoMLJob(ctx context.Context, name string) error

StopAutoMLJob sets an AutoML job status to "Stopped".

func (*InMemoryBackend) StopCompilationJob

func (b *InMemoryBackend) StopCompilationJob(ctx context.Context, name string) error

StopCompilationJob transitions a running compilation job INPROGRESS -> STOPPING -> STOPPED (api_op_StopCompilationJob.go:16-19: "Amazon SageMaker AI changes the CompilationJobStatus of the job to Stopping. After Amazon SageMaker stops the job, it sets the CompilationJobStatus to Stopped."). Previously this set STOPPED directly with no intermediate STOPPING state at all, contradicting the op's own doc -- a client polling Describe right after Stop would never observe STOPPING, only ever see the terminal state a call later than real AWS.

func (*InMemoryBackend) StopEdgeDeploymentStage

func (b *InMemoryBackend) StopEdgeDeploymentStage(ctx context.Context, planName, stageName string) error

StopEdgeDeploymentStage stops a deployment stage.

func (*InMemoryBackend) StopEdgePackagingJob

func (b *InMemoryBackend) StopEdgePackagingJob(ctx context.Context, name string) error

StopEdgePackagingJob stops an edge packaging job.

func (*InMemoryBackend) StopHyperParameterTuningJob

func (b *InMemoryBackend) StopHyperParameterTuningJob(ctx context.Context, name string) error

StopHyperParameterTuningJob transitions Stopping -> Stopped.

func (*InMemoryBackend) StopInferenceExperiment

func (b *InMemoryBackend) StopInferenceExperiment(
	ctx context.Context,
	name string,
	opts StopInferenceExperimentOptions,
) (*InferenceExperiment, error)

StopInferenceExperiment stops an inference experiment, setting its status to DesiredState (defaulting to "Cancelled" when unset, matching this backend's pre-existing behavior) and applying ModelVariantActions (required by the real API, previously never read at all) to the stored variant list: "Remove" drops a variant, "Promote" keeps only that variant, "Retain" is a no-op. DesiredModelVariants, when supplied, replaces the variant list outright instead.

func (*InMemoryBackend) StopInferenceRecommendationsJob

func (b *InMemoryBackend) StopInferenceRecommendationsJob(ctx context.Context, name string) error

StopInferenceRecommendationsJob stops an inference recommendations job.

func (*InMemoryBackend) StopJob added in v1.2.0

func (b *InMemoryBackend) StopJob(ctx context.Context, category, name string) error

StopJob transitions an in-progress Job InProgress -> Stopping -> Stopped. Stopping a job that is not currently InProgress is a no-op (idempotent).

func (*InMemoryBackend) StopLabelingJob

func (b *InMemoryBackend) StopLabelingJob(ctx context.Context, name string) error

StopLabelingJob transitions a labeling job to Stopping then Stopped.

func (*InMemoryBackend) StopMlflowTrackingServer

func (b *InMemoryBackend) StopMlflowTrackingServer(ctx context.Context, name string) (string, error)

StopMlflowTrackingServer sets an MLflow tracking server status to "Stopped" and returns its ARN (StopMlflowTrackingServerOutput.TrackingServerArn, api_op_StopMlflowTrackingServer.go:37-43).

func (*InMemoryBackend) StopMonitoringSchedule

func (b *InMemoryBackend) StopMonitoringSchedule(ctx context.Context, name string) error

StopMonitoringSchedule sets a monitoring schedule status to "Stopped".

func (*InMemoryBackend) StopNotebookInstance

func (b *InMemoryBackend) StopNotebookInstance(ctx context.Context, name string) error

StopNotebookInstance transitions a notebook instance to Stopped.

func (*InMemoryBackend) StopNotebookInstanceFSM

func (b *InMemoryBackend) StopNotebookInstanceFSM(ctx context.Context, name string) error

StopNotebookInstanceFSM transitions: InService → Stopping, then Stopping → Stopped.

func (*InMemoryBackend) StopOptimizationJob

func (b *InMemoryBackend) StopOptimizationJob(ctx context.Context, name string) error

StopOptimizationJob sets an optimization job status to "STOPPED".

func (*InMemoryBackend) StopPipelineExecution

func (b *InMemoryBackend) StopPipelineExecution(ctx context.Context, execArn string) (*PipelineExecution, error)

StopPipelineExecution stops a running pipeline execution.

func (*InMemoryBackend) StopProcessingJob

func (b *InMemoryBackend) StopProcessingJob(ctx context.Context, name string) error

StopProcessingJob transitions a processing job to Stopping then Stopped.

func (*InMemoryBackend) StopTrainingJob

func (b *InMemoryBackend) StopTrainingJob(ctx context.Context, name string) error

StopTrainingJob marks a training job as Stopping.

func (*InMemoryBackend) StopTrainingJobFSM

func (b *InMemoryBackend) StopTrainingJobFSM(ctx context.Context, name string) error

StopTrainingJobFSM transitions InProgress → Stopping → Stopped.

func (*InMemoryBackend) StopTransformJob

func (b *InMemoryBackend) StopTransformJob(ctx context.Context, name string) error

StopTransformJob transitions a transform job to Stopping then Stopped.

func (*InMemoryBackend) TaggedResources added in v1.2.0

func (b *InMemoryBackend) TaggedResources() []TaggedEntry

TaggedResources returns every SageMaker resource ARN, across every region and every resource kind the tagLookups above support (models, endpoint configs, endpoints, training jobs, notebook instances, hyperparameter tuning jobs, actions, algorithms, clusters, contexts, model packages, model package groups, artifacts, processing jobs, transform jobs, domains, feature groups, pipelines, experiments, trials, trial components, work teams, and workforces), that currently has at least one tag. Resource kinds not reachable through AddTags/DeleteTags/ListTags (e.g. projects, monitoring schedules) are intentionally excluded: they are not taggable through this backend's own tagging API either.

func (*InMemoryBackend) UpdateAction

func (b *InMemoryBackend) UpdateAction(
	ctx context.Context,
	name, description, status string,
	properties map[string]string,
	propertiesToRemove []string,
) (*Action, error)

UpdateAction updates an action's description, status and properties.

func (*InMemoryBackend) UpdateAppImageConfig

func (b *InMemoryBackend) UpdateAppImageConfig(
	ctx context.Context,
	name string,
	opts UpdateAppImageConfigOptions,
) (*AppImageConfig, error)

UpdateAppImageConfig updates an app image config's kernel/container configuration.

func (*InMemoryBackend) UpdateArtifact

func (b *InMemoryBackend) UpdateArtifact(
	ctx context.Context,
	artifactArn, name string,
	properties map[string]string,
	propertiesToRemove []string,
) (*Artifact, error)

UpdateArtifact updates an artifact's name and properties.

func (*InMemoryBackend) UpdateCluster

func (b *InMemoryBackend) UpdateCluster(ctx context.Context, opts UpdateClusterOptions) (*Cluster, error)

UpdateCluster updates instance groups (adding, resizing, or removing them) and the node-recovery/autoscaling/orchestrator/tiered-storage configuration of an existing cluster.

func (*InMemoryBackend) UpdateClusterSchedulerConfig

func (b *InMemoryBackend) UpdateClusterSchedulerConfig(
	ctx context.Context,
	id string,
	targetVersion int32,
	opts UpdateClusterSchedulerConfigOptions,
) (*ClusterSchedulerConfig, error)

UpdateClusterSchedulerConfig applies an optimistic-concurrency update gated by targetVersion. sagemaker@v1.263.2 api_op_UpdateClusterSchedulerConfig.go:29 requires ClusterSchedulerConfigId and TargetVersion; ClusterArn is not a member of the real input, so it is not settable here — it is Create-only.

func (*InMemoryBackend) UpdateClusterSoftware

func (b *InMemoryBackend) UpdateClusterSoftware(ctx context.Context, nameOrArn string) (string, error)

UpdateClusterSoftware validates the cluster exists and returns its ARN. Real AWS asynchronously patches node AMIs; this emulator applies the request immediately with no observable software-version state to update.

func (*InMemoryBackend) UpdateCodeRepository

func (b *InMemoryBackend) UpdateCodeRepository(
	ctx context.Context,
	name string,
	secretArn string,
) (*CodeRepository, error)

UpdateCodeRepository updates a code repository's SecretArn, the only field types.GitConfigForUpdate (api_op_UpdateCodeRepository.go:35-38, types.go:9239-9248) declares -- unlike CreateCodeRepositoryInput's GitConfig, Update's GitConfigForUpdate has no RepositoryUrl/Branch at all, so those are immutable after Create. Previously this replaced the entire stored GitConfig map wholesale with whatever the client sent, silently wiping RepositoryUrl/Branch on any Update call that (correctly, per the real type) omitted them.

func (*InMemoryBackend) UpdateComputeQuota

func (b *InMemoryBackend) UpdateComputeQuota(
	ctx context.Context,
	id string,
	targetVersion int32,
	opts UpdateComputeQuotaOptions,
) (*ComputeQuota, error)

UpdateComputeQuota applies an optimistic-concurrency update gated by targetVersion. sagemaker@v1.263.2 api_op_UpdateComputeQuota.go requires ComputeQuotaId and TargetVersion; ClusterArn is not a member of the real input, so it is not settable here — it is Create-only.

func (*InMemoryBackend) UpdateContext

func (b *InMemoryBackend) UpdateContext(
	ctx context.Context,
	name, description string,
	properties map[string]string,
	propertiesToRemove []string,
) (*Context, error)

UpdateContext updates a context's description and properties.

func (*InMemoryBackend) UpdateDeviceFleet

func (b *InMemoryBackend) UpdateDeviceFleet(
	ctx context.Context,
	name, description, roleArn string,
	outputConfig *DeviceFleetOutputConfig,
	enableIotRoleAlias *bool,
) error

UpdateDeviceFleet updates a device fleet's description, role ARN, output config, or IoT role alias enablement.

func (*InMemoryBackend) UpdateDevices

func (b *InMemoryBackend) UpdateDevices(ctx context.Context, fleetName string, devices []UpdateDeviceInput) error

UpdateDevices updates metadata (description, IoT thing name) for devices already registered in a fleet. Devices that are not registered are skipped, mirroring the lenient behavior of DeregisterDevices.

func (*InMemoryBackend) UpdateDomain

func (b *InMemoryBackend) UpdateDomain(
	ctx context.Context, idOrName string, opts UpdateDomainOptions,
) (*Domain, error)

UpdateDomain updates a domain's overridable settings.

func (*InMemoryBackend) UpdateEndpoint

func (b *InMemoryBackend) UpdateEndpoint(
	ctx context.Context,
	name string,
	opts UpdateEndpointOptions,
) (*Endpoint, error)

UpdateEndpoint updates the endpoint config for an existing endpoint.

func (*InMemoryBackend) UpdateEndpointFSM

func (b *InMemoryBackend) UpdateEndpointFSM(
	ctx context.Context,
	name string,
	opts UpdateEndpointOptions,
) (*Endpoint, error)

UpdateEndpointFSM updates config and drives InService → Updating → InService.

func (*InMemoryBackend) UpdateEndpointWeightsAndCapacitiesFull

func (b *InMemoryBackend) UpdateEndpointWeightsAndCapacitiesFull(
	ctx context.Context,
	name string,
	changes []DesiredWeightAndCapacity,
) (*Endpoint, error)

UpdateEndpointWeightsAndCapacitiesFull applies weight/capacity changes and drives Updating → InService.

func (*InMemoryBackend) UpdateExperiment

func (b *InMemoryBackend) UpdateExperiment(
	ctx context.Context,
	name string,
	displayName, description *string,
) (*Experiment, error)

UpdateExperiment mutates DisplayName and Description on an experiment. Both are *string, matching UpdateExperimentInput (api_op_UpdateExperiment.go:28-43): nil means "leave unchanged", a present-but-empty string means "clear" -- the op's own doc says it "adds, updates, or removes the description", but a plain (non-pointer) string field can never distinguish an omitted key from an explicit "", making removal unreachable. That was the previous bug.

func (*InMemoryBackend) UpdateFeatureGroup

func (b *InMemoryBackend) UpdateFeatureGroup(
	ctx context.Context,
	name string,
	opts UpdateFeatureGroupOptions,
) (*FeatureGroup, error)

UpdateFeatureGroup mutates FeatureDefinitions, the online store's TtlDuration and/or the throughput configuration on an existing feature group. LastUpdateStatus is set to Successful synchronously -- see LastUpdateStatus's doc for the disclosure on why this backend has no InProgress window.

func (*InMemoryBackend) UpdateFeatureMetadata

func (b *InMemoryBackend) UpdateFeatureMetadata(
	ctx context.Context,
	featureGroupName, featureName, description string,
	parameterAdditions map[string]string,
	parameterRemovals []string,
) error

UpdateFeatureMetadata updates metadata for a feature in a feature group.

func (*InMemoryBackend) UpdateHub

func (b *InMemoryBackend) UpdateHub(ctx context.Context, idOrArn string, opts UpdateHubOptions) (*Hub, error)

UpdateHub updates the mutable fields of a hub.

func (*InMemoryBackend) UpdateHubContent

func (b *InMemoryBackend) UpdateHubContent(
	ctx context.Context,
	hubName, contentType, contentName, version string,
	opts UpdateHubContentOptions,
) (*HubContent, error)

UpdateHubContent updates the mutable metadata of a specific hub content version.

func (*InMemoryBackend) UpdateHubContentReference

func (b *InMemoryBackend) UpdateHubContentReference(
	ctx context.Context,
	hubName, contentType, contentName, minVersion string,
) (*HubContent, error)

UpdateHubContentReference updates the minimum referenced version of a ModelReference hub content resource (the most recently created version).

func (*InMemoryBackend) UpdateImage

func (b *InMemoryBackend) UpdateImage(
	ctx context.Context,
	name string,
	opts UpdateImageOptions,
) (*SMImage, error)

UpdateImage updates a SageMaker image's mutable metadata (Description, DisplayName, RoleArn), optionally clearing Description/DisplayName first via DeleteProperties.

func (*InMemoryBackend) UpdateImageVersion

func (b *InMemoryBackend) UpdateImageVersion(
	ctx context.Context,
	imageName string,
	version int,
	opts UpdateImageVersionOptions,
) (*ImageVersion, error)

UpdateImageVersion updates a SageMaker image version's mutable metadata, identified by opts.Alias or version, defaulting to the latest version when neither is given (same undocumented-but-established convention this backend already applied before opts.Alias existed).

func (*InMemoryBackend) UpdateInferenceComponent

func (b *InMemoryBackend) UpdateInferenceComponent(
	ctx context.Context,
	name string,
	opts UpdateInferenceComponentOptions,
) error

UpdateInferenceComponent applies opts and schedules an Updating -> InService transition (real AWS behavior while the new configuration rolls out).

func (*InMemoryBackend) UpdateInferenceComponentRuntimeConfig

func (b *InMemoryBackend) UpdateInferenceComponentRuntimeConfig(
	ctx context.Context,
	name string,
	copyCount int32,
) error

UpdateInferenceComponentRuntimeConfig updates the desired copy count for an inference component and schedules an Updating -> InService transition.

func (*InMemoryBackend) UpdateInferenceExperiment

func (b *InMemoryBackend) UpdateInferenceExperiment(
	ctx context.Context,
	name string,
	opts UpdateInferenceExperimentOptions,
) (*InferenceExperiment, error)

UpdateInferenceExperiment updates an inference experiment's mutable fields. DataStorageConfig/ModelVariants/Schedule/ShadowModeConfig were previously never read at all — every real client's update to any of them was silently dropped.

func (*InMemoryBackend) UpdateMlflowApp

func (b *InMemoryBackend) UpdateMlflowApp(ctx context.Context, opts UpdateMlflowAppOptions) (*MlflowApp, error)

UpdateMlflowApp updates an MLflow App's mutable fields.

func (*InMemoryBackend) UpdateMlflowTrackingServer

func (b *InMemoryBackend) UpdateMlflowTrackingServer(
	ctx context.Context,
	opts UpdateMlflowTrackingServerOptions,
) (*MlflowTrackingServer, error)

UpdateMlflowTrackingServer updates an MLflow tracking server.

func (*InMemoryBackend) UpdateModelCard

func (b *InMemoryBackend) UpdateModelCard(ctx context.Context, name, content, status string) (*ModelCard, error)

UpdateModelCard updates a model card's content (bumping its version) or its approval status, per UpdateModelCardInput (api_op_UpdateModelCard.go:31-59) — its doc states "You cannot update both model card content and model card status in a single call", enforced here. A status-only update does not bump the version: real model card versioning tracks content revisions, not approval-workflow transitions.

func (*InMemoryBackend) UpdateModelPackage

func (b *InMemoryBackend) UpdateModelPackage(
	ctx context.Context,
	arnStr string,
	opts UpdateModelPackageOptions,
) (*ModelPackage, error)

UpdateModelPackage updates a model package identified by its ARN (the sole identifier UpdateModelPackageInput carries on the real wire — see handleUpdateModelPackage for why this used to be reachable by name).

func (*InMemoryBackend) UpdateMonitoringAlert

func (b *InMemoryBackend) UpdateMonitoringAlert(
	ctx context.Context,
	scheduleName, alertName string,
	datapointsToAlert, evaluationPeriod int32,
) (*MonitoringAlert, string, error)

UpdateMonitoringAlert updates the datapoints/evaluation-period configuration of a monitoring alert, creating the alert record on first use. It returns the alert's schedule's ARN alongside the updated alert.

func (*InMemoryBackend) UpdateMonitoringSchedule

func (b *InMemoryBackend) UpdateMonitoringSchedule(
	ctx context.Context,
	name string,
	config *MonitoringScheduleConfig,
) (*MonitoringSchedule, error)

UpdateMonitoringSchedule updates a monitoring schedule's config. config is required by the real API (api_op_UpdateMonitoringSchedule.go:28-45), same as CreateMonitoringSchedule's.

func (*InMemoryBackend) UpdateNotebookInstance

func (b *InMemoryBackend) UpdateNotebookInstance(ctx context.Context, name, instanceType string) error

UpdateNotebookInstance updates a notebook instance's instance type.

func (*InMemoryBackend) UpdateNotebookInstanceFull

func (b *InMemoryBackend) UpdateNotebookInstanceFull(
	ctx context.Context,
	name string,
	opts NotebookUpdateOptions,
) error

UpdateNotebookInstanceFull updates all mutable fields on a notebook.

func (*InMemoryBackend) UpdateNotebookInstanceLifecycleConfig

func (b *InMemoryBackend) UpdateNotebookInstanceLifecycleConfig(
	ctx context.Context,
	name string,
	onCreate, onStart []NotebookLifecycleHook,
) (*NotebookInstanceLifecycleConfig, error)

UpdateNotebookInstanceLifecycleConfig replaces onCreate/onStart scripts.

func (*InMemoryBackend) UpdatePartnerApp

func (b *InMemoryBackend) UpdatePartnerApp(ctx context.Context, opts UpdatePartnerAppOptions) (*PartnerApp, error)

UpdatePartnerApp updates a partner app's mutable fields.

func (*InMemoryBackend) UpdatePipeline

func (b *InMemoryBackend) UpdatePipeline(ctx context.Context, name, definition string) (*Pipeline, error)

UpdatePipeline updates a pipeline definition.

func (*InMemoryBackend) UpdatePipelineExecution

func (b *InMemoryBackend) UpdatePipelineExecution(
	ctx context.Context,
	execArn, description, displayName string,
	parallelismConfig *ParallelismConfiguration,
) (*PipelineExecution, error)

UpdatePipelineExecution updates the description/display name/parallelism configuration of a pipeline execution.

func (*InMemoryBackend) UpdatePipelineFull

func (b *InMemoryBackend) UpdatePipelineFull(
	ctx context.Context,
	name, definition, displayName, description, roleArn string,
	parallelismConfig *ParallelismConfiguration,
) (*Pipeline, error)

UpdatePipelineFull updates a pipeline with full AWS input fields.

func (*InMemoryBackend) UpdatePipelineVersion

func (b *InMemoryBackend) UpdatePipelineVersion(
	ctx context.Context,
	pipelineArn string,
	versionID int64,
	description, displayName string,
) (*PipelineVersion, error)

UpdatePipelineVersion updates the description/display name of a specific pipeline version.

func (*InMemoryBackend) UpdateProject

func (b *InMemoryBackend) UpdateProject(
	ctx context.Context,
	name, description string,
	tags map[string]string,
) (*Project, error)

UpdateProject updates a project's description and merges in new tags. ServiceCatalogProvisioningUpdateDetails/TemplateProvidersToUpdate (api_op_UpdateProject.go) are disclosed not modeled: applying either for real requires simulating an actual Service Catalog provisioned-product update against the ServiceCatalogProvisioningDetails this backend already stores as opaque passthrough, which this pass did not build — the handler does not decode either field, so nothing is silently accepted and dropped.

func (*InMemoryBackend) UpdateSpace

func (b *InMemoryBackend) UpdateSpace(
	ctx context.Context,
	domainID, spaceName string,
	opts UpdateSpaceOptions,
) (*Space, error)

UpdateSpace updates a space in a domain. Returns the updated space.

func (*InMemoryBackend) UpdateTrainingJob added in v1.5.0

func (b *InMemoryBackend) UpdateTrainingJob(
	ctx context.Context,
	name string,
	opts UpdateTrainingJobOptions,
) (*TrainingJob, error)

UpdateTrainingJob applies a partial update to a training job's ResourceConfig.KeepAlivePeriodInSeconds, the only field of UpdateTrainingJobInput this backend's data model can honor.

func (*InMemoryBackend) UpdateTrial

func (b *InMemoryBackend) UpdateTrial(ctx context.Context, name, displayName string) (*Trial, error)

UpdateTrial mutates DisplayName on a trial.

func (*InMemoryBackend) UpdateTrialComponent

func (b *InMemoryBackend) UpdateTrialComponent(
	ctx context.Context,
	name string,
	opts UpdateTrialComponentOptions,
) (*TrialComponent, error)

UpdateTrialComponent mutates DisplayName, Parameters, and Artifacts on a trial component. Per api_op_UpdateTrialComponent.go, the *ToRemove lists are applied after the corresponding additive map, matching UpdateActionInput/UpdateArtifactInput's own additive-then-remove order elsewhere in this file's sibling lineage handlers.

func (*InMemoryBackend) UpdateUserProfile

func (b *InMemoryBackend) UpdateUserProfile(
	ctx context.Context,
	domainID, userProfileName string,
	opts UpdateUserProfileOptions,
) (*UserProfile, error)

UpdateUserProfile updates a user profile in a domain. Returns the updated profile.

func (*InMemoryBackend) UpdateWorkforce

func (b *InMemoryBackend) UpdateWorkforce(ctx context.Context, opts UpdateWorkforceOptions) (*Workforce, error)

UpdateWorkforce updates a workforce's IdP, IP allow-list, or VPC configuration.

func (*InMemoryBackend) UpdateWorkteam

func (b *InMemoryBackend) UpdateWorkteam(ctx context.Context, opts UpdateWorkteamOptions) (*Workteam, error)

UpdateWorkteam updates a workteam's description and/or member definitions.

type InferenceComponent

type InferenceComponent struct {
	CreationTime             time.Time
	LastModifiedTime         time.Time
	Specification            *InferenceComponentSpecification
	Tags                     map[string]string
	InferenceComponentName   string
	InferenceComponentArn    string
	EndpointName             string
	EndpointArn              string
	VariantName              string
	InferenceComponentStatus string
	FailureReason            string
	DeploymentConfig         json.RawMessage
	Specifications           []InferenceComponentSpecification
	CopyCount                int32
	CurrentCopyCount         int32
}

InferenceComponent represents a SageMaker inference component.

type InferenceComponentContainerSpec added in v1.5.0

type InferenceComponentContainerSpec struct {
	Environment            map[string]string `json:"Environment,omitempty"`
	ArtifactURL            string            `json:"ArtifactUrl,omitempty"`
	Image                  string            `json:"Image,omitempty"`
	ContainerMetricsConfig json.RawMessage   `json:"ContainerMetricsConfig,omitempty"`
}

InferenceComponentContainerSpec mirrors the request-side InferenceComponentContainerSpecification (types/types.go:11731-11756). Image is echoed back as DeployedImage.SpecifiedImage on Describe/List — this backend never resolves a registry digest, so DeployedImage.ResolvedImage/ ResolutionTime are disclosed no-ops.

type InferenceComponentRuntimeConfigInput added in v1.5.0

type InferenceComponentRuntimeConfigInput struct {
	CopyCount int32 `json:"CopyCount"`
}

InferenceComponentRuntimeConfigInput mirrors types.InferenceComponentRuntimeConfig (types/types.go:11893-11902).

type InferenceComponentSpecification added in v1.5.0

type InferenceComponentSpecification struct {
	Container                   *InferenceComponentContainerSpec `json:"Container,omitempty"`
	BaseInferenceComponentName  string                           `json:"BaseInferenceComponentName,omitempty"`
	InstanceType                string                           `json:"InstanceType,omitempty"`
	ModelName                   string                           `json:"ModelName,omitempty"`
	ComputeResourceRequirements json.RawMessage                  `json:"ComputeResourceRequirements,omitempty"`
	DataCacheConfig             json.RawMessage                  `json:"DataCacheConfig,omitempty"`
	SchedulingConfig            json.RawMessage                  `json:"SchedulingConfig,omitempty"`
	StartupParameters           json.RawMessage                  `json:"StartupParameters,omitempty"`
}

InferenceComponentSpecification mirrors types.InferenceComponentSpecification (types/types.go:11947-11996). ComputeResourceRequirements/DataCacheConfig/ SchedulingConfig/StartupParameters are carried as opaque json.RawMessage: each of those four sub-types is used unchanged by both this request type and its response-side Summary counterpart (types/types.go:12002-12034), so a byte-for-byte passthrough between Create/Update and Describe/List is wire-correct without needing semantic modeling. Only Container needs real translation, since the request's Image field becomes the response's DeployedImage.

type InferenceExecutionConfig

type InferenceExecutionConfig struct {
	Mode string `json:"Mode,omitempty"` // Serial or Direct
}

InferenceExecutionConfig controls serial vs. direct routing in multi-container models.

type InferenceExperiment

type InferenceExperiment struct {
	CreationTime      time.Time                             `json:"CreationTime"`
	LastModifiedTime  time.Time                             `json:"LastModifiedTime"`
	DataStorageConfig *InferenceExperimentDataStorageConfig `json:"DataStorageConfig,omitempty"`
	Schedule          *InferenceExperimentSchedule          `json:"Schedule,omitempty"`
	ShadowModeConfig  *ShadowModeConfig                     `json:"ShadowModeConfig,omitempty"`
	EndpointMetadata  *InferenceExperimentEndpointMetadata  `json:"EndpointMetadata,omitempty"`
	Tags              map[string]string                     `json:"Tags,omitempty"`
	Name              string                                `json:"Name"`
	Arn               string                                `json:"Arn"`
	Status            string                                `json:"Status"`
	Type              string                                `json:"Type,omitempty"`
	RoleArn           string                                `json:"RoleArn,omitempty"`
	Description       string                                `json:"Description,omitempty"`
	EndpointName      string                                `json:"EndpointName,omitempty"`
	KmsKey            string                                `json:"KmsKey,omitempty"`
	StatusReason      string                                `json:"StatusReason,omitempty"`
	ModelVariants     []ModelVariantConfig                  `json:"ModelVariantConfigs,omitempty"`
}

InferenceExperiment represents a SageMaker inference experiment.

func (*InferenceExperiment) MarshalJSON added in v1.2.0

func (e *InferenceExperiment) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings, and projects the stored request-shaped ModelVariants into the response-shaped "ModelVariants" wire key (see ModelVariantConfigSummary's doc comment) — this struct is marshaled directly by handleDescribeInferenceExperiment.

func (*InferenceExperiment) UnmarshalJSON added in v1.2.0

func (e *InferenceExperiment) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of InferenceExperiment.MarshalJSON, read by persistence.go's snapshot restore path.

type InferenceExperimentDataStorageConfig added in v1.5.0

type InferenceExperimentDataStorageConfig struct {
	ContentType *CaptureContentTypeHeader `json:"ContentType,omitempty"`
	Destination string                    `json:"Destination"`
	KmsKey      string                    `json:"KmsKey,omitempty"`
}

InferenceExperimentDataStorageConfig mirrors types.InferenceExperimentDataStorageConfig (types/types.go): Destination required, ContentType/KmsKey optional.

type InferenceExperimentEndpointMetadata added in v1.5.0

type InferenceExperimentEndpointMetadata struct {
	EndpointName       string `json:"EndpointName"`
	EndpointConfigName string `json:"EndpointConfigName,omitempty"`
	EndpointStatus     string `json:"EndpointStatus,omitempty"`
	FailureReason      string `json:"FailureReason,omitempty"`
}

InferenceExperimentEndpointMetadata mirrors types.EndpointMetadata (types/types.go): EndpointName required, the rest optional. Always recomputed from the live Endpoint store at Describe time (see inferenceExperimentEndpointMetadata) — never itself persisted — so it can never go stale relative to the endpoint's real current state.

type InferenceExperimentSchedule added in v1.5.0

type InferenceExperimentSchedule struct {
	StartTime *float64 `json:"StartTime,omitempty"`
	EndTime   *float64 `json:"EndTime,omitempty"`
}

InferenceExperimentSchedule mirrors types.InferenceExperimentSchedule (types/types.go: EndTime/StartTime, both optional *time.Time). Stored as *float64 directly: awsjson1.1 serializes timestamps as epoch-second numbers (this campaign's repo-spanning time-decode bug, parity-16), and since these two fields are never computed against — only stored and echoed back — there is no need for a *time.Time-typed intermediate form or a custom Marshal/UnmarshalJSON pair.

type InferenceRecommendationsJob

type InferenceRecommendationsJob struct {
	CreationTime       time.Time         `json:"CreationTime"`
	LastModifiedTime   time.Time         `json:"LastModifiedTime"`
	Tags               map[string]string `json:"Tags,omitempty"`
	JobName            string            `json:"JobName"`
	JobArn             string            `json:"JobArn"`
	JobType            string            `json:"JobType,omitempty"`
	JobDescription     string            `json:"JobDescription,omitempty"`
	Status             string            `json:"Status"`
	RoleArn            string            `json:"RoleArn,omitempty"`
	InputConfig        json.RawMessage   `json:"InputConfig,omitempty"`
	OutputConfig       json.RawMessage   `json:"OutputConfig,omitempty"`
	StoppingConditions json.RawMessage   `json:"StoppingConditions,omitempty"`
}

InferenceRecommendationsJob represents a SageMaker inference recommendations job. InputConfig/OutputConfig/StoppingConditions are stored as opaque json.RawMessage passthrough (same convention as ai_workload_configs.go): this backend never runs an actual recommendation job, so only client-supplied fields round-trip. OutputConfig is deliberately never echoed back by Describe — real DescribeInferenceRecommendationsJobOutput has no OutputConfig member at all (api_op_DescribeInferenceRecommendationsJob.go), an asymmetry by design, not a gap.

type InstanceGroup

type InstanceGroup struct {
	InstanceGroupName string `json:"InstanceGroupName"`
	InstanceType      string `json:"InstanceType"`
	InstanceCount     int32  `json:"InstanceCount"`
}

InstanceGroup is a heterogeneous instance group in a training job.

type Job added in v1.2.0

type Job struct {
	CreationTime               time.Time                      `json:"CreationTime"`
	LastModifiedTime           time.Time                      `json:"LastModifiedTime"`
	EndTime                    *time.Time                     `json:"EndTime,omitempty"`
	Tags                       map[string]string              `json:"Tags,omitempty"`
	JobArn                     string                         `json:"JobArn"`
	JobName                    string                         `json:"JobName"`
	JobCategory                string                         `json:"JobCategory"`
	JobConfigSchemaVersion     string                         `json:"JobConfigSchemaVersion"`
	JobConfigDocument          string                         `json:"JobConfigDocument,omitempty"`
	JobStatus                  string                         `json:"JobStatus"`
	SecondaryStatus            string                         `json:"SecondaryStatus"`
	RoleArn                    string                         `json:"RoleArn"`
	FailureReason              string                         `json:"FailureReason,omitempty"`
	SecondaryStatusTransitions []JobSecondaryStatusTransition `json:"SecondaryStatusTransitions"`
}

Job represents a SageMaker generic model-customization job. JobConfigDocument is stored verbatim as the opaque JSON string the client submitted — CreateJob only validates it conforms to a known JobConfigSchemaVersion (see InMemoryBackend.CreateJob), it never parses the document's contents.

func (*Job) MarshalJSON added in v1.2.0

func (j *Job) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings.

func (*Job) UnmarshalJSON added in v1.2.0

func (j *Job) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of Job.MarshalJSON, used by persistence.go's snapshot restore path.

type JobConfigSchemaVersionInfo added in v1.2.0

type JobConfigSchemaVersionInfo struct {
	JobConfigSchemaVersion string
	JobConfigSchema        string
}

JobConfigSchemaVersionInfo bundles a single job-config schema version and its schema document, as returned by DescribeJobSchemaVersion.

type JobDefinition

type JobDefinition struct {
	CreationTime      time.Time                  `json:"CreationTime"`
	Tags              map[string]string          `json:"Tags,omitempty"`
	Config            map[string]json.RawMessage `json:"Config,omitempty"`
	JobDefinitionName string                     `json:"JobDefinitionName"`
	JobDefinitionArn  string                     `json:"JobDefinitionArn"`
	JobDefinitionType string                     `json:"JobDefinitionType"`
	RoleArn           string                     `json:"RoleArn,omitempty"`
	EndpointName      string                     `json:"EndpointName,omitempty"`
}

JobDefinition is the shared backend representation for the four SageMaker Model Monitor job definition types (DataQuality, ModelBias, ModelQuality, ModelExplainability). Each type sends its AppSpecification/JobInput/ JobOutputConfig blocks under differently-named wire fields (e.g. "DataQualityAppSpecification" vs "ModelBiasAppSpecification"); Config captures those verbatim, plus the shared JobResources/NetworkConfig/ StoppingCondition/BaselineConfig blocks, so Describe echoes back exactly what Create received.

type JobDefinitionFilter

type JobDefinitionFilter struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	EndpointName       string
	NameContains       string
	SortBy             string // "Name" | "CreationTime" (default)
	SortOrder          string // "Ascending" | "Descending" (default)
	MaxResults         int32
}

JobDefinitionFilter narrows the four List*JobDefinitions operations.

type JobSecondaryStatusTransition added in v1.2.0

type JobSecondaryStatusTransition struct {
	StartTime     time.Time  `json:"StartTime"`
	EndTime       *time.Time `json:"EndTime,omitempty"`
	Status        string     `json:"Status"`
	StatusMessage string     `json:"StatusMessage,omitempty"`
}

JobSecondaryStatusTransition records a FSM step in a generic Job. Kept as its own type (rather than reusing training_jobs.go's SecondaryStatusTransition) so the generic Job family's state never aliases TrainingJob's, even though the wire shape happens to match.

type LabelCounters

type LabelCounters struct {
	TotalLabeled            int32 `json:"TotalLabeled"`
	HumanLabeled            int32 `json:"HumanLabeled"`
	MachineLabeled          int32 `json:"MachineLabeled"`
	FailedNonRetryableError int32 `json:"FailedNonRetryableError"`
	Unlabeled               int32 `json:"Unlabeled"`
}

LabelCounters gives a breakdown of a labeling job's progress.

type LabelCountersForWorkteam

type LabelCountersForWorkteam struct {
	HumanLabeled int32 `json:"HumanLabeled"`
	PendingHuman int32 `json:"PendingHuman"`
	Total        int32 `json:"Total"`
}

LabelCountersForWorkteam gives a breakdown of human-labeled tasks for a workteam.

type LabelingJob

type LabelingJob struct {
	CreationTime                time.Time                      `json:"CreationTime"`
	LastModifiedTime            time.Time                      `json:"LastModifiedTime"`
	InputConfig                 LabelingJobInputConfig         `json:"InputConfig"`
	LabelingJobOutput           *LabelingJobOutput             `json:"LabelingJobOutput,omitempty"`
	StoppingConditions          *LabelingJobStoppingConditions `json:"StoppingConditions,omitempty"`
	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig   `json:"LabelingJobAlgorithmsConfig,omitempty"`
	Tags                        map[string]string              `json:"Tags,omitempty"`
	OutputConfig                LabelingJobOutputConfig        `json:"OutputConfig"`
	LabelingJobName             string                         `json:"LabelingJobName"`
	LabelingJobArn              string                         `json:"LabelingJobArn"`
	LabelingJobStatus           string                         `json:"LabelingJobStatus"`
	JobReferenceCode            string                         `json:"JobReferenceCode"`
	RoleArn                     string                         `json:"RoleArn"`
	LabelAttributeName          string                         `json:"LabelAttributeName,omitempty"`
	LabelCategoryConfigS3Uri    string                         `json:"LabelCategoryConfigS3Uri,omitempty"`
	FailureReason               string                         `json:"FailureReason,omitempty"`
	HumanTaskConfig             HumanTaskConfig                `json:"HumanTaskConfig"`
	LabelCounters               LabelCounters                  `json:"LabelCounters"`
}

LabelingJob represents a SageMaker Ground Truth labeling job.

type LabelingJobAlgorithmsConfig

type LabelingJobAlgorithmsConfig struct {
	LabelingJobResourceConfig            *LabelingJobResourceConfig `json:"LabelingJobResourceConfig,omitempty"`
	LabelingJobAlgorithmSpecificationArn string                     `json:"LabelingJobAlgorithmSpecificationArn"`
	InitialActiveLearningModelArn        string                     `json:"InitialActiveLearningModelArn,omitempty"`
}

LabelingJobAlgorithmsConfig configures automated data labeling.

type LabelingJobDataAttributes

type LabelingJobDataAttributes struct {
	ContentClassifiers []string `json:"ContentClassifiers,omitempty"`
}

LabelingJobDataAttributes describes customer-declared properties of the input data.

type LabelingJobDataSource

type LabelingJobDataSource struct {
	S3DataSource  *LabelingJobS3DataSource  `json:"S3DataSource,omitempty"`
	SnsDataSource *LabelingJobSnsDataSource `json:"SnsDataSource,omitempty"`
}

LabelingJobDataSource locates a labeling job's input data objects.

type LabelingJobInputConfig

type LabelingJobInputConfig struct {
	DataSource     LabelingJobDataSource      `json:"DataSource"`
	DataAttributes *LabelingJobDataAttributes `json:"DataAttributes,omitempty"`
}

LabelingJobInputConfig is the input configuration for a labeling job.

type LabelingJobOutput

type LabelingJobOutput struct {
	OutputDatasetS3Uri          string `json:"OutputDatasetS3Uri"`
	FinalActiveLearningModelArn string `json:"FinalActiveLearningModelArn,omitempty"`
}

LabelingJobOutput locates the output produced by a labeling job.

type LabelingJobOutputConfig

type LabelingJobOutputConfig struct {
	S3OutputPath string `json:"S3OutputPath"`
	KmsKeyID     string `json:"KmsKeyId,omitempty"`
	SnsTopicArn  string `json:"SnsTopicArn,omitempty"`
}

LabelingJobOutputConfig is the output configuration for a labeling job.

type LabelingJobResourceConfig

type LabelingJobResourceConfig struct {
	VpcConfig      *VpcConfig `json:"VpcConfig,omitempty"`
	VolumeKmsKeyID string     `json:"VolumeKmsKeyId,omitempty"`
}

LabelingJobResourceConfig configures encryption of automated data labeling storage.

type LabelingJobS3DataSource

type LabelingJobS3DataSource struct {
	ManifestS3Uri string `json:"ManifestS3Uri"`
}

LabelingJobS3DataSource locates the input manifest file in Amazon S3.

type LabelingJobSnsDataSource

type LabelingJobSnsDataSource struct {
	SnsTopicArn string `json:"SnsTopicArn"`
}

LabelingJobSnsDataSource is an SNS topic used for streaming labeling jobs.

type LabelingJobStoppingConditions

type LabelingJobStoppingConditions struct {
	MaxHumanLabeledObjectCount         int32 `json:"MaxHumanLabeledObjectCount,omitempty"`
	MaxPercentageOfInputDatasetLabeled int32 `json:"MaxPercentageOfInputDatasetLabeled,omitempty"`
}

LabelingJobStoppingConditions bound the cost of a labeling job.

type LastUpdateStatus added in v1.5.0

type LastUpdateStatus struct {
	Status        string `json:"Status"`
	FailureReason string `json:"FailureReason,omitempty"`
}

LastUpdateStatus mirrors types.LastUpdateStatus (DescribeFeatureGroupOutput). This backend applies every UpdateFeatureGroup call synchronously, so Status is always Successful -- there is no InProgress window to observe, disclosed rather than modeled as a real async FSM.

type LineageGroupInfo added in v1.5.0

type LineageGroupInfo struct {
	CreationTime    time.Time
	LineageGroupArn string
}

LineageGroupInfo is a single lineage group's ARN and creation time.

type ListAIBenchmarkJobsParams added in v1.2.0

type ListAIBenchmarkJobsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	NameContains       string
	StatusEquals       string
	SortBy             string
	SortOrder          string
	NextToken          string
	MaxResults         int32
}

ListAIBenchmarkJobsParams bundles the filter/sort criteria for ListAIBenchmarkJobs.

type ListAIRecommendationJobsParams added in v1.2.0

type ListAIRecommendationJobsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	NameContains       string
	StatusEquals       string
	SortBy             string
	SortOrder          string
	NextToken          string
	MaxResults         int32
}

ListAIRecommendationJobsParams bundles the filter/sort criteria for ListAIRecommendationJobs.

type ListAIWorkloadConfigsParams added in v1.2.0

type ListAIWorkloadConfigsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	NameContains       string
	SortBy             string
	SortOrder          string
	NextToken          string
	MaxResults         int32
}

ListAIWorkloadConfigsParams bundles the filter/sort criteria for ListAIWorkloadConfigs.

type ListActionsParams added in v1.5.0

type ListActionsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	ActionType    string
	SourceURI     string
	NextToken     string
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListActionsParams bundles the filter/sort criteria for ListActions.

type ListAppImageConfigsFilter added in v1.5.0

type ListAppImageConfigsFilter struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	ModifiedTimeAfter  *time.Time
	ModifiedTimeBefore *time.Time
	NameContains       string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListAppImageConfigsFilter bundles the filter/sort criteria for ListAppImageConfigs (api_op_ListAppImageConfigs.go:31-64).

type ListAppsParams added in v1.3.1

type ListAppsParams struct {
	DomainIDEquals        string
	UserProfileNameEquals string
	SpaceNameEquals       string
	SortOrder             string
	NextToken             string
	MaxResults            int32
}

ListAppsParams bundles ListApps' filter/sort/pagination criteria.

type ListArtifactsParams added in v1.5.0

type ListArtifactsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	ArtifactType  string
	SourceURI     string
	NextToken     string
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListArtifactsParams bundles the filter/sort criteria for ListArtifacts.

type ListAssociationsParams added in v1.3.1

type ListAssociationsParams struct {
	CreatedAfter    *time.Time
	CreatedBefore   *time.Time
	SourceArn       string
	DestinationArn  string
	SourceType      string
	DestinationType string
	AssociationType string
	SortBy          string
	SortOrder       string
	NextToken       string
	MaxResults      int32
}

ListAssociationsParams bundles the filter/sort criteria for ListAssociations.

type ListAutoMLJobsFilter added in v1.5.0

type ListAutoMLJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListAutoMLJobsFilter holds optional filters for ListAutoMLJobs, mirroring ListAutoMLJobsInput (api_op_ListAutoMLJobs.go:11-49). SortBy default "Name", SortOrder default "Descending" per that op's own doc.

type ListCandidatesForAutoMLJobParams

type ListCandidatesForAutoMLJobParams struct {
	CandidateNameEquals string
	StatusEquals        string
	SortBy              string
	SortOrder           string
	NextToken           string
	MaxResults          int32
}

ListCandidatesForAutoMLJobParams bundles the filter/sort/page criteria.

type ListClusterNodesParams added in v1.5.0

type ListClusterNodesParams struct {
	CreationTimeAfter         *time.Time
	CreationTimeBefore        *time.Time
	InstanceGroupNameContains string
	NextToken                 string
	SortBy                    string
	SortOrder                 string
	MaxResults                int32
}

ListClusterNodesParams bundles ListClusterNodes' filter/sort/pagination criteria (api_op_ListClusterNodes.go:30-70). IncludeNodeLogicalIds is decoded by the handler for wire-shape fidelity but is a disclosed no-op here: every node in this backend gets its NodeId assigned synchronously at creation (see newClusterNode) -- there is no still-provisioning, logical-id-only node state for the flag to include or exclude.

type ListClusterSchedulerConfigsParams added in v1.5.0

type ListClusterSchedulerConfigsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	ClusterArn    string
	NameContains  string
	NextToken     string
	SortBy        string
	SortOrder     string
	Status        string
	MaxResults    int32
}

ListClusterSchedulerConfigsParams bundles ListClusterSchedulerConfigs' filter/sort/pagination criteria (api_op_ListClusterSchedulerConfigs.go: 30-68, sagemaker@v1.263.2). Unlike ListImages/ListNotebookInstances, this op has no LastModifiedTime filters at all — read from this op's own field list, not assumed by analogy.

type ListClustersParams added in v1.5.0

type ListClustersParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	NameContains       string
	NextToken          string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListClustersParams bundles ListClusters' filter/sort/pagination criteria (api_op_ListClusters.go:30-71, sagemaker@v1.263.2). TrainingPlanArn is decoded by the handler for wire-shape fidelity but is a disclosed no-op here: CreateClusterInput has no TrainingPlanArn field at all (nor does Cluster/ClusterInstanceGroupSpecification), so no cluster ever has a training-plan association to filter by.

type ListCodeRepositoriesFilter added in v1.5.0

type ListCodeRepositoriesFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListCodeRepositoriesFilter bundles the filter/sort criteria for ListCodeRepositories (api_op_ListCodeRepositories.go:29-64).

type ListCompilationJobsFilter added in v1.5.0

type ListCompilationJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListCompilationJobsFilter bundles the filter/sort criteria for ListCompilationJobs (api_op_ListCompilationJobs.go:33-73).

type ListComputeQuotasParams added in v1.5.0

type ListComputeQuotasParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	ClusterArn    string
	NameContains  string
	NextToken     string
	SortBy        string
	SortOrder     string
	Status        string
	MaxResults    int32
}

ListComputeQuotasParams bundles ListComputeQuotas' filter/sort/pagination criteria (api_op_ListComputeQuotas.go:30-68, sagemaker@v1.263.2). Like ListClusterSchedulerConfigs, this op has no LastModifiedTime filters.

type ListContextsParams added in v1.5.0

type ListContextsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	ContextType   string
	SourceURI     string
	NextToken     string
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListContextsParams bundles the filter/sort criteria for ListContexts.

type ListDeviceFleetsParams added in v1.5.0

type ListDeviceFleetsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	NextToken              string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListDeviceFleetsParams bundles ListDeviceFleets' filter/sort/pagination criteria (api_op_ListDeviceFleets.go:30-61, sagemaker@v1.263.2).

type ListEdgeDeploymentPlansParams added in v1.5.0

type ListEdgeDeploymentPlansParams struct {
	CreationTimeAfter       *time.Time
	CreationTimeBefore      *time.Time
	LastModifiedTimeAfter   *time.Time
	LastModifiedTimeBefore  *time.Time
	DeviceFleetNameContains string
	NameContains            string
	NextToken               string
	SortBy                  string
	SortOrder               string
	MaxResults              int32
}

ListEdgeDeploymentPlansParams bundles ListEdgeDeploymentPlans' filter/sort/pagination criteria (api_op_ListEdgeDeploymentPlans.go:30-65, sagemaker@v1.263.2).

type ListEdgePackagingJobsFilter

type ListEdgePackagingJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	StatusEquals           string
	NameContains           string
	ModelNameContains      string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListEdgePackagingJobsFilter holds optional filters for ListEdgePackagingJobs.

type ListEndpointsFilter added in v1.5.0

type ListEndpointsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	NextToken              string
	MaxResults             int32
}

ListEndpointsFilter narrows the results of ListEndpoints (api_op_ListEndpoints.go:30-64). SortBy defaults to CreationTime, SortOrder to Descending — both documented defaults for this op.

type ListExperimentsFilter added in v1.5.0

type ListExperimentsFilter struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListExperimentsFilter bundles the filter/sort criteria for ListExperiments (api_op_ListExperiments.go:32-55). Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

type ListFeatureGroupsFilter added in v1.5.0

type ListFeatureGroupsFilter struct {
	CreationTimeAfter        *time.Time
	CreationTimeBefore       *time.Time
	FeatureGroupStatusEquals string
	NameContains             string
	OfflineStoreStatusEquals string
	SortBy                   string
	SortOrder                string
	MaxResults               int32
}

ListFeatureGroupsFilter bundles the filter/sort criteria for ListFeatureGroups (api_op_ListFeatureGroups.go:29-64). Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

type ListFlowDefinitionsFilter added in v1.5.0

type ListFlowDefinitionsFilter struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	SortOrder          string
	MaxResults         int32
}

ListFlowDefinitionsFilter bundles the filter/sort criteria for ListFlowDefinitions (api_op_ListFlowDefinitions.go:30-52). Previously this decoded only NextToken and dropped CreationTimeAfter/Before, MaxResults and SortOrder entirely.

type ListHubContentVersionsParams added in v1.5.0

type ListHubContentVersionsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	MaxSchemaVersion   string
	MinVersion         string
	NextToken          string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListHubContentVersionsParams bundles ListHubContentVersions' filter/sort/pagination criteria (api_op_ListHubContentVersions.go).

type ListHubContentsParams added in v1.5.0

type ListHubContentsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	MaxSchemaVersion   string
	NameContains       string
	NextToken          string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListHubContentsParams bundles ListHubContents' filter/sort/pagination criteria (api_op_ListHubContents.go).

type ListHubsParams added in v1.5.0

type ListHubsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	NextToken              string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListHubsParams bundles ListHubs' filter/sort/pagination criteria (api_op_ListHubs.go).

type ListHumanTaskUIsFilter added in v1.5.0

type ListHumanTaskUIsFilter struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	SortOrder          string
	MaxResults         int32
}

ListHumanTaskUIsFilter bundles the filter/sort criteria for ListHumanTaskUis (api_op_ListHumanTaskUis.go:30-53). Previously this decoded only NextToken and dropped CreationTimeAfter/Before, MaxResults and SortOrder entirely.

type ListHyperParameterTuningJobsFilter added in v1.5.0

type ListHyperParameterTuningJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListHyperParameterTuningJobsFilter narrows and orders the results of ListHyperParameterTuningJobs (api_op_ListHyperParameterTuningJobs.go:30-64). The op's own doc states both real defaults explicitly: SortBy is Name, SortOrder is Ascending — unlike most sibling List ops in this service, which default to CreationTime.

type ListImageVersionsParams added in v1.5.0

type ListImageVersionsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NextToken              string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListImageVersionsParams bundles ListImageVersions' filter/sort/pagination criteria (api_op_ListImageVersions.go:31-65, sagemaker@v1.263.2).

type ListImagesParams added in v1.5.0

type ListImagesParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	NextToken              string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListImagesParams bundles ListImages' filter/sort/pagination criteria (api_op_ListImages.go:32-64, sagemaker@v1.263.2).

type ListInferenceComponentsFilter added in v1.5.0

type ListInferenceComponentsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	EndpointNameEquals     string
	NameContains           string
	StatusEquals           string
	VariantNameEquals      string
	SortBy                 string
	SortOrder              string
	NextToken              string
	MaxResults             int32
}

ListInferenceComponentsFilter narrows the results of ListInferenceComponents (api_op_ListInferenceComponents.go:30-71). SortBy defaults to CreationTime, SortOrder to Descending — both documented defaults for this op.

type ListInferenceExperimentsParams added in v1.5.0

type ListInferenceExperimentsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	SortBy                 string
	SortOrder              string
	StatusEquals           string
	Type                   string
	NextToken              string
	MaxResults             int32
}

ListInferenceExperimentsParams bundles the filter/sort criteria for ListInferenceExperiments, mirroring ListInferenceExperimentsInput (api_op_ListInferenceExperiments.go:29-59).

type ListInferenceRecommendationsJobsFilter added in v1.5.0

type ListInferenceRecommendationsJobsFilter struct {
	CreationTimeAfter            *time.Time
	CreationTimeBefore           *time.Time
	LastModifiedTimeAfter        *time.Time
	LastModifiedTimeBefore       *time.Time
	NameContains                 string
	ModelNameEquals              string
	ModelPackageVersionArnEquals string
	StatusEquals                 string
	SortBy                       string
	SortOrder                    string
	MaxResults                   int32
}

ListInferenceRecommendationsJobsFilter narrows and orders the results of ListInferenceRecommendationsJobs (api_op_ListInferenceRecommendationsJobs.go:30-63).

type ListJobsParams added in v1.2.0

type ListJobsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	JobCategory            string
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	NextToken              string
	MaxResults             int32
}

ListJobsParams bundles the filter/sort criteria for ListJobs.

type ListLabelingJobsFilter

type ListLabelingJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListLabelingJobsFilter narrows the results of ListLabelingJobs (api_op_ListLabelingJobs.go:30-71). SortBy defaults to CreationTime, SortOrder to Ascending — both documented defaults for this op.

type ListLabelingJobsForWorkteamFilter added in v1.5.0

type ListLabelingJobsForWorkteamFilter struct {
	CreationTimeAfter        *time.Time
	CreationTimeBefore       *time.Time
	JobReferenceCodeContains string
	SortOrder                string
	MaxResults               int32
}

ListLabelingJobsForWorkteamFilter narrows the results of ListLabelingJobsForWorkteam (api_op_ListLabelingJobsForWorkteam.go:30-64). SortBy has exactly one real value (CreationTime, types.ListLabelingJobsForWorkteamSortByOptions), so it is decoded for wire-shape fidelity but not threaded into the sort — CreationTime order is this op's only possible order regardless of the value sent.

type ListLineageGroupsParams added in v1.5.0

type ListLineageGroupsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	NextToken     string
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListLineageGroupsParams bundles the filter/sort/pagination criteria for ListLineageGroups. SortBy/SortOrder are accepted but are a genuine no-op: there is at most one lineage group per account/region (see the type comment above), so no ordering of a 0-or-1-element list is observable.

type ListMlflowAppsParams added in v1.5.0

type ListMlflowAppsParams struct {
	CreatedAfter         *time.Time
	CreatedBefore        *time.Time
	AccountDefaultStatus string
	DefaultForDomainID   string
	MlflowVersion        string
	NextToken            string
	SortBy               string
	SortOrder            string
	Status               string
	MaxResults           int32
}

ListMlflowAppsParams bundles ListMlflowApps' filter/sort/pagination input (api_op_ListMlflowApps.go:30-73, sagemaker@v1.263.2).

type ListMlflowTrackingServersParams added in v1.5.0

type ListMlflowTrackingServersParams struct {
	CreatedAfter         *time.Time
	CreatedBefore        *time.Time
	MlflowVersion        string
	NextToken            string
	SortBy               string
	SortOrder            string
	TrackingServerStatus string
	MaxResults           int32
}

ListMlflowTrackingServersParams bundles ListMlflowTrackingServers' filter/sort/pagination input (api_op_ListMlflowTrackingServers.go:30-72, sagemaker@v1.263.2).

type ListModelCardExportJobsParams added in v1.5.0

type ListModelCardExportJobsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	ModelCardName      string
	NameContains       string
	StatusEquals       string
	SortBy             string
	SortOrder          string
	NextToken          string
	ModelCardVersion   int32
	MaxResults         int32
}

ListModelCardExportJobsParams bundles the filter/sort criteria for ListModelCardExportJobs, mirroring ListModelCardExportJobsInput (api_op_ListModelCardExportJobs.go:29-61).

type ListModelCardsParams added in v1.5.0

type ListModelCardsParams struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	ModelCardStatus    string
	NameContains       string
	SortBy             string
	SortOrder          string
	NextToken          string
	MaxResults         int32
}

ListModelCardsParams bundles the filter/sort criteria for ListModelCards, mirroring ListModelCardsInput (api_op_ListModelCards.go:30-59).

type ListModelPackageGroupsParams added in v1.5.0

type ListModelPackageGroupsParams struct {
	CreatedAfter             *time.Time
	CreatedBefore            *time.Time
	CrossAccountFilterOption string
	NameContains             string
	NextToken                string
	SortBy                   string
	SortOrder                string
	MaxResults               int32
}

ListModelPackageGroupsParams bundles ListModelPackageGroups' filter/sort/ pagination input (api_op_ListModelPackageGroups.go:29-72, sagemaker@v1.263.2).

type ListModelPackagesParams added in v1.5.0

type ListModelPackagesParams struct {
	CreatedAfter     *time.Time
	CreatedBefore    *time.Time
	ApprovalStatus   string
	GroupName        string
	ModelPackageType string
	NameContains     string
	NextToken        string
	SortBy           string
	SortOrder        string
	MaxResults       int32
}

ListModelPackagesParams bundles ListModelPackages' filter/sort/pagination input (api_op_ListModelPackages.go:29-77, sagemaker@v1.263.2).

ModelPackageType only applies when GroupName is empty — the real op's UNVERSIONED/VERSIONED/BOTH distinction only makes sense for the ungrouped listing; a request that already scopes to one group is listing that group's versions, so the type filter doesn't additionally narrow it (same judgment call as the doc's own framing: the type filter and the group filter are documented as alternative ways to use this op, not composable ones). "Versioned" is interpreted honestly as "has a ModelPackageGroupName" — the only sense in which this backend distinguishes versioned from unversioned models, since it doesn't implement AWS's group+version ARN addressing scheme (disclosed on ModelPackage, see the campaign notes).

type ListMonitoringSchedulesParams added in v1.5.0

type ListMonitoringSchedulesParams struct {
	CreationTimeAfter           *time.Time
	CreationTimeBefore          *time.Time
	LastModifiedTimeAfter       *time.Time
	LastModifiedTimeBefore      *time.Time
	EndpointName                string
	MonitoringJobDefinitionName string
	MonitoringTypeEquals        string
	NameContains                string
	SortBy                      string
	SortOrder                   string
	StatusEquals                string
	NextToken                   string
	MaxResults                  int32
}

ListMonitoringSchedulesParams bundles the filter/sort criteria for ListMonitoringSchedules, mirroring ListMonitoringSchedulesInput (api_op_ListMonitoringSchedules.go:29-72).

type ListNotebookInstanceLifecycleConfigsParams added in v1.5.0

type ListNotebookInstanceLifecycleConfigsParams struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	NextToken              string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListNotebookInstanceLifecycleConfigsParams bundles ListNotebookInstanceLifecycleConfigs' filter/sort/pagination criteria (api_op_ListNotebookInstanceLifecycleConfigs.go:32-69, sagemaker@v1.263.2).

type ListNotebookInstancesParams added in v1.5.0

type ListNotebookInstancesParams struct {
	CreationTimeAfter                           *time.Time
	CreationTimeBefore                          *time.Time
	LastModifiedTimeAfter                       *time.Time
	LastModifiedTimeBefore                      *time.Time
	StatusEquals                                string
	NameContains                                string
	AdditionalCodeRepositoryEquals              string
	DefaultCodeRepositoryContains               string
	NotebookInstanceLifecycleConfigNameContains string
	NextToken                                   string
	SortBy                                      string
	SortOrder                                   string
	MaxResults                                  int32
}

ListNotebookInstancesParams bundles ListNotebookInstances' filter/sort/ pagination criteria (api_op_ListNotebookInstances.go:31-90, sagemaker@v1.263.2). Empty/nil fields are treated as wildcards.

type ListOptimizationJobsFilter added in v1.5.0

type ListOptimizationJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	NameContains           string
	OptimizationContains   string
	StatusEquals           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListOptimizationJobsFilter narrows and orders the results of ListOptimizationJobs (api_op_ListOptimizationJobs.go:30-72). The op's own doc states both real defaults explicitly: SortBy is CreationTime, SortOrder is Ascending.

type ListPipelineExecutionStepsParams added in v1.5.0

type ListPipelineExecutionStepsParams struct {
	ExecutionArn string
	NextToken    string
	SortOrder    string
	MaxResults   int32
}

ListPipelineExecutionStepsParams bundles ListPipelineExecutionSteps' pagination/sort input (api_op_ListPipelineExecutionSteps.go:29-43, sagemaker@v1.263.2 — the op has no SortBy, only SortOrder, so results always sort by StartTime, the real API's stated default sort field).

type ListPipelineExecutionsParams added in v1.5.0

type ListPipelineExecutionsParams struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	PipelineName  string
	NextToken     string
	SortBy        string
	SortOrder     string
	MaxResults    int32
}

ListPipelineExecutionsParams bundles ListPipelineExecutions' filter/sort/ pagination input (api_op_ListPipelineExecutions.go:29-62, sagemaker@v1.263.2).

type ListPipelineVersionsFilter added in v1.5.0

type ListPipelineVersionsFilter struct {
	CreatedAfter  *time.Time
	CreatedBefore *time.Time
	SortOrder     string
	MaxResults    int32
}

ListPipelineVersionsFilter narrows ListPipelineVersions results, mirroring ListPipelineVersionsInput's CreatedAfter/CreatedBefore/SortOrder (api_op_ListPipelineVersions.go).

type ListPipelinesParams added in v1.5.0

type ListPipelinesParams struct {
	CreatedAfter       *time.Time
	CreatedBefore      *time.Time
	PipelineNamePrefix string
	NextToken          string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListPipelinesParams bundles ListPipelines' filter/sort/pagination input (api_op_ListPipelines.go:29-58, sagemaker@v1.263.2).

type ListProcessingJobsFilter added in v1.5.0

type ListProcessingJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	StatusEquals           string
	NameContains           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListProcessingJobsFilter holds optional filters for ListProcessingJobs, mirroring ListProcessingJobsInput (api_op_ListProcessingJobs.go). SortBy defaults to CreationTime, SortOrder defaults to Ascending per that op's own doc.

type ListProjectsFilter added in v1.5.0

type ListProjectsFilter struct {
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	NameContains       string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListProjectsFilter narrows and orders the results of ListProjects (api_op_ListProjects.go:30-58). The op's own doc states both real defaults explicitly: SortBy is CreationTime, SortOrder is Ascending.

type ListSpacesParams added in v1.3.1

type ListSpacesParams struct {
	DomainIDEquals    string
	SpaceNameContains string
	SortBy            string
	SortOrder         string
	NextToken         string
	MaxResults        int32
}

ListSpacesParams bundles ListSpaces' filter/sort/pagination criteria.

type ListStudioLifecycleConfigsFilter added in v1.5.0

type ListStudioLifecycleConfigsFilter struct {
	AppTypeEquals      string
	CreationTimeAfter  *time.Time
	CreationTimeBefore *time.Time
	ModifiedTimeAfter  *time.Time
	ModifiedTimeBefore *time.Time
	NameContains       string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListStudioLifecycleConfigsFilter bundles the filter/sort criteria for ListStudioLifecycleConfigs (api_op_ListStudioLifecycleConfigs.go:31-75). Previously this decoded only NextToken and dropped every filter and sort control the op's own request shape declares.

type ListTrainingJobsFilter

type ListTrainingJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	StatusEquals           string
	NameContains           string
	SortBy                 string
	SortOrder              string
	TrainingPlanArnEquals  string
	WarmPoolStatusEquals   string
	MaxResults             int32
}

ListTrainingJobsFilter narrows and orders the results of ListTrainingJobs (api_op_ListTrainingJobs.go:33-84). The op's own doc states both real defaults explicitly: SortBy is CreationTime, SortOrder is Ascending. TrainingPlanArnEquals/WarmPoolStatusEquals are decoded for wire-shape fidelity but are disclosed no-ops: this backend never associates a TrainingJob with a training plan ARN or a warm-pool status, so no job can ever match a non-empty value of either — the correct answer given neither concept is modeled, not a silently-ignored filter.

type ListTrainingJobsForHyperParameterTuningJobFilter added in v1.5.0

type ListTrainingJobsForHyperParameterTuningJobFilter struct {
	StatusEquals string
	SortBy       string
	SortOrder    string
	MaxResults   int32
}

ListTrainingJobsForHyperParameterTuningJobFilter narrows and orders the results of ListTrainingJobsForHyperParameterTuningJob (api_op_ListTrainingJobsForHyperParameterTuningJob.go:27-56). The op's own doc states the real default explicitly: SortBy is Name, SortOrder is Ascending. SortBy == FinalObjectiveMetricValue is a real, disclosed no-op: the doc's own text says a training job with no objective metric is excluded entirely when sorting by it, and this backend never computes an objective metric for any child training job, so the correct (not merely convenient) result is always empty.

type ListTrainingPlansParams

type ListTrainingPlansParams struct {
	StartTimeAfter  *time.Time
	StartTimeBefore *time.Time
	StatusEquals    string
	SortBy          string
	SortOrder       string
	NextToken       string
	MaxResults      int32
}

ListTrainingPlansParams bundles the filter/sort criteria for ListTrainingPlans.

type ListTransformJobsFilter

type ListTransformJobsFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	LastModifiedTimeAfter  *time.Time
	LastModifiedTimeBefore *time.Time
	StatusEquals           string
	NameContains           string
	SortBy                 string
	SortOrder              string
	MaxResults             int32
}

ListTransformJobsFilter narrows ListTransformJobs results, mirroring ListTransformJobsInput (api_op_ListTransformJobs.go). SortBy defaults to CreationTime, SortOrder defaults to Descending per that op's own doc.

type ListTrialComponentsParams added in v1.5.0

type ListTrialComponentsParams struct {
	ExperimentName string
	TrialName      string
	CreatedAfter   *time.Time
	CreatedBefore  *time.Time
	SortBy         string
	SortOrder      string
	NextToken      string
	MaxResults     int32
}

ListTrialComponentsParams bundles ListTrialComponents' filter/sort/ pagination criteria (api_op_ListTrialComponents.go:30-71). SourceArn is decoded by the handler for wire-shape fidelity but is a disclosed no-op here: CreateTrialComponentInput has no Source field at all (a trial component's TrialComponentSource is only ever populated when SageMaker auto-tracks a processing/training job, which this backend never does), so no trial component ever has a source ARN to filter by.

type ListTrialsFilter added in v1.5.0

type ListTrialsFilter struct {
	CreatedAfter       *time.Time
	CreatedBefore      *time.Time
	ExperimentName     string
	TrialComponentName string
	SortBy             string
	SortOrder          string
	MaxResults         int32
}

ListTrialsFilter narrows and orders the results of ListTrials (api_op_ListTrials.go:34-63). The op's own doc states both real defaults explicitly: SortBy is CreationTime, SortOrder is Descending.

type ListUserProfilesParams added in v1.3.1

type ListUserProfilesParams struct {
	DomainIDEquals          string
	UserProfileNameContains string
	SortBy                  string
	SortOrder               string
	NextToken               string
	MaxResults              int32
}

ListUserProfilesParams bundles ListUserProfiles' filter/sort/pagination criteria.

type ListWorkforcesFilter added in v1.5.0

type ListWorkforcesFilter struct {
	NameContains string
	SortBy       string
	SortOrder    string
	MaxResults   int32
}

ListWorkforcesFilter narrows and orders the results of ListWorkforces (api_op_ListWorkforces.go:31-48).

type ListWorkteamsFilter added in v1.5.0

type ListWorkteamsFilter struct {
	NameContains string
	SortBy       string
	SortOrder    string
	MaxResults   int32
}

ListWorkteamsFilter narrows and orders the results of ListWorkteams (api_op_ListWorkteams.go:30-51). The op's own doc claims SortBy defaults to "CreationTime", but ListWorkteamsSortByOptions (types/enums.go:5437-5442) has no such value — only "Name" and "CreateDate" — so CreateDate (the timestamp field the mismatched doc text was clearly describing) is used as the real default, not the nonexistent documented one.

type ManagedConfiguration added in v1.5.0

type ManagedConfiguration struct {
	ManagedStorageType string `json:"ManagedStorageType,omitempty"`
}

ManagedConfiguration mirrors AWS's ManagedConfiguration (types/types.go:13591) — the managed storage type of a model package group.

type MemberDefinition

type MemberDefinition struct {
	CognitoMemberDefinition *CognitoMemberDefinition `json:"CognitoMemberDefinition,omitempty"`
	OidcMemberDefinition    *OidcMemberDefinition    `json:"OidcMemberDefinition,omitempty"`
}

MemberDefinition identifies workers that make up a work team, using either an Amazon Cognito user group or an OIDC IdP user group.

type MetadataProperties added in v1.5.0

type MetadataProperties struct {
	CommitID    string `json:"CommitId,omitempty"`
	GeneratedBy string `json:"GeneratedBy,omitempty"`
	ProjectID   string `json:"ProjectId,omitempty"`
	Repository  string `json:"Repository,omitempty"`
}

MetadataProperties tracks commit/repo provenance for an Action or Artifact, per CreateActionInput.MetadataProperties / CreateArtifactInput.MetadataProperties (aws-sdk-go-v2/service/sagemaker types/types.go:13617, flat 4-string struct).

type MetricDefinition

type MetricDefinition struct {
	Name  string `json:"Name"`
	Regex string `json:"Regex,omitempty"`
}

MetricDefinition maps a metric name to a regex.

type MlflowApp

type MlflowApp struct {
	CreationTime                 time.Time         `json:"CreationTime"`
	LastModifiedTime             time.Time         `json:"LastModifiedTime"`
	Tags                         map[string]string `json:"Tags,omitempty"`
	Name                         string            `json:"Name"`
	Arn                          string            `json:"Arn"`
	Status                       string            `json:"Status"`
	ArtifactStoreURI             string            `json:"ArtifactStoreUri,omitempty"`
	RoleArn                      string            `json:"RoleArn,omitempty"`
	MlflowVersion                string            `json:"MlflowVersion,omitempty"`
	AccountDefaultStatus         string            `json:"AccountDefaultStatus,omitempty"`
	ModelRegistrationMode        string            `json:"ModelRegistrationMode,omitempty"`
	WeeklyMaintenanceWindowStart string            `json:"WeeklyMaintenanceWindowStart,omitempty"`
	DefaultDomainIDList          []string          `json:"DefaultDomainIdList,omitempty"`
}

MlflowApp represents a SageMaker MLflow App.

type MlflowTrackingServer

type MlflowTrackingServer struct {
	CreationTime                 time.Time         `json:"CreationTime"`
	LastModifiedTime             time.Time         `json:"LastModifiedTime"`
	Tags                         map[string]string `json:"Tags,omitempty"`
	TrackingServerName           string            `json:"TrackingServerName"`
	TrackingServerArn            string            `json:"TrackingServerArn"`
	TrackingServerStatus         string            `json:"TrackingServerStatus"`
	RoleArn                      string            `json:"RoleArn,omitempty"`
	MlflowVersion                string            `json:"MlflowVersion,omitempty"`
	ArtifactStoreURI             string            `json:"ArtifactStoreUri,omitempty"`
	S3BucketOwnerAccountID       string            `json:"S3BucketOwnerAccountId,omitempty"`
	TrackingServerSize           string            `json:"TrackingServerSize,omitempty"`
	WeeklyMaintenanceWindowStart string            `json:"WeeklyMaintenanceWindowStart,omitempty"`
	AutomaticModelRegistration   bool              `json:"AutomaticModelRegistration"`
	S3BucketOwnerVerification    bool              `json:"S3BucketOwnerVerification"`
}

MlflowTrackingServer represents a SageMaker MLflow tracking server.

func (*MlflowTrackingServer) MarshalJSON added in v1.2.0

func (s *MlflowTrackingServer) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeMlflowTrackingServer.

func (*MlflowTrackingServer) UnmarshalJSON added in v1.2.0

func (s *MlflowTrackingServer) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of MlflowTrackingServer.MarshalJSON, read by persistence.go's snapshot restore path.

type Model

type Model struct {
	CreationTime             time.Time                 `json:"CreationTime"`
	Tags                     map[string]string         `json:"Tags,omitempty"`
	VpcConfig                *VpcConfig                `json:"VpcConfig,omitempty"`
	InferenceExecutionConfig *InferenceExecutionConfig `json:"InferenceExecutionConfig,omitempty"`
	ModelName                string                    `json:"ModelName"`
	ModelARN                 string                    `json:"ModelARN"`
	ExecutionRoleARN         string                    `json:"ExecutionRoleARN"`
	PrimaryContainer         *ContainerDefinition      `json:"PrimaryContainer,omitempty"`
	Containers               []ContainerDefinition     `json:"Containers,omitempty"`
	EnableNetworkIsolation   bool                      `json:"EnableNetworkIsolation,omitempty"`
}

Model represents a SageMaker model.

type ModelArtifacts

type ModelArtifacts struct {
	S3ModelArtifacts string `json:"S3ModelArtifacts"`
}

ModelArtifacts references the S3 model output of a training job.

type ModelCard

type ModelCard struct {
	CreationTime     time.Time                `json:"CreationTime"`
	LastModifiedTime time.Time                `json:"LastModifiedTime"`
	SecurityConfig   *ModelCardSecurityConfig `json:"SecurityConfig,omitempty"`
	Tags             map[string]string        `json:"Tags,omitempty"`
	ModelCardName    string                   `json:"ModelCardName"`
	ModelCardArn     string                   `json:"ModelCardArn"`
	ModelCardStatus  string                   `json:"ModelCardStatus"`
	Content          string                   `json:"Content,omitempty"`
	ModelCardVersion int                      `json:"ModelCardVersion"`
}

ModelCard represents a SageMaker model card.

func (*ModelCard) MarshalJSON added in v1.2.0

func (c *ModelCard) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeModelCard.

func (*ModelCard) UnmarshalJSON added in v1.2.0

func (c *ModelCard) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ModelCard.MarshalJSON, read by persistence.go's snapshot restore path.

type ModelCardExportJob

type ModelCardExportJob struct {
	CreatedAt              time.Time `json:"-"`
	LastModifiedAt         time.Time `json:"-"`
	ModelCardExportJobArn  string    `json:"ModelCardExportJobArn"`
	ModelCardExportJobName string    `json:"ModelCardExportJobName"`
	ModelCardName          string    `json:"ModelCardName"`
	Status                 string    `json:"Status"`
	S3OutputPath           string    `json:"-"`
	S3ExportArtifacts      string    `json:"-"`
	ModelCardVersion       int       `json:"ModelCardVersion"`
}

ModelCardExportJob represents an export of a model card to S3.

type ModelCardSecurityConfig added in v1.5.0

type ModelCardSecurityConfig struct {
	KmsKeyID string `json:"KmsKeyId,omitempty"`
}

ModelCardSecurityConfig mirrors types.ModelCardSecurityConfig (types/types.go), which has exactly one member.

type ModelDeployConfig added in v1.3.1

type ModelDeployConfig struct {
	AutoGenerateEndpointName *bool  `json:"AutoGenerateEndpointName,omitempty"`
	EndpointName             string `json:"EndpointName,omitempty"`
}

ModelDeployConfig mirrors types.ModelDeployConfig.

type ModelInfrastructureConfig added in v1.5.0

type ModelInfrastructureConfig struct {
	RealTimeInferenceConfig *RealTimeInferenceConfig `json:"RealTimeInferenceConfig,omitempty"`
	InfrastructureType      string                   `json:"InfrastructureType,omitempty"`
}

ModelInfrastructureConfig mirrors types.ModelInfrastructureConfig (types/types.go). Only one InfrastructureType exists today ("RealTimeInference", types/enums.go:5969), so RealTimeInferenceConfig is the sole variant modeled.

type ModelMetadataEntry

type ModelMetadataEntry struct {
	Domain           string
	Framework        string
	FrameworkVersion string
	Model            string
	Task             string
}

ModelMetadataEntry mirrors types.ModelMetadataSummary.

type ModelMetadataFilter

type ModelMetadataFilter struct {
	Name  string `json:"Name"`
	Value string `json:"Value"`
}

ModelMetadataFilter mirrors types.ModelMetadataFilter.

type ModelPackage

type ModelPackage struct {
	CreationTime                      time.Time                 `json:"CreationTime"`
	LastModifiedTime                  time.Time                 `json:"LastModifiedTime,omitzero"`
	Tags                              map[string]string         `json:"Tags,omitempty"`
	CustomerMetadataProperties        map[string]string         `json:"CustomerMetadataProperties,omitempty"`
	InferenceSpecification            json.RawMessage           `json:"InferenceSpecification,omitempty"`
	SourceAlgorithmSpecification      json.RawMessage           `json:"SourceAlgorithmSpecification,omitempty"`
	ValidationSpecification           json.RawMessage           `json:"ValidationSpecification,omitempty"`
	DriftCheckBaselines               json.RawMessage           `json:"DriftCheckBaselines,omitempty"`
	ModelMetrics                      json.RawMessage           `json:"ModelMetrics,omitempty"`
	ModelCard                         json.RawMessage           `json:"ModelCard,omitempty"`
	ModelLifeCycle                    json.RawMessage           `json:"ModelLifeCycle,omitempty"`
	MetadataProperties                json.RawMessage           `json:"MetadataProperties,omitempty"`
	SecurityConfig                    json.RawMessage           `json:"SecurityConfig,omitempty"`
	AdditionalInferenceSpecifications json.RawMessage           `json:"AdditionalInferenceSpecifications,omitempty"`
	ModelPackageName                  string                    `json:"ModelPackageName"`
	ModelPackageArn                   string                    `json:"ModelPackageArn"`
	ModelPackageGroupName             string                    `json:"ModelPackageGroupName,omitempty"`
	ModelPackageStatus                string                    `json:"ModelPackageStatus"`
	ModelApprovalStatus               string                    `json:"ModelApprovalStatus,omitempty"`
	ApprovalDescription               string                    `json:"ApprovalDescription,omitempty"`
	ModelPackageDescription           string                    `json:"ModelPackageDescription,omitempty"`
	Domain                            string                    `json:"Domain,omitempty"`
	ManagedStorageType                string                    `json:"ManagedStorageType,omitempty"`
	ModelPackageRegistrationType      string                    `json:"ModelPackageRegistrationType,omitempty"`
	SamplePayloadURL                  string                    `json:"SamplePayloadUrl,omitempty"`
	SkipModelValidation               string                    `json:"SkipModelValidation,omitempty"`
	SourceURI                         string                    `json:"SourceUri,omitempty"`
	Task                              string                    `json:"Task,omitempty"`
	ModelPackageStatusDetails         ModelPackageStatusDetails `json:"ModelPackageStatusDetails"`
	CertifyForMarketplace             bool                      `json:"CertifyForMarketplace,omitempty"`
}

ModelPackage represents a SageMaker model package.

InferenceSpecification/SourceAlgorithmSpecification/ValidationSpecification/ DriftCheckBaselines/ModelMetrics/ModelCard/ModelLifeCycle/MetadataProperties/ SecurityConfig/AdditionalInferenceSpecifications are carried as opaque json.RawMessage passthrough rather than fully-typed structs — same convention as ai_workload_configs.go's WorkloadSpec/DatasetConfig — since these are deeply-nested union/config shapes out of this pass's budget; every field a client actually sends round-trips exactly.

func (*ModelPackage) MarshalJSON added in v1.2.0

func (mp *ModelPackage) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeModelPackage.

func (*ModelPackage) UnmarshalJSON added in v1.2.0

func (mp *ModelPackage) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ModelPackage.MarshalJSON, read by persistence.go's snapshot restore path.

type ModelPackageBatchResult

type ModelPackageBatchResult struct {
	ModelPackage *ModelPackage
	ErrorCode    string
	ErrorMessage string
}

ModelPackageBatchResult holds the result of describing a single model package in a batch.

type ModelPackageGroup

type ModelPackageGroup struct {
	CreationTime                 time.Time             `json:"CreationTime"`
	Tags                         map[string]string     `json:"Tags,omitempty"`
	ManagedConfiguration         *ManagedConfiguration `json:"ManagedConfiguration,omitempty"`
	ModelPackageGroupName        string                `json:"ModelPackageGroupName"`
	ModelPackageGroupArn         string                `json:"ModelPackageGroupArn"`
	ModelPackageGroupDescription string                `json:"ModelPackageGroupDescription,omitempty"`
	ModelPackageGroupStatus      string                `json:"ModelPackageGroupStatus"`
	// ResourcePolicy is the resource policy JSON document attached via
	// PutModelPackageGroupPolicy, if any.
	ResourcePolicy string `json:"ResourcePolicy,omitempty"`
}

ModelPackageGroup represents a SageMaker model package group.

CreatedBy (types.UserContext) is "This member is required" on DescribeModelPackageGroupOutput but is disclosed absent, not fabricated — this backend has no IAM-identity model to honestly derive it from, the same class-d gap as every other CreatedBy/LastModifiedBy field in this service.

func (*ModelPackageGroup) MarshalJSON added in v1.2.0

func (g *ModelPackageGroup) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime as an AWS awsjson1.1 epoch-seconds number rather than Go's default RFC3339 string — this struct is marshaled directly by handleDescribeModelPackageGroup.

func (*ModelPackageGroup) UnmarshalJSON added in v1.2.0

func (g *ModelPackageGroup) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ModelPackageGroup.MarshalJSON, read by persistence.go's snapshot restore path.

type ModelPackageStatusDetails added in v1.2.0

type ModelPackageStatusDetails struct {
	ValidationStatuses []ModelPackageStatusItem `json:"ValidationStatuses"`
	ImageScanStatuses  []ModelPackageStatusItem `json:"ImageScanStatuses,omitempty"`
}

ModelPackageStatusDetails mirrors AWS's ModelPackageStatusDetails: the overall validation/scan status of a model package. ValidationStatuses is "This member is required" in the real DescribeModelPackageOutput — it must always be emitted (as an empty list when no validation profiles ran), never omitted.

type ModelPackageStatusItem added in v1.2.0

type ModelPackageStatusItem struct {
	Name          string `json:"Name"`
	Status        string `json:"Status"`
	FailureReason string `json:"FailureReason,omitempty"`
}

ModelPackageStatusItem mirrors AWS's ModelPackageStatusItem: the outcome of one validation or image-scan check run against a model package.

type ModelVariantConfig added in v1.5.0

type ModelVariantConfig struct {
	InfrastructureConfig *ModelInfrastructureConfig `json:"InfrastructureConfig,omitempty"`
	ModelName            string                     `json:"ModelName"`
	VariantName          string                     `json:"VariantName"`
}

ModelVariantConfig mirrors types.ModelVariantConfig (types/types.go), the request-side shape used by CreateInferenceExperimentInput/UpdateInferenceExperimentInput/ StopInferenceExperimentInput.DesiredModelVariants.

type ModelVariantConfigSummary added in v1.5.0

type ModelVariantConfigSummary struct {
	InfrastructureConfig *ModelInfrastructureConfig `json:"InfrastructureConfig,omitempty"`
	ModelName            string                     `json:"ModelName"`
	VariantName          string                     `json:"VariantName"`
	Status               string                     `json:"Status"`
}

ModelVariantConfigSummary mirrors types.ModelVariantConfigSummary (types/types.go) — the response-side shape DescribeInferenceExperimentOutput actually emits under the same "ModelVariants" wire key that CreateInferenceExperimentInput uses for the request-side ModelVariantConfig shape above. Same key, different shape: the response additionally requires Status, which has no request-side counterpart to source from, so it is synthesized (see modelVariantConfigSummaries).

type MonitoringAlert

type MonitoringAlert struct {
	CreationTime              time.Time `json:"CreationTime"`
	LastModifiedTime          time.Time `json:"LastModifiedTime"`
	MonitoringScheduleName    string    `json:"MonitoringScheduleName"`
	MonitoringAlertName       string    `json:"MonitoringAlertName"`
	AlertStatus               string    `json:"AlertStatus"`
	DatapointsToAlert         int32     `json:"DatapointsToAlert"`
	EvaluationPeriod          int32     `json:"EvaluationPeriod"`
	DashboardIndicatorEnabled bool      `json:"DashboardIndicatorEnabled"`
}

MonitoringAlert is the read/update state of a model monitor alert tied to a monitoring schedule. AWS has no CreateMonitoringAlert API — alert records are provisioned from a schedule's monitoring statistics/constraints config, so UpdateMonitoringAlert creates the record on first use and updates it thereafter.

type MonitoringAlertHistoryEntry

type MonitoringAlertHistoryEntry struct {
	CreationTime           time.Time `json:"CreationTime"`
	MonitoringScheduleName string    `json:"MonitoringScheduleName"`
	MonitoringAlertName    string    `json:"MonitoringAlertName"`
	AlertStatus            string    `json:"AlertStatus"`
}

MonitoringAlertHistoryEntry records a single point-in-time alert status observation for a monitoring schedule's alert.

type MonitoringAlertHistoryFilter

type MonitoringAlertHistoryFilter struct {
	CreationTimeAfter      *time.Time
	CreationTimeBefore     *time.Time
	MonitoringScheduleName string
	MonitoringAlertName    string
	StatusEquals           string
	SortOrder              string // "Ascending" | "Descending" (default); sort key is always CreationTime
	MaxResults             int32
}

MonitoringAlertHistoryFilter narrows ListMonitoringAlertHistory results.

type MonitoringExecution

type MonitoringExecution struct {
	CreationTime                time.Time `json:"CreationTime"`
	LastModifiedTime            time.Time `json:"LastModifiedTime"`
	ScheduledTime               time.Time `json:"ScheduledTime"`
	MonitoringScheduleName      string    `json:"MonitoringScheduleName"`
	MonitoringExecutionStatus   string    `json:"MonitoringExecutionStatus"`
	EndpointName                string    `json:"EndpointName,omitempty"`
	MonitoringJobDefinitionName string    `json:"MonitoringJobDefinitionName,omitempty"`
	MonitoringType              string    `json:"MonitoringType,omitempty"`
	ProcessingJobArn            string    `json:"ProcessingJobArn,omitempty"`
	FailureReason               string    `json:"FailureReason,omitempty"`
}

MonitoringExecution represents a single run of a monitoring schedule.

type MonitoringExecutionFilter

type MonitoringExecutionFilter struct {
	CreationTimeAfter           *time.Time
	CreationTimeBefore          *time.Time
	LastModifiedTimeAfter       *time.Time
	LastModifiedTimeBefore      *time.Time
	ScheduledTimeAfter          *time.Time
	ScheduledTimeBefore         *time.Time
	MonitoringScheduleName      string
	MonitoringJobDefinitionName string
	EndpointName                string
	MonitoringTypeEquals        string
	StatusEquals                string
	SortBy                      string // "CreationTime" (default) | "ScheduledTime" | "Status"
	SortOrder                   string
	MaxResults                  int32
}

MonitoringExecutionFilter narrows ListMonitoringExecutions results.

type MonitoringSchedule

type MonitoringSchedule struct {
	CreationTime             time.Time                 `json:"CreationTime"`
	LastModifiedTime         time.Time                 `json:"LastModifiedTime"`
	MonitoringScheduleConfig *MonitoringScheduleConfig `json:"MonitoringScheduleConfig,omitempty"`
	Tags                     map[string]string         `json:"Tags,omitempty"`
	MonitoringScheduleName   string                    `json:"MonitoringScheduleName"`
	MonitoringScheduleArn    string                    `json:"MonitoringScheduleArn"`
	MonitoringScheduleStatus string                    `json:"MonitoringScheduleStatus"`
	EndpointName             string                    `json:"EndpointName,omitempty"`
}

MonitoringSchedule represents a SageMaker monitoring schedule.

func (*MonitoringSchedule) MarshalJSON added in v1.2.0

func (ms *MonitoringSchedule) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeMonitoringSchedule.

func (*MonitoringSchedule) UnmarshalJSON added in v1.2.0

func (ms *MonitoringSchedule) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of MonitoringSchedule.MarshalJSON, read by persistence.go's snapshot restore path.

type MonitoringScheduleConfig added in v1.5.0

type MonitoringScheduleConfig struct {
	ScheduleConfig              *MonitoringScheduleSchedule `json:"ScheduleConfig,omitempty"`
	MonitoringJobDefinitionName string                      `json:"MonitoringJobDefinitionName,omitempty"`
	MonitoringType              string                      `json:"MonitoringType,omitempty"`
	MonitoringJobDefinition     json.RawMessage             `json:"MonitoringJobDefinition,omitempty"`
}

MonitoringScheduleConfig mirrors types.MonitoringScheduleConfig (types/types.go:15917-15932). MonitoringJobDefinition is deeply nested (AppSpecification/Inputs/OutputConfig/Resources/NetworkConfig/...) and is carried as opaque json.RawMessage passthrough per this campaign's established convention — stored and echoed back verbatim, never simulated, except for a best-effort EndpointName extraction used only for filtering/display (see monitoringEndpointNameFromJobDefinition).

type MonitoringScheduleSchedule added in v1.5.0

type MonitoringScheduleSchedule struct {
	ScheduleExpression    string `json:"ScheduleExpression,omitempty"`
	DataAnalysisStartTime string `json:"DataAnalysisStartTime,omitempty"`
	DataAnalysisEndTime   string `json:"DataAnalysisEndTime,omitempty"`
}

MonitoringScheduleSchedule mirrors types.ScheduleConfig (types/types.go:15980-16037, three string members).

type MultiModelConfig

type MultiModelConfig struct {
	ModelCacheSetting string `json:"ModelCacheSetting,omitempty"`
}

MultiModelConfig specifies the multi-model serving mode.

type NotebookInstance

type NotebookInstance struct {
	CreationTime                          time.Time         `json:"CreationTime"`
	LastModifiedTime                      time.Time         `json:"LastModifiedTime"`
	Tags                                  map[string]string `json:"Tags,omitempty"`
	RootAccess                            string            `json:"RootAccess,omitempty"`
	KmsKeyID                              string            `json:"KmsKeyId,omitempty"`
	URL                                   string            `json:"Url,omitempty"`
	NotebookInstanceName                  string            `json:"NotebookInstanceName"`
	NotebookInstanceArn                   string            `json:"NotebookInstanceArn"`
	NotebookInstanceStatus                string            `json:"NotebookInstanceStatus"`
	InstanceType                          string            `json:"InstanceType,omitempty"`
	RoleArn                               string            `json:"RoleArn,omitempty"`
	SubnetID                              string            `json:"SubnetId,omitempty"`
	PlatformIdentifier                    string            `json:"PlatformIdentifier,omitempty"`
	LifecycleConfigName                   string            `json:"NotebookInstanceLifecycleConfigName,omitempty"`
	DirectInternetAccess                  string            `json:"DirectInternetAccess,omitempty"`
	DefaultCodeRepository                 string            `json:"DefaultCodeRepository,omitempty"`
	IPAddressType                         string            `json:"IpAddressType,omitempty"`
	MinimumInstanceMetadataServiceVersion string            `json:"MinimumInstanceMetadataServiceVersion,omitempty"`
	SecurityGroupIDs                      []string          `json:"SecurityGroupIds,omitempty"`
	AcceleratorTypes                      []string          `json:"AcceleratorTypes,omitempty"`
	AdditionalCodeRepositories            []string          `json:"AdditionalCodeRepositories,omitempty"`
	VolumeSizeInGB                        int32             `json:"VolumeSizeInGB,omitempty"`
}

type NotebookInstanceLifecycleConfig

type NotebookInstanceLifecycleConfig struct {
	CreationTime     time.Time               `json:"CreationTime"`
	LastModifiedTime time.Time               `json:"LastModifiedTime"`
	Tags             map[string]string       `json:"Tags,omitempty"`
	Name             string                  `json:"NotebookInstanceLifecycleConfigName"`
	ARN              string                  `json:"NotebookInstanceLifecycleConfigArn"`
	OnCreate         []NotebookLifecycleHook `json:"OnCreate,omitempty"`
	OnStart          []NotebookLifecycleHook `json:"OnStart,omitempty"`
}

NotebookInstanceLifecycleConfig stores Create/Start lifecycle scripts.

type NotebookInstanceOptions

type NotebookInstanceOptions struct {
	Tags                                  map[string]string `json:"Tags,omitempty"`
	SubnetID                              string            `json:"SubnetId,omitempty"`
	LifecycleConfigName                   string            `json:"LifecycleConfigName,omitempty"`
	Name                                  string            `json:"NotebookInstanceName"`
	InstanceType                          string            `json:"InstanceType"`
	RoleArn                               string            `json:"RoleArn"`
	RootAccess                            string            `json:"RootAccess,omitempty"`
	KmsKeyID                              string            `json:"KmsKeyId,omitempty"`
	DirectInternetAccess                  string            `json:"DirectInternetAccess,omitempty"`
	DefaultCodeRepository                 string            `json:"DefaultCodeRepository,omitempty"`
	PlatformIdentifier                    string            `json:"PlatformIdentifier,omitempty"`
	IPAddressType                         string            `json:"IpAddressType,omitempty"`
	MinimumInstanceMetadataServiceVersion string            `json:"MinimumInstanceMetadataServiceVersion,omitempty"`
	AcceleratorTypes                      []string          `json:"AcceleratorTypes,omitempty"`
	AdditionalCodeRepositories            []string          `json:"AdditionalCodeRepositories,omitempty"`
	SecurityGroupIDs                      []string          `json:"SecurityGroupIds,omitempty"`
	VolumeSizeInGB                        int32             `json:"VolumeSizeInGB,omitempty"`
}

NotebookInstanceOptions holds all CreateNotebookInstance request fields.

type NotebookLifecycleHook

type NotebookLifecycleHook struct {
	Content string `json:"Content,omitempty"` // base64-encoded shell script
}

NotebookLifecycleHook is a single lifecycle script entry.

type NotebookUpdateOptions

type NotebookUpdateOptions struct {
	InstanceType                           string
	RoleArn                                string
	LifecycleConfigName                    string
	DefaultCodeRepository                  string
	PlatformIdentifier                     string
	RootAccess                             string
	IPAddressType                          string
	MinimumInstanceMetadataServiceVersion  string
	AdditionalCodeRepositories             []string
	VolumeSizeInGB                         int32
	DisassociateLifecycleConfig            bool
	DisassociateDefaultCodeRepository      bool
	DisassociateAdditionalCodeRepositories bool
}

NotebookUpdateOptions holds mutable fields for UpdateNotebookInstance.

type NotificationConfiguration added in v1.5.0

type NotificationConfiguration struct {
	NotificationTopicArn string `json:"NotificationTopicArn,omitempty"`
}

NotificationConfiguration mirrors types.NotificationConfiguration (api_op_CreateWorkteam.go), configuring SNS notification of available or expiring work items.

type OfflineStoreConfig added in v1.3.1

type OfflineStoreConfig struct {
	S3StorageConfig          *S3StorageConfig   `json:"S3StorageConfig,omitempty"`
	DataCatalogConfig        *DataCatalogConfig `json:"DataCatalogConfig,omitempty"`
	DisableGlueTableCreation *bool              `json:"DisableGlueTableCreation,omitempty"`
	TableFormat              string             `json:"TableFormat,omitempty"`
}

OfflineStoreConfig mirrors types.OfflineStoreConfig.

type OidcConfig

type OidcConfig struct {
	AuthenticationRequestExtraParams map[string]string `json:"AuthenticationRequestExtraParams,omitempty"`
	ClientID                         string            `json:"ClientId"`
	ClientSecret                     string            `json:"-"`
	Issuer                           string            `json:"Issuer"`
	AuthorizationEndpoint            string            `json:"AuthorizationEndpoint"`
	TokenEndpoint                    string            `json:"TokenEndpoint"`
	UserInfoEndpoint                 string            `json:"UserInfoEndpoint"`
	LogoutEndpoint                   string            `json:"LogoutEndpoint"`
	JwksURI                          string            `json:"JwksUri"`
	Scope                            string            `json:"Scope,omitempty"`
}

OidcConfig configures a private workforce using a customer-owned OIDC IdP. ClientSecret is stored but never echoed back in responses, matching the real OidcConfigForResponse shape.

type OidcMemberDefinition

type OidcMemberDefinition struct {
	Groups []string `json:"Groups,omitempty"`
}

OidcMemberDefinition identifies a list of OIDC IdP user groups.

type OnlineStoreConfig added in v1.3.1

type OnlineStoreConfig struct {
	SecurityConfig    *OnlineStoreSecurityConfig `json:"SecurityConfig,omitempty"`
	TTLDuration       *TTLDuration               `json:"TtlDuration,omitempty"`
	EnableOnlineStore *bool                      `json:"EnableOnlineStore,omitempty"`
	StorageType       string                     `json:"StorageType,omitempty"`
}

OnlineStoreConfig mirrors types.OnlineStoreConfig.

type OnlineStoreConfigUpdate added in v1.5.0

type OnlineStoreConfigUpdate struct {
	TTLDuration *TTLDuration `json:"TtlDuration,omitempty"`
}

OnlineStoreConfigUpdate mirrors types.OnlineStoreConfigUpdate (UpdateFeatureGroupInput.OnlineStoreConfig).

type OnlineStoreSecurityConfig added in v1.3.1

type OnlineStoreSecurityConfig struct {
	KmsKeyID string `json:"KmsKeyId,omitempty"`
}

OnlineStoreSecurityConfig mirrors types.OnlineStoreSecurityConfig.

type OptimizationJob

type OptimizationJob struct {
	LastModifiedTime        time.Time          `json:"LastModifiedTime"`
	CreationTime            time.Time          `json:"CreationTime"`
	StoppingCondition       *StoppingCondition `json:"StoppingCondition,omitempty"`
	Tags                    map[string]string  `json:"Tags,omitempty"`
	OptimizationEnvironment map[string]string  `json:"OptimizationEnvironment,omitempty"`
	OptimizationJobStatus   string             `json:"OptimizationJobStatus"`
	OptimizationJobName     string             `json:"OptimizationJobName"`
	OptimizationJobArn      string             `json:"OptimizationJobArn"`
	RoleArn                 string             `json:"RoleArn,omitempty"`
	DeploymentInstanceType  string             `json:"DeploymentInstanceType,omitempty"`
	OutputConfig            json.RawMessage    `json:"OutputConfig,omitempty"`
	VpcConfig               json.RawMessage    `json:"VpcConfig,omitempty"`
	OptimizationConfigs     json.RawMessage    `json:"OptimizationConfigs,omitempty"`
	TrainingPlanArns        []string           `json:"TrainingPlanArns,omitempty"`
	ModelSource             json.RawMessage    `json:"ModelSource,omitempty"`
	MaxInstanceCount        int32              `json:"MaxInstanceCount,omitempty"`
}

OptimizationJob represents a SageMaker optimization job. ModelSource, OutputConfig, and VpcConfig are stored as opaque json.RawMessage passthrough (same convention as ai_workload_configs.go): this backend never simulates actual model optimization, so only the client-supplied fields round-trip, not server-derived results.

func (*OptimizationJob) MarshalJSON added in v1.2.0

func (j *OptimizationJob) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeOptimizationJob.

func (*OptimizationJob) UnmarshalJSON added in v1.2.0

func (j *OptimizationJob) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of OptimizationJob.MarshalJSON, read by persistence.go's snapshot restore path.

type OutputDataConfig

type OutputDataConfig struct {
	S3OutputPath    string `json:"S3OutputPath"`
	KmsKeyID        string `json:"KmsKeyId,omitempty"`
	CompressionType string `json:"CompressionType,omitempty"`
}

OutputDataConfig specifies where training output is stored.

type ParallelismConfiguration

type ParallelismConfiguration struct {
	MaxParallelExecutionSteps int32 `json:"MaxParallelExecutionSteps,omitempty"`
}

ParallelismConfiguration limits concurrent steps in a pipeline execution.

type PartnerApp

type PartnerApp struct {
	CreationTime                  time.Time                    `json:"CreationTime"`
	LastModifiedTime              time.Time                    `json:"LastModifiedTime"`
	Tags                          map[string]string            `json:"Tags,omitempty"`
	MaintenanceConfig             *PartnerAppMaintenanceConfig `json:"MaintenanceConfig,omitempty"`
	ExecutionRoleArn              string                       `json:"ExecutionRoleArn,omitempty"`
	Arn                           string                       `json:"Arn"`
	Status                        string                       `json:"Status"`
	Type                          string                       `json:"Type,omitempty"`
	Name                          string                       `json:"Name"`
	AuthType                      string                       `json:"AuthType,omitempty"`
	Tier                          string                       `json:"Tier,omitempty"`
	KmsKeyID                      string                       `json:"KmsKeyId,omitempty"`
	BaseURL                       string                       `json:"-"`
	ApplicationConfig             json.RawMessage              `json:"ApplicationConfig,omitempty"`
	EnableAutoMinorVersionUpgrade bool                         `json:"EnableAutoMinorVersionUpgrade,omitempty"`
	EnableIamSessionBasedIdentity bool                         `json:"EnableIamSessionBasedIdentity,omitempty"`
}

PartnerApp represents a SageMaker partner app.

type PartnerAppMaintenanceConfig added in v1.5.0

type PartnerAppMaintenanceConfig struct {
	MaintenanceWindowStart string `json:"MaintenanceWindowStart,omitempty"`
}

PartnerAppMaintenanceConfig mirrors types.PartnerAppMaintenanceConfig (types/types.go:17113-17122), a single field flat enough not to need json.RawMessage passthrough.

type Pipeline

type Pipeline struct {
	CreationTime             time.Time                 `json:"CreationTime"`
	LastModifiedTime         time.Time                 `json:"LastModifiedTime"`
	Tags                     map[string]string         `json:"Tags,omitempty"`
	ParallelismConfiguration *ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"`
	PipelineName             string                    `json:"PipelineName"`
	PipelineArn              string                    `json:"PipelineArn"`
	PipelineStatus           string                    `json:"PipelineStatus"`
	PipelineDefinition       string                    `json:"PipelineDefinition,omitempty"`
	PipelineDisplayName      string                    `json:"PipelineDisplayName,omitempty"`
	PipelineDescription      string                    `json:"PipelineDescription,omitempty"`
	RoleArn                  string                    `json:"RoleArn,omitempty"`
}

Pipeline represents a SageMaker Pipeline.

type PipelineExecution

type PipelineExecution struct {
	StartTime                    time.Time                 `json:"StartTime"`
	ParallelismConfiguration     *ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"`
	SelectiveExecutionConfig     *SelectiveExecutionConfig `json:"SelectiveExecutionConfig,omitempty"`
	PipelineExecutionDisplayName string                    `json:"PipelineExecutionDisplayName,omitempty"`
	PipelineExecutionArn         string                    `json:"PipelineExecutionArn"`
	PipelineExecutionStatus      string                    `json:"PipelineExecutionStatus"`
	PipelineArn                  string                    `json:"PipelineArn"`
	PipelineExecutionDescription string                    `json:"PipelineExecutionDescription,omitempty"`
	FailureReason                string                    `json:"FailureReason,omitempty"`
	PipelineDefinition           string                    `json:"PipelineDefinition,omitempty"`
	MlflowExperimentName         string                    `json:"MlflowExperimentName,omitempty"`
	PipelineParameters           []PipelineParameter       `json:"PipelineParameters,omitempty"`
	PipelineVersionID            int64                     `json:"PipelineVersionId,omitempty"`
}

PipelineExecution represents a single execution of a SageMaker Pipeline.

type PipelineExecutionStep

type PipelineExecutionStep struct {
	StartTime        time.Time           `json:"StartTime"`
	EndTime          time.Time           `json:"EndTime"`
	StepName         string              `json:"StepName"`
	StepType         string              `json:"StepType"`
	StepStatus       string              `json:"StepStatus"`
	FailureReason    string              `json:"FailureReason,omitempty"`
	CallbackToken    string              `json:"CallbackToken,omitempty"`
	ExecutionArn     string              `json:"executionArn"`
	OutputParameters []PipelineParameter `json:"OutputParameters,omitempty"`
}

PipelineExecutionStep represents a step within a pipeline execution.

type PipelineParameter

type PipelineParameter struct {
	Name  string `json:"Name"`
	Value string `json:"Value"`
}

PipelineParameter is a name/value pair passed to StartPipelineExecution.

type PipelineVersion

type PipelineVersion struct {
	CreationTime                      time.Time `json:"CreationTime"`
	PipelineArn                       string    `json:"PipelineArn"`
	PipelineVersionDisplayName        string    `json:"PipelineVersionDisplayName,omitempty"`
	PipelineVersionDescription        string    `json:"PipelineVersionDescription,omitempty"`
	PipelineDefinition                string    `json:"PipelineDefinition,omitempty"`
	LastExecutionPipelineExecutionArn string    `json:"LastExecutionPipelineExecutionArn,omitempty"`
	PipelineVersionID                 int64     `json:"PipelineVersionId"`
}

PipelineVersion is a single versioned snapshot of a pipeline's definition.

type PresignedURLAccessConfig added in v1.5.0

type PresignedURLAccessConfig struct {
	ExpectedS3URL string
	AcceptEula    bool
}

PresignedURLAccessConfig mirrors *types.PresignedUrlAccessConfig (types/types.go:17716-17729). Accepted and round-tripped into CreateHubContentPresignedURLs, but not enforced: this backend has no concept of "gated" hub content requiring EULA acceptance to reject against, and no independently-resolved S3 URL to validate ExpectedS3URL's consistency claim against — disclosed here rather than fabricating either check.

type PriorityClass added in v1.3.1

type PriorityClass struct {
	Name   string `json:"Name"`
	Weight int32  `json:"Weight"`
}

PriorityClass is one entry of a SchedulerConfig's PriorityClasses list. sagemaker@v1.263.2 types/types.go:17733.

type ProcessingAppSpec

type ProcessingAppSpec struct {
	ImageURI            string   `json:"ImageUri"`
	ContainerArguments  []string `json:"ContainerArguments,omitempty"`
	ContainerEntrypoint []string `json:"ContainerEntrypoint,omitempty"`
}

ProcessingAppSpec identifies the container image for a processing job.

type ProcessingClusterConfig

type ProcessingClusterConfig struct {
	InstanceType   string `json:"InstanceType"`
	VolumeKmsKeyID string `json:"VolumeKmsKeyId,omitempty"`
	InstanceCount  int32  `json:"InstanceCount"`
	VolumeSizeInGB int32  `json:"VolumeSizeInGB"`
}

ProcessingClusterConfig is the compute config for a processing job.

type ProcessingExperimentConfig added in v1.5.0

type ProcessingExperimentConfig struct {
	ExperimentName            string `json:"ExperimentName,omitempty"`
	RunName                   string `json:"RunName,omitempty"`
	TrialComponentDisplayName string `json:"TrialComponentDisplayName,omitempty"`
	TrialName                 string `json:"TrialName,omitempty"`
}

ProcessingExperimentConfig mirrors types.ExperimentConfig (types/types.go — ExperimentName/RunName/TrialComponentDisplayName/TrialName).

type ProcessingInput

type ProcessingInput struct {
	S3Input           *ProcessingS3Input `json:"S3Input,omitempty"`
	DatasetDefinition *DatasetDefinition `json:"DatasetDefinition,omitempty"`
	InputName         string             `json:"InputName"`
	AppManaged        bool               `json:"AppManaged,omitempty"`
}

ProcessingInput specifies input data for a processing job.

type ProcessingJob

type ProcessingJob struct {
	CreationTime           time.Time                    `json:"CreationTime"`
	LastModifiedTime       time.Time                    `json:"LastModifiedTime"`
	ProcessingStartTime    *time.Time                   `json:"ProcessingStartTime,omitempty"`
	ProcessingEndTime      *time.Time                   `json:"ProcessingEndTime,omitempty"`
	Tags                   map[string]string            `json:"Tags,omitempty"`
	Environment            map[string]string            `json:"Environment,omitempty"`
	NetworkConfig          *ProcessingNetworkConfig     `json:"NetworkConfig,omitempty"`
	ExperimentConfig       *ProcessingExperimentConfig  `json:"ExperimentConfig,omitempty"`
	StoppingCondition      *ProcessingStoppingCondition `json:"StoppingCondition,omitempty"`
	ProcessingResources    ProcessingResources          `json:"ProcessingResources"`
	ProcessingOutputConfig ProcessingOutputConfig       `json:"ProcessingOutputConfig"`
	ProcessingJobName      string                       `json:"ProcessingJobName"`
	ProcessingJobArn       string                       `json:"ProcessingJobArn"`
	ProcessingJobStatus    string                       `json:"ProcessingJobStatus"`
	RoleArn                string                       `json:"RoleArn,omitempty"`
	FailureReason          string                       `json:"FailureReason,omitempty"`
	AppSpecification       ProcessingAppSpec            `json:"AppSpecification"`
	ProcessingInputs       []ProcessingInput            `json:"ProcessingInputs,omitempty"`
}

ProcessingJob represents a SageMaker processing job.

type ProcessingNetworkConfig added in v1.5.0

type ProcessingNetworkConfig struct {
	VpcConfig                             *VpcConfig `json:"VpcConfig,omitempty"`
	EnableInterContainerTrafficEncryption *bool      `json:"EnableInterContainerTrafficEncryption,omitempty"`
	EnableNetworkIsolation                *bool      `json:"EnableNetworkIsolation,omitempty"`
}

ProcessingNetworkConfig mirrors types.NetworkConfig (api_op_CreateProcessingJob.go's NetworkConfig field). The request's VPC settings nest under NetworkConfig.VpcConfig -- there is no top-level VpcConfig on CreateProcessingJobInput at all.

type ProcessingOutput

type ProcessingOutput struct {
	S3Output   *ProcessingS3Output `json:"S3Output,omitempty"`
	OutputName string              `json:"OutputName"`
	AppManaged bool                `json:"AppManaged,omitempty"`
}

ProcessingOutput specifies output data for a processing job.

type ProcessingOutputConfig

type ProcessingOutputConfig struct {
	KmsKeyID string             `json:"KmsKeyId,omitempty"`
	Outputs  []ProcessingOutput `json:"Outputs,omitempty"`
}

ProcessingOutputConfig wraps outputs plus optional KMS key.

type ProcessingResources

type ProcessingResources struct {
	ClusterConfig ProcessingClusterConfig `json:"ClusterConfig"`
}

ProcessingResources specifies compute for a processing job.

type ProcessingS3Input

type ProcessingS3Input struct {
	S3Uri                  string `json:"S3Uri"`
	LocalPath              string `json:"LocalPath"`
	S3DataType             string `json:"S3DataType,omitempty"`
	S3InputMode            string `json:"S3InputMode,omitempty"`
	S3DataDistributionType string `json:"S3DataDistributionType,omitempty"`
	S3CompressionType      string `json:"S3CompressionType,omitempty"`
}

ProcessingS3Input references S3 input data.

type ProcessingS3Output

type ProcessingS3Output struct {
	S3Uri        string `json:"S3Uri"`
	LocalPath    string `json:"LocalPath"`
	S3UploadMode string `json:"S3UploadMode,omitempty"`
}

ProcessingS3Output specifies S3 output for a processing step.

type ProcessingStoppingCondition added in v1.5.0

type ProcessingStoppingCondition struct {
	MaxRuntimeInSeconds int32 `json:"MaxRuntimeInSeconds"`
}

ProcessingStoppingCondition mirrors types.ProcessingStoppingCondition (MaxRuntimeInSeconds, "This member is required" on the type itself, but the type as a whole is an optional CreateProcessingJobInput field).

type ProductionVariant

type ProductionVariant struct {
	ServerlessConfig                            *ServerlessConfig `json:"ServerlessConfig,omitempty"`
	CoreDumpConfig                              *CoreDumpConfig   `json:"CoreDumpConfig,omitempty"`
	VariantName                                 string            `json:"VariantName"`
	ModelName                                   string            `json:"ModelName"`
	AcceleratorType                             string            `json:"AcceleratorType,omitempty"`
	InstanceType                                string            `json:"InstanceType,omitempty"`
	InferenceAmiVersion                         string            `json:"InferenceAmiVersion,omitempty"`
	InitialVariantWeight                        float64           `json:"InitialVariantWeight,omitempty"`
	InitialInstanceCount                        int32             `json:"InitialInstanceCount,omitempty"`
	VolumeSizeInGB                              int32             `json:"VolumeSizeInGB,omitempty"`
	ModelDataDownloadTimeoutInSeconds           int32             `json:"ModelDataDownloadTimeoutInSeconds,omitempty"`
	ContainerStartupHealthCheckTimeoutInSeconds int32             `json:"ContainerStartupHealthCheckTimeoutInSeconds,omitempty"` //nolint:lll // AWS API field name exceeds 120 chars; cannot be shortened
	EnableSSMAccess                             bool              `json:"EnableSSMAccess,omitempty"`
}

ProductionVariant holds configuration for a production variant in an endpoint config.

type ProductionVariantStatus

type ProductionVariantStatus struct {
	Status        string `json:"Status"`
	StatusMessage string `json:"StatusMessage,omitempty"`
}

ProductionVariantStatus describes the current deployment stage of a production variant on a deployed endpoint.

type ProductionVariantSummary

type ProductionVariantSummary struct {
	CurrentWeight        *float64                  `json:"CurrentWeight,omitempty"`
	DesiredWeight        *float64                  `json:"DesiredWeight,omitempty"`
	CurrentInstanceCount *int32                    `json:"CurrentInstanceCount,omitempty"`
	DesiredInstanceCount *int32                    `json:"DesiredInstanceCount,omitempty"`
	VariantName          string                    `json:"VariantName"`
	VariantStatus        []ProductionVariantStatus `json:"VariantStatus,omitempty"`
}

ProductionVariantSummary describes a production variant as deployed on a live endpoint (the shape returned by DescribeEndpoint). This is distinct from ProductionVariant, which is the EndpointConfig-time configuration: AWS renames Initial* to Desired* and adds Current* fields that reflect deployed state once the endpoint has finished (re)deploying.

type Project

type Project struct {
	CreationTime                      time.Time         `json:"CreationTime"`
	LastModifiedTime                  time.Time         `json:"LastModifiedTime"`
	Tags                              map[string]string `json:"Tags,omitempty"`
	ProjectName                       string            `json:"ProjectName"`
	ProjectArn                        string            `json:"ProjectArn"`
	ProjectID                         string            `json:"ProjectId"`
	ProjectStatus                     string            `json:"ProjectStatus"`
	ProjectDescription                string            `json:"ProjectDescription,omitempty"`
	ServiceCatalogProvisioningDetails json.RawMessage   `json:"ServiceCatalogProvisioningDetails,omitempty"`
	TemplateProviders                 json.RawMessage   `json:"TemplateProviders,omitempty"`
}

Project represents a SageMaker project. ServiceCatalogProvisioningDetails and TemplateProviders are stored as opaque json.RawMessage passthrough of whatever a client sent at Create (same convention as ai_workload_configs.go): this backend never simulates actual Service Catalog provisioning, so only the client-supplied identity fields round-trip, not server-derived state.

func (*Project) MarshalJSON added in v1.2.0

func (p *Project) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 string — read by persistence.go's snapshot path, not by the handler (handleDescribeProject builds its own response map so Tags, which has no wire counterpart on DescribeProjectOutput, never leaks onto the wire).

func (*Project) UnmarshalJSON added in v1.2.0

func (p *Project) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of Project.MarshalJSON, read by persistence.go's snapshot restore path.

type Provider

type Provider struct{}

Provider implements service.Provider for AWS SageMaker.

func (*Provider) Init

Init initializes the SageMaker service backend and handler.

func (*Provider) Name

func (p *Provider) Name() string

Name returns the provider name.

type QueryLineageFilters added in v1.5.0

type QueryLineageFilters struct {
	CreatedAfter   *time.Time
	CreatedBefore  *time.Time
	ModifiedAfter  *time.Time
	ModifiedBefore *time.Time
	Properties     map[string]string
	LineageTypes   []string
}

QueryLineageFilters narrows a QueryLineage traversal's result vertices, per QueryFilters (aws-sdk-go-v2/service/sagemaker types/types.go:19078). Types (matching non-lineage-tracked entities like TrainingJob/Model/Endpoint by their AWS resource type) is deliberately not modeled here — see QueryLineage's doc comment.

type QueryLineageParams added in v1.5.0

type QueryLineageParams struct {
	Filters      *QueryLineageFilters
	Direction    string
	NextToken    string
	StartArns    []string
	MaxDepth     int
	MaxResults   int32
	IncludeEdges bool
}

QueryLineageParams bundles QueryLineage's traversal and filter/pagination criteria.

type RealTimeInferenceConfig added in v1.5.0

type RealTimeInferenceConfig struct {
	InstanceType  string `json:"InstanceType,omitempty"`
	InstanceCount int32  `json:"InstanceCount,omitempty"`
}

RealTimeInferenceConfig mirrors types.RealTimeInferenceConfig (types/types.go), both members required when present.

type RegisterDeviceInput

type RegisterDeviceInput struct {
	DeviceName   string
	Description  string
	IotThingName string
}

RegisterDeviceInput is a single device to register. Unlike CreateDeviceFleetOptions, types.Device (the wire type for each entry in RegisterDevicesInput.Devices, types/types.go:7222-7236) carries no Tags field of its own -- tags are supplied once, at the top level of RegisterDevicesInput, and apply to every device in the batch (see RegisterDevices' tags parameter below).

type ReservedCapacity

type ReservedCapacity struct {
	StartTime              time.Time      `json:"StartTime"`
	EndTime                time.Time      `json:"EndTime"`
	Status                 string         `json:"Status"`
	ReservedCapacityArn    string         `json:"ReservedCapacityArn"`
	InstanceType           string         `json:"InstanceType"`
	AvailabilityZone       string         `json:"AvailabilityZone,omitempty"`
	ReservedCapacityType   string         `json:"ReservedCapacityType,omitempty"`
	TrainingPlanArn        string         `json:"-"`
	UltraServers           []*UltraServer `json:"-"`
	DurationHours          int64          `json:"DurationHours,omitempty"`
	DurationMinutes        int64          `json:"DurationMinutes,omitempty"`
	TotalInstanceCount     int32          `json:"TotalInstanceCount"`
	AvailableInstanceCount int32          `json:"AvailableInstanceCount,omitempty"`
	InUseInstanceCount     int32          `json:"InUseInstanceCount,omitempty"`
}

ReservedCapacity represents provisioned compute capacity backing a training plan.

func (*ReservedCapacity) MarshalJSON added in v1.2.0

func (rc *ReservedCapacity) MarshalJSON() ([]byte, error)

MarshalJSON emits StartTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings, and adds UltraServerSummary — this struct is marshaled directly by handleDescribeReservedCapacity.

func (*ReservedCapacity) UnmarshalJSON added in v1.2.0

func (rc *ReservedCapacity) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ReservedCapacity.MarshalJSON, read by persistence.go's snapshot restore path.

type ReservedCapacityOffering

type ReservedCapacityOffering struct {
	InstanceType     string
	AvailabilityZone string
	UltraServerType  string
	DurationHours    int64
	DurationMinutes  int64
	InstanceCount    int32
	IsUltraServer    bool
}

ReservedCapacityOffering describes one block of compute within a catalog TrainingPlanOffering, mirroring types.ReservedCapacityOffering.

type ReservedCapacitySummary

type ReservedCapacitySummary struct {
	EndTime              *time.Time `json:"EndTime,omitempty"`
	StartTime            *time.Time `json:"StartTime,omitempty"`
	InstanceType         string     `json:"InstanceType"`
	ReservedCapacityArn  string     `json:"ReservedCapacityArn"`
	Status               string     `json:"Status"`
	AvailabilityZone     string     `json:"AvailabilityZone,omitempty"`
	ReservedCapacityType string     `json:"ReservedCapacityType,omitempty"`
	TotalInstanceCount   int32      `json:"TotalInstanceCount"`
	DurationHours        int64      `json:"DurationHours,omitempty"`
	DurationMinutes      int64      `json:"DurationMinutes,omitempty"`
}

ReservedCapacitySummary is the wire shape nested inside a TrainingPlan for each Reserved Capacity backing it.

func (*ReservedCapacitySummary) MarshalJSON added in v1.2.0

func (r *ReservedCapacitySummary) MarshalJSON() ([]byte, error)

MarshalJSON emits StartTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is nested (unconverted) inside TrainingPlan.ReservedCapacitySummaries, which is marshaled directly by handleDescribeTrainingPlan.

func (*ReservedCapacitySummary) UnmarshalJSON added in v1.2.0

func (r *ReservedCapacitySummary) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of ReservedCapacitySummary.MarshalJSON, read by persistence.go's snapshot restore path.

type ResourceConfig

type ResourceConfig struct {
	InstanceType             string          `json:"InstanceType"`
	VolumeKmsKeyID           string          `json:"VolumeKmsKeyId,omitempty"`
	InstanceGroups           []InstanceGroup `json:"InstanceGroups,omitempty"`
	InstanceCount            int32           `json:"InstanceCount"`
	VolumeSizeInGB           int32           `json:"VolumeSizeInGB"`
	KeepAlivePeriodInSeconds int32           `json:"KeepAlivePeriodInSeconds,omitempty"`
}

ResourceConfig specifies compute resources for a training job.

type ResourceSharingConfig added in v1.3.1

type ResourceSharingConfig struct {
	BorrowLimit          *int32                       `json:"BorrowLimit,omitempty"`
	Strategy             string                       `json:"Strategy"`
	AbsoluteBorrowLimits []ComputeQuotaResourceConfig `json:"AbsoluteBorrowLimits,omitempty"`
}

ResourceSharingConfig defines how a ComputeQuota lends and borrows idle compute with other entities. sagemaker@v1.263.2 types/types.go:19878.

type S3Accessor added in v1.3.1

type S3Accessor interface {
	GetObject(ctx context.Context, in *s3sdk.GetObjectInput) (*s3sdk.GetObjectOutput, error)
}

S3Accessor is the subset of S3 operations CreatePipeline/UpdatePipeline need to fetch a pipeline definition referenced by PipelineDefinitionS3Location. Satisfied by the in-process S3 backend (services/s3), wired in cli.go alongside the DynamoDB/MGN->S3 wiring -- see SetS3Backend.

type S3DataSource

type S3DataSource struct {
	S3Uri                  string `json:"S3Uri"`
	S3DataType             string `json:"S3DataType,omitempty"`
	S3DataDistributionType string `json:"S3DataDistributionType,omitempty"`
}

S3DataSource references an S3 location for training data.

type S3Presign added in v1.5.0

type S3Presign struct {
	IamPolicyConstraints *IamPolicyConstraints `json:"IamPolicyConstraints,omitempty"`
}

S3Presign mirrors types.S3Presign (types/types.go:20400-20407).

type S3StorageConfig added in v1.3.1

type S3StorageConfig struct {
	S3URI               string `json:"S3Uri"`
	KmsKeyID            string `json:"KmsKeyId,omitempty"`
	ResolvedOutputS3URI string `json:"ResolvedOutputS3Uri,omitempty"`
}

S3StorageConfig mirrors types.S3StorageConfig.

type SMImage

type SMImage struct {
	CreationTime     time.Time         `json:"CreationTime"`
	LastModifiedTime time.Time         `json:"LastModifiedTime"`
	Tags             map[string]string `json:"Tags,omitempty"`
	ImageName        string            `json:"ImageName"`
	ImageArn         string            `json:"ImageArn"`
	ImageStatus      string            `json:"ImageStatus"`
	Description      string            `json:"Description,omitempty"`
	DisplayName      string            `json:"DisplayName,omitempty"`
	RoleArn          string            `json:"RoleArn,omitempty"`
}

SMImage represents a SageMaker image. FailureReason (DescribeImageOutput/types.Image, both "This member is required"-free) is not modeled: nothing in ImageStatus's CREATE_FAILED/UPDATE_FAILED/ DELETE_FAILED transitions is ever reached by this backend, so there is no real failure to report a reason for.

func (*SMImage) MarshalJSON added in v1.2.0

func (img *SMImage) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeImage.

func (*SMImage) UnmarshalJSON added in v1.2.0

func (img *SMImage) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of SMImage.MarshalJSON, read by persistence.go's snapshot restore path.

type ScalingConfigurationRecommendation

type ScalingConfigurationRecommendation struct {
	MinCapacity                 int32
	MaxCapacity                 int32
	ScaleInCooldown             int32
	ScaleOutCooldown            int32
	TargetCPUUtilizationPerCore int32
	InvocationsPerInstance      int32
	ModelLatency                int32
}

ScalingConfigurationRecommendation mirrors the relevant parts of GetScalingConfigurationRecommendationOutput.

type ScalingPolicyObjective added in v1.5.0

type ScalingPolicyObjective struct {
	MinInvocationsPerMinute *int32 `json:"MinInvocationsPerMinute,omitempty"`
	MaxInvocationsPerMinute *int32 `json:"MaxInvocationsPerMinute,omitempty"`
}

ScalingPolicyObjective mirrors types.ScalingPolicyObjective (api_op_GetScalingConfigurationRecommendation.go): purely an echo of what the caller sent, not persisted or used in the recommendation math.

type SchedulerConfig added in v1.3.1

type SchedulerConfig struct {
	FairShare           string          `json:"FairShare,omitempty"`
	IdleResourceSharing string          `json:"IdleResourceSharing,omitempty"`
	PriorityClasses     []PriorityClass `json:"PriorityClasses,omitempty"`
}

SchedulerConfig is a ClusterSchedulerConfig's task-prioritization and fair-share policy. sagemaker@v1.263.2 types/types.go:20581.

type SearchFilter

type SearchFilter struct {
	Name     string `json:"Name"`
	Operator string `json:"Operator"`
	Value    string `json:"Value"`
}

SearchFilter mirrors types.Filter (a single property comparison).

type SearchParams

type SearchParams struct {
	Resource                 string
	BooleanOperator          string
	NextToken                string
	SortBy                   string
	SortOrder                string
	CrossAccountFilterOption string
	Filters                  []SearchFilter
	MaxResults               int32
}

SearchParams bundles the filter/sort/page criteria for Search.

type SearchTrainingPlanOfferingsParams

type SearchTrainingPlanOfferingsParams struct {
	InstanceType     string
	UltraServerType  string
	TrainingPlanArn  string
	TargetResources  []string
	DurationHours    int64
	InstanceCount    int32
	UltraServerCount int32
}

SearchTrainingPlanOfferingsParams bundles the filter criteria accepted by SearchTrainingPlanOfferings.

type SecondaryStatusTransition

type SecondaryStatusTransition struct {
	StartTime     time.Time  `json:"StartTime"`
	EndTime       *time.Time `json:"EndTime,omitempty"`
	Status        string     `json:"Status"`
	StatusMessage string     `json:"StatusMessage,omitempty"`
}

SecondaryStatusTransition records a FSM step in a training job.

type SelectedStep added in v1.3.1

type SelectedStep struct {
	StepName string `json:"StepName"`
}

SelectedStep names one step to run in a SelectiveExecutionConfig.

type SelectiveExecutionConfig added in v1.3.1

type SelectiveExecutionConfig struct {
	SourcePipelineExecutionArn string         `json:"SourcePipelineExecutionArn,omitempty"`
	SelectedSteps              []SelectedStep `json:"SelectedSteps"`
}

SelectiveExecutionConfig restricts a pipeline execution to a subset of steps.

type ServerlessConfig

type ServerlessConfig struct {
	MemorySizeInMB         int32 `json:"MemorySizeInMB,omitempty"`
	MaxConcurrency         int32 `json:"MaxConcurrency,omitempty"`
	ProvisionedConcurrency int32 `json:"ProvisionedConcurrency,omitempty"`
}

ServerlessConfig configures serverless inference for a variant.

type ShadowModeConfig added in v1.5.0

type ShadowModeConfig struct {
	SourceModelVariantName string                     `json:"SourceModelVariantName"`
	ShadowModelVariants    []ShadowModelVariantConfig `json:"ShadowModelVariants"`
}

ShadowModeConfig mirrors types.ShadowModeConfig (types/types.go), both members required.

type ShadowModelVariantConfig added in v1.5.0

type ShadowModelVariantConfig struct {
	ShadowModelVariantName string `json:"ShadowModelVariantName"`
	SamplingPercentage     int32  `json:"SamplingPercentage"`
}

ShadowModelVariantConfig mirrors types.ShadowModelVariantConfig (types/types.go), both members required.

type SourceIPConfig

type SourceIPConfig struct {
	Cidrs []string `json:"Cidrs"`
}

SourceIPConfig is a CIDR allow list restricting worker access to a workforce.

type Space

type Space struct {
	CreationTime         time.Time         `json:"CreationTime"`
	LastModifiedTime     time.Time         `json:"LastModifiedTime"`
	Tags                 map[string]string `json:"Tags,omitempty"`
	SpaceName            string            `json:"SpaceName"`
	SpaceArn             string            `json:"SpaceArn"`
	DomainID             string            `json:"DomainId"`
	SpaceStatus          string            `json:"Status"`
	SpaceDisplayName     string            `json:"SpaceDisplayName,omitempty"`
	OwnershipSettings    json.RawMessage   `json:"OwnershipSettings,omitempty"`
	SpaceSettings        json.RawMessage   `json:"SpaceSettings,omitempty"`
	SpaceSharingSettings json.RawMessage   `json:"SpaceSharingSettings,omitempty"`
}

Space represents a SageMaker Studio space. OwnershipSettings/SpaceSettings/ SpaceSharingSettings are stored as opaque JSON (the json.RawMessage passthrough convention used elsewhere in this service for deeply-nested config shapes) — the client's Create payload is echoed back verbatim on Describe.

func (*Space) MarshalJSON added in v1.2.0

func (s *Space) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeSpace.

func (*Space) UnmarshalJSON added in v1.2.0

func (s *Space) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of Space.MarshalJSON, read by persistence.go's snapshot restore path.

type StartPipelineExecutionOptions

type StartPipelineExecutionOptions struct {
	ParallelismConfiguration     *ParallelismConfiguration
	SelectiveExecutionConfig     *SelectiveExecutionConfig
	PipelineName                 string
	PipelineExecutionDisplayName string
	PipelineExecutionDescription string
	MlflowExperimentName         string
	PipelineParameters           []PipelineParameter
	PipelineVersionID            int64
}

StartPipelineExecutionOptions holds full input for StartPipelineExecution.

type StartSessionResult

type StartSessionResult struct {
	SessionID  string
	StreamURL  string
	TokenValue string
}

StartSessionResult holds the synthetic session identifiers returned by StartSession.

type StopInferenceExperimentOptions added in v1.5.0

type StopInferenceExperimentOptions struct {
	ModelVariantActions  map[string]string
	DesiredState         string
	Reason               string
	DesiredModelVariants []ModelVariantConfig
}

StopInferenceExperimentOptions holds input fields for StopInferenceExperiment, mirroring StopInferenceExperimentInput (api_op_StopInferenceExperiment.go:27-56).

type StoppingCondition

type StoppingCondition struct {
	MaxRuntimeInSeconds     int32 `json:"MaxRuntimeInSeconds,omitempty"`
	MaxWaitTimeInSeconds    int32 `json:"MaxWaitTimeInSeconds,omitempty"`
	MaxPendingTimeInSeconds int32 `json:"MaxPendingTimeInSeconds,omitempty"`
}

StoppingCondition defines the maximum run time for a training job.

type StorageBackend

type StorageBackend interface {
	CreateModel(
		ctx context.Context,
		name, executionRoleARN string,
		primaryContainer *ContainerDefinition,
		containers []ContainerDefinition,
		tags map[string]string,
	) (*Model, error)
	DescribeModel(ctx context.Context, name string) (*Model, error)
	ListModels(ctx context.Context, nextToken string, filter nameTimeFilter) ([]*Model, string)
	DeleteModel(ctx context.Context, name string) error
	SetModelExtras(
		ctx context.Context,
		name string,
		vpcConfig *VpcConfig,
		enableNetworkIsolation bool,
		inferenceExecConfig *InferenceExecutionConfig,
	) error

	CreateEndpointConfig(
		ctx context.Context,
		name string,
		productionVariants []ProductionVariant,
		tags map[string]string,
	) (*EndpointConfig, error)
	DescribeEndpointConfig(ctx context.Context, name string) (*EndpointConfig, error)
	ListEndpointConfigs(
		ctx context.Context, nextToken string, filter nameTimeFilter,
	) ([]*EndpointConfig, string)
	DeleteEndpointConfig(ctx context.Context, name string) error
	SetEndpointConfigExtras(
		ctx context.Context,
		name string,
		dataCaptureConfig *DataCaptureConfig,
		asyncInferenceConfig *AsyncInferenceConfig,
		vpcConfig *VpcConfig,
		executionRoleArn string,
		kmsKeyID string,
		shadowProductionVariants []ProductionVariant,
		enableNetworkIsolation bool,
		explainerConfig, metricsConfig json.RawMessage,
	) error

	AddTags(ctx context.Context, resourceARN string, tags map[string]string) error
	ListTags(ctx context.Context, resourceARN string) (map[string]string, error)
	DeleteTags(ctx context.Context, resourceARN string, tagKeys []string) error

	AddAssociation(
		ctx context.Context,
		sourceArn, destinationArn, associationType string,
		tags map[string]string,
	) (*Association, error)
	AssociateTrialComponent(
		ctx context.Context,
		trialName, trialComponentName string,
	) (*TrialComponentAssociation, error)

	AttachClusterNodeVolume(
		ctx context.Context,
		clusterArn, nodeID, volumeID string,
	) (*AttachedVolume, error)
	BatchAddClusterNodes(
		ctx context.Context,
		clusterName string,
		specs []AddClusterNodeSpec,
	) (string, []ClusterNode, []BatchAddClusterNodesFailure, error)
	BatchDeleteClusterNodes(
		ctx context.Context,
		clusterName string,
		nodeIDs []string,
	) (string, []string, []string, error)
	BatchDescribeModelPackage(ctx context.Context, modelPackageArns []string) map[string]ModelPackageBatchResult
	BatchRebootClusterNodes(
		ctx context.Context,
		clusterName string,
		nodeIDs []string,
	) (string, []string, []string, error)
	BatchReplaceClusterNodes(
		ctx context.Context,
		clusterName string,
		nodeIDs []string,
	) (string, []string, []string, error)

	CreateAction(
		ctx context.Context,
		name, actionType, description, status string,
		source ActionSource,
		properties map[string]string,
		tags map[string]string,
		metadataProperties *MetadataProperties,
	) (*Action, error)
	CreateAlgorithm(ctx context.Context, opts CreateAlgorithmOptions) (*Algorithm, error)

	CreateEndpoint(ctx context.Context, opts CreateEndpointOptions) (*Endpoint, error)
	DescribeEndpoint(ctx context.Context, name string) (*Endpoint, error)
	ListEndpoints(ctx context.Context, filter ListEndpointsFilter) ([]*Endpoint, string)
	DeleteEndpoint(ctx context.Context, name string) error
	UpdateEndpoint(ctx context.Context, name string, opts UpdateEndpointOptions) (*Endpoint, error)

	CreateTrainingJob(
		ctx context.Context,
		name, roleArn string,
		algorithmSpec map[string]string,
		tags map[string]string,
	) (*TrainingJob, error)
	DescribeTrainingJob(ctx context.Context, name string) (*TrainingJob, error)
	ListTrainingJobs(ctx context.Context, nextToken string) ([]*TrainingJob, string)
	StopTrainingJob(ctx context.Context, name string) error
	DeleteTrainingJob(ctx context.Context, name string) error

	CreateNotebookInstance(
		ctx context.Context,
		name, instanceType, roleArn string,
		tags map[string]string,
	) (*NotebookInstance, error)
	DescribeNotebookInstance(ctx context.Context, name string) (*NotebookInstance, error)
	ListNotebookInstances(
		ctx context.Context,
		params ListNotebookInstancesParams,
	) ([]*NotebookInstance, string)
	DeleteNotebookInstance(ctx context.Context, name string) error
	StartNotebookInstance(ctx context.Context, name string) error
	StopNotebookInstance(ctx context.Context, name string) error
	UpdateNotebookInstance(ctx context.Context, name, instanceType string) error
	CreatePresignedNotebookInstanceURL(ctx context.Context, name string) (string, error)

	CreateHyperParameterTuningJob(
		ctx context.Context, opts CreateHyperParameterTuningJobOptions,
	) (*HyperParameterTuningJob, error)
	DescribeHyperParameterTuningJob(ctx context.Context, name string) (*HyperParameterTuningJob, error)
	ListHyperParameterTuningJobs(
		ctx context.Context, nextToken string, filter ListHyperParameterTuningJobsFilter,
	) ([]*HyperParameterTuningJob, string)
	StopHyperParameterTuningJob(ctx context.Context, name string) error
	DeleteHyperParameterTuningJob(ctx context.Context, name string) error

	Reset()
	Region() string
	AccountID() string
	Snapshot(ctx context.Context) []byte
	Restore(ctx context.Context, data []byte) error
}

StorageBackend defines the interface for SageMaker backend implementations. All mutating methods must be safe for concurrent use.

type StudioLifecycleConfig

type StudioLifecycleConfig struct {
	CreationTime                 time.Time         `json:"CreationTime"`
	LastModifiedTime             time.Time         `json:"LastModifiedTime"`
	Tags                         map[string]string `json:"Tags,omitempty"`
	StudioLifecycleConfigName    string            `json:"StudioLifecycleConfigName"`
	StudioLifecycleConfigArn     string            `json:"StudioLifecycleConfigArn"`
	StudioLifecycleConfigAppType string            `json:"StudioLifecycleConfigAppType,omitempty"`
	StudioLifecycleConfigContent string            `json:"StudioLifecycleConfigContent,omitempty"`
}

StudioLifecycleConfig represents a SageMaker Studio lifecycle configuration.

func (*StudioLifecycleConfig) MarshalJSON added in v1.2.0

func (s *StudioLifecycleConfig) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/LastModifiedTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeStudioLifecycleConfig.

func (*StudioLifecycleConfig) UnmarshalJSON added in v1.2.0

func (s *StudioLifecycleConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of StudioLifecycleConfig.MarshalJSON, read by persistence.go's snapshot restore path.

type TTLDuration added in v1.3.1

type TTLDuration struct {
	Value *int32 `json:"Value,omitempty"`
	Unit  string `json:"Unit,omitempty"`
}

TTLDuration mirrors types.TtlDuration.

type TaggedEntry added in v1.2.0

type TaggedEntry struct {
	Tags map[string]string
	ARN  string
}

TaggedEntry pairs a resource ARN with its tag map, for cross-service tag enumeration by the Resource Groups Tagging API (see cli.go's wireTaggingSageMaker).

type ThroughputConfig added in v1.3.1

type ThroughputConfig struct {
	ProvisionedReadCapacityUnits  *int32 `json:"ProvisionedReadCapacityUnits,omitempty"`
	ProvisionedWriteCapacityUnits *int32 `json:"ProvisionedWriteCapacityUnits,omitempty"`
	ThroughputMode                string `json:"ThroughputMode,omitempty"`
}

ThroughputConfig mirrors both types.ThroughputConfig (CreateFeatureGroupInput) and types.ThroughputConfigDescription (DescribeFeatureGroupOutput) — the two SDK types have identical fields, so this backend stores/emits one shape for both.

ThroughputMode is opaque string passthrough, not validated against the real ThroughputModeOnDemand/ThroughputModeProvisioned ("OnDemand"/"Provisioned") enum values -- matching this campaign's established convention for deeply nested config passthrough (parity-21's AppImageConfig kernel configs).

type ThroughputConfigUpdate added in v1.5.0

type ThroughputConfigUpdate struct {
	ProvisionedReadCapacityUnits  *int32 `json:"ProvisionedReadCapacityUnits,omitempty"`
	ProvisionedWriteCapacityUnits *int32 `json:"ProvisionedWriteCapacityUnits,omitempty"`
	ThroughputMode                string `json:"ThroughputMode,omitempty"`
}

ThroughputConfigUpdate mirrors types.ThroughputConfigUpdate (UpdateFeatureGroupInput.ThroughputConfig).

type TrainingJob

type TrainingJob struct {
	LastModifiedTime                      time.Time                   `json:"LastModifiedTime"`
	CreationTime                          time.Time                   `json:"CreationTime"`
	VpcConfig                             *VpcConfig                  `json:"VpcConfig,omitempty"`
	TrainingStartTime                     *time.Time                  `json:"TrainingStartTime,omitempty"`
	TrainingEndTime                       *time.Time                  `json:"TrainingEndTime,omitempty"`
	Tags                                  map[string]string           `json:"Tags,omitempty"`
	HyperParameters                       map[string]string           `json:"HyperParameters,omitempty"`
	Environment                           map[string]string           `json:"Environment,omitempty"`
	ModelArtifacts                        *ModelArtifacts             `json:"ModelArtifacts,omitempty"`
	CheckpointConfig                      *CheckpointConfig           `json:"CheckpointConfig,omitempty"`
	OutputDataConfig                      OutputDataConfig            `json:"OutputDataConfig"`
	SecondaryStatus                       string                      `json:"SecondaryStatus,omitempty"`
	FailureReason                         string                      `json:"FailureReason,omitempty"`
	TrainingJobName                       string                      `json:"TrainingJobName"`
	TrainingJobArn                        string                      `json:"TrainingJobArn"`
	TuningJobArn                          string                      `json:"TuningJobArn,omitempty"`
	RoleArn                               string                      `json:"RoleArn,omitempty"`
	TrainingJobStatus                     string                      `json:"TrainingJobStatus"`
	InputDataConfig                       []Channel                   `json:"InputDataConfig,omitempty"`
	SecondaryStatusTransitions            []SecondaryStatusTransition `json:"SecondaryStatusTransitions,omitempty"`
	AlgorithmSpecification                AlgorithmSpecification      `json:"AlgorithmSpecification"`
	ResourceConfig                        ResourceConfig              `json:"ResourceConfig"`
	StoppingCondition                     StoppingCondition           `json:"StoppingCondition"`
	BillableTimeInSeconds                 int32                       `json:"BillableTimeInSeconds,omitempty"`
	TrainingTimeInSeconds                 int32                       `json:"TrainingTimeInSeconds,omitempty"`
	EnableNetworkIsolation                bool                        `json:"EnableNetworkIsolation,omitempty"`
	EnableManagedSpotTraining             bool                        `json:"EnableManagedSpotTraining,omitempty"`
	EnableInterContainerTrafficEncryption bool                        `json:"EnableInterContainerTrafficEncryption,omitempty"` //nolint:lll // AWS API field name exceeds 120 chars; cannot be shortened
}

type TrainingJobOptions

type TrainingJobOptions struct {
	Tags                                  map[string]string      `json:"Tags,omitempty"`
	Environment                           map[string]string      `json:"Environment,omitempty"`
	HyperParameters                       map[string]string      `json:"HyperParameters,omitempty"`
	CheckpointConfig                      *CheckpointConfig      `json:"CheckpointConfig,omitempty"`
	VpcConfig                             *VpcConfig             `json:"VpcConfig,omitempty"`
	OutputDataConfig                      OutputDataConfig       `json:"OutputDataConfig"`
	TrainingJobName                       string                 `json:"TrainingJobName"`
	RoleArn                               string                 `json:"RoleArn"`
	InputDataConfig                       []Channel              `json:"InputDataConfig,omitempty"`
	AlgorithmSpecification                AlgorithmSpecification `json:"AlgorithmSpecification"`
	ResourceConfig                        ResourceConfig         `json:"ResourceConfig"`
	StoppingCondition                     StoppingCondition      `json:"StoppingCondition"`
	EnableNetworkIsolation                bool                   `json:"EnableNetworkIsolation,omitempty"`
	EnableManagedSpotTraining             bool                   `json:"EnableManagedSpotTraining,omitempty"`
	EnableInterContainerTrafficEncryption bool                   `json:"EnableInterContainerTrafficEncryption,omitempty"`
}

TrainingJobOptions holds all fields for CreateTrainingJob.

type TrainingPlan

type TrainingPlan struct {
	CreationTime              time.Time                  `json:"CreationTime"`
	StartTime                 *time.Time                 `json:"StartTime,omitempty"`
	EndTime                   *time.Time                 `json:"EndTime,omitempty"`
	Tags                      map[string]string          `json:"Tags,omitempty"`
	UpfrontFee                string                     `json:"UpfrontFee,omitempty"`
	CurrencyCode              string                     `json:"CurrencyCode,omitempty"`
	StatusMessage             string                     `json:"StatusMessage,omitempty"`
	TrainingPlanName          string                     `json:"TrainingPlanName"`
	TrainingPlanArn           string                     `json:"TrainingPlanArn"`
	Status                    string                     `json:"Status"`
	Extensions                []*TrainingPlanExtension   `json:"-"`
	ReservedCapacitySummaries []*ReservedCapacitySummary `json:"ReservedCapacitySummaries,omitempty"`
	TargetResources           []string                   `json:"TargetResources,omitempty"`
	DurationHours             int64                      `json:"DurationHours,omitempty"`
	DurationMinutes           int64                      `json:"DurationMinutes,omitempty"`
	TotalInstanceCount        int32                      `json:"TotalInstanceCount,omitempty"`
	AvailableInstanceCount    int32                      `json:"AvailableInstanceCount,omitempty"`
	InUseInstanceCount        int32                      `json:"InUseInstanceCount,omitempty"`
}

TrainingPlan represents a SageMaker training plan.

UpfrontFee/TargetResources/TotalInstanceCount are all real, optional DescribeTrainingPlanOutput members (api_op_DescribeTrainingPlan.go) -- previously tagged json:"-", so handleDescribeTrainingPlan's direct json.Marshal(result) silently dropped all three even though trainingPlanSummaryJSON (handler_training_plan.go, ListTrainingPlans) had already been projecting them into the List response the whole time.

func (*TrainingPlan) MarshalJSON added in v1.2.0

func (t *TrainingPlan) MarshalJSON() ([]byte, error)

MarshalJSON emits CreationTime/StartTime/EndTime as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings — this struct is marshaled directly by handleDescribeTrainingPlan.

func (*TrainingPlan) UnmarshalJSON added in v1.2.0

func (t *TrainingPlan) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of TrainingPlan.MarshalJSON, read by persistence.go's snapshot restore path.

type TrainingPlanExtension

type TrainingPlanExtension struct {
	ExtendedAt                      time.Time `json:"-"`
	StartDate                       time.Time `json:"-"`
	EndDate                         time.Time `json:"-"`
	TrainingPlanExtensionOfferingID string    `json:"TrainingPlanExtensionOfferingId"`
	CurrencyCode                    string    `json:"CurrencyCode,omitempty"`
	PaymentStatus                   string    `json:"PaymentStatus,omitempty"`
	DurationHours                   int32     `json:"DurationHours"`
}

TrainingPlanExtension records one purchased extension of a training plan's duration, mirroring types.TrainingPlanExtension.

func (TrainingPlanExtension) MarshalJSON added in v1.5.0

func (e TrainingPlanExtension) MarshalJSON() ([]byte, error)

MarshalJSON emits ExtendedAt/StartDate/EndDate as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings -- ExtendTrainingPlan and SearchTrainingPlanOfferings both marshal []*TrainingPlanExtension directly (handler_training_plan.go), and this type is also embedded in TrainingPlan.Extensions, which rides along on TrainingPlan's own persistence round trip.

func (*TrainingPlanExtension) UnmarshalJSON added in v1.5.0

func (e *TrainingPlanExtension) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of TrainingPlanExtension.MarshalJSON, read by TrainingPlan's persistence round trip (see persistence.go).

type TrainingPlanExtensionOffering

type TrainingPlanExtensionOffering struct {
	StartDate                       time.Time `json:"-"`
	EndDate                         time.Time `json:"-"`
	TrainingPlanExtensionOfferingID string    `json:"TrainingPlanExtensionOfferingId"`
	CurrencyCode                    string    `json:"CurrencyCode,omitempty"`
	AvailabilityZone                string    `json:"AvailabilityZone,omitempty"`
	DurationHours                   int32     `json:"DurationHours"`
}

TrainingPlanExtensionOffering is a purchasable extension for an existing training plan, returned by SearchTrainingPlanOfferings when TrainingPlanArn is specified.

func (TrainingPlanExtensionOffering) MarshalJSON added in v1.5.0

func (o TrainingPlanExtensionOffering) MarshalJSON() ([]byte, error)

MarshalJSON emits StartDate/EndDate as AWS awsjson1.1 epoch-seconds numbers rather than Go's default RFC3339 strings -- SearchTrainingPlanOfferings marshals []*TrainingPlanExtensionOffering directly (handler_training_plan.go).

func (*TrainingPlanExtensionOffering) UnmarshalJSON added in v1.5.0

func (o *TrainingPlanExtensionOffering) UnmarshalJSON(data []byte) error

UnmarshalJSON is the inverse of TrainingPlanExtensionOffering.MarshalJSON.

type TrainingPlanOffering

type TrainingPlanOffering struct {
	TrainingPlanOfferingID    string
	CurrencyCode              string
	UpfrontFee                string
	TargetResources           []string
	ReservedCapacityOfferings []ReservedCapacityOffering
	DurationHours             int64
	DurationMinutes           int64
}

TrainingPlanOffering is a catalog entry returned by SearchTrainingPlanOfferings.

type TransformDataSource

type TransformDataSource struct {
	S3DataSource TransformS3DataSource `json:"S3DataSource"`
}

TransformDataSource specifies the S3 input location for a transform job.

type TransformInput

type TransformInput struct {
	DataSource      TransformDataSource `json:"DataSource"`
	ContentType     string              `json:"ContentType,omitempty"`
	CompressionType string              `json:"CompressionType,omitempty"`
	SplitType       string              `json:"SplitType,omitempty"`
}

TransformInput specifies the input data location and format for a transform job.

type TransformJob

type TransformJob struct {
	CreationTime            time.Time          `json:"CreationTime"`
	LastModifiedTime        time.Time          `json:"LastModifiedTime"`
	TransformStartTime      *time.Time         `json:"TransformStartTime,omitempty"`
	TransformEndTime        *time.Time         `json:"TransformEndTime,omitempty"`
	Tags                    map[string]string  `json:"Tags,omitempty"`
	Environment             map[string]string  `json:"Environment,omitempty"`
	TransformInput          TransformInput     `json:"TransformInput"`
	TransformOutput         TransformOutput    `json:"TransformOutput"`
	ModelName               string             `json:"ModelName,omitempty"`
	TransformJobName        string             `json:"TransformJobName"`
	TransformJobArn         string             `json:"TransformJobArn"`
	TransformJobStatus      string             `json:"TransformJobStatus"`
	BatchStrategy           string             `json:"BatchStrategy,omitempty"`
	FailureReason           string             `json:"FailureReason,omitempty"`
	TransformResources      TransformResources `json:"TransformResources"`
	MaxConcurrentTransforms int32              `json:"MaxConcurrentTransforms,omitempty"`
	MaxPayloadInMB          int32              `json:"MaxPayloadInMB,omitempty"`
}

TransformJob represents a SageMaker batch transform job.

type TransformJobOptions

type TransformJobOptions struct {
	Tags                    map[string]string
	Environment             map[string]string
	TransformInput          TransformInput
	TransformOutput         TransformOutput
	TransformJobName        string
	ModelName               string
	BatchStrategy           string
	TransformResources      TransformResources
	MaxConcurrentTransforms int32
	MaxPayloadInMB          int32
}

TransformJobOptions holds all input fields for CreateTransformJob.

type TransformOutput

type TransformOutput struct {
	S3OutputPath string `json:"S3OutputPath"`
	Accept       string `json:"Accept,omitempty"`
	KmsKeyID     string `json:"KmsKeyId,omitempty"`
	AssembleWith string `json:"AssembleWith,omitempty"`
}

TransformOutput specifies where to store transform results.

type TransformResources

type TransformResources struct {
	InstanceType   string `json:"InstanceType"`
	VolumeKmsKeyID string `json:"VolumeKmsKeyId,omitempty"`
	InstanceCount  int32  `json:"InstanceCount"`
}

TransformResources specifies compute resources for a transform job.

type TransformS3DataSource

type TransformS3DataSource struct {
	S3Uri             string `json:"S3Uri"`
	S3DataType        string `json:"S3DataType,omitempty"`
	S3CompressionType string `json:"S3CompressionType,omitempty"`
}

TransformS3DataSource is the S3-specific input for a batch transform job.

type Trial

type Trial struct {
	CreationTime       time.Time           `json:"CreationTime"`
	LastModifiedTime   time.Time           `json:"LastModifiedTime"`
	Tags               map[string]string   `json:"Tags,omitempty"`
	MetadataProperties *MetadataProperties `json:"MetadataProperties,omitempty"`
	TrialName          string              `json:"TrialName"`
	TrialArn           string              `json:"TrialArn"`
	ExperimentName     string              `json:"ExperimentName"`
	DisplayName        string              `json:"DisplayName,omitempty"`
}

Trial represents a SageMaker Trial.

type TrialComponent

type TrialComponent struct {
	CreationTime       time.Time                         `json:"CreationTime"`
	LastModifiedTime   time.Time                         `json:"LastModifiedTime"`
	StartTime          *time.Time                        `json:"StartTime,omitempty"`
	EndTime            *time.Time                        `json:"EndTime,omitempty"`
	Status             *TrialComponentStatus             `json:"Status,omitempty"`
	Tags               map[string]string                 `json:"Tags,omitempty"`
	Parameters         map[string]TrialComponentValue    `json:"Parameters,omitempty"`
	InputArtifacts     map[string]TrialComponentArtifact `json:"InputArtifacts,omitempty"`
	OutputArtifacts    map[string]TrialComponentArtifact `json:"OutputArtifacts,omitempty"`
	MetadataProperties *MetadataProperties               `json:"MetadataProperties,omitempty"`
	TrialComponentName string                            `json:"TrialComponentName"`
	TrialComponentArn  string                            `json:"TrialComponentArn"`
	DisplayName        string                            `json:"DisplayName,omitempty"`
}

TrialComponent represents a SageMaker Trial Component.

type TrialComponentArtifact

type TrialComponentArtifact struct {
	Value     string `json:"Value"`
	MediaType string `json:"MediaType,omitempty"`
}

TrialComponentArtifact is a URI/media-type artifact reference.

type TrialComponentAssociation

type TrialComponentAssociation struct {
	CreationTime       time.Time `json:"CreationTime"`
	TrialName          string    `json:"TrialName"`
	TrialComponentName string    `json:"TrialComponentName"`
	TrialArn           string    `json:"TrialArn"`
	TrialComponentArn  string    `json:"TrialComponentArn"`
}

TrialComponentAssociation tracks which trial components are associated with a trial.

type TrialComponentStatus added in v1.3.1

type TrialComponentStatus struct {
	PrimaryStatus string `json:"PrimaryStatus,omitempty"`
	Message       string `json:"Message,omitempty"`
}

TrialComponentStatus reports a trial component's lifecycle state. SDK ref: aws-sdk-go-v2/service/sagemaker/types.TrialComponentStatus ({PrimaryStatus, Message}) — DescribeTrialComponentOutput.Status is this struct on the wire, never a bare string.

type TrialComponentValue

type TrialComponentValue struct {
	NumberValue *float64 `json:"NumberValue,omitempty"`
	StringValue string   `json:"StringValue,omitempty"`
}

TrialComponentValue is a number or string parameter value.

type UIConfigInfo

type UIConfigInfo struct {
	UITemplateS3Uri string `json:"UiTemplateS3Uri,omitempty"`
	HumanTaskUIArn  string `json:"HumanTaskUiArn,omitempty"`
}

UIConfigInfo describes the worker UI used to render labeling tasks.

type UltraServer

type UltraServer struct {
	AvailabilityZone             string `json:"AvailabilityZone"`
	InstanceType                 string `json:"InstanceType"`
	UltraServerID                string `json:"UltraServerId"`
	UltraServerType              string `json:"UltraServerType"`
	HealthStatus                 string `json:"HealthStatus,omitempty"`
	TotalInstanceCount           int32  `json:"TotalInstanceCount"`
	AvailableInstanceCount       int32  `json:"AvailableInstanceCount,omitempty"`
	AvailableSpareInstanceCount  int32  `json:"AvailableSpareInstanceCount,omitempty"`
	ConfiguredSpareInstanceCount int32  `json:"ConfiguredSpareInstanceCount,omitempty"`
	InUseInstanceCount           int32  `json:"InUseInstanceCount,omitempty"`
}

UltraServer represents a single UltraServer node group within a Reserved Capacity, mirroring types.UltraServer.

type UpdateAppImageConfigOptions added in v1.5.0

type UpdateAppImageConfigOptions struct {
	KernelGatewayImageConfig json.RawMessage
	JupyterLabAppImageConfig json.RawMessage
	CodeEditorAppImageConfig json.RawMessage
}

UpdateAppImageConfigOptions holds input fields for UpdateAppImageConfig (api_op_UpdateAppImageConfig.go:28-45). Previously this op decoded and applied nothing beyond the name, so a client attempting to actually change an image's kernel/container/filesystem config had every field silently dropped -- the same "accept and drop" bug class as UpdateTrainingJob.

type UpdateClusterOptions added in v1.3.1

type UpdateClusterOptions struct {
	AutoScaling            *ClusterAutoScalingConfig
	Orchestrator           *ClusterOrchestrator
	TieredStorageConfig    *ClusterTieredStorageConfig
	NameOrArn              string
	NodeRecovery           string
	NodeProvisioningMode   string
	InstanceGroups         []ClusterInstanceGroup
	InstanceGroupsToDelete []string
}

UpdateClusterOptions holds the parameters UpdateCluster accepts.

type UpdateClusterSchedulerConfigOptions added in v1.3.1

type UpdateClusterSchedulerConfigOptions struct {
	SchedulerConfig *SchedulerConfig
	Description     *string
}

UpdateClusterSchedulerConfigOptions holds the optional, settable-on-update fields for UpdateClusterSchedulerConfig. A nil field means "not provided in the request" and leaves the stored value unchanged.

type UpdateComputeQuotaOptions added in v1.3.1

type UpdateComputeQuotaOptions struct {
	ComputeQuotaConfig *ComputeQuotaConfig
	ComputeQuotaTarget *ComputeQuotaTarget
	ActivationState    *string
	Description        *string
}

UpdateComputeQuotaOptions holds the optional, settable-on-update fields for UpdateComputeQuota. A nil field means "not provided in the request" and leaves the stored value unchanged.

type UpdateDeviceInput

type UpdateDeviceInput struct {
	DeviceName   string
	Description  string
	IotThingName string
}

UpdateDeviceInput is a single device update entry for UpdateDevices.

type UpdateDomainOptions added in v1.3.1

type UpdateDomainOptions struct {
	AppNetworkAccessType       string
	AppSecurityGroupManagement string
	HomeEfsFileSystemCreation  string
	TagPropagation             string
	VpcID                      string
	SubnetIDs                  []string
	DefaultUserSettings        json.RawMessage
	DefaultSpaceSettings       json.RawMessage
	DomainSettingsForUpdate    json.RawMessage
}

UpdateDomainOptions bundles UpdateDomain's optional fields. Every field is applied only when non-zero/non-nil — UpdateDomainInput is a partial update, not a full replace, so an unset field must leave the existing value alone rather than being zeroed.

type UpdateEndpointOptions added in v1.5.0

type UpdateEndpointOptions struct {
	DeploymentConfig                 json.RawMessage
	EndpointConfigName               string
	ExcludeRetainedVariantProperties []string
	RetainAllVariantProperties       bool
	RetainDeploymentConfig           bool
}

UpdateEndpointOptions holds input fields for UpdateEndpoint (api_op_UpdateEndpoint.go:1-56). ExcludeRetainedVariantProperties is restricted to the two VariantPropertyType values this backend tracks per variant (DesiredInstanceCount/DesiredWeight, types/enums.go:10837-10844) — DataCaptureConfig is endpoint-wide here, not per-variant, so that VariantPropertyType value has no effect to exclude.

type UpdateFeatureGroupOptions added in v1.5.0

type UpdateFeatureGroupOptions struct {
	OnlineStoreConfig *OnlineStoreConfigUpdate
	ThroughputConfig  *ThroughputConfigUpdate
	FeatureAdditions  []FeatureDefinition
}

UpdateFeatureGroupOptions bundles the three independent update mechanisms UpdateFeatureGroupInput declares (api_op_UpdateFeatureGroup.go:38-63): FeatureAdditions, OnlineStoreConfig and ThroughputConfig. Previously only FeatureAdditions was decoded at all -- the other two were entirely absent from the wire struct, so a client updating a feature group's online-store TtlDuration or switching its throughput mode got a 200 and no effect whatsoever, an accept-and-drop gap on two of the op's three real update paths.

type UpdateHubContentOptions

type UpdateHubContentOptions struct {
	HubContentDescription    string
	HubContentDisplayName    string
	HubContentMarkdown       string
	SupportStatus            string
	HubContentSearchKeywords []string
}

UpdateHubContentOptions bundles the mutable fields accepted by UpdateHubContent.

type UpdateHubOptions

type UpdateHubOptions struct {
	HubDescription    *string
	HubDisplayName    *string
	HubSearchKeywords []string
	HasSearchKeywords bool
}

UpdateHubOptions carries the optional fields accepted by UpdateHub. Nil pointers / HasSearchKeywords == false mean "field not present in request".

type UpdateImageOptions

type UpdateImageOptions struct {
	Description      *string
	DisplayName      *string
	RoleArn          *string
	DeleteProperties []string
}

UpdateImageOptions bundles the mutable fields accepted by UpdateImage. Nil pointer fields are left unchanged.

type UpdateImageVersionOptions

type UpdateImageVersionOptions struct {
	Alias           string
	Horovod         *bool
	JobType         string
	MLFramework     string
	Processor       string
	ProgrammingLang string
	ReleaseNotes    string
	VendorGuidance  string
	AliasesToAdd    []string
	AliasesToDelete []string
}

UpdateImageVersionOptions bundles the mutable fields accepted by UpdateImageVersion. Nil/empty fields are left unchanged.

type UpdateInferenceComponentOptions added in v1.5.0

type UpdateInferenceComponentOptions struct {
	DeploymentConfig json.RawMessage
	RuntimeConfig    *InferenceComponentRuntimeConfigInput
	Specification    *InferenceComponentSpecification
	Specifications   []InferenceComponentSpecification
}

UpdateInferenceComponentOptions holds the fields UpdateInferenceComponent (api_op_UpdateInferenceComponent.go:24-53) can change. There is no VariantName member on the real input — a production variant is fixed at Create time and cannot be moved via Update.

type UpdateInferenceExperimentOptions added in v1.5.0

type UpdateInferenceExperimentOptions struct {
	DataStorageConfig *InferenceExperimentDataStorageConfig
	Schedule          *InferenceExperimentSchedule
	ShadowModeConfig  *ShadowModeConfig
	Description       string
	ModelVariants     []ModelVariantConfig
}

UpdateInferenceExperimentOptions holds input fields for UpdateInferenceExperiment, mirroring UpdateInferenceExperimentInput (api_op_UpdateInferenceExperiment.go:28-63); every member besides Name is optional and applied only when non-nil/non-empty.

type UpdateMlflowAppOptions

type UpdateMlflowAppOptions struct {
	Arn                          string
	ArtifactStoreURI             string
	AccountDefaultStatus         string
	ModelRegistrationMode        string
	WeeklyMaintenanceWindowStart string
	DefaultDomainIDList          []string
}

UpdateMlflowAppOptions holds the mutable fields accepted by UpdateMlflowApp. Name (api_op_UpdateMlflowApp.go:29-72) is deliberately not modeled here: AWS's own doc page (API_UpdateMlflowApp.html) gives Name no description beyond "The name of the MLflow App to update", and this backend's MlflowApp is stored by an Arn built from Name at creation time (mlflow-app/<name>), so treating Name as a rename would require rekeying the store — a consistency-vs-fabrication tradeoff the docs don't resolve either way. Disclosed rather than guessed.

type UpdateMlflowTrackingServerOptions added in v1.5.0

type UpdateMlflowTrackingServerOptions struct {
	AutomaticModelRegistration   *bool
	S3BucketOwnerVerification    *bool
	TrackingServerName           string
	ArtifactStoreURI             string
	MlflowVersion                string
	S3BucketOwnerAccountID       string
	TrackingServerSize           string
	WeeklyMaintenanceWindowStart string
}

UpdateMlflowTrackingServerOptions holds the mutable fields accepted by UpdateMlflowTrackingServer (api_op_UpdateMlflowTrackingServer.go:28-63, sagemaker@v1.263.2). AutomaticModelRegistration/S3BucketOwnerVerification are *bool: AWS's own doc page restates Create's "defaults to False"/"defaults to True if not provided" language verbatim for this partial-update op, but every one of this op's other five optional fields behaves as leave-unchanged-if-omitted, and no other Update op in this service resets a value to a constant on omission — so nil (not sent) means leave-unchanged here too, disclosed rather than silently reset.

type UpdateModelPackageOptions added in v1.5.0

type UpdateModelPackageOptions struct {
	ApprovalStatus                         string
	ApprovalDescription                    string
	RegistrationType                       string
	SourceURI                              string
	CustomerMetadataProperties             map[string]string
	CustomerMetadataPropertiesToRemove     []string
	InferenceSpecification                 json.RawMessage
	ModelCard                              json.RawMessage
	ModelLifeCycle                         json.RawMessage
	AdditionalInferenceSpecificationsToAdd json.RawMessage
}

UpdateModelPackageOptions holds the fields accepted by UpdateModelPackage (api_op_UpdateModelPackage.go:26-95, sagemaker@v1.263.2). Every field leaves the prior value unchanged when omitted (empty string / nil), matching every other Update op in this service. ClientToken is omitted for the same reason as CreateModelPackage's.

type UpdatePartnerAppOptions

type UpdatePartnerAppOptions struct {
	MaintenanceConfig             *PartnerAppMaintenanceConfig
	Tags                          map[string]string
	EnableAutoMinorVersionUpgrade *bool
	EnableIamSessionBasedIdentity *bool
	Arn                           string
	Tier                          string
	ApplicationConfig             json.RawMessage
}

UpdatePartnerAppOptions holds the mutable fields accepted by UpdatePartnerApp (api_op_UpdatePartnerApp.go:24-71). AppVersion is decoded by the handler for wire-shape fidelity but is a disclosed no-op: this backend tracks no minor-version-upgrade catalog (DescribePartnerAppOutput's AvailableUpgrade/Version are likewise never populated), so there is no version state for it to advance. ClientToken is omitted for the same reason as CreatePartnerApp's.

type UpdateSpaceOptions added in v1.5.0

type UpdateSpaceOptions struct {
	SpaceDisplayName string
	SpaceSettings    json.RawMessage
}

UpdateSpaceOptions bundles UpdateSpace's optional fields (api_op_UpdateSpace.go:27-42). Both are omitted from the request when unset, so only a non-empty value is applied.

type UpdateTrainingJobOptions added in v1.5.0

type UpdateTrainingJobOptions struct {
	KeepAlivePeriodInSeconds *int32
}

UpdateTrainingJobOptions holds the parameters for updating a training job (api_op_UpdateTrainingJob.go:29-56). ProfilerConfig/ProfilerRuleConfigurations/ RemoteDebugConfig are disclosed not modeled: this backend's TrainingJob has no profiler or remote-debug concept at all (Create never captures them either), so there is nothing on the resource for an Update to mutate.

type UpdateTrialComponentOptions

type UpdateTrialComponentOptions struct {
	StartTime               *time.Time
	EndTime                 *time.Time
	Status                  *TrialComponentStatus
	Parameters              map[string]TrialComponentValue
	InputArtifacts          map[string]TrialComponentArtifact
	OutputArtifacts         map[string]TrialComponentArtifact
	DisplayName             string
	ParametersToRemove      []string
	InputArtifactsToRemove  []string
	OutputArtifactsToRemove []string
}

UpdateTrialComponentOptions holds optional fields for UpdateTrialComponent.

type UpdateUserProfileOptions added in v1.5.0

type UpdateUserProfileOptions struct {
	UserSettings json.RawMessage
}

UpdateUserProfileOptions bundles UpdateUserProfile's optional fields (api_op_UpdateUserProfile.go:26-38). UserSettings is omitted from the request when unset, so only a non-empty value is applied.

type UpdateWorkforceOptions

type UpdateWorkforceOptions struct {
	OidcConfig         *OidcConfig
	SourceIPConfig     *SourceIPConfig
	WorkforceVpcConfig *WorkforceVpcConfig
	Name               string
	IPAddressType      string
}

UpdateWorkforceOptions holds the parameters for updating a workforce.

type UpdateWorkteamOptions

type UpdateWorkteamOptions struct {
	NotificationConfiguration *NotificationConfiguration
	WorkerAccessConfiguration *WorkerAccessConfiguration
	Name                      string
	Description               string
	MemberDefinitions         []MemberDefinition
}

UpdateWorkteamOptions holds the parameters for updating a workteam.

type UserProfile

type UserProfile struct {
	CreationTime               time.Time         `json:"CreationTime"`
	LastModifiedTime           time.Time         `json:"LastModifiedTime"`
	Tags                       map[string]string `json:"Tags,omitempty"`
	DomainID                   string            `json:"DomainId"`
	UserProfileName            string            `json:"UserProfileName"`
	UserProfileArn             string            `json:"UserProfileArn"`
	Status                     string            `json:"Status"`
	SingleSignOnUserIdentifier string            `json:"SingleSignOnUserIdentifier,omitempty"`
	SingleSignOnUserValue      string            `json:"SingleSignOnUserValue,omitempty"`
	UserSettings               json.RawMessage   `json:"UserSettings,omitempty"`
}

UserProfile represents a SageMaker Studio user profile. UserSettings is stored as opaque JSON (the json.RawMessage passthrough convention used elsewhere in this service for deeply-nested config shapes).

type Vertex

type Vertex struct {
	Arn         string `json:"Arn"`
	Type        string `json:"Type,omitempty"`
	LineageType string `json:"LineageType,omitempty"`
}

Vertex represents a lineage entity reached by a QueryLineage traversal.

type VpcConfig

type VpcConfig struct {
	SecurityGroupIDs []string `json:"SecurityGroupIds,omitempty"`
	Subnets          []string `json:"Subnets,omitempty"`
}

VpcConfig specifies the VPC subnets and security groups.

type WorkerAccessConfiguration added in v1.5.0

type WorkerAccessConfiguration struct {
	S3Presign *S3Presign `json:"S3Presign,omitempty"`
}

WorkerAccessConfiguration mirrors types.WorkerAccessConfiguration (types/types.go:24464-24470), constraining access to an Amazon S3 resource in the worker portal.

type Workforce

type Workforce struct {
	CreateDate         time.Time           `json:"CreateDate"`
	LastUpdatedDate    time.Time           `json:"LastUpdatedDate"`
	Tags               map[string]string   `json:"-"`
	CognitoConfig      *CognitoConfig      `json:"CognitoConfig,omitempty"`
	OidcConfig         *OidcConfig         `json:"OidcConfig,omitempty"`
	SourceIPConfig     *SourceIPConfig     `json:"SourceIpConfig,omitempty"`
	WorkforceVpcConfig *WorkforceVpcConfig `json:"WorkforceVpcConfig,omitempty"`
	WorkforceName      string              `json:"WorkforceName"`
	WorkforceArn       string              `json:"WorkforceArn"`
	Status             string              `json:"Status"`
	SubDomain          string              `json:"SubDomain,omitempty"`
	IPAddressType      string              `json:"IpAddressType,omitempty"`
}

Workforce represents a SageMaker workforce.

type WorkforceVpcConfig

type WorkforceVpcConfig struct {
	VpcID            string   `json:"VpcId"`
	VpcEndpointID    string   `json:"VpcEndpointId,omitempty"`
	SecurityGroupIDs []string `json:"SecurityGroupIds,omitempty"`
	Subnets          []string `json:"Subnets,omitempty"`
}

WorkforceVpcConfig describes the VPC a workforce connects through.

type Workteam

type Workteam struct {
	CreateDate                time.Time                  `json:"CreateDate"`
	LastUpdatedDate           time.Time                  `json:"LastUpdatedDate"`
	Tags                      map[string]string          `json:"-"`
	NotificationConfiguration *NotificationConfiguration `json:"NotificationConfiguration,omitempty"`
	WorkerAccessConfiguration *WorkerAccessConfiguration `json:"WorkerAccessConfiguration,omitempty"`
	WorkteamName              string                     `json:"WorkteamName"`
	WorkteamArn               string                     `json:"WorkteamArn"`
	WorkforceArn              string                     `json:"WorkforceArn,omitempty"`
	Description               string                     `json:"Description,omitempty"`
	SubDomain                 string                     `json:"SubDomain,omitempty"`
	MemberDefinitions         []MemberDefinition         `json:"MemberDefinitions,omitempty"`
}

Workteam represents a SageMaker Ground Truth workteam.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL