{
  "info": {
    "name": "Viral Loops — mcp.ai",
    "description": "REST API for the Viral Loops MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/viral_loops",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "viral_loops_get_campaign_info",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/campaign/info",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "campaign",
            "info"
          ]
        },
        "description": "Return the connected campaign's identity, template, expiration mode and date, points, GDPR, and integration configuration without bulky presentation styling.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_get_campaign_stats",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/campaign/stats",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "campaign",
            "stats"
          ]
        },
        "description": "Return the connected campaign's lead count and total referral count.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_get_participant",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/participant",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "participant"
          ]
        },
        "description": "Return one participant's profile, referral totals, rank, referrer, and reward summaries by email or referral code.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"referral_code\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_list_participant_referrals",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/participant/referrals",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "participant",
            "referrals"
          ]
        },
        "description": "Return one participant's referrals by email or referral code, with explicit offset pagination. The provider's response fields and pagination metadata are preserved as returned.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"limit\": 0,\n  \"offset\": 0,\n  \"referral_code\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_look_up_participants",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/look/up/participants",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "look",
            "up",
            "participants"
          ]
        },
        "description": "Batch lookup exact participant and referrer identifiers, returning matching campaign records with explicit offset pagination.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"offset\": 0,\n  \"referrers\": \"\",\n  \"participants\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_register_participant",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/register/participant",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "register",
            "participant"
          ]
        },
        "description": "Register an email address in the connected campaign, optionally with a referrer and participant metadata. This creates persistent participant data; Viral Loops provides no API operation to delete it.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"consents\": {},\n  \"last_name\": \"\",\n  \"extra_data\": {},\n  \"first_name\": \"\",\n  \"acquired_from\": \"\",\n  \"referral_source\": \"\",\n  \"referrer_referral_code\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_search_participants",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/search/participants",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "search",
            "participants"
          ]
        },
        "description": "Search campaign participants by text, conversion status, and acquisition source, with explicit offset pagination.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"offset\": 0,\n  \"source\": \"\",\n  \"search_term\": \"\",\n  \"conversion_status\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_track_participant_conversion",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/track/participant/conversion",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "track",
            "participant",
            "conversion"
          ]
        },
        "description": "IRREVERSIBLE: Record a conversion event for one registered participant. This operation cannot be undone and may affect conversion counts, campaign automation, and rewards. It is available only for Mil",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"value\": 0,\n  \"referral_code\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "viral_loops_update_participant",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/participant",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "participant"
          ]
        },
        "description": "Update one participant's name, referral or conversion counts, or custom data, identified by email or referral code. Campaign emails and connected integration triggers default to off; when enabled, tho",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"last_name\": \"\",\n  \"extra_data\": {},\n  \"first_name\": \"\",\n  \"send_emails\": false,\n  \"referral_code\": \"\",\n  \"referral_count\": 0,\n  \"conversion_count\": 0,\n  \"trigger_integrations\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}