SignSecure Sign PadSignSecure Sign Pad
Workflows

Validate CSV and queue workflow runs

Returns 202 when all rows validate. Returns 422 with row/column errors without creating a job when validation fails.

POST
/workflows/{workflowId}/bulk-runs/csv

Returns 202 when all rows validate. Returns 422 with row/column errors without creating a job when validation fails.

Authorization

bearerAuth
AuthorizationBearer <token>

API key as Bearer token. Format: signsecure_xxxxxxxx...

In: header

Path Parameters

workflowId*string

The reusable workflow definition ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://api.signpad.signsecure.in/api/v1/workflows/string/bulk-runs/csv" \  -H "Content-Type: application/json" \  -d '{    "workflowVersionId": "string",    "idempotencyKey": "stringst",    "csv": "string"  }'
{
  "accepted": true,
  "job": {
    "id": "string",
    "organizationId": "string",
    "workflowDefinitionId": "string",
    "workflowVersionId": "string",
    "createdById": "string",
    "idempotencyKey": "string",
    "status": "validating",
    "totalRows": 0,
    "processedRows": 0,
    "succeededRows": 0,
    "failedRows": 0,
    "estimatedCredits": 0,
    "startedAt": "2019-08-24T14:15:22Z",
    "completedAt": "2019-08-24T14:15:22Z",
    "cancelledAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z"
  },
  "headers": [
    "string"
  ],
  "rowCount": 0
}
{
  "code": "string",
  "message": "string",
  "details": {},
  "requestId": "req_abc123",
  "timestamp": "2026-03-11T10:30:00.000Z"
}
{
  "accepted": false,
  "rows": [],
  "errors": [
    {
      "rowNumber": 0,
      "column": "string",
      "message": "string"
    }
  ],
  "headers": [
    "string"
  ]
}