arazzo: 1.0.1 info: title: Amazon Location Service Map Lifecycle Teardown summary: Create, inspect, and delete a map resource in a single guarded flow. description: >- Exercises the full lifecycle of an Amazon Location Service map resource: the workflow creates the map, describes it to confirm provisioning succeeded, and then deletes it to clean up. Useful for ephemeral or test map resources that should not linger in the account. Every step spells out its request inline so the lifecycle can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: locationApi url: ../openapi/amazon-location-service-openapi.yml type: openapi workflows: - workflowId: map-lifecycle summary: Create a map, verify it, then delete it. description: >- Provisions a temporary map resource, confirms it through a describe call, and tears it down with a delete call, returning the resource identifiers that were created and removed. inputs: type: object required: - MapName - Style properties: MapName: type: string description: The name to assign to the temporary map resource. Style: type: string description: The map style to render (e.g. VectorEsriStreets). Description: type: string description: Optional human-readable description for the map resource. steps: - stepId: createMap description: >- Create the temporary map resource using the supplied name and style. operationId: CreateMap requestBody: contentType: application/json payload: MapName: $inputs.MapName Configuration: Style: $inputs.Style Description: $inputs.Description successCriteria: - condition: $statusCode == 200 outputs: mapName: $response.body#/MapName mapArn: $response.body#/MapArn - stepId: describeMap description: >- Describe the created map to confirm provisioning succeeded before tearing it down. operationId: DescribeMap parameters: - name: MapName in: path value: $steps.createMap.outputs.mapName successCriteria: - condition: $statusCode == 200 outputs: mapName: $response.body#/MapName createTime: $response.body#/CreateTime - stepId: deleteMap description: >- Delete the map resource to clean up the account once it has been verified. operationId: DeleteMap parameters: - name: MapName in: path value: $steps.describeMap.outputs.mapName successCriteria: - condition: $statusCode == 200 outputs: deletedMapName: $steps.describeMap.outputs.mapName outputs: mapName: $steps.createMap.outputs.mapName mapArn: $steps.createMap.outputs.mapArn deletedMapName: $steps.deleteMap.outputs.deletedMapName