Input Partials

Manage saved parameter presets for actions and triggers.

Input Partials

Input partials are saved parameter configurations (presets) scoped to a workspace integration alias. 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)
workspaceIntegrationIdstring (uuid)NoConfigured workspace integration instance. Recommended when an integration has multiple aliases
integrationAliasstringNoWorkspace integration alias. Use when workspaceIntegrationId is not provided
actionNamestringNoAction name. Omit for integration-wide or trigger-scoped partials
triggerNamestringNoTrigger name. Omit for integration-wide or action-scoped partials. Mutually exclusive with actionName
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": "550e8400-e29b-41d4-a716-446655440000",
    "integrationName": "slack",
    "workspaceIntegrationId": "8c9b3ef3-1d0b-4d5e-9e91-a5a8b0f4d111",
    "integrationAlias": "slack_bot",
    "actionName": "send_channel_message",
    "triggerName": null,
    "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": "550e8400-e29b-41d4-a716-446655440000",
    "integrationName": "slack",
    "integrationAlias": "slack_bot",
    "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 configured integration alias, action, or trigger.

Query Parameters

FieldTypeRequiredDescription
workspaceIdstring (uuid)YesWorkspace ID to list partials for
integrationNamestringNoFilter by integration name
workspaceIntegrationIdstring (uuid)NoFilter by configured workspace integration instance
integrationAliasstringNoFilter by workspace integration alias. Use either this or workspaceIntegrationId
actionNamestringNoFilter by action name
triggerNamestringNoFilter by trigger name

Response

json
{
  "partials": [
    {
      "id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
      "orgId": "org_abc123",
      "workspaceId": "550e8400-e29b-41d4-a716-446655440000",
      "integrationName": "slack",
      "workspaceIntegrationId": "8c9b3ef3-1d0b-4d5e-9e91-a5a8b0f4d111",
      "integrationAlias": "slack_bot",
      "actionName": "send_channel_message",
      "triggerName": null,
      "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=550e8400-e29b-41d4-a716-446655440000&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 or trigger enablement.

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