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