Amazon Pinpoint · Arazzo Workflow

Amazon Pinpoint Provision Project

Version 1.0.0

Create a Pinpoint application then verify it appears in the account application list.

1 workflow 1 source API 1 provider
View Spec View on GitHub CampaignsCommunicationsEmailMarketingMessagingPush NotificationsSMSVoiceCustomer EngagementSegmentationJourneysAnalyticsArazzoWorkflows

Provider

amazon-pinpoint

Workflows

provision-project
Create a Pinpoint application and confirm it is registered in the account.
Creates a new Pinpoint application using the supplied display name and tags, then lists all applications to verify the new project is present.
2 steps inputs: name, tags outputs: applicationArn, applicationId
1
createApp
CreateApp
Create a new Pinpoint application using the supplied display name and optional tags.
2
listApps
GetApps
List all applications in the account to confirm the newly created project is registered.

Source API Descriptions

Arazzo Workflow Specification

amazon-pinpoint-provision-project-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Amazon Pinpoint Provision Project
  summary: Create a Pinpoint application then verify it appears in the account application list.
  description: >-
    Stands up a brand new Amazon Pinpoint application (project) and then confirms
    the project is registered by listing every application associated with the
    account and checking that the newly created application id is present. Each
    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: pinpointApi
  url: ../openapi/amazon-pinpoint-openapi-original.yaml
  type: openapi
workflows:
- workflowId: provision-project
  summary: Create a Pinpoint application and confirm it is registered in the account.
  description: >-
    Creates a new Pinpoint application using the supplied display name and tags,
    then lists all applications to verify the new project is present.
  inputs:
    type: object
    required:
    - name
    properties:
      name:
        type: string
        description: The display name of the application (shown as Project name in the console).
      tags:
        type: object
        description: A string-to-string map of tags to associate with the application.
  steps:
  - stepId: createApp
    description: >-
      Create a new Pinpoint application using the supplied display name and
      optional tags.
    operationId: CreateApp
    requestBody:
      contentType: application/json
      payload:
        CreateApplicationRequest:
          Name: $inputs.name
          tags: $inputs.tags
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      applicationId: $response.body#/ApplicationResponse/Id
      applicationArn: $response.body#/ApplicationResponse/Arn
  - stepId: listApps
    description: >-
      List all applications in the account to confirm the newly created project
      is registered.
    operationId: GetApps
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      applications: $response.body#/ApplicationsResponse/Item
  outputs:
    applicationId: $steps.createApp.outputs.applicationId
    applicationArn: $steps.createApp.outputs.applicationArn