Amazon Clean Rooms Clean Rooms Protectedjobs API
The Clean Rooms Protectedjobs API from Amazon Clean Rooms — 2 operation(s) for clean rooms protectedjobs.
The Clean Rooms Protectedjobs API from Amazon Clean Rooms — 2 operation(s) for clean rooms protectedjobs.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/amazon-clean-rooms:amazon-clean-rooms-protectedjobs-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.1.0
info:
title: AWS Clean Rooms Service Protectedjobs API
version: '2022-02-17'
description: Generated from AWS's published Smithy model for AWS Clean Rooms Service. 4 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://cleanrooms.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
paths:
/memberships/{membershipIdentifier}/protectedJobs/{protectedJobIdentifier}:
get:
operationId: GetProtectedJob
summary: Get Protected Job
description: Returns job processing metadata.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetProtectedJobOutput'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetProtectedJobInput'
tags:
- Protectedjobs
patch:
operationId: UpdateProtectedJob
summary: Update Protected Job
description: Updates the processing of a currently running job.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateProtectedJobOutput'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateProtectedJobInput'
tags:
- Protectedjobs
/memberships/{membershipIdentifier}/protectedJobs:
get:
operationId: ListProtectedJobs
summary: List Protected Jobs
description: Lists protected jobs, sorted by most recent job.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListProtectedJobsOutput'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListProtectedJobsInput'
tags:
- Protectedjobs
post:
operationId: StartProtectedJob
summary: Start Protected Job
description: Creates a protected job that is started by Clean Rooms.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/StartProtectedJobOutput'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'402':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StartProtectedJobInput'
tags:
- Protectedjobs
components:
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: cleanrooms
schemas:
AccessDeniedException:
type: object
properties:
message:
type: string
reason:
type: string
description: A reason code for the exception.
BilledJobResourceUtilization:
type: object
properties:
units:
type: number
description: The number of Clean Rooms Processing Unit (CRPU) hours that have been billed.
required:
- units
ConflictException:
type: object
properties:
message:
type: string
resourceId:
type: string
description: The ID of the conflicting resource.
resourceType:
type: string
description: The type of the conflicting resource.
reason:
type: string
description: A reason code for the exception.
GetProtectedJobInput:
type: object
properties:
membershipIdentifier:
type: string
description: The identifier for a membership in a protected job instance.
protectedJobIdentifier:
type: string
description: The identifier for the protected job instance.
required:
- membershipIdentifier
- protectedJobIdentifier
GetProtectedJobOutput:
type: object
properties:
protectedJob:
$ref: '#/components/schemas/ProtectedJob'
required:
- protectedJob
InternalServerException:
type: object
properties:
message:
type: string
ListProtectedJobsInput:
type: object
properties:
membershipIdentifier:
type: string
description: The identifier for the membership in the collaboration.
status:
type: string
enum:
- SUBMITTED
- STARTED
- CANCELLED
- CANCELLING
- FAILED
- SUCCESS
description: A filter on the status of the protected job.
nextToken:
type: string
description: The pagination token that's used to fetch the next set of results.
maxResults:
type: integer
description: The maximum number of results that are returned for an API request call. The service chooses a default
number if you don't set one. The service might return a `nextToken` even if the `maxResults` value has not been
met.
required:
- membershipIdentifier
ListProtectedJobsOutput:
type: object
properties:
nextToken:
type: string
description: The pagination token that's used to fetch the next set of results.
protectedJobs:
type: array
items:
$ref: '#/components/schemas/ProtectedJobSummary'
description: A list of protected job summaries.
required:
- protectedJobs
ProtectedJob:
type: object
properties:
id:
type: string
description: The identifier for a protected job instance.
membershipId:
type: string
description: he identifier for the membership.
membershipArn:
type: string
description: The ARN of the membership.
createTime:
type: string
description: The creation time of the protected job.
jobParameters:
$ref: '#/components/schemas/ProtectedJobParameters'
status:
type: string
enum:
- SUBMITTED
- STARTED
- CANCELLED
- CANCELLING
- FAILED
- SUCCESS
description: The status of the protected job.
resultConfiguration:
$ref: '#/components/schemas/ProtectedJobResultConfigurationOutput'
statistics:
$ref: '#/components/schemas/ProtectedJobStatistics'
result:
$ref: '#/components/schemas/ProtectedJobResult'
error:
$ref: '#/components/schemas/ProtectedJobError'
computeConfiguration:
$ref: '#/components/schemas/ProtectedJobComputeConfiguration'
jobComputePayerAccountId:
type: string
description: The account ID of the member that pays for the job compute costs.
required:
- id
- membershipId
- membershipArn
- createTime
- status
ProtectedJobComputeConfiguration:
type: object
properties:
worker:
$ref: '#/components/schemas/ProtectedJobWorkerComputeConfiguration'
description: Exactly one member is set.
ProtectedJobConfigurationDetails:
type: object
properties:
directAnalysisConfigurationDetails:
$ref: '#/components/schemas/ProtectedJobDirectAnalysisConfigurationDetails'
description: Exactly one member is set.
ProtectedJobDirectAnalysisConfigurationDetails:
type: object
properties:
receiverAccountIds:
type: array
items:
type: string
description: The receiver account IDs.
ProtectedJobError:
type: object
properties:
message:
type: string
description: The message for the protected job error.
code:
type: string
description: The error code for the protected job.
required:
- message
- code
ProtectedJobMemberOutputConfigurationInput:
type: object
properties:
accountId:
type: string
description: The account ID.
required:
- accountId
ProtectedJobMemberOutputConfigurationOutput:
type: object
properties:
accountId:
type: string
description: The account ID.
required:
- accountId
ProtectedJobOutput:
type: object
properties:
s3:
$ref: '#/components/schemas/ProtectedJobS3Output'
memberList:
type: array
items:
$ref: '#/components/schemas/ProtectedJobSingleMemberOutput'
description: The list of member Amazon Web Services account(s) that received the results of the job.
description: Exactly one member is set.
ProtectedJobOutputConfigurationInput:
type: object
properties:
member:
$ref: '#/components/schemas/ProtectedJobMemberOutputConfigurationInput'
description: Exactly one member is set.
ProtectedJobOutputConfigurationOutput:
type: object
properties:
s3:
$ref: '#/components/schemas/ProtectedJobS3OutputConfigurationOutput'
member:
$ref: '#/components/schemas/ProtectedJobMemberOutputConfigurationOutput'
description: Exactly one member is set.
ProtectedJobParameters:
type: object
properties:
analysisTemplateArn:
type: string
description: The ARN of the analysis template.
parameters:
type: object
additionalProperties:
type: string
description: Runtime configuration values passed to the PySpark analysis script. Parameter names and types must
match those defined in the analysis template.
required:
- analysisTemplateArn
ProtectedJobReceiverConfiguration:
type: object
properties:
analysisType:
type: string
enum:
- DIRECT_ANALYSIS
description: The analysis type for the protected job receiver configuration.
configurationDetails:
$ref: '#/components/schemas/ProtectedJobConfigurationDetails'
required:
- analysisType
ProtectedJobResult:
type: object
properties:
output:
$ref: '#/components/schemas/ProtectedJobOutput'
required:
- output
ProtectedJobResultConfigurationInput:
type: object
properties:
outputConfiguration:
$ref: '#/components/schemas/ProtectedJobOutputConfigurationInput'
required:
- outputConfiguration
ProtectedJobResultConfigurationOutput:
type: object
properties:
outputConfiguration:
$ref: '#/components/schemas/ProtectedJobOutputConfigurationOutput'
required:
- outputConfiguration
ProtectedJobS3Output:
type: object
properties:
location:
type: string
description: The S3 location for the protected job output.
required:
- location
ProtectedJobS3OutputConfigurationOutput:
type: object
properties:
bucket:
type: string
description: The S3 bucket for job output.
keyPrefix:
type: string
description: The S3 prefix to unload the protected job results.
required:
- bucket
ProtectedJobSingleMemberOutput:
type: object
properties:
accountId:
type: string
description: The Amazon Web Services account ID of the member in the collaboration who can receive results from
analyses.
required:
- accountId
ProtectedJobStatistics:
type: object
properties:
totalDurationInMillis:
type: integer
description: The duration of the protected job, from creation until job completion, in milliseconds.
billedResourceUtilization:
$ref: '#/components/schemas/BilledJobResourceUtilization'
ProtectedJobSummary:
type: object
properties:
id:
type: string
description: The ID of the protected job.
membershipId:
type: string
description: The unique ID for the membership that initiated the protected job.
membershipArn:
type: string
description: The unique ARN for the membership that initiated the protected job.
createTime:
type: string
description: The time the protected job was created.
status:
type: string
enum:
- SUBMITTED
- STARTED
- CANCELLED
- CANCELLING
- FAILED
- SUCCESS
description: The status of the protected job.
receiverConfigurations:
type: array
items:
$ref: '#/components/schemas/ProtectedJobReceiverConfiguration'
description: The receiver configurations for the protected job.
jobComputePayerAccountId:
type: string
description: The account ID of the member that pays for the job compute costs.
required:
- id
- membershipId
- membershipArn
- createTime
- status
- receiverConfigurations
ProtectedJobWorkerComputeConfiguration:
type: object
properties:
type:
type: string
enum:
- CR.1X
- CR.4X
description: The worker compute configuration type.
number:
type: integer
description: The number of workers for a PySpark job.
properties:
$ref: '#/components/schemas/WorkerComputeConfigurationProperties'
required:
- type
- number
ResourceNotFoundException:
type: object
properties:
message:
type: string
resourceId:
type: string
description: The Id of the missing resource.
resourceType:
type: string
description: The type of the missing resource.
required:
- message
- resourceId
- resourceType
ServiceQuotaExceededException:
type: object
properties:
message:
type: string
quotaName:
type: string
description: The name of the quota.
quotaValue:
type: number
description: The value of the quota.
required:
- message
- quotaName
- quotaValue
StartProtectedJobInput:
type: object
properties:
type:
type: string
enum:
- PYSPARK
description: The type of protected job to start.
membershipIdentifier:
type: string
description: A unique identifier for the membership to run this job against. Currently accepts a membership ID.
jobParameters:
$ref: '#/components/schemas/ProtectedJobParameters'
resultConfiguration:
$ref: '#/components/schemas/ProtectedJobResultConfigurationInput'
computeConfiguration:
$ref: '#/components/schemas/ProtectedJobComputeConfiguration'
jobComputePayerAccountId:
type: string
description: The account ID of the member that pays for the job compute costs.
required:
- type
- membershipIdentifier
- jobParameters
StartProtectedJobOutput:
type: object
properties:
protectedJob:
$ref: '#/components/schemas/ProtectedJob'
required:
- protectedJob
ThrottlingException:
type: object
properties:
message:
type: string
UpdateProtectedJobInput:
type: object
properties:
membershipIdentifier:
type: string
description: The identifier for a member of a protected job instance.
protectedJobIdentifier:
type: string
description: The identifier of the protected job to update.
targetStatus:
type: string
enum:
- CANCELLED
description: The target status of a protected job. Used to update the execution status of a currently running job.
required:
- membershipIdentifier
- protectedJobIdentifier
- targetStatus
UpdateProtectedJobOutput:
type: object
properties:
protectedJob:
$ref: '#/components/schemas/ProtectedJob'
required:
- protectedJob
ValidationException:
type: object
properties:
message:
type: string
reason:
type: string
description: A reason code for the exception.
fieldList:
type: array
items:
$ref: '#/components/schemas/ValidationExceptionField'
description: Validation errors for specific input parameters.
ValidationExceptionField:
type: object
properties:
name:
type: string
description: The name of the input parameter.
message:
type: string
description: A message for the input validation error.
required:
- name
- message
WorkerComputeConfigurationProperties:
type: object
properties:
spark:
type: object
additionalProperties:
type: string
description: The Spark configuration properties for SQL and PySpark workloads. This map contains key-value pairs
that configure Apache Spark settings to optimize performance for your data processing jobs. You can specify up
to 50 Spark properties, with each key being 1-200 characters and each value being 0-500 characters. These properties
allow you to adjust compute capacity for large datasets and complex workloads.
description: Exactly one member is set.
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/cleanrooms/service/2022-02-17/cleanrooms-2022-02-17.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)