Amazon Location Service · Arazzo Workflow

Amazon Location Service Find or Create Map

Version 1.0.0

Reuse an existing map by name if present, otherwise create it.

1 workflow 1 source API 1 provider
View Spec View on GitHub GeocodingGeofencingLocationMapsRoutingArazzoWorkflows

Provider

amazon-location-service

Workflows

find-or-create-map
Ensure a map with the given name exists, creating it only if missing.
Lists existing maps, and when a map with the supplied name is already present it is described and reused; otherwise a new map is created with the requested style.
3 steps inputs: Description, MapName, Style outputs: createdMapName, mapArn, mapName
1
listMaps
List the map resources in the account so the flow can detect whether the requested map already exists.
2
describeExisting
Describe the already-existing map and return its details for reuse.
3
createMap
Create a new map with the requested name and style because no existing map matched.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Amazon Location Service Find or Create Map
  summary: Reuse an existing map by name if present, otherwise create it.
  description: >-
    An idempotent provisioning pattern for Amazon Location Service map
    resources. The workflow lists the maps in the account, branches on whether a
    map with the requested name already exists, and either describes the
    existing map or creates a new one. 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: mapsApi
  url: ../openapi/amazon-location-service-maps-api-openapi.yml
  type: openapi
workflows:
- workflowId: find-or-create-map
  summary: Ensure a map with the given name exists, creating it only if missing.
  description: >-
    Lists existing maps, and when a map with the supplied name is already
    present it is described and reused; otherwise a new map is created with the
    requested style.
  inputs:
    type: object
    required:
    - MapName
    - Style
    properties:
      MapName:
        type: string
        description: The desired map resource name to find or create.
      Style:
        type: string
        description: The map style to render when a new map must be created.
      Description:
        type: string
        description: Optional description applied only when creating a new map.
  steps:
  - stepId: listMaps
    description: >-
      List the map resources in the account so the flow can detect whether the
      requested map already exists.
    operationId: ListMaps
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      entries: $response.body#/Entries
    onSuccess:
    - name: mapExists
      type: goto
      stepId: describeExisting
      criteria:
      - context: $response.body
        condition: $.Entries[?(@.MapName == '$inputs.MapName')]
        type: jsonpath
    - name: mapMissing
      type: goto
      stepId: createMap
      criteria:
      - context: $response.body
        condition: $.Entries[?(@.MapName == '$inputs.MapName')].length == 0
        type: jsonpath
  - stepId: describeExisting
    description: >-
      Describe the already-existing map and return its details for reuse.
    operationId: DescribeMap
    parameters:
    - name: MapName
      in: path
      value: $inputs.MapName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      mapName: $response.body#/MapName
      mapArn: $response.body#/MapArn
      dataSource: $response.body#/DataSource
    onSuccess:
    - name: reused
      type: end
  - stepId: createMap
    description: >-
      Create a new map with the requested name and style because no existing
      map matched.
    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
  outputs:
    mapName: $steps.describeExisting.outputs.mapName
    createdMapName: $steps.createMap.outputs.mapName
    mapArn: $steps.createMap.outputs.mapArn

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-location-service-find-or-create-map-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.