Amazon Security Lake · Arazzo Workflow

Amazon Security Lake Provision Data Lake

Version 1.0.0

Create a Security Lake data lake, confirm it is listed, and inspect its collecting sources.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub Data LakeSecuritySIEMThreat DetectionArazzoWorkflows

Provider

amazon-security-lake

Workflows

provision-data-lake
Create a data lake in a region and verify it is registered and collecting sources.
Creates a Security Lake data lake, lists data lakes to confirm registration and capture the ARN, branches on the reported status, and reads back the sources the lake is collecting.
3 steps inputs: accounts, expirationDays, kmsKeyId, metaStoreManagerRoleArn, region outputs: dataLakeArn, dataLakeSources, status
1
createDataLake
Create the data lake in the target region with the supplied encryption, lifecycle, and metadata store manager configuration.
2
listDataLakes
List the data lakes in the account and region to confirm the newly created lake is registered and to capture its current status.
3
getSources
Retrieve a snapshot of which sources the data lake is collecting security data from for the supplied accounts.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Amazon Security Lake Provision Data Lake
  summary: Create a Security Lake data lake, confirm it is listed, and inspect its collecting sources.
  description: >-
    Stands up a new Amazon Security Lake data lake in a target region and then
    verifies it is operational. The workflow creates the data lake with an
    encryption and lifecycle configuration, lists the account's data lakes to
    confirm the new lake is registered and capture its ARN and status, branches
    on whether the lake reports a terminal status, and finally retrieves a
    snapshot of the sources the lake is collecting data from. Every step spells
    out its request inline so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: dataLakesApi
  url: ../openapi/amazon-security-lake-data-lakes-api-openapi.yml
  type: openapi
- name: logSourcesApi
  url: ../openapi/amazon-security-lake-log-sources-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-data-lake
  summary: Create a data lake in a region and verify it is registered and collecting sources.
  description: >-
    Creates a Security Lake data lake, lists data lakes to confirm registration
    and capture the ARN, branches on the reported status, and reads back the
    sources the lake is collecting.
  inputs:
    type: object
    required:
    - region
    - metaStoreManagerRoleArn
    properties:
      region:
        type: string
        description: The AWS region in which to configure the data lake (e.g. us-east-1).
      metaStoreManagerRoleArn:
        type: string
        description: The ARN of the IAM role for the metadata store manager.
      kmsKeyId:
        type: string
        description: The KMS key ID used to encrypt data at rest in the data lake.
      expirationDays:
        type: integer
        description: Number of days after which collected data expires.
      accounts:
        type: array
        description: AWS account IDs to retrieve collecting sources for.
        items:
          type: string
  steps:
  - stepId: createDataLake
    description: >-
      Create the data lake in the target region with the supplied encryption,
      lifecycle, and metadata store manager configuration.
    operationId: CreateDataLake
    requestBody:
      contentType: application/json
      payload:
        configurations:
        - region: $inputs.region
          encryptionConfiguration:
            kmsKeyId: $inputs.kmsKeyId
          lifecycleConfiguration:
            expiration:
              days: $inputs.expirationDays
        metaStoreManagerRoleArn: $inputs.metaStoreManagerRoleArn
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      dataLakeArn: $response.body#/dataLakes/0/dataLakeArn
      status: $response.body#/dataLakes/0/status
  - stepId: listDataLakes
    description: >-
      List the data lakes in the account and region to confirm the newly
      created lake is registered and to capture its current status.
    operationId: ListDataLakes
    parameters:
    - name: regions
      in: query
      value: $inputs.region
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      dataLakeArn: $response.body#/dataLakes/0/dataLakeArn
      status: $response.body#/dataLakes/0/status
    onSuccess:
    - name: lakeReady
      type: goto
      stepId: getSources
      criteria:
      - context: $response.body
        condition: $.dataLakes[0].status == "COMPLETED"
        type: jsonpath
    - name: lakeInitializing
      type: goto
      stepId: getSources
      criteria:
      - context: $response.body
        condition: $.dataLakes[0].status == "INITIALIZED"
        type: jsonpath
  - stepId: getSources
    description: >-
      Retrieve a snapshot of which sources the data lake is collecting security
      data from for the supplied accounts.
    operationId: GetDataLakeSources
    requestBody:
      contentType: application/json
      payload:
        accounts: $inputs.accounts
        maxResults: 25
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      dataLakeSources: $response.body#/dataLakeSources
      nextToken: $response.body#/nextToken
  outputs:
    dataLakeArn: $steps.listDataLakes.outputs.dataLakeArn
    status: $steps.listDataLakes.outputs.status
    dataLakeSources: $steps.getSources.outputs.dataLakeSources

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/amazon-security-lake-provision-data-lake-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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.