1. Campaign
PlusVibe.ai
  • PlusVibe.ai API Documentation
  • Workspace Deep Link Parameter
  • Workspace
    • Get workspaces
      GET
    • Add a new workspace
      POST
  • Campaign
    • Create a new campaign
      POST
    • Create a new subsequence
      POST
    • List campaigns (deprecated)
      GET
    • List all campaigns
      GET
    • Get campaign name
      GET
    • Get campaign status
      GET
    • Get campaign email accounts
      GET
    • Get campaign emails
      GET
    • Set campaign name
      POST
    • Set campaign Schedules (deprecated)
      POST
    • Activate campaign
      POST
    • Pause campaign
      POST
    • Update Campaign
      PATCH
    • Delete or archive a campaign
      DELETE
  • Lead
    • Add leads to a campaign
      POST
    • Add leads to a subsequence campaign
      POST
    • Get or search for lead
      GET
    • Delete leads from a campaign
      POST
    • Lead Variable/Label Update or Add
      POST
    • Fetch workspace leads
      GET
    • Update the status of a lead
      POST
    • Get lead counts by status
      GET
  • Email Account
    • List all email accounts in the workspace
    • Get email account status
    • Check account vitals
    • Enable Email account warmup
    • Pause Email account warmup
    • Delete Email account
    • Get Warmup Stats (Individual Account)
    • Get Warmup Stats (Workspace-Level)
    • Bulk Add SMTP Accounts
    • Bulk Update Email Accounts
    • Bulk Update Email Account Warmup Status
    • Bulk Assign/Remove Tags from Email Accounts
    • Bulk reconnect email accounts
  • Analytics
    • Get campaign summary
    • Get campaign count (deprecated)
    • Get campaign stats
    • Get all campaigns statistics
  • Unibox
    • Get emails
    • Get emails in Others folder
    • Get count of unread emails
    • Reply to an email
    • Forward an existing email
    • Compose New Email
    • Mark Email Read
    • Save Email as Draft
    • Delete an Entire Email Thread
    • Delete a Single Email Message
  • Blocklist
    • Get entries in the blocklist
    • Adds entries to the blocklist
    • Delete entries in the blocklist
  • Webhook
    • PlusVibe Webhook Overview
    • Sample Payload - FIRST_EMAIL_REPLIES, ALL_EMAIL_REPLIES, ALL_POSITIVE_REPLIES
    • Sample Payload - LEAD_MARKED_AS_INTERESTED
    • Sample Payload - EMAIL_SENT
    • Sample Payload - BOUNCED_EMAIL
    • Add a new webhook
    • List webhooks
    • Delete webhook(s)
  • Tags
    • List Tags
    • Create a New Tag
    • Update an Existing Tag
    • Delete Multiple Tags
  • Client Access
    • Create client
    • Edit client
    • Update client status
    • List clients
    • Delete client
  • Email Placement Test
    • Parent Recurring Test
      • Create a new parent test (recurring test)
      • Update a parent test
      • List all parent tests
      • Get parent test details
      • Delete parent test(s)
      • Duplicate a parent test
    • Child (Test Run) Test
      • List child (Test Run) tests
      • Get child test details
    • Results & Analytics
      • Get test summary
      • Get detailed test statistics
      • Get test result for a sender account
    • Get recipient providers
  • For Email Infra Provider Partner
    • List workspaces
    • List all email accounts in the workspace
    • Initiate Google OAuth login flow
    • Initiate Microsoft OAuth login flow
    • Bulk Add SMTP Accounts (via Username and Password)
  • Schemas
    • Schemas
      • EmailAccountId
      • ScheduleV2
      • DeleteCampaignRequest
      • ObjectId
      • SequenceStep
      • WarmupStatus
      • BulkReconnectRequest
      • TagAction
      • HexColor
      • CreateTagRequest
      • BulkTagAssignmentRequest
      • BulkUpdateWarmupRequest
      • Variation
      • Campaign
      • UpdateTagRequest
      • DeleteTagsRequest
    • ClientWorkspacePermission
    • ParentTest
    • CreateClientRequest
    • ParentTestDetail
    • CreateClientResponse
    • ChildTest
    • ChildTestDetail
    • UpdateClientRequest
    • SuccessResponse
    • ClientListItem
    • ErrorResponse
    • PatchClientStatusRequest
    • GenericSuccessResponse
  1. Campaign

Update Campaign

PATCH
https://api.plusvibe.ai/api/v1/campaign/update/campaign
This is a PATCH endpoint to update an existing campaign.
Only the fields explicitly provided in the request body will be updated.
Any fields not included will retain their existing values.
This allows for partial updates without affecting other campaign data.

Request

Authorization
API Key
Add parameter in header
x-api-key
Example:
x-api-key: ********************
or
Header Params

Body Params application/json

Examples

Responses

🟢200OK
application/json
Campaign updated successfully
Body

🟠400Bad Request
🟠401Unauthorized
🟠404Record Not Found
🔴500Server Error
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PATCH 'https://api.plusvibe.ai/api/v1/campaign/update/campaign' \
--header 'x-api-key: <api-key>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "workspace_id": "68626ec969bf94f59f8c5c9d",
    "campaign_id": "68626ec969bf94f59f8c5c9e",
    "camp_name": "New Campaign Name",
    "status": "PAUSED",
    "schedules": [
        {
            "daily_limit": 1000,
            "daily_limit_new_lead": 500,
            "start_date": "2025-08-10",
            "end_date": "",
            "days": {
                "1": true,
                "2": true,
                "3": true,
                "4": true,
                "5": true
            },
            "timezone": "Asia/Hong_Kong",
            "timing": {
                "from": "09:00",
                "to": "18:00"
            }
        }
    ],
    "sequences": [
        {
            "step": 1,
            "wait_time": 1,
            "variations": [
                {
                    "variation": "A",
                    "subject": "this is step 1A Subject",
                    "name": "",
                    "body": "<div>this is step 1A body</div>"
                },
                {
                    "variation": "B",
                    "subject": "this is step 1B Subject",
                    "name": "",
                    "body": "<div>this is step 1B body</div>"
                }
            ]
        },
        {
            "step": 2,
            "wait_time": 1,
            "variations": [
                {
                    "variation": "A",
                    "subject": "",
                    "name": "",
                    "body": "<div>this is step 2A body</div>"
                }
            ]
        }
    ],
    "first_wait_time": 60,
    "email_accounts": [
        "68626ec969bf94f59f8c5c5e",
        "68626ec969bf94f59f8c5c2e"
    ],
    "send_priority": 1,
    "ignore_mailbox_limit": 0,
    "bounce_rate_limit": 5,
    "opportunity_val": 1000,
    "template_id": "68626ec969bf94f59f8c5c3e",
    "unlink_template": "no",
    "stop_on_lead_replied": "yes",
    "is_emailopened_tracking": "yes",
    "is_unsubscribed_link": "no",
    "send_as_txt": "no",
    "exclude_ooo": "yes",
    "is_acc_based_sending": "no",
    "is_pause_on_bouncerate": "yes",
    "send_risky_email": "no",
    "unsub_blocklist": "no",
    "other_email_acc": "no",
    "is_esp_match": "yes",
    "var_sel_type": "R_ROBIN",
    "disable_variations": {
        "step": 1,
        "variation": "A",
        "is_active": "no"
    }
}'
Response Response Example
{
    "id": "string",
    "workspace_id": "string",
    "camp_name": "string",
    "status": "string",
    "updated_at": "2019-08-24T14:15:22.123Z"
}
Modified at 2026-03-13 11:24:31
Previous
Pause campaign
Next
Delete or archive a campaign
Built with