eavz

Input Partials

Manage saved parameter presets for actions and triggers.

Input Partials

Input partials are saved parameter configurations (presets) scoped to a workspace and integration. They store default values and enforced keys that merge into action and trigger inputs at execution time.

Create Partial

POST/api/v1/partials

Create a new input partial.

Request Body

FieldTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace to scope this partial to
integrationNamestringYesIntegration name (e.g., slack, github)
actionNamestringNoAction name. Null means integration-wide (applies to all actions)
namestringYesDisplay name (max 100 chars)
descriptionstringNoDescription (max 500 chars)
valuesobjectYesKey-value pairs to pre-fill
enforcedKeysstring[]NoKeys whose values cannot be overridden at runtime
isDefaultbooleanNoWhether this partial auto-applies when no partialIds are specified (default: false)

Response (201)

json
{
  "partial": {
    "id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
    "orgId": "org_abc123",
    "workspaceId": "proj_abc123",
    "integrationName": "slack",
    "actionName": "send_channel_message",
    "name": "General Channel Preset",
    "description": "Always post to #general",
    "values": { "channel": "C01ABCDEF" },
    "enforcedKeys": ["channel"],
    "isDefault": false,
    "createdAt": "2025-01-15T10:00:00.000Z",
    "updatedAt": "2025-01-15T10:00:00.000Z"
  }
}

Example

bash
curl -X POST https://api.weavz.io/api/v1/partials \
  -H "Authorization: Bearer wvz_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "workspaceId": "proj_abc123",
    "integrationName": "slack",
    "actionName": "send_channel_message",
    "name": "General Channel Preset",
    "values": { "channel": "C01ABCDEF" },
    "enforcedKeys": ["channel"]
  }'

Errors

StatusCodeDescription
400VALIDATION_ERRORMissing required fields or invalid data
409DUPLICATEA partial with this name already exists in the same scope

List Partials

GET/api/v1/partials

List input partials for a workspace, optionally filtered by integration or action.

Query Parameters

FieldTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID to list partials for
integrationNamestringNoFilter by integration name
actionNamestringNoFilter by action name

Response

json
{
  "partials": [
    {
      "id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
      "orgId": "org_abc123",
      "workspaceId": "proj_abc123",
      "integrationName": "slack",
      "actionName": "send_channel_message",
      "name": "General Channel Preset",
      "description": null,
      "values": { "channel": "C01ABCDEF" },
      "enforcedKeys": ["channel"],
      "isDefault": false,
      "createdAt": "2025-01-15T10:00:00.000Z",
      "updatedAt": "2025-01-15T10:00:00.000Z"
    }
  ],
  "total": 1
}

Example

bash
curl "https://api.weavz.io/api/v1/partials?workspaceId=proj_abc123&integrationName=slack" \
  -H "Authorization: Bearer wvz_your_api_key"

Get Partial

GET/api/v1/partials/:id

Get a single input partial by ID.

Path Parameters

FieldTypeDescription
idstring (uuid)Partial ID

Example

bash
curl https://api.weavz.io/api/v1/partials/a1b2c3d4-5678-90ab-cdef-1234567890ab \
  -H "Authorization: Bearer wvz_your_api_key"

Errors

StatusCodeDescription
404NOT_FOUNDPartial not found

Update Partial

PATCH/api/v1/partials/:id

Update an existing input partial.

Path Parameters

FieldTypeDescription
idstring (uuid)Partial ID

Request Body

FieldTypeRequiredDescription
namestringNoNew display name
descriptionstringNoNew description
valuesobjectNoNew values (replaces existing)
enforcedKeysstring[]NoNew enforced keys (replaces existing)
isDefaultbooleanNoSet as default partial

Example

bash
curl -X PATCH https://api.weavz.io/api/v1/partials/a1b2c3d4-5678-90ab-cdef-1234567890ab \
  -H "Authorization: Bearer wvz_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "values": { "channel": "C01ABCDEF", "username": "weavz-bot" },
    "enforcedKeys": ["channel", "username"]
  }'

Errors

StatusCodeDescription
400VALIDATION_ERRORNo updates provided or invalid data
404NOT_FOUNDPartial not found
409DUPLICATEA partial with this name already exists

Delete Partial

DELETE/api/v1/partials/:id

Delete an input partial. Any MCP server tools referencing this partial in their partialIds arrays are automatically cleaned up.

Path Parameters

FieldTypeDescription
idstring (uuid)Partial ID

Response

json
{
  "deleted": true,
  "id": "a1b2c3d4-5678-90ab-cdef-1234567890ab"
}

Example

bash
curl -X DELETE https://api.weavz.io/api/v1/partials/a1b2c3d4-5678-90ab-cdef-1234567890ab \
  -H "Authorization: Bearer wvz_your_api_key"

Errors

StatusCodeDescription
404NOT_FOUNDPartial not found

Set Default

POST/api/v1/partials/:id/set-default

Set or unset a partial as the default for its scope. Default partials auto-apply when no explicit partialIds are provided during action execution.

Path Parameters

FieldTypeDescription
idstring (uuid)Partial ID

Request Body

FieldTypeRequiredDescription
isDefaultbooleanYesWhether this partial should be the default

Example

bash
curl -X POST https://api.weavz.io/api/v1/partials/a1b2c3d4-5678-90ab-cdef-1234567890ab/set-default \
  -H "Authorization: Bearer wvz_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"isDefault": true}'

Errors

StatusCodeDescription
404NOT_FOUNDPartial not found