CDK Global · Arazzo Workflow

CDK Global Inspect Available Slot

Version 1.0.0

List a store's open slots and pull the full detail of the first slot.

1 workflow 1 source API 1 provider
View Spec View on GitHub AutomotiveDealer ManagementDMSAuto RetailF&IFixed OperationsPartsCRMDigital RetailMarketplaceDeveloper PlatformEventsWebhooksAsyncAPIArazzoWorkflows

Provider

cdk-global

Workflows

inspect-available-slot
Resolve a store's first open slot and fetch its full detail.
Queries the open appointment slots for a store in a booking session and reads back the full detail of the first available slot.
2 steps inputs: authorization, bookingSessionId, requestId, storeId, subscriptionId outputs: dateTime, slotId
1
listSlots
queryBookingSessionsAvailableStoreSlots
Query the open appointment slots for the store and take the first slot returned.
2
readSlot
queryBookingSessionsAvailableSlot
Read the full detail of the resolved slot, including its date/time and transportation offer.

Source API Descriptions

Arazzo Workflow Specification

cdk-global-inspect-available-slot-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: CDK Global Inspect Available Slot
  summary: List a store's open slots and pull the full detail of the first slot.
  description: >-
    Drills into the appointment availability for a single store inside an
    existing booking session. The workflow lists the open slots for the store,
    takes the first slot, and reads that slot's full detail including its
    date/time and transportation offer. 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: bookingSessionsApi
  url: ../openapi/fortellis-user-service-openapi.yml
  type: openapi
workflows:
- workflowId: inspect-available-slot
  summary: Resolve a store's first open slot and fetch its full detail.
  description: >-
    Queries the open appointment slots for a store in a booking session and
    reads back the full detail of the first available slot.
  inputs:
    type: object
    required:
    - subscriptionId
    - requestId
    - authorization
    - bookingSessionId
    - storeId
    properties:
      subscriptionId:
        type: string
        description: The Fortellis Marketplace subscription identifier.
      requestId:
        type: string
        description: A correlation ID echoed back across systems.
      authorization:
        type: string
        description: The Fortellis OAuth 2.0 bearer token (or Basic auth on the simulator).
      bookingSessionId:
        type: string
        description: The identifier of the booking session.
      storeId:
        type: string
        description: The identifier of the store to inspect slots for.
  steps:
  - stepId: listSlots
    description: >-
      Query the open appointment slots for the store and take the first slot
      returned.
    operationId: queryBookingSessionsAvailableStoreSlots
    parameters:
    - name: bookingSessionId
      in: path
      value: $inputs.bookingSessionId
    - name: storeId
      in: path
      value: $inputs.storeId
    - name: Request-Id
      in: header
      value: $inputs.requestId
    - name: Subscription-Id
      in: header
      value: $inputs.subscriptionId
    - name: Authorization
      in: header
      value: $inputs.authorization
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      slotId: $response.body#/0/slotId
  - stepId: readSlot
    description: >-
      Read the full detail of the resolved slot, including its date/time and
      transportation offer.
    operationId: queryBookingSessionsAvailableSlot
    parameters:
    - name: bookingSessionId
      in: path
      value: $inputs.bookingSessionId
    - name: storeId
      in: path
      value: $inputs.storeId
    - name: slotId
      in: path
      value: $steps.listSlots.outputs.slotId
    - name: Request-Id
      in: header
      value: $inputs.requestId
    - name: Subscription-Id
      in: header
      value: $inputs.subscriptionId
    - name: Authorization
      in: header
      value: $inputs.authorization
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      slotId: $response.body#/0/slotId
      dateTime: $response.body#/0/dateTime
  outputs:
    slotId: $steps.readSlot.outputs.slotId
    dateTime: $steps.readSlot.outputs.dateTime