Vercel · Arazzo Workflow

Vercel v0 Resume And Refine Chat

Version 1.0.0

Fetch an existing chat to confirm it exists, then continue it with a refinement.

1 workflow 1 source API 1 provider
View Spec View on GitHub AI GatewaysGatewaysObservabilityWebhooksArazzoWorkflows

Provider

vercel

Workflows

resumeAndRefineChat
Confirm an existing v0 chat, then continue it with a refinement message.
Reads an existing chat by id to verify it resolves, then applies a refinement instruction and returns the updated preview URL and files.
2 steps inputs: apiKey, chatId, refinement outputs: files, previewUrl
1
getChat
getChat
Read the existing chat to confirm it resolves before refining it.
2
refineChat
continueChat
Continue the confirmed chat with the supplied refinement instruction.

Source API Descriptions

Arazzo Workflow Specification

vercel-resume-and-refine-chat-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Vercel v0 Resume And Refine Chat
  summary: Fetch an existing chat to confirm it exists, then continue it with a refinement.
  description: >-
    A safe resume flow for the v0 Platform API. Before sending a follow-up
    instruction the workflow first reads the target chat to confirm it exists and
    capture its current preview, and only then continues the session with a
    refinement. This avoids posting a refinement against a missing or stale chat.
    Each step inlines its request and documents the success status.
  version: 1.0.0
sourceDescriptions:
- name: v0PlatformApi
  url: ../openapi/vercel-v0-platform-openapi.yml
  type: openapi
workflows:
- workflowId: resumeAndRefineChat
  summary: Confirm an existing v0 chat, then continue it with a refinement message.
  description: >-
    Reads an existing chat by id to verify it resolves, then applies a refinement
    instruction and returns the updated preview URL and files.
  inputs:
    type: object
    required:
    - apiKey
    - chatId
    - refinement
    properties:
      apiKey:
        type: string
        description: v0 API key (V0_API_KEY) used as a Bearer token.
      chatId:
        type: string
        description: The existing v0 chat session id to resume.
      refinement:
        type: string
        description: Follow-up instruction used to refine the generated app.
  steps:
  - stepId: getChat
    description: Read the existing chat to confirm it resolves before refining it.
    operationId: getChat
    parameters:
    - name: chatId
      in: path
      value: $inputs.chatId
    - name: Authorization
      in: header
      value: Bearer $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      previewUrl: $response.body#/previewUrl
      title: $response.body#/title
  - stepId: refineChat
    description: Continue the confirmed chat with the supplied refinement instruction.
    operationId: continueChat
    parameters:
    - name: chatId
      in: path
      value: $inputs.chatId
    - name: Authorization
      in: header
      value: Bearer $inputs.apiKey
    requestBody:
      contentType: application/json
      payload:
        message: $inputs.refinement
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      previewUrl: $response.body#/previewUrl
      files: $response.body#/files
      updatedAt: $response.body#/updatedAt
  outputs:
    previewUrl: $steps.refineChat.outputs.previewUrl
    files: $steps.refineChat.outputs.files