{"info":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","description":"<html><head></head><body><h1 id=\"linkedin-api-documentation\">LinkedIn API Documentation</h1>\n<p>Welcome to the LinkedIn API. Let's get started with a quick setup on how to use the API!</p>\n<p><strong>Version:</strong> 1.0.0<br><strong>Last Updated:</strong> May 13, 2025<br><strong>Base URL:</strong> <code>https://api.konnector.ai/social_app/api/v1/third_party</code></p>\n<p>This API provides access to LinkedIn campaign data, user information, and analytics for third-party integrations. Use this API to build custom dashboards, integrate with CRM systems, and automate reporting workflows.</p>\n<h2 id=\"finding-your-api-key\">Finding your API key</h2>\n<p>The first step when using the LinkedIn API is authenticating your requests with an API key.<br>The API key is used to authenticate the incoming requests and map them to your organization.<br>API keys never expire, however they can be deleted/deactivated.</p>\n<h2 id=\"authentication\">Authentication</h2>\n<p>After you have your API key, you will need to provide it in every request that you make to the LinkedIn API.<br>You will need to add the <code>X-API-KEY</code> request header to every request and set your API key as the value.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>X-API-KEY: your_api_key_here\n\n</code></pre><h2 id=\"rate-limits\">Rate Limits</h2>\n<p>LinkedIn API allows a maximum of <code>100</code> requests per minute and <code>5,000</code> requests per day. All requests count towards these limits, regardless of whether they succeed or fail.</p>\n<p>If you exceed the rate limits, you will receive a <code>429 Too Many Requests</code> response with details about when you can retry.</p>\n<h2 id=\"error-handling\">Error Handling</h2>\n<p>All endpoints return a standard error format:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Error occurred\",\n  \"data\": {\n    \"error\": \"Error message details\",\n    \"error_code\": \"INVALID_REQUEST\",\n    \"request_id\": \"req_12345abcde\",\n    \"timestamp\": \"2025-05-09T22:36:05+05:30\"\n  }\n}\n\n</code></pre>\n<h3 id=\"common-error-codes\">Common Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Code</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td>Bad Request - The request was invalid</td>\n</tr>\n<tr>\n<td>401</td>\n<td>Unauthorized - Invalid or missing API key</td>\n</tr>\n<tr>\n<td>404</td>\n<td>Not Found - The requested resource was not found</td>\n</tr>\n<tr>\n<td>500</td>\n<td>Internal Server Error - Something went wrong on the server</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"encrypted-identifiers\">Encrypted Identifiers</h2>\n<p>For security reasons, all IDs used in API requests and responses are encrypted. To get the encrypted identifiers for your organisation's LinkedIn users and campaign routines, use the Get Encrypted Identifiers endpoint.</p>\n<p>Last updated: 2025-05-13 09:06:44</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"LinkedIn API Documentation","slug":"linkedin-api-documentation"}],"owner":"674677","collectionId":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","publishedId":"2sBXcDEfWg","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-04-02T12:12:25.000Z"},"item":[{"name":"Encrypted Identifiers","item":[{"name":"Get Encrypted Identifiers","id":"03ca9c8a-717b-4acb-9ebb-795d5b3eca2e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/encrypted-identifiers","description":"<p>Returns encrypted identifiers for all LinkedIn users and campaign routines in your organisation. These encrypted IDs should be used in subsequent API calls.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["encrypted-identifiers"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"5881a964-c1e2-442d-a6b9-58fb04a6df5e","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"239691f92d6ce47889b1f85ca18dd9330e6209a357caea83","type":"text"}],"url":"https://api.konnector.ai/social_app/api/v1/third_party/encrypted-identifiers"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Encrypted identifiers retrieved successfully\",\n  \"data\": {\n    \"linkedin_users\": [\n      {\n        \"encrypted_id\": \"encrypted_user_id_1\",\n        \"name\": \"John Doe\"\n      },\n      {\n        \"encrypted_id\": \"encrypted_user_id_2\", \n        \"name\": \"Jane Smith\"\n      },\n      {\n        \"encrypted_id\": \"encrypted_user_id_3\",\n        \"name\": \"Mike Johnson\"\n      }\n    ],\n    \"campaign_routines\": [\n      {\n        \"encrypted_id\": \"encrypted_campaign_id_1\",\n        \"name\": \"Q2 Sales Outreach\",\n        \"campaign_type\": \"smart_campaign\"\n      },\n      {\n        \"encrypted_id\": \"encrypted_campaign_id_2\",\n        \"name\": \"Marketing Connect Campaign\", \n        \"campaign_type\": \"smart_campaign\"\n      },\n      {\n        \"encrypted_id\": \"encrypted_campaign_id_3\",\n        \"name\": \"Tech Leaders Network\",\n        \"campaign_type\": \"shared_campaign\"\n      }\n    ],\n    \"organisation_members\": [\n      {\n        \"encrypted_id\": \"encrypted_org_member_id_1\",\n        \"name\": \"admin@company.com\",\n        \"email\": \"admin@company.com\"\n      },\n      {\n        \"encrypted_id\": \"encrypted_org_member_id_2\",\n        \"name\": \"user@company.com\", \n        \"email\": \"user@company.com\"\n      }\n    ]\n  }\n}"},{"id":"bcfd7df4-2c01-4806-8c6a-9a18a8690641","name":"Error","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"invalid_api_key","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/encrypted_idenitifiers"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": \"Invalid or missing API key\"\n}"}],"_postman_id":"03ca9c8a-717b-4acb-9ebb-795d5b3eca2e"}],"id":"4bbc611e-48a3-47d8-b8c9-dbc7c0edaefd","description":"<p>Endpoints related to retrieving encrypted identifiers for LinkedIn users and campaign routines.</p>\n","_postman_id":"4bbc611e-48a3-47d8-b8c9-dbc7c0edaefd","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Dashboard Analytics","item":[{"name":"Get Dashboard Information (GET)","id":"df6b4075-8f24-42fc-8951-3135d83bed37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/dashboard-info?linkedin_user_information_ids[]=NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==&start_date=2025-05-01&end_date=2025-05-10","description":"<p>Returns dashboard analytics data including campaign statistics, connection graphs, and more.</p>\n<h3 id=\"query-parameters\">Query Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>linkedin_user_information_ids</td>\n<td>Array</td>\n<td>No</td>\n<td>Array of LinkedIn user information IDs to filter by</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>No</td>\n<td>Start date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>Date</td>\n<td>No</td>\n<td>End date for data range (format: YYYY-MM-DD)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["dashboard-info"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Encrypted LinkedIn user ID</p>\n","type":"text/plain"},"key":"linkedin_user_information_ids[]","value":"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ=="},{"disabled":true,"description":{"content":"<p>Encrypted LinkedIn user ID</p>\n","type":"text/plain"},"key":"linkedin_user_information_ids[]","value":"encrypted_id_string_2"},{"description":{"content":"<p>Start date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"start_date","value":"2025-05-01"},{"description":{"content":"<p>End date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"end_date","value":"2025-05-10"}],"variable":[]}},"response":[{"id":"c917517d-0f73-4699-8acc-214ccf02d7e1","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"239691f92d6ce47889b1f85ca18dd9330e6209a357caea83","type":"text"}],"url":{"raw":"https://api.konnector.ai/social_app/api/v1/third_party/dashboard-info?linkedin_user_information_ids[]=encrypted_id_string_1&linkedin_user_information_ids[]=encrypted_id_string_2&start_date=2025-05-01&end_date=2025-05-10","protocol":"https","host":["api","konnector","ai"],"path":["social_app","api","v1","third_party","dashboard-info"],"query":[{"key":"linkedin_user_information_ids[]","value":"encrypted_id_string_1"},{"key":"linkedin_user_information_ids[]","value":"encrypted_id_string_2"},{"key":"start_date","value":"2025-05-01"},{"key":"end_date","value":"2025-05-10"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Dashboard details shared successfully\",\n  \"data\": {\n    \"campaign_member_info\": {\n      \"data\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 25\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 32\n        }\n      ],\n      \"total_member_count\": 313\n    },\n    \"campaign_count_info\": {\n      \"completed\": 5,\n      \"active\": 10,\n      \"inactive\": 2,\n      \"draft\": 3,\n      \"total\": 20\n    },\n    \"connection_graph\": {\n      \"request\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 50\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 65\n        }\n      ],\n      \"accept\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 30\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 40\n        }\n      ],\n      \"pending_reject_count\": 157,\n      \"total_friend_accept_count\": 382,\n      \"total_friend_request_count\": 607,\n      \"connection_percentage\": 62.9\n    },\n    \"message_stats\": {\n      \"sent\": 520,\n      \"replied\": 215,\n      \"response_rate\": 41.3,\n      \"daily_stats\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"sent\": 45,\n          \"replied\": 18\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"sent\": 52,\n          \"replied\": 22\n        }\n      ]\n    },\n    \"campaign_types\": {\n      \"friend_request_follow_message\": 5,\n      \"connector_campaign\": 3,\n      \"friend_campaign\": 4,\n      \"smart_campaign\": 6,\n      \"shared_campaign\": 2\n    },\n    \"user_performance\": [\n      {\n        \"linkedin_user_information_id\": \"encrypted_id_string_1\",\n        \"name\": \"John Doe\",\n        \"email\": \"john.doe@example.com\",\n        \"connection_rate\": 65.2,\n        \"response_rate\": 42.8,\n        \"active_campaigns\": 6\n      },\n      {\n        \"linkedin_user_information_id\": \"encrypted_id_string_2\",\n        \"name\": \"Jane Smith\",\n        \"email\": \"jane.smith@example.com\",\n        \"connection_rate\": 60.5,\n        \"response_rate\": 39.7,\n        \"active_campaigns\": 4\n      }\n    ],\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\",\n    \"request_id\": \"req_dashboard_12345\"\n  }\n}"},{"id":"3e05bfce-0899-4696-a650-53309e8a5e34","name":"Error","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/dashboard-info?start_date=invalid-date&end_date=2025-05-10","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["dashboard-info"],"query":[{"key":"start_date","value":"invalid-date"},{"key":"end_date","value":"2025-05-10"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Invalid date range\",\n  \"data\": {\n    \"error\": \"Invalid date format\",\n    \"error_code\": \"INVALID_DATE_FORMAT\",\n    \"request_id\": \"req_12345abcde\",\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\"\n  }\n}"}],"_postman_id":"df6b4075-8f24-42fc-8951-3135d83bed37"},{"name":"Get Dashboard Information (POST)","id":"8b63e6fb-ea76-49cd-acf5-4bc6e54c47a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_information_ids\": [\"encrypted_linkedin_sender_id_string_1\", \"encrypted_linkedin_sender_id_string_2\"],\n  \"linkedin_campaign_routine_ids\": [\"encrypted_linkedin_campaign_routine_id_1\", \"encrypted_linkedin_campaign_routine_id_2\"],\n  \"end_date\": \"2025-05-10\",\n  \"start_date\": \"2025-05-01\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/dashboard-info","description":"<p>Returns dashboard analytics data including campaign statistics, connection graphs, and more. Supports POST method for more complex filtering.</p>\n<h3 id=\"request-body-parameters\">Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>linkedin_user_information_ids</td>\n<td>Array</td>\n<td>No</td>\n<td>Array of LinkedIn user information IDs to filter by</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>No</td>\n<td>Start date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>Date</td>\n<td>No</td>\n<td>End date for data range (format: YYYY-MM-DD)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["dashboard-info"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"37a0cc2b-b5d3-4a2c-99e3-631668816f46","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"239691f92d6ce47889b1f85ca18dd9330e6209a357caea83","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_information_ids\": [\"encrypted_id_string_1\", \"encrypted_id_string_2\"],\n  \"start_date\": \"2025-05-01\",\n  \"end_date\": \"2025-05-10\"\n}"},"url":"https://api.konnector.ai/social_app/api/v1/third_party/dashboard-info"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Dashboard details shared successfully\",\n  \"data\": {\n    \"campaign_member_info\": {\n      \"data\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 25\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 32\n        }\n      ],\n      \"total_member_count\": 313\n    },\n    \"campaign_count_info\": {\n      \"completed\": 5,\n      \"active\": 10,\n      \"inactive\": 2,\n      \"draft\": 3,\n      \"total\": 20\n    },\n    \"connection_graph\": {\n      \"request\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 50\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 65\n        }\n      ],\n      \"accept\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"count_data\": 30\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"count_data\": 40\n        }\n      ],\n      \"pending_reject_count\": 157,\n      \"total_friend_accept_count\": 382,\n      \"total_friend_request_count\": 607,\n      \"connection_percentage\": 62.9\n    },\n    \"message_stats\": {\n      \"sent\": 520,\n      \"replied\": 215,\n      \"response_rate\": 41.3,\n      \"daily_stats\": [\n        {\n          \"date\": \"2025-05-01\",\n          \"sent\": 45,\n          \"replied\": 18\n        },\n        {\n          \"date\": \"2025-05-02\",\n          \"sent\": 52,\n          \"replied\": 22\n        }\n      ]\n    },\n    \"campaign_types\": {\n      \"friend_request_follow_message\": 5,\n      \"connector_campaign\": 3,\n      \"friend_campaign\": 4,\n      \"smart_campaign\": 6,\n      \"shared_campaign\": 2\n    },\n    \"user_performance\": [\n      {\n        \"linkedin_user_information_id\": \"encrypted_id_string_1\",\n        \"name\": \"John Doe\",\n        \"email\": \"john.doe@example.com\",\n        \"connection_rate\": 65.2,\n        \"response_rate\": 42.8,\n        \"active_campaigns\": 6\n      },\n      {\n        \"linkedin_user_information_id\": \"encrypted_id_string_2\",\n        \"name\": \"Jane Smith\",\n        \"email\": \"jane.smith@example.com\",\n        \"connection_rate\": 60.5,\n        \"response_rate\": 39.7,\n        \"active_campaigns\": 4\n      }\n    ],\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\",\n    \"request_id\": \"req_dashboard_12345\"\n  }\n}"}],"_postman_id":"8b63e6fb-ea76-49cd-acf5-4bc6e54c47a3"}],"id":"2a3239fb-1c8b-4b88-a59f-edfa03c7108c","description":"<p>Endpoints related to retrieving analytics data for LinkedIn campaigns and users.</p>\n","_postman_id":"2a3239fb-1c8b-4b88-a59f-edfa03c7108c","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Campaign Management","item":[{"name":"Get Campaign Information (GET)","id":"fedcd82f-4c68-4606-a2b9-51f5c082684b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/campaign-info?linkedin_user_information_ids[]=Q245ZjJoa2UrSjlSVkdWeW9nPT0tLVF6WmkxQWh5Z3RUeGcwczEtLTVYZW9Lc21NVGtDcDd3cWR0blpZdGc9PQ==&start_date=2025-05-01&end_date=2025-11-10&limit=10&offset=0&campaign_status=active&sort_by=created_at&sort_order=desc","description":"<p>Returns detailed information about campaigns.</p>\n<h3 id=\"query-parameters\">Query Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>linkedin_user_information_ids</td>\n<td>Array</td>\n<td>Optional. Array of encrypted LinkedIn user information IDs to filter by</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>Optional. Start date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>Date</td>\n<td>Optional. End date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Integer</td>\n<td>Optional. Number of results to return (default: 50)</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Integer</td>\n<td>Optional. Offset for pagination (default: 0)</td>\n</tr>\n<tr>\n<td>term</td>\n<td>String</td>\n<td>Optional. Search term to filter campaign names</td>\n</tr>\n<tr>\n<td>campaign_status</td>\n<td>String</td>\n<td>Optional. Filter by campaign status (active, inactive, completed, draft)</td>\n</tr>\n<tr>\n<td>campaign_type</td>\n<td>String</td>\n<td>Optional. Filter by campaign type (smart_campaign, friend_campaign, etc.)</td>\n</tr>\n<tr>\n<td>sort_by</td>\n<td>String</td>\n<td>Optional. Field to sort results by (created_at, campaign_name, etc.)</td>\n</tr>\n<tr>\n<td>sort_order</td>\n<td>String</td>\n<td>Optional. Sort order (asc, desc)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["campaign-info"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Encrypted LinkedIn user ID</p>\n","type":"text/plain"},"key":"linkedin_user_information_ids[]","value":"Q245ZjJoa2UrSjlSVkdWeW9nPT0tLVF6WmkxQWh5Z3RUeGcwczEtLTVYZW9Lc21NVGtDcDd3cWR0blpZdGc9PQ=="},{"description":{"content":"<p>Start date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"start_date","value":"2025-05-01"},{"description":{"content":"<p>End date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"end_date","value":"2025-11-10"},{"description":{"content":"<p>Number of results to return</p>\n","type":"text/plain"},"key":"limit","value":"10"},{"description":{"content":"<p>Offset for pagination</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Filter by campaign status</p>\n","type":"text/plain"},"key":"campaign_status","value":"active"},{"description":{"content":"<p>Field to sort results by</p>\n","type":"text/plain"},"key":"sort_by","value":"created_at"},{"description":{"content":"<p>Sort order (asc, desc)</p>\n","type":"text/plain"},"key":"sort_order","value":"desc"}],"variable":[]}},"response":[{"id":"ba38b63a-97fc-462d-acb7-de7958ef5e3c","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"239691f92d6ce47889b1f85ca18dd9330e6209a357caea83","type":"text"}],"url":{"raw":"https://api.konnector.ai/social_app/api/v1/third_party/campaign-info?linkedin_user_information_ids[]=encrypted_id_string_1&start_date=2025-05-01&end_date=2025-05-10&limit=10&offset=0&campaign_status=active&sort_by=created_at&sort_order=desc","protocol":"https","host":["api","konnector","ai"],"path":["social_app","api","v1","third_party","campaign-info"],"query":[{"key":"linkedin_user_information_ids[]","value":"encrypted_id_string_1"},{"key":"start_date","value":"2025-05-01"},{"key":"end_date","value":"2025-05-10"},{"key":"limit","value":"10"},{"key":"offset","value":"0"},{"key":"campaign_status","value":"active"},{"key":"sort_by","value":"created_at"},{"key":"sort_order","value":"desc"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign info shared successfully\",\n  \"data\": {\n    \"campaign_info\": [\n      {\n        \"linkedin_campaign_routine\": {\n          \"id\": \"encrypted_id_string_1\",\n          \"campaign_name\": \"Q2 Sales Outreach\",\n          \"campaign_status\": \"active\",\n          \"campaign_type\": \"smart_campaign\",\n          \"created_at\": \"2025-05-08T10:15:30Z\",\n          \"last_activate_time\": \"2025-05-09T08:30:15Z\",\n          \"initial_activate_time\": \"2025-05-08T14:22:10Z\",\n          \"max_campaign_days\": 7,\n          \"source\": \"manual\",\n          \"metadata\": {\n            \"target_industry\": \"Technology\",\n            \"target_positions\": [\"CTO\", \"VP Engineering\", \"Technical Director\"],\n            \"campaign_goals\": \"Generate leads for enterprise software\"\n          }\n        },\n        \"member_count\": 150,\n        \"friend_request_count\": 100,\n        \"friend_accept_count\": 75,\n        \"connection_percentage\": 75.0,\n        \"message_sent_count\": 80,\n        \"message_replied_count\": 40,\n        \"response_rate\": 50.0,\n        \"campaign_duration_days\": 3,\n        \"daily_stats\": [\n          {\n            \"date\": \"2025-05-08\",\n            \"connections\": {\n              \"sent\": 40,\n              \"accepted\": 28\n            },\n            \"messages\": {\n              \"sent\": 30,\n              \"replied\": 15\n            }\n          },\n          {\n            \"date\": \"2025-05-09\",\n            \"connections\": {\n              \"sent\": 35,\n              \"accepted\": 26\n            },\n            \"messages\": {\n              \"sent\": 28,\n              \"replied\": 14\n            }\n          },\n          {\n            \"date\": \"2025-05-10\",\n            \"connections\": {\n              \"sent\": 25,\n              \"accepted\": 21\n            },\n            \"messages\": {\n              \"sent\": 22,\n              \"replied\": 11\n            }\n          }\n        ],\n        \"linkedin_user\": {\n          \"name\": \"John Doe\",\n          \"linkedin_user_information_id\": \"encrypted_id_string_1\",\n          \"email\": \"john.doe@example.com\",\n          \"status\": \"active\"\n        },\n        \"campaign_steps\": [\n          {\n            \"step_id\": \"encrypted_step_id_1\",\n            \"step_name\": \"Initial Connection\",\n            \"step_type\": \"connection_request\",\n            \"completion_rate\": 85.0\n          },\n          {\n            \"step_id\": \"encrypted_step_id_2\",\n            \"step_name\": \"Follow-up Message\",\n            \"step_type\": \"message\",\n            \"completion_rate\": 75.0\n          }\n        ]\n      }\n    ],\n    \"total_campaign_routines_count\": 8,\n    \"pagination\": {\n      \"current_page\": 1,\n      \"total_pages\": 4,\n      \"limit\": 10,\n      \"offset\": 0,\n      \"next_page_url\": \"/social_app/api/v1/third_party/campaign-info?offset=10&limit=10\",\n      \"prev_page_url\": null\n    },\n    \"filters_applied\": {\n      \"linkedin_user_information_ids\": [\"encrypted_id_string_1\"],\n      \"start_date\": \"2025-05-01\",\n      \"end_date\": \"2025-05-10\",\n      \"campaign_status\": \"active\",\n      \"sort_by\": \"created_at\",\n      \"sort_order\": \"desc\"\n    },\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\",\n    \"request_id\": \"req_campaign_67890\"\n  }\n}"},{"id":"19566ed1-a3f2-4976-941f-7c86184a55e3","name":"Error","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/campaign-info?linkedin_user_information_ids[]=invalid_id","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["campaign-info"],"query":[{"key":"linkedin_user_information_ids[]","value":"invalid_id"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Invalid parameters\",\n  \"data\": {\n    \"error\": \"One or more LinkedIn user information IDs are invalid\",\n    \"error_code\": \"INVALID_USER_IDS\",\n    \"request_id\": \"req_98765abcde\",\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\"\n  }\n}"}],"_postman_id":"fedcd82f-4c68-4606-a2b9-51f5c082684b"},{"name":"Get Campaign Information (POST)","id":"1831e419-e739-4330-ba9b-3f169af102ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_information_ids\": [\"encrypted_id_string_1\"],\n  \"start_date\": \"2025-05-01\",\n  \"end_date\": \"2025-05-10\",\n  \"limit\": 10,\n  \"offset\": 0,\n  \"campaign_status\": \"active\",\n  \"sort_by\": \"created_at\",\n  \"sort_order\": \"desc\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/campaign-info","description":"<p>Returns detailed information about campaigns using POST method for more complex filtering.</p>\n<h3 id=\"request-body-parameters\">Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>linkedin_user_information_ids</td>\n<td>Array</td>\n<td>Optional. Array of encrypted LinkedIn user information IDs to filter by</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>Optional. Start date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>Date</td>\n<td>Optional. End date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Integer</td>\n<td>Optional. Number of results to return (default: 50)</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Integer</td>\n<td>Optional. Offset for pagination (default: 0)</td>\n</tr>\n<tr>\n<td>term</td>\n<td>String</td>\n<td>Optional. Search term to filter campaign names</td>\n</tr>\n<tr>\n<td>campaign_status</td>\n<td>String</td>\n<td>Optional. Filter by campaign status (active, inactive, completed, draft)</td>\n</tr>\n<tr>\n<td>campaign_type</td>\n<td>String</td>\n<td>Optional. Filter by campaign type (smart_campaign, friend_campaign, etc.)</td>\n</tr>\n<tr>\n<td>sort_by</td>\n<td>String</td>\n<td>Optional. Field to sort results by (created_at, campaign_name, etc.)</td>\n</tr>\n<tr>\n<td>sort_order</td>\n<td>String</td>\n<td>Optional. Sort order (asc, desc)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["campaign-info"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"bac8eb76-4d2b-4abe-be9c-fd0526bde033","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_information_ids\": [\"encrypted_id_string_1\"],\n  \"start_date\": \"2025-05-01\",\n  \"end_date\": \"2025-05-10\",\n  \"limit\": 10,\n  \"offset\": 0,\n  \"campaign_status\": \"active\",\n  \"sort_by\": \"created_at\",\n  \"sort_order\": \"desc\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/campaign-info"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign info shared successfully\",\n  \"data\": {\n    \"campaign_info\": [\n      {\n        \"linkedin_campaign_routine\": {\n          \"id\": \"encrypted_id_string_1\",\n          \"campaign_name\": \"Q2 Sales Outreach\",\n          \"campaign_status\": \"active\",\n          \"campaign_type\": \"smart_campaign\",\n          \"created_at\": \"2025-05-08T10:15:30Z\",\n          \"last_activate_time\": \"2025-05-09T08:30:15Z\",\n          \"initial_activate_time\": \"2025-05-08T14:22:10Z\",\n          \"max_campaign_days\": 7,\n          \"source\": \"manual\",\n          \"metadata\": {\n            \"target_industry\": \"Technology\",\n            \"target_positions\": [\"CTO\", \"VP Engineering\", \"Technical Director\"],\n            \"campaign_goals\": \"Generate leads for enterprise software\"\n          }\n        },\n        \"member_count\": 150,\n        \"friend_request_count\": 100,\n        \"friend_accept_count\": 75,\n        \"connection_percentage\": 75.0,\n        \"message_sent_count\": 80,\n        \"message_replied_count\": 40,\n        \"response_rate\": 50.0,\n        \"campaign_duration_days\": 3,\n        \"daily_stats\": [\n          {\n            \"date\": \"2025-05-08\",\n            \"connections\": {\n              \"sent\": 40,\n              \"accepted\": 28\n            },\n            \"messages\": {\n              \"sent\": 30,\n              \"replied\": 15\n            }\n          },\n          {\n            \"date\": \"2025-05-09\",\n            \"connections\": {\n              \"sent\": 35,\n              \"accepted\": 26\n            },\n            \"messages\": {\n              \"sent\": 28,\n              \"replied\": 14\n            }\n          },\n          {\n            \"date\": \"2025-05-10\",\n            \"connections\": {\n              \"sent\": 25,\n              \"accepted\": 21\n            },\n            \"messages\": {\n              \"sent\": 22,\n              \"replied\": 11\n            }\n          }\n        ],\n        \"linkedin_user\": {\n          \"name\": \"John Doe\",\n          \"linkedin_user_information_id\": \"encrypted_id_string_1\",\n          \"email\": \"john.doe@example.com\",\n          \"status\": \"active\"\n        },\n        \"campaign_steps\": [\n          {\n            \"step_id\": \"encrypted_step_id_1\",\n            \"step_name\": \"Initial Connection\",\n            \"step_type\": \"connection_request\",\n            \"completion_rate\": 85.0\n          },\n          {\n            \"step_id\": \"encrypted_step_id_2\",\n            \"step_name\": \"Follow-up Message\",\n            \"step_type\": \"message\",\n            \"completion_rate\": 75.0\n          }\n        ]\n      }\n    ],\n    \"total_campaign_routines_count\": 8,\n    \"pagination\": {\n      \"current_page\": 1,\n      \"total_pages\": 4,\n      \"limit\": 10,\n      \"offset\": 0,\n      \"next_page_url\": \"/social_app/api/v1/third_party/campaign-info?offset=10&limit=10\",\n      \"prev_page_url\": null\n    },\n    \"filters_applied\": {\n      \"linkedin_user_information_ids\": [\"encrypted_id_string_1\"],\n      \"start_date\": \"2025-05-01\",\n      \"end_date\": \"2025-05-10\",\n      \"campaign_status\": \"active\",\n      \"sort_by\": \"created_at\",\n      \"sort_order\": \"desc\"\n    },\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\",\n    \"request_id\": \"req_campaign_67890\"\n  }\n}"}],"_postman_id":"1831e419-e739-4330-ba9b-3f169af102ad"},{"name":"Get Optimized Campaign Routine Data","id":"a29da693-57cf-4789-9fef-83f1672581c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/optimized_routine_data?campaign_id=VlY3SWNSbGVTM0Z0NDYyUWJnPT0tLTNCTlZZQVdJRHFFRGk1SDctLTdZZ0xzUW1DZ0E0bFhBa1REZFFNOGc9PQ==","description":"<p>Returns detailed analytics and information for a specific campaign routine.</p>\n<h3 id=\"query-parameters\">Query Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>linkedin_campaign_routine_id</td>\n<td>String</td>\n<td>Required. Encrypted ID of the LinkedIn campaign routine</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>Optional. Start date for data range (format: YYYY-MM-DD)</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>Date</td>\n<td>Optional. End date for data range (format: YYYY-MM-DD)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["optimized_routine_data"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Encrypted ID of the LinkedIn campaign routine</p>\n","type":"text/plain"},"key":"campaign_id","value":"VlY3SWNSbGVTM0Z0NDYyUWJnPT0tLTNCTlZZQVdJRHFFRGk1SDctLTdZZ0xzUW1DZ0E0bFhBa1REZFFNOGc9PQ=="},{"disabled":true,"description":{"content":"<p>Start date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"start_date","value":"2025-05-01"},{"disabled":true,"description":{"content":"<p>End date for data range (YYYY-MM-DD)</p>\n","type":"text/plain"},"key":"end_date","value":"2025-05-10"}],"variable":[]}},"response":[{"id":"89c211f2-2d9a-464f-a7bf-eabf8594b122","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/optimized_routine_data?linkedin_campaign_routine_id=encrypted_id_string&start_date=2025-05-01&end_date=2025-05-10","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["optimized_routine_data"],"query":[{"key":"linkedin_campaign_routine_id","value":"encrypted_id_string"},{"key":"start_date","value":"2025-05-01"},{"key":"end_date","value":"2025-05-10"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign routine data retrieved successfully\",\n  \"data\": {\n    \"campaign_details\": {\n      \"id\": \"encrypted_id_string\",\n      \"name\": \"Q2 Sales Outreach\",\n      \"campaign_type\": \"smart_campaign\",\n      \"campaign_status\": \"active\",\n      \"created_at\": \"2025-05-01T10:15:30Z\",\n      \"last_activate_time\": \"2025-05-02T08:30:15Z\",\n      \"campaign_duration_days\": 7,\n      \"max_campaign_days\": 7\n    },\n    \"performance_metrics\": {\n      \"member_count\": 150,\n      \"connection_metrics\": {\n        \"friend_request_count\": 100,\n        \"friend_accept_count\": 75,\n        \"connection_percentage\": 75.0,\n        \"pending_count\": 25,\n        \"daily_metrics\": [\n          {\n            \"date\": \"2025-05-01\",\n            \"requests_sent\": 20,\n            \"requests_accepted\": 15\n          },\n          {\n            \"date\": \"2025-05-02\",\n            \"requests_sent\": 25,\n            \"requests_accepted\": 18\n          }\n        ]\n      },\n      \"message_metrics\": {\n        \"message_sent_count\": 80,\n        \"message_replied_count\": 40,\n        \"response_rate\": 50.0,\n        \"daily_metrics\": [\n          {\n            \"date\": \"2025-05-01\",\n            \"messages_sent\": 15,\n            \"messages_replied\": 8\n          },\n          {\n            \"date\": \"2025-05-02\",\n            \"messages_sent\": 20,\n            \"messages_replied\": 10\n          }\n        ]\n      }\n    },\n    \"campaign_steps\": [\n      {\n        \"step_id\": \"encrypted_step_id_1\",\n        \"step_name\": \"Initial Connection\",\n        \"step_type\": \"connection_request\",\n        \"completion_rate\": 85.0,\n        \"metrics\": {\n          \"total_attempts\": 100,\n          \"successful\": 85,\n          \"failed\": 15\n        }\n      },\n      {\n        \"step_id\": \"encrypted_step_id_2\",\n        \"step_name\": \"Follow-up Message\",\n        \"step_type\": \"message\",\n        \"completion_rate\": 75.0,\n        \"metrics\": {\n          \"total_attempts\": 85,\n          \"successful\": 75,\n          \"failed\": 10\n        }\n      }\n    ],\n    \"linkedin_user\": {\n      \"name\": \"John Doe\",\n      \"linkedin_user_information_id\": \"encrypted_user_id\",\n      \"email\": \"john.doe@example.com\"\n    }\n  }\n}"},{"id":"b9446659-2a4b-4bc6-a0af-348fb370c434","name":"Error","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/optimized_routine_data"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Missing required parameter\",\n  \"data\": {\n    \"error\": \"linkedin_campaign_routine_id is required\",\n    \"error_code\": \"MISSING_REQUIRED_PARAMETER\",\n    \"request_id\": \"req_12345abcde\",\n    \"timestamp\": \"2025-05-11T14:59:52+05:30\"\n  }\n}"}],"_postman_id":"a29da693-57cf-4789-9fef-83f1672581c0"}],"id":"8846b111-05fb-420f-a388-87cef0d39378","description":"<p>Endpoints related to retrieving and managing LinkedIn campaign data.</p>\n","_postman_id":"8846b111-05fb-420f-a388-87cef0d39378","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Lead Management","item":[{"name":"Get lead lists","id":"c0544ba1-9dd1-43b9-8a69-f6cc3ed19817","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_ids\": [\"TVpER3M1TDJTRlRldnp3SC0tdlljMG5rOTI2QWJERDRsei0tUnZFeXdMWVpUT3o0SUk1dXJmU1RpUT09\"],\n    \"unassigned_flag\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/lead-lists","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["lead-lists"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"disabled":true,"key":"import_type","value":""},{"disabled":true,"key":"limit","value":"10"},{"disabled":true,"key":"offset","value":"20"},{"disabled":true,"key":"linkedin_user_information_ids","value":"[\"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==\"]"},{"disabled":true,"key":"unassigned_flag","value":"true"},{"disabled":true,"key":"lead_list_id","value":"5117"},{"disabled":true,"key":"params","value":""}],"variable":[]}},"response":[{"id":"45e44c77-d003-4e2e-b66b-286be59f9416","name":"Success","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_ids\": [\"encrypted_id\"],\n    \"unassigned_flag\": true\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://api.konnector.ai/social_app/api/v1/third_party/lead-lists","protocol":"https","host":["api","konnector","ai"],"path":["social_app","api","v1","third_party","lead-lists"],"query":[{"key":"import_type","value":"","type":"text","disabled":true},{"key":"limit","value":"10","disabled":true},{"key":"offset","value":"20","disabled":true},{"key":"linkedin_user_information_ids","value":"[\"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==\"]","disabled":true},{"key":"unassigned_flag","value":"true","disabled":true},{"key":"lead_list_id","value":"5117","disabled":true},{"key":"params","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:13:45 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"54b268afd880a9404dcc8cf858b4f638\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"66b9a192-19a9-4c53-ac54-63d9ab566472"},{"key":"X-Runtime","value":"0.236890"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead Lists\",\n  \"data\": {\n    \"linkedin_user_campaigns\": [\n      {\n        \"id\": \"encrypted_campaign_id_1\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_1\",\n        \"user_id\": \"encrypted_user_id_1\",\n        \"total_count\": 100,\n        \"url\": \"https://example.com/sample-file.csv\",\n        \"campaign_type\": \"csv\",\n        \"created_at\": \"2025-07-23T05:56:19.000Z\",\n        \"total_comment_count\": 5,\n        \"campaign_name\": \"Sample CSV Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 1000,\n        \"url_meta_info\": {\n          \"https://www.linkedin.com/in/sample-profile-1\": \"success\",\n          \"https://www.linkedin.com/in/sample-profile-2\": \"403 Forbidden\",\n          \"https://www.linkedin.com/in/sample-profile-3\": \"scrapping_pending\"\n        },\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_2\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_2\",\n        \"user_id\": \"encrypted_user_id_2\",\n        \"total_count\": 50,\n        \"url\": \"https://app.clay.com/workspaces/sample/tables/sample_table\",\n        \"campaign_type\": \"clay\",\n        \"created_at\": \"2025-07-16T04:50:06.000Z\",\n        \"total_comment_count\": 0,\n        \"campaign_name\": \"Clay Integration Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 500,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_3\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_3\",\n        \"user_id\": \"encrypted_user_id_3\",\n        \"total_count\": 25,\n        \"url\": \"https://www.linkedin.com/search/results/people/?keywords=developer&origin=SEARCH\",\n        \"campaign_type\": \"search_url\",\n        \"created_at\": \"2025-07-07T09:16:59.000Z\",\n        \"total_comment_count\": 2,\n        \"campaign_name\": \"Developer Search Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 100,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_4\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_4\",\n        \"user_id\": \"encrypted_user_id_4\",\n        \"total_count\": 0,\n        \"url\": null,\n        \"campaign_type\": \"keyword_posts\",\n        \"created_at\": \"2025-05-07T13:09:54.000Z\",\n        \"total_comment_count\": 0,\n        \"campaign_name\": \"Keyword Posts Campaign\",\n        \"job_status\": \"queued\",\n        \"array\": [],\n        \"lead_count\": 487,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_5\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_5\",\n        \"user_id\": \"encrypted_user_id_5\",\n        \"total_count\": 200,\n        \"url\": \"https://www.linkedin.com/sales/search/people?query=sample_query&sessionId=sample_session\",\n        \"campaign_type\": \"sales_navigator\",\n        \"created_at\": \"2025-03-10T15:31:31.000Z\",\n        \"total_comment_count\": 0,\n        \"campaign_name\": \"Sales Navigator Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 2500,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_6\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_6\",\n        \"user_id\": \"encrypted_user_id_6\",\n        \"total_count\": 41,\n        \"url\": \"https://www.linkedin.com/company/sample-company/people/\",\n        \"campaign_type\": \"company_detail\",\n        \"created_at\": \"2024-10-18T11:09:46.000Z\",\n        \"total_comment_count\": 0,\n        \"campaign_name\": \"Company People Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 10000,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      },\n      {\n        \"id\": \"encrypted_campaign_id_7\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_7\",\n        \"user_id\": \"encrypted_user_id_7\",\n        \"total_count\": 15,\n        \"url\": \"\",\n        \"campaign_type\": \"shift-lead-list\",\n        \"created_at\": \"2024-09-27T10:00:46.000Z\",\n        \"total_comment_count\": 0,\n        \"campaign_name\": \"Shift Lead List Campaign\",\n        \"job_status\": \"complete\",\n        \"array\": [],\n        \"lead_count\": 1000,\n        \"url_meta_info\": {},\n        \"sales_navigator_flag\": null\n      }\n    ],\n    \"total_user_campaigns\": 144\n  }\n}"}],"_postman_id":"c0544ba1-9dd1-43b9-8a69-f6cc3ed19817"},{"name":"lead list members","id":"27b659be-a414-4bf2-a568-289f730ca42b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/lead-list-members?lead_list_id=ZTNSWTE3ZmpYVDZScXpBZjJuQT0tLUZTSU9CSUZNY3J2YTc0WEYtLTBWbkZxZk5NUUV1ZS9jcFY2RXZnQmc9PQ==","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["lead-list-members"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"key":"lead_list_id","value":"ZTNSWTE3ZmpYVDZScXpBZjJuQT0tLUZTSU9CSUZNY3J2YTc0WEYtLTBWbkZxZk5NUUV1ZS9jcFY2RXZnQmc9PQ=="}],"variable":[]}},"response":[{"id":"bde25986-fffb-4ce0-9ff5-c844dc498bbd","name":"Success","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/lead-list-members?lead_list_id=encrypted_id","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["lead-list-members"],"query":[{"key":"lead_list_id","value":"encrypted_id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:31:18 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"e1013dd2f0c6f01bec9c97e1e78004ec\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"0bd724f9-5b43-4aea-841f-8d2333617b42"},{"key":"X-Runtime","value":"6.751795"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Linkedin campaign members data\",\n  \"data\": {\n    \"linkedin_campaign_members\": [\n      {\n        \"id\": \"encrypted_member_id_1\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_1\",\n        \"user_id\": \"encrypted_user_id_1\",\n        \"profile_id\": \"sample_profile_id_1\",\n        \"public_identifier\": \"john-doe-123456789\",\n        \"images\": [\n          \"https://example.com/sample-profile-image.jpg\"\n        ],\n        \"occupation\": \"Senior Software Engineer at Tech Company\",\n        \"name\": \"John Doe\",\n        \"status\": true,\n        \"degree_connection\": \" • 2nd\",\n        \"linkedin_user_campaign_id\": \"encrypted_campaign_id_1\",\n        \"created_at\": \"2025-03-10T04:09:26.000Z\",\n        \"updated_at\": \"2025-03-10T04:09:26.000Z\",\n        \"pending_invitation\": null,\n        \"profile_url\": \"https://www.linkedin.com/in/john-doe-123456789\",\n        \"action_type\": null,\n        \"action_value\": null,\n        \"location\": \"San Francisco, CA\",\n        \"addition_detail\": null,\n        \"deleted_at\": null,\n        \"sales_navigator_profile_id\": null,\n        \"clean_first_name\": \"John\",\n        \"clean_last_name\": \"Doe\",\n        \"about_us\": \"Passionate software engineer with 5+ years of experience...\",\n        \"tenure_at_company\": {\n          \"years\": 2,\n          \"months\": 6\n        },\n        \"tenure_at_position\": {\n          \"years\": 1,\n          \"months\": 3\n        },\n        \"company_name\": \"Tech Innovations Inc.\",\n        \"metadata\": {},\n        \"no_of_connections\": \"500+\",\n        \"member_badges\": {\n          \"premium\": true,\n          \"recruiter\": false\n        },\n        \"sales_navigator_profile_scrap_flag\": false,\n        \"contact_info\": {\n          \"email\": \"john.doe@example.com\",\n          \"phone\": \"+1-555-0123\"\n        },\n        \"profile_scrap_flag\": true,\n        \"failure_reason\": null,\n        \"profile_csv_url\": null,\n        \"premium_subscription_flag\": \"premium\",\n        \"fail_count\": 0,\n        \"open_inmail_flag\": \"available\",\n        \"company_url\": \"https://www.linkedin.com/company/tech-innovations-inc/\",\n        \"industry\": \"Information Technology\",\n        \"enrich_flag\": true,\n        \"education\": [\n          {\n            \"school\": \"Stanford University\",\n            \"degree\": \"Computer Science\",\n            \"year\": \"2018\"\n          }\n        ],\n        \"company\": {\n          \"name\": \"Tech Innovations Inc.\",\n          \"size\": \"1001-5000\",\n          \"industry\": \"Software Development\"\n        },\n        \"followers_count\": 1250,\n        \"member_step_information\": {\n          \"current_step\": \"contacted\",\n          \"last_action\": \"connection_request_sent\"\n        }\n      },\n      {\n        \"id\": \"encrypted_member_id_2\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_2\",\n        \"user_id\": \"encrypted_user_id_2\",\n        \"profile_id\": \"sample_profile_id_2\",\n        \"public_identifier\": \"jane-smith-987654321\",\n        \"images\": [\n          \"https://example.com/sample-profile-image-2.jpg\"\n        ],\n        \"occupation\": \"Marketing Manager | Digital Strategy Expert\",\n        \"name\": \"Jane Smith\",\n        \"status\": true,\n        \"degree_connection\": \" • 3rd+\",\n        \"linkedin_user_campaign_id\": \"encrypted_campaign_id_1\",\n        \"created_at\": \"2025-03-10T04:09:25.000Z\",\n        \"updated_at\": \"2025-03-10T04:09:25.000Z\",\n        \"pending_invitation\": null,\n        \"profile_url\": \"https://www.linkedin.com/in/jane-smith-987654321\",\n        \"action_type\": null,\n        \"action_value\": null,\n        \"location\": \"New York, NY\",\n        \"addition_detail\": null,\n        \"deleted_at\": null,\n        \"sales_navigator_profile_id\": null,\n        \"clean_first_name\": \"Jane\",\n        \"clean_last_name\": \"Smith\",\n        \"about_us\": null,\n        \"tenure_at_company\": {},\n        \"tenure_at_position\": {},\n        \"company_name\": \"Marketing Solutions LLC\",\n        \"metadata\": {},\n        \"no_of_connections\": null,\n        \"member_badges\": {},\n        \"sales_navigator_profile_scrap_flag\": false,\n        \"contact_info\": {},\n        \"profile_scrap_flag\": true,\n        \"failure_reason\": null,\n        \"profile_csv_url\": null,\n        \"premium_subscription_flag\": \"unknown\",\n        \"fail_count\": 0,\n        \"open_inmail_flag\": \"unknown_data\",\n        \"company_url\": \"https://www.linkedin.com/company/marketing-solutions-llc/\",\n        \"industry\": \"Marketing Services\",\n        \"enrich_flag\": false,\n        \"education\": null,\n        \"company\": null,\n        \"followers_count\": null,\n        \"member_step_information\": null\n      },\n      {\n        \"id\": \"encrypted_member_id_3\",\n        \"linkedin_user_information_id\": \"encrypted_user_info_id_3\",\n        \"user_id\": \"encrypted_user_id_3\",\n        \"profile_id\": \"sample_profile_id_3\",\n        \"public_identifier\": \"robert-johnson-456789123\",\n        \"images\": [],\n        \"occupation\": \"Data Analyst | Business Intelligence Specialist\",\n        \"name\": \"Robert Johnson\",\n        \"status\": true,\n        \"degree_connection\": \" • 1st\",\n        \"linkedin_user_campaign_id\": \"encrypted_campaign_id_1\",\n        \"created_at\": \"2025-03-10T04:09:24.000Z\",\n        \"updated_at\": \"2025-03-10T04:09:24.000Z\",\n        \"pending_invitation\": null,\n        \"profile_url\": \"https://www.linkedin.com/in/robert-johnson-456789123\",\n        \"action_type\": null,\n        \"action_value\": null,\n        \"location\": null,\n        \"addition_detail\": null,\n        \"deleted_at\": null,\n        \"sales_navigator_profile_id\": null,\n        \"clean_first_name\": \"Robert\",\n        \"clean_last_name\": \"Johnson\",\n        \"about_us\": null,\n        \"tenure_at_company\": {},\n        \"tenure_at_position\": {},\n        \"company_name\": null,\n        \"metadata\": {},\n        \"no_of_connections\": null,\n        \"member_badges\": {},\n        \"sales_navigator_profile_scrap_flag\": false,\n        \"contact_info\": {},\n        \"profile_scrap_flag\": true,\n        \"failure_reason\": null,\n        \"profile_csv_url\": null,\n        \"premium_subscription_flag\": \"unknown\",\n        \"fail_count\": 0,\n        \"open_inmail_flag\": \"unknown_data\",\n        \"company_url\": null,\n        \"industry\": null,\n        \"enrich_flag\": false,\n        \"education\": null,\n        \"company\": null,\n        \"followers_count\": null,\n        \"member_step_information\": null\n      }\n    ],\n    \"total_campaign_members\": 150,\n    \"company_names\": [\n      \"Tech Innovations Inc.\",\n      \"Marketing Solutions LLC\",\n      \"Data Analytics Corp\",\n      \"Global Consulting Group\"\n    ]\n  }\n}"}],"_postman_id":"27b659be-a414-4bf2-a568-289f730ca42b"},{"name":"Add lead list to campaign","id":"db9c3b55-856c-465d-8906-7fe8d4ca671a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"campaign_id\": \"aUtFU0xqZndSTTFSYzdMU3lqVT0tLUg5ZFJzWk5BWitWcVdvUDEtLU9sQ1ZVWFM0U1Y0cysvOVBuQXpUaGc9PQ==\",\n    \"lead_list_id\": \"dndPeTBtdUJENW1MMG5kRVZRdz0tLUlWN2NqemF6RFV6anBzc2stLXdaRzJOZzAzREorcTU0U0hoWGdUNkE9PQ==\",\n    \"lead_ids\": [\"bndMWW5mRGo3djZMVVJiVFdoMmo0eXM9LS1jTVRGNUo1VmthdUtNSjdYLS0vTTlvNTlnSzdWU3MyK1I3Rm95akt3PT0=\" ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/add-leads-to-campaign","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["add-leads-to-campaign"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"a4fee543-c64e-423d-9880-bffef338bdb3","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{api_key}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"campaign_id\": \"encrypted_campaign_id_1\",\n    \"lead_list_id\": \"encrypted_lead_list_id_1\",\n    \"lead_ids\": [\"lead_id_1\",\n        \"lead_id_2\",\n        \"lead_id_3\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/add-leads-to-campaign"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:33:36 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"72f68f56bd73299bdcb918326599a3e8\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"61ad2562-6618-4cc7-8fa9-2706502780e6"},{"key":"X-Runtime","value":"6.721281"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": true,\n    \"message\": \"Leads added to campaign routine successfully\"\n}"}],"_postman_id":"db9c3b55-856c-465d-8906-7fe8d4ca671a"},{"name":"Add leads to campaign","id":"80c2de10-e6e5-4763-973c-cca98eef68b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_sender_id\": \"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==\",\n     \"campaign_id\": \"aE1CUkFGTTBTMUlCSTlGdEF2cz0tLWx0NFQ4eWVrdXAxQXVrWWYtLTVOc1JKWUlGTkFDSGVsYjdFUlA1ZXc9PQ==\",\n    // \"lead_name\": \"Test-123-ravi-post\",\n    \"lead_list_id\": \"SGRtUU93QVBWY3BlWHQ3cE5xZz0tLXZiR1lqekNHQkg4SUh4UnItLWQvd2djTTRBUDdTWnBMZ2NyZ2pyZ0E9PQ==\",\n    \"profiles\": [\n        {\n            \"profile_url\": \"https://www.linkedin.com/in/christian-wattig/\"\n        },\n        {\n            \"profile_url\": \"https://www.linkedin.com/in/thefpandaguy/\"\n        },\n        {\n            \"profile_url\": \"https://www.linkedin.com/in/neilkpatel//\"\n        },\n        {\n            \"profile_url\": \"https://www.linkedin.com/in/justinwelsh/\"\n        }\n    ],\n    \"lead_count\": 1000\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/lead-list","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["lead-list"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"a4b02354-eea0-4d55-afbb-95223c5319ec","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_id\": \"encrypted_linkedin_user_id_1\",\n  \"campaign_id\": \"encrypted_campaign_id_1\",\n  \"organisation_member_id\": \"encrypted_org_member_id_1\",\n  \"campaign_type\": \"shared_campaign\",\n  \"campaign_name\": \"Sample Campaign Name\",\n  \"lead_list_id\": \"encrypted_lead_list_id_1\", //optional\n  \"profiles\": [\n    {\n      \"profile_url\": \"https://www.linkedin.com/in/sample-profile-1/\"\n    },\n    {\n      \"profile_url\": \"https://www.linkedin.com/in/sample-profile-2/\"\n    },\n    {\n      \"profile_url\": \"https://www.linkedin.com/in/sample-profile-3/\"\n    }\n  ],\n  \"lead_count\": 1000\n}","options":{"raw":{"language":"json"}}},"url":"https://api.konnector.ai/social_app/api/v1/third_party/lead-list"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.18.0 (Ubuntu)"},{"key":"Date","value":"Tue, 05 Aug 2025 11:37:05 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"db8a591d920a4fda6805347005be2cb0\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"e3bd9f0d-2bcc-47b9-a275-5a2f9bf72a57"},{"key":"X-Runtime","value":"0.048462"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": true,\n    \"message\": \"Lead list data saved\"\n}"}],"_postman_id":"80c2de10-e6e5-4763-973c-cca98eef68b6"}],"id":"0727fa1e-fa7d-4c2f-8bef-1571f694dccb","_postman_id":"0727fa1e-fa7d-4c2f-8bef-1571f694dccb","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Linkedin Network","item":[{"name":"linkedin senders","id":"a2c4f835-70b1-4c5a-b4d1-6e21c0ca797d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://api.konnector.ai/social_app/api/v1/third_party/linkedin-senders","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"protocol":"https","path":["social_app","api","v1","third_party","linkedin-senders"],"host":["api","konnector","ai"],"query":[],"variable":[]}},"response":[{"id":"8a9dea5b-f848-4924-b3c8-308a19826054","name":"Success","originalRequest":{"method":"GET","header":[],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/linkedin-senders"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:34:05 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"0043cd78be06a310917d7bd93658b5d9\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"8f7f286a-e12a-4d68-ba60-283eab70a320"},{"key":"X-Runtime","value":"0.358024"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Linkedin senders fetched successfully\",\n  \"data\": [\n    {\n      \"name\": \"John Smith\",\n      \"public_identifier\": \"john-smith-marketing\",\n      \"profile_url\": \"https://www.linkedin.com/in/john-smith-marketing\",\n      \"email\": \"john.smith@example.com\",\n      \"status\": \"success\",\n      \"message\": \"Login Successfully with existing session\",\n      \"total_connections\": 2128,\n      \"total_recieved_invitations\": 22,\n      \"total_sent_invitations\": 441,\n      \"total_profile_viewers\": 248,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 2,\n      \"id\": \"encrypted_sender_id_1\"\n    },\n    {\n      \"name\": \"Jane Doe\",\n      \"public_identifier\": \"jane-doe-consultant\",\n      \"profile_url\": \"https://www.linkedin.com/in/jane-doe-consultant\",\n      \"email\": \"jane.doe@example.com\",\n      \"status\": \"created\",\n      \"message\": null,\n      \"total_connections\": 2783,\n      \"total_recieved_invitations\": 171,\n      \"total_sent_invitations\": 100,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 3,\n      \"id\": \"encrypted_sender_id_2\"\n    },\n    {\n      \"name\": \"Mike Johnson\",\n      \"public_identifier\": \"mike-johnson-sales\",\n      \"profile_url\": \"https://www.linkedin.com/in/mike-johnson-sales\",\n      \"email\": \"mike.johnson@example.com\",\n      \"status\": \"created\",\n      \"message\": null,\n      \"total_connections\": 1481,\n      \"total_recieved_invitations\": 32,\n      \"total_sent_invitations\": 409,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": null,\n      \"recruiter_lite_flag\": null,\n      \"is_paid\": true,\n      \"organisation_member_id\": 4,\n      \"id\": \"encrypted_sender_id_3\"\n    },\n    {\n      \"name\": \"Test User\",\n      \"public_identifier\": null,\n      \"profile_url\": null,\n      \"email\": \"test.user@example.com\",\n      \"status\": \"wrong_credentials\",\n      \"message\": \"Wrong email or password. Try again or create an account.\",\n      \"total_connections\": 0,\n      \"total_recieved_invitations\": 0,\n      \"total_sent_invitations\": 0,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 5,\n      \"id\": \"encrypted_sender_id_4\"\n    },\n    {\n      \"name\": \"Sarah Wilson\",\n      \"public_identifier\": \"sarah-wilson-hr\",\n      \"profile_url\": \"https://www.linkedin.com/in/sarah-wilson-hr\",\n      \"email\": \"sarah.wilson@example.com\",\n      \"status\": \"success\",\n      \"message\": \"Login Successfully.\",\n      \"total_connections\": 1489,\n      \"total_recieved_invitations\": 0,\n      \"total_sent_invitations\": 0,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 7,\n      \"id\": \"encrypted_sender_id_5\"\n    },\n    {\n      \"name\": \"David Brown\",\n      \"public_identifier\": \"david-brown-tech\",\n      \"profile_url\": \"https://www.linkedin.com/in/david-brown-tech\",\n      \"email\": \"david.brown@example.com\",\n      \"status\": \"success\",\n      \"message\": \"Login Successfully.\",\n      \"total_connections\": 1095,\n      \"total_recieved_invitations\": 5,\n      \"total_sent_invitations\": 41,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 9,\n      \"id\": \"encrypted_sender_id_6\"\n    },\n    {\n      \"name\": \"Lisa Garcia\",\n      \"public_identifier\": \"lisa-garcia-marketing\",\n      \"profile_url\": \"https://www.linkedin.com/in/lisa-garcia-marketing\",\n      \"email\": \"lisa.garcia@example.com\",\n      \"status\": \"failed\",\n      \"message\": \"Request Timeout! Please Try Again.\",\n      \"total_connections\": 1600,\n      \"total_recieved_invitations\": 22,\n      \"total_sent_invitations\": 377,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 10,\n      \"id\": \"encrypted_sender_id_7\"\n    },\n    {\n      \"name\": \"Robert Taylor\",\n      \"public_identifier\": \"robert-taylor-business\",\n      \"profile_url\": \"https://www.linkedin.com/in/robert-taylor-business\",\n      \"email\": \"robert.taylor@example.com\",\n      \"status\": \"success\",\n      \"message\": \"Login Successfully.\",\n      \"total_connections\": 4241,\n      \"total_recieved_invitations\": 11,\n      \"total_sent_invitations\": 1743,\n      \"total_profile_viewers\": 365,\n      \"sales_navigator_flag\": true,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 13,\n      \"id\": \"encrypted_sender_id_8\"\n    },\n    {\n      \"name\": \"Amanda Wilson\",\n      \"public_identifier\": \"amanda-wilson-operations\",\n      \"profile_url\": \"https://www.linkedin.com/in/amanda-wilson-operations\",\n      \"email\": \"amanda.wilson@example.com\",\n      \"status\": null,\n      \"message\": null,\n      \"total_connections\": 0,\n      \"total_recieved_invitations\": 0,\n      \"total_sent_invitations\": 0,\n      \"total_profile_viewers\": null,\n      \"sales_navigator_flag\": false,\n      \"recruiter_lite_flag\": false,\n      \"is_paid\": true,\n      \"organisation_member_id\": 15,\n      \"id\": \"encrypted_sender_id_9\"\n    }\n  ]\n}"}],"_postman_id":"a2c4f835-70b1-4c5a-b4d1-6e21c0ca797d"}],"id":"41d8e969-6c2b-44f2-9196-0e27b82990bd","_postman_id":"41d8e969-6c2b-44f2-9196-0e27b82990bd","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Comment Management","item":[{"name":"comments list","id":"f4523bdd-202d-406d-887b-838895c69083","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/comments-list?organisation_member_id=UDdHVUc4ZW5oNlBGNnE0PS0tRTQ4cnZoYndUWWZPM2grRy0tbWk2VzBmNjE5TUpDL0l3TFA2RmFTZz09&status=approved","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["comments-list"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"disabled":true,"key":"linkedin_user_information_ids","value":"[367, 379, 400, 401, 402, 413, 417, 420, 422, 423, 434, 457, 595, 765, 982, 989]"},{"disabled":true,"key":"unassigned_flag","value":"true"},{"key":"organisation_member_id","value":"UDdHVUc4ZW5oNlBGNnE0PS0tRTQ4cnZoYndUWWZPM2grRy0tbWk2VzBmNjE5TUpDL0l3TFA2RmFTZz09"},{"key":"status","value":"approved"}],"variable":[]}},"response":[{"id":"644dc396-3ae5-4642-826d-14fdc6a9a4ac","name":"Success","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/comments-list?linkedin_user_information_ids=[encrypted_id]&unassigned_flag=boolean&organisation_member_id=encrypted_id&status=approved","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["comments-list"],"query":[{"key":"linkedin_user_information_ids","value":"[encrypted_id]"},{"key":"unassigned_flag","value":"boolean"},{"key":"organisation_member_id","value":"encrypted_id"},{"key":"status","value":"approved"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:36:31 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"88a6639df8f5d04a3b5b9214a793ece0\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"1556f9fc-d753-4d3c-9a60-993b676573d5"},{"key":"X-Runtime","value":"0.067706"}],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Approval requests fetched successfully\",\n  \"data\": {\n    \"approval_requests\": [\n      {\n        \"linkedin_campaign_member_id\": \"encrypted_id\",\n        \"id\": \"encrypted_id\",\n        \"campaign_name\": \"Sample Campaign Name\",\n        \"li_user_email\": \"user1@example.com\",\n        \"li_user_name\": \"John Doe\",\n        \"li_user_image\": [\n          \"https://example.com/sample-profile-image-100.jpg\",\n          \"https://example.com/sample-profile-image-200.jpg\",\n          \"https://example.com/sample-profile-image-400.jpg\",\n          \"https://example.com/sample-profile-image-800.jpg\"\n        ],\n        \"post_url\": \"https://www.linkedin.com/posts/sample-author_sample-post-activity-1234567890-abcd\",\n        \"author\": \"Sample Author\",\n        \"author_images\": [\n          \"https://example.com/sample-author-image-100.jpg\",\n          \"https://example.com/sample-author-image-200.jpg\",\n          \"https://example.com/sample-author-image-400.jpg\",\n          \"https://example.com/sample-author-image-800.jpg\"\n        ],\n        \"is_approved\": true,\n        \"post_message\": \"This is a sample LinkedIn post content that would be shown in the approval request system.\",\n        \"linkedin_campaign_routine_id\": 1001,\n        \"linkedin_campaign_routine_step_id\": 2001,\n        \"comments\": [\n          {\n            \"uid\": \"1001-1234567-1\",\n            \"comment\": \"This is a sample comment that would be posted on the LinkedIn post.\",\n            \"updated_at\": \"2025-07-18T04:21:07.903Z\",\n            \"approval_status\": \"approved\",\n            \"original_comment\": \"This is a sample comment that would be posted on the LinkedIn post.\"\n          }\n        ],\n        \"uuid\": \"sample-uuid-123\",\n        \"post_summary\": null,\n        \"post_time\": null,\n        \"post_time_in_words\": null\n      },\n      {\n        \"linkedin_campaign_member_id\": \"encrypted_id\",\n        \"id\": \"encrypted_id\",\n        \"campaign_name\": \"Sample Campaign Name\",\n        \"li_user_email\": \"user2@example.com\",\n        \"li_user_name\": \"Jane Smith\",\n        \"li_user_image\": [\n          \"https://example.com/sample-profile-image2-100.jpg\",\n          \"https://example.com/sample-profile-image2-200.jpg\",\n          \"https://example.com/sample-profile-image2-400.jpg\",\n          \"https://example.com/sample-profile-image2-800.jpg\"\n        ],\n        \"post_url\": \"https://www.linkedin.com/posts/sample-author2_business-strategy-activity-2345678901-efgh\",\n        \"author\": \"Sample Author 2\",\n        \"author_images\": [\n          \"https://example.com/sample-author2-image-100.jpg\",\n          \"https://example.com/sample-author2-image-200.jpg\",\n          \"https://example.com/sample-author2-image-400.jpg\",\n          \"https://example.com/sample-author2-image-800.jpg\"\n        ],\n        \"is_approved\": false,\n        \"post_message\": \"Another sample LinkedIn post content discussing business strategies and growth tactics.\",\n        \"linkedin_campaign_routine_id\": 1002,\n        \"linkedin_campaign_routine_step_id\": 2002,\n        \"comments\": [\n          {\n            \"uid\": \"1002-2345678-1\",\n            \"comment\": \"Great insights on business strategy! Looking forward to implementing these ideas.\",\n            \"updated_at\": \"2025-07-16T03:47:56.935Z\",\n            \"approval_status\": \"pending\",\n            \"original_comment\": \"Great insights on business strategy! Looking forward to implementing these ideas.\"\n          }\n        ],\n        \"uuid\": \"sample-uuid-456\",\n        \"post_summary\": \"Business strategy discussion\",\n        \"post_time\": \"2025-01-15T10:30:00Z\",\n        \"post_time_in_words\": \"2 hours ago\"\n      },\n      {\n        \"linkedin_campaign_member_id\": \"encrypted_id\",\n        \"id\": \"encrypted_id\",\n        \"campaign_name\": \"Sample Campaign Name\",\n        \"li_user_email\": \"user3@example.com\",\n        \"li_user_name\": \"Mike Johnson\",\n        \"li_user_image\": [],\n        \"post_url\": \"https://www.linkedin.com/posts/sample-author3_technology-innovation-activity-3456789012-ijkl\",\n        \"author\": \"Sample Author 3\",\n        \"author_images\": [\n          \"https://example.com/sample-author3-image-100.jpg\",\n          \"https://example.com/sample-author3-image-200.jpg\",\n          \"https://example.com/sample-author3-image-400.jpg\",\n          \"https://example.com/sample-author3-image-800.jpg\"\n        ],\n        \"is_approved\": true,\n        \"post_message\": \"Sample post about technology trends and innovation in the current market landscape.\",\n        \"linkedin_campaign_routine_id\": 1003,\n        \"linkedin_campaign_routine_step_id\": 2003,\n        \"comments\": [\n          {\n            \"uid\": \"1003-3456789-1\",\n            \"comment\": \"Interesting perspective on technology trends. Thanks for sharing!\",\n            \"updated_at\": \"2025-04-27T16:34:41.643Z\",\n            \"approval_status\": \"approved\"\n          }\n        ],\n        \"uuid\": \"sample-uuid-789\",\n        \"post_summary\": null,\n        \"post_time\": null,\n        \"post_time_in_words\": null\n      }\n    ]\n  },\n  \"total_records\": 3\n}"}],"_postman_id":"f4523bdd-202d-406d-887b-838895c69083"},{"name":"set-comment","id":"18bbadc7-1673-4310-bd29-4b4f33da6d8a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"comment\": \"Fascinating tool! I've always been curious how technology perceives and processes different English accents, especially with such global diversity.\",\n    \"uid\": \"2420-4604735-1\",\n    \"id\": 287,\n    \"action_type\": \"approve\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/set-comment","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["set-comment"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"a4899ca2-be43-475a-905a-456753a294a8","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"comment\": \"Fascinating tool! I've always been curious how technology perceives and processes different English accents, especially with such global diversity.\",\n    \"uid\": \"2420-4604735-1\",\n    \"id\": 287,\n    \"action_type\": \"approve\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/set-comment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:37:49 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"6a42561da466a68a15f17355f68cb982\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"1780a2be-63c3-41b9-b51c-257be8ef8374"},{"key":"X-Runtime","value":"0.098895"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": \"approved\",\n    \"message\": \"Comment approved successfully\"\n}"}],"_postman_id":"18bbadc7-1673-4310-bd29-4b4f33da6d8a"}],"id":"d8520455-54c0-4ae4-bd9a-1a7396894121","_postman_id":"d8520455-54c0-4ae4-bd9a-1a7396894121","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Chat Management","item":[{"name":"chat members","id":"c224e5cc-52ea-4c2b-af57-57e7fadfb0ac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_information_ids\": [\n        \"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/chat-members","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["chat-members"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"6c46feb5-094a-440a-a9fe-d322cbcb7bea","name":"Success","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_ids\": [\n        \"encrypted_linkedin_user_id_1\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/chat-members"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:38:39 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"64844e780624ab17fe8a72c8bced33e1\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"d60afa87-1bb9-4d4d-9122-11bfd8528bfa"},{"key":"X-Runtime","value":"0.963335"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": true,\n    \"message\": \"Linkedin Conversation Members\",\n    \"data\": {\n        \"members\": [\n            {\n                \"id\": \"encrypted_id\",\n                \"linkedin_user_information_id\": \"encrypted_ID\",\n                \"user_id\": \"encrypted_user_id\",\n                \"profile_id\": \"ACoAACNaM-oBLU52KTaOTqspHphjbnhGAPb4oZM\",\n                \"public_identifier\": null,\n                \"images\": [\n                    \"https://media.licdn.com/dms/image/v2/D5635AQFESzkTMo-sCg/profile-framedphoto-shrink_400_400/profile-framedphoto-shrink_400_400/0/1737612008025?e=1739775600&v=beta&t=6wZnjTvFpiGgM8-6BZ5TZ7PHV4D-lk78QZGhLLW0HPc\",\n                    \"https://media.licdn.com/dms/image/v2/D5635AQFESzkTMo-sCg/profile-framedphoto-shrink_200_200/profile-framedphoto-shrink_200_200/0/1737612008025?e=1739775600&v=beta&t=Zsq7V1Bn97PoCIqTY6H7gyY5eii32p4xBZelmHhvmbE\",\n                    \"https://media.licdn.com/dms/image/v2/D5635AQFESzkTMo-sCg/profile-framedphoto-shrink_800_800/profile-framedphoto-shrink_800_800/0/1737612008025?e=1739775600&v=beta&t=dDlQH_RdYwn2fjaup2PoA1Krr20R3ckKfzyao6M1fBw\",\n                    \"https://media.licdn.com/dms/image/v2/D5635AQFESzkTMo-sCg/profile-framedphoto-shrink_100_100/profile-framedphoto-shrink_100_100/0/1737612008006?e=1739775600&v=beta&t=NoQutLAeUmjpBm7NgACxFTrRoir9G-tVIwSe0QMCFj0\"\n                ],\n                \"occupation\": \"Senior Full Stack Developer (Node JS, React Js, Angular Js, AWS, React-Native)\",\n                \"first_name\": \"Aashish\",\n                \"last_name\": \"kumar\",\n                \"status\": true,\n                \"connection\": true,\n                \"conversation_urn\": \"2-NTg1N2JlNjQtMDYxYS00MTg0LTkyNGYtZGNkNWJmMmE5OGJlXzAxMA==\",\n                \"sub_type\": \"MEMBER_TO_MEMBER\",\n                \"created_at\": \"2025-02-10T06:00:29.000Z\",\n                \"updated_at\": \"2025-02-10T06:56:07.000Z\",\n                \"profile_url\": \"https://www.linkedin.com/in/ACoAACNaM-oBLU52KTaOTqspHphjbnhGAPb4oZM\",\n                \"last_activity_at\": 1739166685865,\n                \"sync_token\": \"0tG56J1l9Lem6p1lLnVybjpsaTpmYWJyaWM6cHJvZC1sb3IxAA==\",\n                \"chat_flag\": true,\n                \"deleted_at\": null,\n                \"sales_nav_conversation_urn\": null,\n                \"sales_navigator_profile_id\": null,\n                \"sales_navigator_activity_at\": null,\n                \"data_synced_at\": null,\n                \"user_token\": \"8729354779ec3f626ef99e8e31bb9229dfdb5449acdf5138656ef98aa0806262\",\n                \"p_name\": \"VS\",\n                \"member_tags\": [],\n                \"member_notes\": null,\n                \"conversation_message\": \"sure we can connect\",\n                \"conversation_time\": \"2025-02-10 06:21:09 UTC\"\n            },\n            {\n                \"id\": \"encrypted_id_2\",\n                \"linkedin_user_information_id\": \"encrypted_ID_2\",\n                \"user_id\": \"encrypted_user_id_2\",\n                \"profile_id\": \"ACoAAA1RU3YBtyWdaZfaJPaz9TMLlq6Wah6KS1w\",\n                \"public_identifier\": null,\n                \"images\": [\n                    \"https://media.licdn.com/dms/image/v2/D4D03AQG8LxKQi_h1IQ/profile-displayphoto-shrink_100_100/profile-displayphoto-shrink_100_100/0/1694090662170?e=1744848000&v=beta&t=jhtquvH6s_p5qReopHB5SWxI_3Zv65nI4pfMMMHb8Wo\"\n                ],\n                \"occupation\": \"? Helping Companies with SaaS Marketing ⚙ Automation Solutions ☁️ Salesforce Consultant\",\n                \"first_name\": \"Rahul\",\n                \"last_name\": \"Sharma ??\",\n                \"status\": true,\n                \"connection\": true,\n                \"conversation_urn\": \"2-NDhlNjQyOTgtMTVjMC00YTFjLTljNzgtMzYwZjdlOWM0YTE4XzAxMA==\",\n                \"sub_type\": \"MEMBER_TO_MEMBER\",\n                \"created_at\": \"2024-01-12T10:45:56.000Z\",\n                \"updated_at\": \"2025-02-10T06:02:18.000Z\",\n                \"profile_url\": \"https://www.linkedin.com/in/ACoAAA1RU3YBtyWdaZfaJPaz9TMLlq6Wah6KS1w\",\n                \"last_activity_at\": 1739166353009,\n                \"sync_token\": \"qKev5p1lvJ6c551lLnVybjpsaTpmYWJyaWM6cHJvZC1sb3IxAA==\",\n                \"chat_flag\": true,\n                \"deleted_at\": null,\n                \"sales_nav_conversation_urn\": null,\n                \"sales_navigator_profile_id\": null,\n                \"sales_navigator_activity_at\": null,\n                \"data_synced_at\": null,\n                \"user_token\": \"8729354779ec3f626ef99e8e31bb9229dfdb5449acdf5138656ef98aa0806262\",\n                \"p_name\": \"VS\",\n                \"member_tags\": [],\n                \"member_notes\": null,\n                \"conversation_message\": \"Hnji\",\n                \"conversation_time\": \"2025-02-10 05:45:53 UTC\"\n            }\n        ],\n        \"total_message_members\": 586\n    }\n}"}],"_postman_id":"c224e5cc-52ea-4c2b-af57-57e7fadfb0ac"},{"name":"chat member conversations","id":"9a3ae540-26d5-477a-87ae-e9ce928b4516","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_sender_id\": \"NVJjOEM5VURvMFdoSGlzRjZRPT0tLVNYa2VrcHlkdnF6MHBVYTItLUUzTUJwcTZwclExMlBwWkFITVQ1T2c9PQ==\",\n    \"linkedin_message_member_id\": \"MUcxeXE0Wng5Y0VtaHJnZUYzR00xUT09LS1WWWtVKzBTa3JjTlVXS2l3LS1lbzRUclRUN0h3TzVaRUNnR1prN2hRPT0=\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/member-conversations","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["member-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"c920e2a1-77aa-4e75-a45e-76ca13c44b44","name":"Success","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_id\": \"encrypted_id\",\n    \"linkedin_message_member_id\": \"encrypted_id\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/member-conversations"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:40:00 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"599fce98ef3916c820a9899d24d0043c\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"83bb5e05-8d48-479c-b2f3-652f60d7849d"},{"key":"X-Runtime","value":"0.093703"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": true,\n    \"message\": \"Member conversations\",\n    \"data\": {\n        \"conversations\": [\n            {\n                \"id\": \"encrypted_id\",\n                \"linkedin_user_information_id\": \"encrypted_ID\",\n                \"linkedin_message_member_id\": \"encrypted_member_id\",\n                \"user_id\": \"encrypted_user_id\",\n                \"message\": {\n                    \"_type\": \"com.linkedin.pemberly.text.AttributedText\",\n                    \"attributes\": [],\n                    \"text\": \"sure we can connect\",\n                    \"_recipeType\": \"com.linkedin.1ea7e24db829a1347b841f2dd496da36\"\n                },\n                \"message_created_at\": \"2025-02-10T06:21:09.000Z\",\n                \"from_member_type\": \"LinkedinMessageMember\",\n                \"from_member_id\": \"encrypted_member_id\",\n                \"to_member_type\": \"LinkedinUserInformation\",\n                \"to_member_id\": \"encrypted_ID\",\n                \"status\": true,\n                \"entity_urn\": \"urn:li:messagingMessage:2-MTczOTE2ODQ2OTI2MGI5ODg0MS0wMDEmNTg1N2JlNjQtMDYxYS00MTg0LTkyNGYtZGNkNWJmMmE5OGJlXzAxMA==\",\n                \"created_at\": \"2025-02-10T06:56:06.000Z\",\n                \"updated_at\": \"2025-02-10T06:56:07.000Z\",\n                \"message_type\": null\n            },\n            {\n                \"id\": \"encrypted_id_2\",\n                \"linkedin_user_information_id\": \"encrypted_ID\",\n                \"linkedin_message_member_id\": \"encrypted_member_id\",\n                \"user_id\": \"encrypted_user_id\",\n                \"message\": {\n                    \"_type\": \"com.linkedin.pemberly.text.AttributedText\",\n                    \"attributes\": [\n                        {\n                            \"start\": 3,\n                            \"length\": 14,\n                            \"_type\": \"com.linkedin.pemberly.text.Attribute\",\n                            \"_recipeType\": \"com.linkedin.91a2d9e032fa053fe3e1f7eb8b8fb33a\",\n                            \"attributeKind\": {\n                                \"hyperlink\": null,\n                                \"listItem\": null,\n                                \"paragraph\": null,\n                                \"lineBreak\": null,\n                                \"subscript\": null,\n                                \"underline\": null,\n                                \"superscript\": null,\n                                \"bold\": null,\n                                \"list\": null,\n                                \"italic\": null,\n                                \"entity\": {\n                                    \"urn\": \"urn:li:fsd_profile:ACoAAA3I7awBDQp0vMVwQq_GQF0BMLX2G8Un-to\",\n                                    \"_recipeType\": \"com.linkedin.eafe8089647b6274ef230c4d4f4f0564\",\n                                    \"_type\": \"com.linkedin.pemberly.text.Entity\"\n                                }\n                            }\n                        }\n                    ],\n                    \"text\": \"Hi @Varun Shanker\",\n                    \"_recipeType\": \"com.linkedin.1ea7e24db829a1347b841f2dd496da36\"\n                },\n                \"message_created_at\": \"2025-02-10T06:20:59.000Z\",\n                \"from_member_type\": \"LinkedinMessageMember\",\n                \"from_member_id\": \"encrypted_member_id\",\n                \"to_member_type\": \"LinkedinUserInformation\",\n                \"to_member_id\": \"encrypted_ID\",\n                \"status\": true,\n                \"entity_urn\": \"urn:li:messagingMessage:2-MTczOTE2ODQ1OTM0N2I3Mjg5Ni0wMDEmNTg1N2JlNjQtMDYxYS00MTg0LTkyNGYtZGNkNWJmMmE5OGJlXzAxMA==\",\n                \"created_at\": \"2025-02-10T06:56:07.000Z\",\n                \"updated_at\": \"2025-02-10T06:56:07.000Z\",\n                \"message_type\": null\n            },\n            {\n                \"id\": \"encrypted_id_3\",\n                \"linkedin_user_information_id\": \"encrypted_ID\",\n                \"linkedin_message_member_id\": \"encrypted_member_id\",\n                \"user_id\": \"encrypted_user_id\",\n                \"message\": {\n                    \"_type\": \"com.linkedin.pemberly.text.AttributedText\",\n                    \"attributes\": [],\n                    \"text\": \"HI, Aashish\",\n                    \"_recipeType\": \"com.linkedin.1ea7e24db829a1347b841f2dd496da36\"\n                },\n                \"message_created_at\": \"2025-02-10T06:19:33.000Z\",\n                \"from_member_type\": \"LinkedinUserInformation\",\n                \"from_member_id\": \"encrypted_ID\",\n                \"to_member_type\": \"LinkedinMessageMember\",\n                \"to_member_id\": \"encrypted_member_id\",\n                \"status\": true,\n                \"entity_urn\": \"urn:li:messagingMessage:2-MTczOTE2ODM3MzQ5M2I5Mjc1OC0wMDEmNTg1N2JlNjQtMDYxYS00MTg0LTkyNGYtZGNkNWJmMmE5OGJlXzAxMA==\",\n                \"created_at\": \"2025-02-10T06:56:07.000Z\",\n                \"updated_at\": \"2025-02-10T06:56:07.000Z\",\n                \"message_type\": null\n            },\n            {\n                \"id\": \"encrypted_id_4\",\n                \"linkedin_user_information_id\": \"encrypted_ID\",\n                \"linkedin_message_member_id\": \"encrypted_member_id\",\n                \"user_id\": \"encrypted_user_id\",\n                \"message\": {\n                    \"_type\": \"com.linkedin.pemberly.text.AttributedText\",\n                    \"attributes\": [],\n                    \"text\": \"Hi, Aashish would like to connect\",\n                    \"_recipeType\": \"com.linkedin.1ea7e24db829a1347b841f2dd496da36\"\n                },\n                \"message_created_at\": \"2025-02-10T05:51:25.000Z\",\n                \"from_member_type\": \"LinkedinUserInformation\",\n                \"from_member_id\": \"encrypted_ID\",\n                \"to_member_type\": \"LinkedinMessageMember\",\n                \"to_member_id\": \"encrypted_member_id\",\n                \"status\": true,\n                \"entity_urn\": \"urn:li:messagingMessage:2-MTczOTE2NjY4NTU5NGI4NzUwNC0wMDEmNTg1N2JlNjQtMDYxYS00MTg0LTkyNGYtZGNkNWJmMmE5OGJlXzAxMA==\",\n                \"created_at\": \"2025-02-10T06:01:36.000Z\",\n                \"updated_at\": \"2025-02-10T06:01:36.000Z\",\n                \"message_type\": null\n            }\n        ],\n        \"total_conversations\": 4,\n        \"failed_messages\": []\n    }\n}"}],"_postman_id":"9a3ae540-26d5-477a-87ae-e9ce928b4516"},{"name":"send chat","id":"51eaddd8-8e58-460e-8d67-12f7146cd22d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_information_id\": \"encrypted_linkedin_sender_id\",\n    \"profile_id\": \"ACoAAAOIVC4Bu2FSBedyGpO3wwx-HKulWg31O3k\",\n    \"message\": \"hey\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/send_message","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["send_message"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"e3432ad8-cbcc-4883-9fae-b088c58a6bf8","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"linkedin_user_information_id\": \"encrypted_linkedin_sender_id\",\n    \"profile_id\": \"ACoAAAOIVC4Bu2FSBedyGpO3wwx-HKulWg31O3k\",\n    \"message\": \"hey\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/send_message"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:40:54 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"b4d184067a40ae7c65828b9d2d32e6bd\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"badec64a-6999-4219-a3b0-6c7467e15815"},{"key":"X-Runtime","value":"1.713704"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"status\": true,\n    \"message\": \"Message sent successfully\",\n    \"data\": {}\n}"}],"_postman_id":"51eaddd8-8e58-460e-8d67-12f7146cd22d"}],"id":"8b14e4ac-392d-4d07-86f3-307d8618abb4","_postman_id":"8b14e4ac-392d-4d07-86f3-307d8618abb4","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Webhook Management","item":[{"name":"create webhook","id":"7ed30cc3-86c3-4cf6-aa75-ad0f90d591ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"level\": \"user\",\n    \"url\": \"https://your-webhook-endpoint.com/webhook\",\n    \"events\": [\n        \"email_sent\"\n    ],\n    \"status\": \"active\",\n    \"name\": \"My Webhook\",\n    \"all_campaigns\": true,\n    \"organisation_member_id\": \"UDdHVUc4ZW5oNlBGNnE0PS0tRTQ4cnZoYndUWWZPM2grRy0tbWk2VzBmNjE5TUpDL0l3TFA2RmFTZz09\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/create-webhook","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["create-webhook"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"ffce895f-395a-4f64-b7e3-a019514f75a4","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"level\": \"user\",\n    \"url\": \"https://your-webhook-endpoint.com/webhook\",\n    \"events\": [\n        \"email_sent\"\n    ],\n    \"status\": \"active\",\n    \"name\": \"My Webhook\",\n    \"all_campaigns\": true,\n    \"organisation_member_id\": \"encrypted_id\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/create-webhook"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:41:19 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"1929149e2b14cfe04fa366e640d8879f\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"874fff1f-265d-4ad3-a7db-32107dd958f8"},{"key":"X-Runtime","value":"0.093463"}],"cookie":[],"responseTime":null,"body":"{\n   \"code\": 200,\n   \"status\": true,\n   \"message\": \"Webhook created successfully\",\n   \"data\": {\n       \"webhook\": {\n           \"id\": \"encrypted_id\",\n           \"url\": \"https://your-webhook-endpoint.com/webhook\",\n           \"api_key\": \"9ae64e710ba6d7f1a0b2c45e337ea467\",\n           \"status\": true,\n           \"events\": [\n               \"email_sent\"\n           ],\n           \"meta\": {\n               \"level\": \"user\",\n               \"all_campaigns\": true,\n               \"webhook_name\": \"My Webhook\"\n           },\n           \"user_id\": null,\n           \"linkedin_user_information_id\": null,\n           \"created_at\": \"2025-07-25T08:41:19.000Z\",\n           \"updated_at\": \"2025-07-25T08:41:19.000Z\",\n           \"organisation_id\": 2,\n           \"organisation_member_id\": 2\n       }\n   }\n}"}],"_postman_id":"7ed30cc3-86c3-4cf6-aa75-ad0f90d591ae"},{"name":"update webhook","id":"c4c64801-9c51-45dd-8891-2565cd04b711","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    // \"level\": \"user\",\n    // \"url\": \"https://your-webhook-endpoint.com/webhook\",\n    // \"events\": [\n    //     \"email_sent\"\n    // ],\n    \"id\": \"RjBoZmVRRGRtbTBnZU5vSi0tVDViamhWZzR2WVp1NW0zSy0tZWl2VzdVRFVhanBTc3MwVHZPdkFDQT09\",\n    \"activate\": false\n    // \"status\": \"active\",\n    // \"name\": \"My Webhook\",\n    // \"all_campaigns\": true,\n    // \"organisation_member_id\": \"UDdHVUc4ZW5oNlBGNnE0PS0tRTQ4cnZoYndUWWZPM2grRy0tbWk2VzBmNjE5TUpDL0l3TFA2RmFTZz09\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/update-webhook","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["update-webhook"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"4373c6f9-c1e8-426d-932b-e159cc41372f","name":"Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"level\": \"user\",\n    \"url\": \"https://your-webhook-endpoint.com/webhook\",\n    \"events\": [\n        \"email_sent\"\n    ],\n    \"id\": \"encrypted_webhook_id\",\n    \"activate\": false,\n    \"status\": \"active\",\n    \"name\": \"My Webhook\",\n    \"all_campaigns\": true,\n    \"organisation_member_id\": \"encrypted_id\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/update-webhook"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:41:43 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"672499a1f80543e2d20ef3c300d080e4\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"a6ba09c7-14d7-48f8-b682-3fd40b2ae86d"},{"key":"X-Runtime","value":"0.033061"}],"cookie":[],"responseTime":null,"body":"{\n   \"code\": 200,\n   \"status\": true,\n   \"message\": \"Webhook deactivated successfully\",\n   \"data\": {\n       \"webhook\": {\n           \"id\": \"encrypted_id\",\n           \"api_key\": \"bedd83a8740d09db139b88c0dd8e278d\",\n           \"url\": \"https://your-webhook-endpoint.com/webhook_del\",\n           \"events\": [\n               \"email_sent\"\n           ],\n           \"meta\": {\n               \"level\": \"user\",\n               \"all_campaigns\": true,\n               \"webhook_name\": \"My Webhook\",\n               \"deleted\": true,\n               \"deleted_at\": \"2025-07-21T06:49:22.319Z\",\n               \"campaign_id\": []\n           },\n           \"status\": false,\n           \"user_id\": null,\n           \"organisation_id\": 2,\n           \"organisation_member_id\": \"encrypted_member_id\",\n           \"linkedin_user_information_id\": null,\n           \"is_associated_with_multiple_campaign\": false,\n           \"created_at\": \"2025-07-21T05:19:58.000Z\",\n           \"updated_at\": \"2025-07-21T06:49:22.000Z\"\n       }\n   }\n}"}],"_postman_id":"c4c64801-9c51-45dd-8891-2565cd04b711"},{"name":"get webhooks","id":"b5b4d95b-5071-4a25-a885-ded08c91d70a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/get-webhook?level=user","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["get-webhook"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"key":"level","value":"user"},{"disabled":true,"key":"id","value":"RjBoZmVRRGRtbTBnZU5vSi0tVDViamhWZzR2WVp1NW0zSy0tZWl2VzdVRFVhanBTc3MwVHZPdkFDQT09"}],"variable":[]}},"response":[{"id":"0a40ab21-3a59-4192-b392-61ddc910609f","name":"Success","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/get-webhook?level=user","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["get-webhook"],"query":[{"key":"level","value":"user"},{"key":"id","value":"RjBoZmVRRGRtbTBnZU5vSi0tVDViamhWZzR2WVp1NW0zSy0tZWl2VzdVRFVhanBTc3MwVHZPdkFDQT09","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Date","value":"Fri, 25 Jul 2025 08:42:00 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"ETag","value":"W/\"cb7a55f8dad80e12056bffeff9061847\""},{"key":"Cache-Control","value":"max-age=0, private, must-revalidate"},{"key":"X-Request-Id","value":"908eafd7-99b4-4cf5-9428-4af92d27efe2"},{"key":"X-Runtime","value":"0.050937"}],"cookie":[],"responseTime":null,"body":"{\n   \"code\": 200,\n   \"status\": true,\n   \"message\": \"Webhooks fetched successfully\",\n   \"data\": {\n       \"webhooks\": [\n           {\n               \"id\": \"encrypted_id\",\n               \"api_key\": \"9ae64e710ba6d7f1a0b2c45e337ea467\",\n               \"url\": \"https://your-webhook-endpoint.com/webhook\",\n               \"events\": [\n                   \"email_sent\"\n               ],\n               \"meta\": {\n                   \"level\": \"user\",\n                   \"all_campaigns\": true,\n                   \"webhook_name\": \"My Webhook\",\n                   \"campaign_id\": [\n                       \"encrypted_campaign_id_1\",\n                       \"encrypted_campaign_id_2\",\n                       \"encrypted_campaign_id_3\",\n                       \"encrypted_campaign_id_4\",\n                       \"encrypted_campaign_id_5\"\n                   ]\n               },\n               \"status\": true,\n               \"user_id\": null,\n               \"organisation_id\": 2,\n               \"organisation_member_id\": \"encrypted_member_id\",\n               \"linkedin_user_information_id\": null,\n               \"is_associated_with_multiple_campaign\": true,\n               \"created_at\": \"2025-07-25T08:41:19.000Z\",\n               \"updated_at\": \"2025-07-25T08:41:19.000Z\"\n           }\n       ],\n       \"total_webhooks\": 1\n   }\n}"}],"_postman_id":"b5b4d95b-5071-4a25-a885-ded08c91d70a"},{"name":"delete webhook","id":"31a4c7af-4f34-455f-85a0-19289a8d900f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/delete-webhook?id=encrypted_webhook_id","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["delete-webhook"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"key":"id","value":"encrypted_webhook_id"}],"variable":[]}},"response":[{"id":"24e7d1b4-875c-4840-b407-fc9fcdbf9f8d","name":"Error","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/delete-webhook?id=encrypted_webhook_id","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["delete-webhook"],"query":[{"key":"id","value":"encrypted_webhook_id"}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.18.0 (Ubuntu)"},{"key":"Date","value":"Tue, 05 Aug 2025 11:57:48 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"Referrer-Policy","value":"strict-origin-when-cross-origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Methods","value":"POST, PUT, DELETE, GET, PATCH, OPTIONS"},{"key":"Access-Control-Request-Method","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Api-Access-Token"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Request-Id","value":"6f4103cf-4bc3-4d9f-8601-3a8020e7f1b0"},{"key":"X-Runtime","value":"0.024699"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 404,\n    \"status\": false,\n    \"message\": \"Webhook not found\"\n}"}],"_postman_id":"31a4c7af-4f34-455f-85a0-19289a8d900f"}],"id":"f47bc3c1-b250-4c7b-a786-c61785eef240","_postman_id":"f47bc3c1-b250-4c7b-a786-c61785eef240","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Keyword Posts","item":[{"name":"Get Keyword Posts","id":"888c64b6-a3ac-4ba8-b10a-dda86f4c69dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_ids\": [\"encrypted_linkedin_user_id_1\", \"encrypted_linkedin_user_id_2\"],\n  \"member_id\": \"encrypted_member_id\",\n  \"keyword_name\": \"\",\n  \"page\": 1,\n  \"per_page\": 10\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/keyword_posts","description":"<h1 id=\"get-keyword-posts\">Get Keyword Posts</h1>\n<p>Retrieves keyword posts with their associated post details for the specified LinkedIn users.</p>\n<h2 id=\"request-parameters\">Request Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_user_ids</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>Array of encrypted LinkedIn user IDs</td>\n</tr>\n<tr>\n<td><code>member_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted organisation member ID</td>\n</tr>\n<tr>\n<td><code>keyword_name</code></td>\n<td>String</td>\n<td>No</td>\n<td>Filter by keyword name (case-insensitive partial match)</td>\n</tr>\n<tr>\n<td><code>page</code></td>\n<td>Integer</td>\n<td>No</td>\n<td>Page number (default: 1)</td>\n</tr>\n<tr>\n<td><code>per_page</code></td>\n<td>Integer</td>\n<td>No</td>\n<td>Items per page (default: 10)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response\">Response</h2>\n<p>Returns paginated keyword posts grouped by keyword with nested post details.</p>\n<h3 id=\"success-response-200-ok\">Success Response (200 OK)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"data\": [\n    {\n      \"keyword_id\": 123,\n      \"keyword_name\": \"AI technology\",\n      \"linkedin_user_id\": \"encrypted_id\",\n      \"linkedin_user_name\": \"John\",\n      \"member_id\": \"encrypted_member_id\",\n      \"total_posts\": 5,\n      \"posts\": [\n        {\n          \"post_id\": 456,\n          \"name\": \"Author Name\",\n          \"post\": \"Post content...\",\n          \"social_counts\": {\n            \"likes\": 100,\n            \"comments\": 25\n          },\n          \"profile_id\": \"linkedin_profile_id\"\n        }\n      ]\n    }\n  ],\n  \"pagination\": {\n    \"current_page\": 1,\n    \"total_pages\": 5,\n    \"total_count\": 50,\n    \"per_page\": 10\n  }\n}\n</code></pre>\n<h3 id=\"error-responses\">Error Responses</h3>\n<ul>\n<li><strong>400 Bad Request</strong>: Missing required parameters</li>\n<li><strong>500 Internal Server Error</strong>: Server error</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","keyword_posts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"29619084-6241-426e-a363-8925cc4f18b9","name":"Success Response","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_user_ids\": [\"encrypted_linkedin_user_id\"],\n  \"member_id\": \"encrypted_member_id\",\n  \"page\": 1,\n  \"per_page\": 10\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/keyword_posts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"data\": [\n    {\n      \"keyword_id\": 123,\n      \"keyword_name\": \"AI technology\",\n      \"linkedin_user_id\": \"enc_abc123xyz\",\n      \"linkedin_user_name\": \"John\",\n      \"member_id\": \"enc_def456uvw\",\n      \"total_posts\": 3,\n      \"posts\": [\n        {\n          \"post_id\": 456,\n          \"name\": \"Jane Smith\",\n          \"post\": \"Excited to share our latest AI research findings...\",\n          \"social_counts\": {\n            \"likes\": 150,\n            \"comments\": 32,\n            \"shares\": 18\n          },\n          \"profile_id\": \"ACoAABCD1234\"\n        },\n        {\n          \"post_id\": 457,\n          \"name\": \"Tech Innovator\",\n          \"post\": \"The future of machine learning is here...\",\n          \"social_counts\": {\n            \"likes\": 89,\n            \"comments\": 15,\n            \"shares\": 7\n          },\n          \"profile_id\": \"ACoAAEFGH5678\"\n        }\n      ]\n    }\n  ],\n  \"pagination\": {\n    \"current_page\": 1,\n    \"total_pages\": 5,\n    \"total_count\": 48,\n    \"per_page\": 10\n  }\n}"},{"id":"c539686f-0ab7-466b-998a-9e119353d2e9","name":"Missing Parameters Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/keyword_posts"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"error\": {\n    \"code\": \"VALIDATION_ERROR\",\n    \"message\": \"Missing required parameters: linkedin_user_ids\",\n    \"details\": null,\n    \"suggested_action\": \"Check your input parameters and try again\"\n  }\n}"}],"_postman_id":"888c64b6-a3ac-4ba8-b10a-dda86f4c69dc"}],"id":"743e3f0d-5dab-475a-920d-a57a7acd4927","description":"<p>Endpoints for retrieving keyword posts and their details.</p>\n","_postman_id":"743e3f0d-5dab-475a-920d-a57a7acd4927","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Social Signal Campaign","item":[{"name":"Preview Campaign","id":"1c08660d-863e-4343-94dd-321a3c438ba1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\", \"458\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id_1\"\n    },\n    {\n      \"keyword_id\": \"124\",\n      \"post_ids\": [\"459\", \"460\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id_2\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/preview_campaign","description":"<h1 id=\"preview-campaign\">Preview Campaign</h1>\n<p>Previews a campaign before creation, showing estimated leads and quota usage.</p>\n<h2 id=\"request-parameters\">Request Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>member_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted organisation member ID</td>\n</tr>\n<tr>\n<td><code>campaign_name</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Name for the campaign</td>\n</tr>\n<tr>\n<td><code>campaign_type</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Type of campaign (e.g., <code>shared_campaign</code>)</td>\n</tr>\n<tr>\n<td><code>stage</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Campaign stage (e.g., <code>awareness</code>, <code>consideration</code>, <code>decision</code>)</td>\n</tr>\n<tr>\n<td><code>selections</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>Array of keyword/post selections</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"selection-object\">Selection Object</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>keyword_id</code></td>\n<td>String</td>\n<td>Keyword post ID (from keyword_posts response)</td>\n</tr>\n<tr>\n<td><code>post_ids</code></td>\n<td>Array</td>\n<td>Array of post detail IDs to include</td>\n</tr>\n<tr>\n<td><code>linkedin_user_id</code></td>\n<td>String</td>\n<td>LinkedIn user ID associated with this keyword</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response\">Response</h2>\n<p>Returns preview information including estimated leads and quota validation.</p>\n<h3 id=\"success-response-200-ok\">Success Response (200 OK)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"estimated_leads\": 25,\n  \"quota_usage\": {\n    \"quota_exceeded\": false,\n    \"details\": {\n      \"863\": {\n        \"current_usage\": 10,\n        \"daily_limit\": 50,\n        \"available_quota\": 40,\n        \"reset_time\": \"2025-12-13T00:00:00Z\"\n      }\n    }\n  },\n  \"warnings\": [],\n  \"selections_summary\": [\n    {\n      \"keyword_id\": 123,\n      \"post_ids\": [456, 457],\n      \"linkedin_user_id\": 863,\n      \"leads_count\": 15\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"error-responses\">Error Responses</h3>\n<ul>\n<li><strong>400 Bad Request</strong>: Missing required parameters or invalid selections</li>\n<li><strong>500 Internal Server Error</strong>: Server error</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","preview_campaign"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"e889b567-640c-434d-898a-79761f96251c","name":"Success Response","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/preview_campaign"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"estimated_leads\": 25,\n  \"quota_usage\": {\n    \"quota_exceeded\": false,\n    \"details\": {\n      \"863\": {\n        \"current_usage\": 10,\n        \"daily_limit\": 50,\n        \"available_quota\": 40,\n        \"reset_time\": \"2025-12-13T00:00:00Z\"\n      }\n    }\n  },\n  \"warnings\": [],\n  \"selections_summary\": [\n    {\n      \"keyword_id\": 123,\n      \"post_ids\": [456, 457],\n      \"linkedin_user_id\": 863,\n      \"leads_count\": 25\n    }\n  ]\n}"},{"id":"a652784b-1dd5-49aa-8bfa-83201b1f1116","name":"Quota Exceeded Warning","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/preview_campaign"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"estimated_leads\": 25,\n  \"quota_usage\": {\n    \"quota_exceeded\": true,\n    \"details\": {\n      \"863\": {\n        \"current_usage\": 50,\n        \"daily_limit\": 50,\n        \"available_quota\": 0,\n        \"reset_time\": \"2025-12-13T00:00:00Z\"\n      }\n    }\n  },\n  \"warnings\": [\n    \"Comment generation quota exceeded for some accounts\"\n  ],\n  \"selections_summary\": [\n    {\n      \"keyword_id\": 123,\n      \"post_ids\": [456, 457],\n      \"linkedin_user_id\": 863,\n      \"leads_count\": 25\n    }\n  ]\n}"}],"_postman_id":"1c08660d-863e-4343-94dd-321a3c438ba1"},{"name":"Create Campaign from Keyword Posts","id":"134a1a01-65ce-4f8e-bcd5-047716e7ceea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"is_draft\": false,\n  \"time_zone\": \"UTC\",\n  \"max_campaign_days\": 180,\n  \"source\": \"social_signal_api\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\", \"458\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id_1\"\n    },\n    {\n      \"keyword_id\": \"124\",\n      \"post_ids\": [\"459\", \"460\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id_2\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts","description":"<h1 id=\"create-campaign-from-keyword-posts\">Create Campaign from Keyword Posts</h1>\n<p>Creates a new campaign from selected keyword posts. This endpoint supports multiple LinkedIn users in a single campaign.</p>\n<h2 id=\"request-parameters\">Request Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Default</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>member_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Encrypted organisation member ID</td>\n</tr>\n<tr>\n<td><code>campaign_name</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Unique name for the campaign</td>\n</tr>\n<tr>\n<td><code>campaign_type</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Type of campaign (<code>shared_campaign</code>)</td>\n</tr>\n<tr>\n<td><code>stage</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Campaign stage (<code>awareness</code>, <code>consideration</code>, <code>decision</code>)</td>\n</tr>\n<tr>\n<td><code>is_draft</code></td>\n<td>Boolean</td>\n<td>No</td>\n<td><code>false</code></td>\n<td>Create as draft (won't start immediately)</td>\n</tr>\n<tr>\n<td><code>time_zone</code></td>\n<td>String</td>\n<td>No</td>\n<td><code>UTC</code></td>\n<td>Campaign timezone</td>\n</tr>\n<tr>\n<td><code>max_campaign_days</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>180</code></td>\n<td>Maximum campaign duration in days</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td><code>social_signal_api</code></td>\n<td>Source identifier</td>\n</tr>\n<tr>\n<td><code>selections</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>-</td>\n<td>Array of keyword/post selections</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"selection-object\">Selection Object</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>keyword_id</code></td>\n<td>String</td>\n<td>Keyword post ID</td>\n</tr>\n<tr>\n<td><code>post_ids</code></td>\n<td>Array</td>\n<td>Array of post detail IDs to include</td>\n</tr>\n<tr>\n<td><code>linkedin_user_id</code></td>\n<td>String</td>\n<td>LinkedIn user ID for this selection</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"multi-user-support\">Multi-User Support</h2>\n<p>This endpoint supports creating campaigns with multiple LinkedIn users. Each selection can have a different <code>linkedin_user_id</code>, and the system will:</p>\n<ol>\n<li>Create <code>linkedin_campaign_routine_linkedin_accounts</code> records for all unique LinkedIn users</li>\n<li>Validate leads against all LinkedIn users in the selections</li>\n<li>Associate each lead with its correct LinkedIn user</li>\n</ol>\n<h2 id=\"default-campaign-configuration\">Default Campaign Configuration</h2>\n<p>When a campaign is created, the following defaults are automatically applied:</p>\n<h3 id=\"default-settings\">Default Settings</h3>\n<ul>\n<li>Email sources (CSV, LinkedIn profile, Konnector Email Finder)</li>\n<li>Comment settings (auto_comment disabled, wait_approval_continue strategy)</li>\n<li>Empty blacklist</li>\n<li>Empty AI prompts</li>\n</ul>\n<h3 id=\"default-steps\">Default Steps</h3>\n<ul>\n<li><code>social_comment_post</code> step with 90-day duration</li>\n</ul>\n<h2 id=\"response\">Response</h2>\n<h3 id=\"success-response-201-created\">Success Response (201 Created)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"routine_id\": \"encrypted_routine_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"total_members\": 25,\n  \"status\": \"active\",\n  \"created_at\": \"2025-12-12T12:00:00Z\",\n  \"generation_job_enqueued\": true\n}\n</code></pre>\n<h3 id=\"error-responses\">Error Responses</h3>\n<ul>\n<li><strong>400 Bad Request</strong>: Missing required parameters or validation error</li>\n<li><strong>409 Conflict</strong>: Duplicate request (same selections within 10 minutes)</li>\n<li><strong>429 Too Many Requests</strong>: Quota exceeded</li>\n<li><strong>500 Internal Server Error</strong>: Server error</li>\n</ul>\n<h2 id=\"idempotency\">Idempotency</h2>\n<p>This endpoint implements idempotency protection. If you send the same request (same organisation, member, and selections) within 10 minutes, you'll receive a 409 Conflict response.</p>\n<h2 id=\"campaign-name-uniqueness\">Campaign Name Uniqueness</h2>\n<p>Campaign names must be unique within an organization. If a campaign with the same name already exists (and is not deleted), the request will fail with a validation error.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create_campaign_from_keyword_posts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"9a6588cf-5845-4a86-b6f6-c2ef61b246bf","name":"Success Response","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"is_draft\": false,\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"routine_id\": \"enc_routine_abc123\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"total_members\": 25,\n  \"status\": \"active\",\n  \"created_at\": \"2025-12-12T12:00:00.000Z\",\n  \"generation_job_enqueued\": true\n}"},{"id":"48aea437-bbd8-47ea-abe1-73ed0192af5d","name":"Draft Campaign Response","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Draft Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"is_draft\": true,\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"routine_id\": \"enc_routine_def456\",\n  \"campaign_name\": \"My Draft Campaign\",\n  \"total_members\": 15,\n  \"status\": \"draft\",\n  \"created_at\": \"2025-12-12T12:00:00.000Z\",\n  \"generation_job_enqueued\": true\n}"},{"id":"b0e6524c-5fa7-4b55-9949-1a6b77f105b3","name":"Duplicate Request Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts"},"status":"Conflict","code":409,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"error\": {\n    \"code\": \"VALIDATION_ERROR\",\n    \"message\": \"Duplicate request\",\n    \"details\": {\n      \"error\": \"Campaign with these selections already exists\",\n      \"suggested_action\": \"Use different selections or wait 10 minutes before retrying\"\n    },\n    \"suggested_action\": \"Check your input parameters and try again\"\n  }\n}"},{"id":"63f33c66-68d8-40b2-83c0-44de48bad1f6","name":"Quota Exceeded Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"My Social Signal Campaign\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts"},"status":"Too Many Requests","code":429,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"error\": {\n    \"code\": \"QUOTA_EXCEEDED\",\n    \"message\": \"Quota exceeded\",\n    \"details\": {\n      \"863\": {\n        \"current_usage\": 50,\n        \"daily_limit\": 50,\n        \"available_quota\": 0,\n        \"reset_time\": \"2025-12-13T00:00:00Z\"\n      }\n    },\n    \"suggested_action\": \"Retry after quota reset or reduce selection size\"\n  }\n}"},{"id":"fec524d9-c57c-4138-a6e2-84ea8fd1cadf","name":"Campaign Name Already Exists Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_id\": \"encrypted_member_id\",\n  \"campaign_name\": \"Existing Campaign Name\",\n  \"campaign_type\": \"shared_campaign\",\n  \"stage\": \"awareness\",\n  \"selections\": [\n    {\n      \"keyword_id\": \"123\",\n      \"post_ids\": [\"456\", \"457\"],\n      \"linkedin_user_id\": \"encrypted_linkedin_user_id\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create_campaign_from_keyword_posts"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"error\": {\n    \"code\": \"VALIDATION_ERROR\",\n    \"message\": \"Failed to create campaign: Campaign name 'Existing Campaign Name' already exists in your organization\",\n    \"details\": null,\n    \"suggested_action\": \"Check your input parameters and try again\"\n  }\n}"}],"_postman_id":"134a1a01-65ce-4f8e-bcd5-047716e7ceea"}],"id":"2d7527cf-43ad-4c54-addc-b1ab34012034","description":"<p>Endpoints for previewing and creating campaigns from keyword posts.</p>\n","_postman_id":"2d7527cf-43ad-4c54-addc-b1ab34012034","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Posts","item":[{"name":"List Posts","id":"eed7c528-3672-4a66-8c04-b36cacbb35b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts?linkedin_sender_id=encrypted_linkedin_user_id&status=scheduled","description":"<h1 id=\"list-posts\">List Posts</h1>\n<p>Retrieves posts for a LinkedIn user, grouped by date.</p>\n<h2 id=\"query-parameters\">Query Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>String</td>\n<td>No</td>\n<td>Filter: <code>draft</code>, <code>scheduled</code>, <code>published</code></td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td>Set to <code>mcp</code> to use raw IDs</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Encrypted LinkedIn user ID (required)</p>\n","type":"text/plain"},"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"description":{"content":"<p>Filter: draft, scheduled, or published</p>\n","type":"text/plain"},"key":"status","value":"scheduled"},{"disabled":true,"description":{"content":"<p>Optional: set to 'mcp' to skip encryption</p>\n","type":"text/plain"},"key":"source","value":"mcp"}],"variable":[]}},"response":[{"id":"964d6639-5b80-4225-8955-ff97d8e0dabf","name":"Success - Scheduled Posts","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts?linkedin_sender_id=encrypted_linkedin_user_id&status=scheduled","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","posts"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id","description":"Encrypted LinkedIn user ID (required)"},{"key":"status","value":"scheduled","description":"Filter: draft, scheduled, or published"},{"key":"source","value":"mcp","description":"Optional: set to 'mcp' to skip encryption","disabled":true}]},"description":"# List Posts\n\nRetrieves posts for a LinkedIn user, grouped by date.\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `status` | String | No | Filter: `draft`, `scheduled`, `published` |\n| `source` | String | No | Set to `mcp` to use raw IDs |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Posts fetched successfully\",\n  \"data\": {\n    \"posts\": [\n      {\n        \"date\": \"2026-03-19\",\n        \"schedules\": [\n          {\n            \"id\": 101,\n            \"scheduled_id\": 201,\n            \"title\": \"AI Trends 2026\",\n            \"content\": \"Excited to share my thoughts on AI trends...\",\n            \"scheduled_at\": \"2026-03-19T10:00:00Z\",\n            \"last_sync_at\": \"2026-03-18T15:00:00Z\",\n            \"comment_count\": 12,\n            \"like_count\": 85,\n            \"linkedin_url\": \"https://www.linkedin.com/feed/update/urn:li:activity:123456\"\n          }\n        ]\n      }\n    ],\n    \"last_sync_at\": \"2026-03-18T15:00:00Z\"\n  }\n}"},{"id":"267b452c-e8a7-4872-b153-8188ddc1319e","name":"Success - Draft Posts","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts?linkedin_sender_id=encrypted_linkedin_user_id&status=scheduled","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","posts"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id","description":"Encrypted LinkedIn user ID (required)"},{"key":"status","value":"scheduled","description":"Filter: draft, scheduled, or published"},{"key":"source","value":"mcp","description":"Optional: set to 'mcp' to skip encryption","disabled":true}]},"description":"# List Posts\n\nRetrieves posts for a LinkedIn user, grouped by date.\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `status` | String | No | Filter: `draft`, `scheduled`, `published` |\n| `source` | String | No | Set to `mcp` to use raw IDs |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Posts fetched successfully\",\n  \"data\": {\n    \"posts\": [\n      {\n        \"date\": \"2026-03-18\",\n        \"schedules\": [\n          {\n            \"id\": 102,\n            \"scheduled_id\": null,\n            \"title\": \"Draft Post\",\n            \"content\": \"Work in progress...\",\n            \"scheduled_at\": \"2026-03-18T09:30:00Z\",\n            \"like_count\": 0,\n            \"comment_count\": 0,\n            \"last_sync_at\": null,\n            \"linkedin_url\": null\n          }\n        ]\n      }\n    ],\n    \"last_sync_at\": null\n  }\n}"}],"_postman_id":"eed7c528-3672-4a66-8c04-b36cacbb35b0"},{"name":"Create Post","id":"922a8aa6-76e5-4825-a3c7-75eb35895e32","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"My LinkedIn Post\",\n    \"content\": \"Excited to share my latest insights on AI and automation...\"\n  },\n  \"schedule_now\": true\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts","description":"<h1 id=\"create-post\">Create Post</h1>\n<p>Creates a new LinkedIn post with optional scheduling.</p>\n<h2 id=\"request-parameters\">Request Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>post[title]</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post title</td>\n</tr>\n<tr>\n<td><code>post[content]</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post content</td>\n</tr>\n<tr>\n<td><code>schedule_now</code></td>\n<td>Boolean</td>\n<td>No</td>\n<td>Publish immediately</td>\n</tr>\n<tr>\n<td><code>scheduled_at</code></td>\n<td>String</td>\n<td>No</td>\n<td>Schedule for later (ISO 8601 datetime)</td>\n</tr>\n<tr>\n<td><code>scheduled_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Update existing schedule</td>\n</tr>\n<tr>\n<td><code>organisation_member_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Organisation member ID</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td>Set to <code>mcp</code> to use raw IDs</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"4fc7f30b-3e60-46c2-a56e-984bad7a90d2","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"My LinkedIn Post\",\n    \"content\": \"Excited to share my latest insights on AI and automation...\"\n  },\n  \"schedule_now\": true\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts","description":"# Create Post\n\nCreates a new LinkedIn post with optional scheduling.\n\n## Request Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `post[title]` | String | Yes | Post title |\n| `post[content]` | String | Yes | Post content |\n| `schedule_now` | Boolean | No | Publish immediately |\n| `scheduled_at` | String | No | Schedule for later (ISO 8601 datetime) |\n| `scheduled_id` | String | No | Update existing schedule |\n| `organisation_member_id` | String | No | Organisation member ID |\n| `source` | String | No | Set to `mcp` to use raw IDs |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post created successfully\",\n  \"data\": {\n    \"id\": 101,\n    \"title\": \"My LinkedIn Post\",\n    \"content\": \"Excited to share my latest insights on AI and automation...\",\n    \"user_id\": 1,\n    \"linkedin_user_information_id\": 863,\n    \"created_at\": \"2026-03-19T10:00:00Z\",\n    \"updated_at\": \"2026-03-19T10:00:00Z\"\n  }\n}"},{"id":"ba6cccb1-d295-493d-b037-cd86b3ae3974","name":"Validation Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"My LinkedIn Post\",\n    \"content\": \"Excited to share my latest insights on AI and automation...\"\n  },\n  \"schedule_now\": true\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts","description":"# Create Post\n\nCreates a new LinkedIn post with optional scheduling.\n\n## Request Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `post[title]` | String | Yes | Post title |\n| `post[content]` | String | Yes | Post content |\n| `schedule_now` | Boolean | No | Publish immediately |\n| `scheduled_at` | String | No | Schedule for later (ISO 8601 datetime) |\n| `scheduled_id` | String | No | Update existing schedule |\n| `organisation_member_id` | String | No | Organisation member ID |\n| `source` | String | No | Set to `mcp` to use raw IDs |"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 422,\n  \"status\": false,\n  \"message\": \"Failed to create post\",\n  \"data\": {\n    \"content\": [\"can't be blank\"]\n  }\n}"}],"_postman_id":"922a8aa6-76e5-4825-a3c7-75eb35895e32"},{"name":"Create Post - Scheduled","id":"b42e752d-9dfe-481a-8e43-73090f9a60ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"Scheduled Post\",\n    \"content\": \"This post will be published at the scheduled time...\"\n  },\n  \"scheduled_at\": \"2026-03-20T14:00:00\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts","description":"<h1 id=\"create-post---scheduled\">Create Post - Scheduled</h1>\n<p>Creates a post scheduled for a future time. The <code>scheduled_at</code> is parsed in the LinkedIn user's timezone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"b42e752d-9dfe-481a-8e43-73090f9a60ad"},{"name":"Update Post","id":"227e6977-019e-4701-ae3d-455a6709144f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"Updated Title\",\n    \"content\": \"Updated content for the post...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101","description":"<h1 id=\"update-post\">Update Post</h1>\n<p>Updates an existing post. Can also reschedule by passing <code>schedule_now</code> or <code>scheduled_at</code>.</p>\n<h2 id=\"url-parameters\">URL Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>post_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post ID (in URL path)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>post[title]</code></td>\n<td>String</td>\n<td>No</td>\n<td>Updated title</td>\n</tr>\n<tr>\n<td><code>post[content]</code></td>\n<td>String</td>\n<td>No</td>\n<td>Updated content</td>\n</tr>\n<tr>\n<td><code>schedule_now</code></td>\n<td>Boolean</td>\n<td>No</td>\n<td>Publish immediately</td>\n</tr>\n<tr>\n<td><code>scheduled_at</code></td>\n<td>String</td>\n<td>No</td>\n<td>Reschedule (ISO 8601)</td>\n</tr>\n<tr>\n<td><code>scheduled_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Specific schedule to update</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","101"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"ef82cb60-6206-47d3-9551-e34ee19a2883","name":"Success","originalRequest":{"method":"PUT","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"post\": {\n    \"title\": \"Updated Title\",\n    \"content\": \"Updated content for the post...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101","description":"# Update Post\n\nUpdates an existing post. Can also reschedule by passing `schedule_now` or `scheduled_at`.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `post[title]` | String | No | Updated title |\n| `post[content]` | String | No | Updated content |\n| `schedule_now` | Boolean | No | Publish immediately |\n| `scheduled_at` | String | No | Reschedule (ISO 8601) |\n| `scheduled_id` | String | No | Specific schedule to update |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post updated successfully\",\n  \"data\": {\n    \"id\": 101,\n    \"title\": \"Updated Title\",\n    \"content\": \"Updated content for the post...\",\n    \"updated_at\": \"2026-03-19T11:00:00Z\"\n  }\n}"}],"_postman_id":"227e6977-019e-4701-ae3d-455a6709144f"},{"name":"Delete Post","id":"01b02619-d80e-4599-9211-e72acaa044ea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101?linkedin_sender_id=encrypted_linkedin_user_id","description":"<h1 id=\"delete-post\">Delete Post</h1>\n<p>Deletes a post or a specific schedule.</p>\n<h2 id=\"url-parameters\">URL Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>post_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post ID (in URL path)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"query-parameters\">Query Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>scheduled_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Delete only a specific schedule (not the post)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","101"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"disabled":true,"description":{"content":"<p>Optional: delete only a specific schedule, not the post</p>\n","type":"text/plain"},"key":"scheduled_id","value":"201"}],"variable":[]}},"response":[{"id":"e6fe7311-27b3-42fd-abc1-cdff4f4fc8dc","name":"Post Deleted","originalRequest":{"method":"DELETE","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101?linkedin_sender_id=encrypted_linkedin_user_id","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","posts","101"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"key":"scheduled_id","value":"201","description":"Optional: delete only a specific schedule, not the post","disabled":true}]},"description":"# Delete Post\n\nDeletes a post or a specific schedule.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `scheduled_id` | String | No | Delete only a specific schedule (not the post) |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post deleted successfully\"\n}"},{"id":"f7e207ad-7a15-43f8-8231-6ea1a0cc2a9f","name":"Schedule Deleted","originalRequest":{"method":"DELETE","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101?linkedin_sender_id=encrypted_linkedin_user_id","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","posts","101"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"key":"scheduled_id","value":"201","description":"Optional: delete only a specific schedule, not the post","disabled":true}]},"description":"# Delete Post\n\nDeletes a post or a specific schedule.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `scheduled_id` | String | No | Delete only a specific schedule (not the post) |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Schedule deleted successfully\"\n}"}],"_postman_id":"01b02619-d80e-4599-9211-e72acaa044ea"},{"name":"Show Post","id":"50742b09-7f6a-4b10-a3eb-b9830b1ba391","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101?linkedin_sender_id=encrypted_linkedin_user_id&scheduled_id=201","description":"<h1 id=\"show-post\">Show Post</h1>\n<p>Retrieves a single post with optional schedule details.</p>\n<h2 id=\"url-parameters\">URL Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>post_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post ID (in URL path)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"query-parameters\">Query Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>scheduled_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Include specific schedule details</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","101"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"description":{"content":"<p>Optional: include schedule details</p>\n","type":"text/plain"},"key":"scheduled_id","value":"201"}],"variable":[]}},"response":[{"id":"ab9d6afc-8acd-4cc5-92af-66de5c17a230","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101?linkedin_sender_id=encrypted_linkedin_user_id&scheduled_id=201","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","posts","101"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"key":"scheduled_id","value":"201","description":"Optional: include schedule details"}]},"description":"# Show Post\n\nRetrieves a single post with optional schedule details.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `scheduled_id` | String | No | Include specific schedule details |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post fetched successfully\",\n  \"data\": {\n    \"id\": 101,\n    \"title\": \"AI Trends 2026\",\n    \"content\": \"Excited to share my thoughts on AI trends...\",\n    \"scheduled_at\": \"2026-03-19T10:00:00+05:30\",\n    \"scheduled_id\": 201,\n    \"status\": \"scheduled\"\n  }\n}"}],"_postman_id":"50742b09-7f6a-4b10-a3eb-b9830b1ba391"},{"name":"Sync Post","id":"eeb9106a-e7e9-4bc9-8f5c-9e0d0889b5d6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101/sync","description":"<h1 id=\"sync-post\">Sync Post</h1>\n<p>Syncs post metrics (likes, comments) from LinkedIn.</p>\n<h2 id=\"url-parameters\">URL Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>post_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post ID (in URL path)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","101","sync"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"9a272288-013a-4944-af11-218b03cd9ea3","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101/sync","description":"# Sync Post\n\nSyncs post metrics (likes, comments) from LinkedIn.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post synced successfully\",\n  \"data\": {\n    \"id\": 101,\n    \"title\": \"AI Trends 2026\",\n    \"like_count\": 95,\n    \"comment_count\": 18,\n    \"last_sync_at\": \"2026-03-19T12:00:00Z\"\n  }\n}"}],"_postman_id":"eeb9106a-e7e9-4bc9-8f5c-9e0d0889b5d6"},{"name":"Import Post Leads","id":"6602b807-9de4-48df-87e3-a9aa8f1e830e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"import_type\": \"like\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101/import_leads","description":"<h1 id=\"import-post-leads\">Import Post Leads</h1>\n<p>Imports users who liked or commented on a post as leads into a campaign.</p>\n<h2 id=\"url-parameters\">URL Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>post_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Post ID (in URL path)</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>import_type</code></td>\n<td>String</td>\n<td>Yes</td>\n<td><code>like</code> or <code>comment</code></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","101","import_leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"c3974ca1-161c-48a4-bf77-1426d2a89829","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"import_type\": \"like\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/101/import_leads","description":"# Import Post Leads\n\nImports users who liked or commented on a post as leads into a campaign.\n\n## URL Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `post_id` | String | Yes | Post ID (in URL path) |\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `import_type` | String | Yes | `like` or `comment` |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Post leads import started successfully\",\n  \"data\": {\n    \"id\": 101,\n    \"title\": \"AI Trends 2026\",\n    \"like_count\": 95,\n    \"comment_count\": 18,\n    \"like_linkedin_user_campaign_id\": 501,\n    \"like_lead_list_id\": 601\n  }\n}"}],"_postman_id":"6602b807-9de4-48df-87e3-a9aa8f1e830e"},{"name":"Generate Content (AI)","id":"6658bace-1d3c-4b95-af54-b4c7e1f513a4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"topic\": \"AI in healthcare\",\n  \"tone\": \"professional\",\n  \"length\": \"medium\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/generate_content","description":"<h1 id=\"generate-content-ai\">Generate Content (AI)</h1>\n<p>Uses AI to generate LinkedIn post content.</p>\n<h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>topic</code></td>\n<td>String</td>\n<td>No</td>\n<td>Topic for content generation</td>\n</tr>\n<tr>\n<td><code>tone</code></td>\n<td>String</td>\n<td>No</td>\n<td>Tone: professional, casual, etc.</td>\n</tr>\n<tr>\n<td><code>length</code></td>\n<td>String</td>\n<td>No</td>\n<td>Length: short, medium, long</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","generate_content"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"25deee58-43a7-4687-b0b1-bb1e2de1c41e","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"topic\": \"AI in healthcare\",\n  \"tone\": \"professional\",\n  \"length\": \"medium\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/generate_content","description":"# Generate Content (AI)\n\nUses AI to generate LinkedIn post content.\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |\n| `topic` | String | No | Topic for content generation |\n| `tone` | String | No | Tone: professional, casual, etc. |\n| `length` | String | No | Length: short, medium, long |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Content generated successfully\",\n  \"data\": \"AI is revolutionizing healthcare in ways we couldn't have imagined...\"\n}"}],"_postman_id":"6658bace-1d3c-4b95-af54-b4c7e1f513a4"},{"name":"Fetch LinkedIn Posts (Sync All)","id":"b35e0333-0ee8-45ec-94a1-16edc5c7112d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/fetch_linkedin","description":"<h1 id=\"fetch-linkedin-posts\">Fetch LinkedIn Posts</h1>\n<p>Triggers a background job to sync all posts from LinkedIn for the specified user. Updates <code>post_last_sync_at</code> timestamp.</p>\n<h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","posts","fetch_linkedin"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"3b6b964b-8790-44ef-81b1-f5f066f6e1b1","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/posts/fetch_linkedin","description":"# Fetch LinkedIn Posts\n\nTriggers a background job to sync all posts from LinkedIn for the specified user. Updates `post_last_sync_at` timestamp.\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `linkedin_sender_id` | String | Yes | Encrypted LinkedIn user ID |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"LinkedIn posts sync started successfully\"\n}"}],"_postman_id":"b35e0333-0ee8-45ec-94a1-16edc5c7112d"}],"id":"348a9c40-0451-4e1b-8c32-c80167c269b7","description":"<p>Endpoints for managing LinkedIn posts — create, update, delete, schedule, sync metrics, import leads, and AI content generation.</p>\n","_postman_id":"348a9c40-0451-4e1b-8c32-c80167c269b7","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Connections","item":[{"name":"Get Connections","id":"e7009bf7-ea36-499b-88a5-081149e27104","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/connections?linkedin_sender_id=encrypted_linkedin_user_id&limit=50&offset=0","description":"<h1 id=\"get-connections\">Get Connections</h1>\n<p>Retrieves LinkedIn connections for a user with optional search and pagination.</p>\n<h2 id=\"query-parameters\">Query Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Default</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>term</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Search connections by name (case-insensitive)</td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>50</code></td>\n<td>Pagination limit</td>\n</tr>\n<tr>\n<td><code>offset</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>0</code></td>\n<td>Pagination offset</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Set to <code>mcp</code> to use raw IDs</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","connections"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Encrypted LinkedIn user ID (required)</p>\n","type":"text/plain"},"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id"},{"disabled":true,"description":{"content":"<p>Search by name (optional)</p>\n","type":"text/plain"},"key":"term","value":""},{"description":{"content":"<p>Pagination limit (default: 50)</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"description":{"content":"<p>Pagination offset (default: 0)</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"disabled":true,"description":{"content":"<p>Optional: set to 'mcp' to skip encryption</p>\n","type":"text/plain"},"key":"source","value":"mcp"}],"variable":[]}},"response":[{"id":"a84fac7a-233d-40bb-accb-a29add77f89d","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/connections?linkedin_sender_id=encrypted_linkedin_user_id&limit=50&offset=0","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","connections"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id","description":"Encrypted LinkedIn user ID (required)"},{"key":"term","value":"","description":"Search by name (optional)","disabled":true},{"key":"limit","value":"50","description":"Pagination limit (default: 50)"},{"key":"offset","value":"0","description":"Pagination offset (default: 0)"},{"key":"source","value":"mcp","description":"Optional: set to 'mcp' to skip encryption","disabled":true}]},"description":"# Get Connections\n\nRetrieves LinkedIn connections for a user with optional search and pagination.\n\n## Query Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `term` | String | No | - | Search connections by name (case-insensitive) |\n| `limit` | Integer | No | `50` | Pagination limit |\n| `offset` | Integer | No | `0` | Pagination offset |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Connections fetched successfully\",\n  \"data\": {\n    \"connections\": [\n      {\n        \"id\": 1001,\n        \"first_name\": \"Jane\",\n        \"last_name\": \"Smith\",\n        \"profile_url\": \"https://www.linkedin.com/in/janesmith\",\n        \"company_name\": \"TechCorp\",\n        \"occupation\": \"Senior Engineer\",\n        \"connection_accepted_at\": \"2026-03-15T08:00:00Z\"\n      },\n      {\n        \"id\": 1002,\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"profile_url\": \"https://www.linkedin.com/in/johndoe\",\n        \"company_name\": \"StartupInc\",\n        \"occupation\": \"Product Manager\",\n        \"connection_accepted_at\": \"2026-03-14T12:30:00Z\"\n      }\n    ],\n    \"total_connections\": 342\n  }\n}"},{"id":"6b4c4758-c0cb-4766-9c0b-cbf6780d0f05","name":"Success - With Search","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/connections?linkedin_sender_id=encrypted_linkedin_user_id&limit=50&offset=0","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","connections"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id","description":"Encrypted LinkedIn user ID (required)"},{"key":"term","value":"","description":"Search by name (optional)","disabled":true},{"key":"limit","value":"50","description":"Pagination limit (default: 50)"},{"key":"offset","value":"0","description":"Pagination offset (default: 0)"},{"key":"source","value":"mcp","description":"Optional: set to 'mcp' to skip encryption","disabled":true}]},"description":"# Get Connections\n\nRetrieves LinkedIn connections for a user with optional search and pagination.\n\n## Query Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `term` | String | No | - | Search connections by name (case-insensitive) |\n| `limit` | Integer | No | `50` | Pagination limit |\n| `offset` | Integer | No | `0` | Pagination offset |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Connections fetched successfully\",\n  \"data\": {\n    \"connections\": [\n      {\n        \"id\": 1001,\n        \"first_name\": \"Jane\",\n        \"last_name\": \"Smith\",\n        \"profile_url\": \"https://www.linkedin.com/in/janesmith\",\n        \"company_name\": \"TechCorp\",\n        \"occupation\": \"Senior Engineer\",\n        \"connection_accepted_at\": \"2026-03-15T08:00:00Z\"\n      }\n    ],\n    \"total_connections\": 1\n  }\n}"},{"id":"5490b8b5-e52a-46b4-a8d4-3a28827cc71c","name":"LinkedIn User Not Found","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/connections?linkedin_sender_id=encrypted_linkedin_user_id&limit=50&offset=0","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","connections"],"query":[{"key":"linkedin_sender_id","value":"encrypted_linkedin_user_id","description":"Encrypted LinkedIn user ID (required)"},{"key":"term","value":"","description":"Search by name (optional)","disabled":true},{"key":"limit","value":"50","description":"Pagination limit (default: 50)"},{"key":"offset","value":"0","description":"Pagination offset (default: 0)"},{"key":"source","value":"mcp","description":"Optional: set to 'mcp' to skip encryption","disabled":true}]},"description":"# Get Connections\n\nRetrieves LinkedIn connections for a user with optional search and pagination.\n\n## Query Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `term` | String | No | - | Search connections by name (case-insensitive) |\n| `limit` | Integer | No | `50` | Pagination limit |\n| `offset` | Integer | No | `0` | Pagination offset |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 404,\n  \"status\": false,\n  \"message\": \"LinkedIn user information not found\",\n  \"data\": {}\n}"}],"_postman_id":"e7009bf7-ea36-499b-88a5-081149e27104"}],"id":"deafad2e-8e35-4569-ae2b-43d29773eee9","description":"<p>Endpoints for fetching LinkedIn connection data.</p>\n","_postman_id":"deafad2e-8e35-4569-ae2b-43d29773eee9","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Leads","item":[{"name":"Create Lead List","id":"1a782dcd-ee78-4eed-ac8e-a4a447c02814","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"My Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=software%20engineer\",\n  \"lead_count\": 500\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"<h1 id=\"create-lead-list\">Create Lead List</h1>\n<p>Creates a new lead list and starts the lead scraping job. This is a pure lead list creation endpoint — it does NOT link leads to a campaign routine.</p>\n<h2 id=\"request-parameters\">Request Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Default</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Encrypted LinkedIn user ID</td>\n</tr>\n<tr>\n<td><code>campaign_name</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Name for the lead list</td>\n</tr>\n<tr>\n<td><code>lead_list_type</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Type of lead list (see below)</td>\n</tr>\n<tr>\n<td><code>url</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>LinkedIn search URL or source URL</td>\n</tr>\n<tr>\n<td><code>spreadsheet_url</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Alternative to <code>url</code> for spreadsheet imports</td>\n</tr>\n<tr>\n<td><code>lead_count</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>1000</code></td>\n<td>Number of leads to scrape</td>\n</tr>\n<tr>\n<td><code>lead_list_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Existing campaign to append to</td>\n</tr>\n<tr>\n<td><code>organisation_member_id</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Encrypted organisation member ID (from <code>encrypted-identifiers</code> endpoint <code>organisation_members</code>)</td>\n</tr>\n<tr>\n<td><code>linkedin_company_campaign_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>For sales-company type</td>\n</tr>\n<tr>\n<td><code>post_url</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Post URL for post-likes/post-comments</td>\n</tr>\n<tr>\n<td><code>post_category</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Category for post imports</td>\n</tr>\n<tr>\n<td><code>profiles</code></td>\n<td>Array</td>\n<td>No</td>\n<td>-</td>\n<td>Profile data for CSV/add_profiles</td>\n</tr>\n<tr>\n<td><code>over_write_key</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Overwrite key for existing data</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Set to <code>mcp</code> to use raw IDs</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"supported-lead_list_type-values\">Supported lead_list_type values</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Type</th>\n<th>Campaign Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>search_url</code></td>\n<td>search_url</td>\n<td>LinkedIn people search URL</td>\n</tr>\n<tr>\n<td><code>csv</code></td>\n<td>csv</td>\n<td>CSV file import (lead_count defaults to 1000)</td>\n</tr>\n<tr>\n<td><code>sales-lead</code> / <code>sales</code></td>\n<td>sales_navigator</td>\n<td>Sales Navigator search</td>\n</tr>\n<tr>\n<td><code>sales-company</code></td>\n<td>-</td>\n<td>Company campaign (uses LinkedinCompanyCampaign)</td>\n</tr>\n<tr>\n<td><code>events</code></td>\n<td>event_url</td>\n<td>LinkedIn event attendees</td>\n</tr>\n<tr>\n<td><code>likes</code> / <code>post-likes</code></td>\n<td>post_detail</td>\n<td>Post likers</td>\n</tr>\n<tr>\n<td><code>comments</code> / <code>post-comments</code></td>\n<td>post_detail</td>\n<td>Post commenters</td>\n</tr>\n<tr>\n<td><code>groups</code></td>\n<td>group_detail</td>\n<td>LinkedIn group members</td>\n</tr>\n<tr>\n<td><code>company</code></td>\n<td>company_detail</td>\n<td>Company employees</td>\n</tr>\n<tr>\n<td><code>company_followers</code></td>\n<td>company_followers</td>\n<td>Company followers</td>\n</tr>\n<tr>\n<td><code>people_posts</code></td>\n<td>people_posts</td>\n<td>People's posts (lead_count defaults to 1000)</td>\n</tr>\n<tr>\n<td><code>add_profiles</code></td>\n<td>add_profiles</td>\n<td>Manually add profiles</td>\n</tr>\n<tr>\n<td><code>recruiter-lite-talented-hire</code></td>\n<td>recruiter_lite</td>\n<td>Recruiter Lite search</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"60264875-b5de-4f74-8910-c029dafbed11","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"My Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=software%20engineer\",\n  \"lead_count\": 500\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List\n\nCreates a new lead list and starts the lead scraping job. This is a pure lead list creation endpoint — it does NOT link leads to a campaign routine.\n\n## Request Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `campaign_name` | String | Yes | - | Name for the lead list |\n| `lead_list_type` | String | Yes | - | Type of lead list (see below) |\n| `url` | String | No | - | LinkedIn search URL or source URL |\n| `spreadsheet_url` | String | No | - | Alternative to `url` for spreadsheet imports |\n| `lead_count` | Integer | No | `1000` | Number of leads to scrape |\n| `lead_list_id` | String | No | - | Existing campaign to append to |\n| `organisation_member_id` | String | Yes | - | Encrypted organisation member ID (from `encrypted-identifiers` endpoint `organisation_members`) |\n| `linkedin_company_campaign_id` | String | No | - | For sales-company type |\n| `post_url` | String | No | - | Post URL for post-likes/post-comments |\n| `post_category` | String | No | - | Category for post imports |\n| `profiles` | Array | No | - | Profile data for CSV/add_profiles |\n| `over_write_key` | String | No | - | Overwrite key for existing data |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |\n\n## Supported lead_list_type values\n\n| Type | Campaign Type | Description |\n|------|--------------|-------------|\n| `search_url` | search_url | LinkedIn people search URL |\n| `csv` | csv | CSV file import (lead_count defaults to 1000) |\n| `sales-lead` / `sales` | sales_navigator | Sales Navigator search |\n| `sales-company` | - | Company campaign (uses LinkedinCompanyCampaign) |\n| `events` | event_url | LinkedIn event attendees |\n| `likes` / `post-likes` | post_detail | Post likers |\n| `comments` / `post-comments` | post_detail | Post commenters |\n| `groups` | group_detail | LinkedIn group members |\n| `company` | company_detail | Company employees |\n| `company_followers` | company_followers | Company followers |\n| `people_posts` | people_posts | People's posts (lead_count defaults to 1000) |\n| `add_profiles` | add_profiles | Manually add profiles |\n| `recruiter-lite-talented-hire` | recruiter_lite | Recruiter Lite search |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead list created successfully\"\n}"},{"id":"2bbc43c2-653e-4e82-af2a-f2fe099a05ea","name":"LinkedIn User Not Found","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"My Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=software%20engineer\",\n  \"lead_count\": 500\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List\n\nCreates a new lead list and starts the lead scraping job. This is a pure lead list creation endpoint — it does NOT link leads to a campaign routine.\n\n## Request Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `campaign_name` | String | Yes | - | Name for the lead list |\n| `lead_list_type` | String | Yes | - | Type of lead list (see below) |\n| `url` | String | No | - | LinkedIn search URL or source URL |\n| `spreadsheet_url` | String | No | - | Alternative to `url` for spreadsheet imports |\n| `lead_count` | Integer | No | `1000` | Number of leads to scrape |\n| `lead_list_id` | String | No | - | Existing campaign to append to |\n| `organisation_member_id` | String | Yes | - | Encrypted organisation member ID (from `encrypted-identifiers` endpoint `organisation_members`) |\n| `linkedin_company_campaign_id` | String | No | - | For sales-company type |\n| `post_url` | String | No | - | Post URL for post-likes/post-comments |\n| `post_category` | String | No | - | Category for post imports |\n| `profiles` | Array | No | - | Profile data for CSV/add_profiles |\n| `over_write_key` | String | No | - | Overwrite key for existing data |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |\n\n## Supported lead_list_type values\n\n| Type | Campaign Type | Description |\n|------|--------------|-------------|\n| `search_url` | search_url | LinkedIn people search URL |\n| `csv` | csv | CSV file import (lead_count defaults to 1000) |\n| `sales-lead` / `sales` | sales_navigator | Sales Navigator search |\n| `sales-company` | - | Company campaign (uses LinkedinCompanyCampaign) |\n| `events` | event_url | LinkedIn event attendees |\n| `likes` / `post-likes` | post_detail | Post likers |\n| `comments` / `post-comments` | post_detail | Post commenters |\n| `groups` | group_detail | LinkedIn group members |\n| `company` | company_detail | Company employees |\n| `company_followers` | company_followers | Company followers |\n| `people_posts` | people_posts | People's posts (lead_count defaults to 1000) |\n| `add_profiles` | add_profiles | Manually add profiles |\n| `recruiter-lite-talented-hire` | recruiter_lite | Recruiter Lite search |"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"LinkedIn user information not found\"\n}"},{"id":"71a9103b-b325-4498-a69e-e22a9ed475ce","name":"Validation Error","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"My Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=software%20engineer\",\n  \"lead_count\": 500\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List\n\nCreates a new lead list and starts the lead scraping job. This is a pure lead list creation endpoint — it does NOT link leads to a campaign routine.\n\n## Request Parameters\n\n| Parameter | Type | Required | Default | Description |\n|-----------|------|----------|---------|-------------|\n| `linkedin_sender_id` | String | Yes | - | Encrypted LinkedIn user ID |\n| `campaign_name` | String | Yes | - | Name for the lead list |\n| `lead_list_type` | String | Yes | - | Type of lead list (see below) |\n| `url` | String | No | - | LinkedIn search URL or source URL |\n| `spreadsheet_url` | String | No | - | Alternative to `url` for spreadsheet imports |\n| `lead_count` | Integer | No | `1000` | Number of leads to scrape |\n| `lead_list_id` | String | No | - | Existing campaign to append to |\n| `organisation_member_id` | String | Yes | - | Encrypted organisation member ID (from `encrypted-identifiers` endpoint `organisation_members`) |\n| `linkedin_company_campaign_id` | String | No | - | For sales-company type |\n| `post_url` | String | No | - | Post URL for post-likes/post-comments |\n| `post_category` | String | No | - | Category for post imports |\n| `profiles` | Array | No | - | Profile data for CSV/add_profiles |\n| `over_write_key` | String | No | - | Overwrite key for existing data |\n| `source` | String | No | - | Set to `mcp` to use raw IDs |\n\n## Supported lead_list_type values\n\n| Type | Campaign Type | Description |\n|------|--------------|-------------|\n| `search_url` | search_url | LinkedIn people search URL |\n| `csv` | csv | CSV file import (lead_count defaults to 1000) |\n| `sales-lead` / `sales` | sales_navigator | Sales Navigator search |\n| `sales-company` | - | Company campaign (uses LinkedinCompanyCampaign) |\n| `events` | event_url | LinkedIn event attendees |\n| `likes` / `post-likes` | post_detail | Post likers |\n| `comments` / `post-comments` | post_detail | Post commenters |\n| `groups` | group_detail | LinkedIn group members |\n| `company` | company_detail | Company employees |\n| `company_followers` | company_followers | Company followers |\n| `people_posts` | people_posts | People's posts (lead_count defaults to 1000) |\n| `add_profiles` | add_profiles | Manually add profiles |\n| `recruiter-lite-talented-hire` | recruiter_lite | Recruiter Lite search |"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Lead list not saved\",\n  \"data\": {\n    \"error\": \"Validation failed: Campaign name can't be blank\"\n  }\n}"}],"_postman_id":"1a782dcd-ee78-4eed-ac8e-a4a447c02814"},{"name":"Create Lead List - CSV Import","id":"609fb39f-ae34-469c-8ee2-66dd38a5377a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n    \"organisation_member_id\": \"encrypted_organisation_member_id\",\n    \"campaign_name\": \"Test Third party\",\n    \"lead_list_type\": \"csv\",\n    \"lead_count\": 50,\n    \"spreadsheet_url\": \"\",\n    \"over_write_key\": [],\n    \"profiles\": [\n      {\n        \"name\": \"Brian\",\n        \"occupation\": \"Value-Centric Technology Executive | Transforming Businesses\",\n        \"location\": \"Boca Raton, Florida, United States\",\n        \"custom_field_1\": \"dnsdjanksdbk baosibcab\",\n        \"custom_field_2\": \"SDANJDSDBNAODB\",\n        \"custom_field_3\": \"asdlknacosnbi\",\n        \"custom_field_4\": \"aksjncasklcn\",\n        \"company\": \"Cimatri\",\n        \"profile_url\": \"https://www.linkedin.com/company/10342496/\"\n      },\n      {\n        \"name\": \"Kiera\",\n        \"occupation\": \"CEO & Founder @ Ribit AI | 500 Global (Canada B6)\",\n        \"location\": \"Canada\",\n        \"custom_field_1\": \"asdasdasd\",\n        \"custom_field_2\": \"asdacs\",\n        \"custom_field_3\": \"sdvklnsklvnz\",\n        \"custom_field_4\": \"svnl;aknvlak;wrn\",\n        \"company\": \"Ribit\",\n        \"profile_url\": \"https://www.linkedin.com/company/49088210/\"\n      }\n    ]\n  }"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"<h1 id=\"create-lead-list---csv-import\">Create Lead List - CSV Import</h1>\n<p>Creates a lead list from a CSV/spreadsheet URL. Lead count defaults to 1000 for CSV imports.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"802155fc-43e2-4f84-9eeb-482c49f54482","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n    \"organisation_member_id\": \"encrypted_organisation_member_id\",\n    \"campaign_name\": \"Test Third party\",\n    \"lead_list_type\": \"csv\",\n    \"lead_count\": 50,\n    \"spreadsheet_url\": \"\",\n    \"over_write_key\": [],\n    \"profiles\": [\n      {\n        \"name\": \"Brian\",\n        \"occupation\": \"Value-Centric Technology Executive | Transforming Businesses\",\n        \"location\": \"Boca Raton, Florida, United States\",\n        \"custom_field_1\": \"dnsdjanksdbk baosibcab\",\n        \"custom_field_2\": \"SDANJDSDBNAODB\",\n        \"custom_field_3\": \"asdlknacosnbi\",\n        \"custom_field_4\": \"aksjncasklcn\",\n        \"company\": \"Cimatri\",\n        \"profile_url\": \"https://www.linkedin.com/company/10342496/\"\n      },\n      {\n        \"name\": \"Kiera\",\n        \"occupation\": \"CEO & Founder @ Ribit AI | 500 Global (Canada B6)\",\n        \"location\": \"Canada\",\n        \"custom_field_1\": \"asdasdasd\",\n        \"custom_field_2\": \"asdacs\",\n        \"custom_field_3\": \"sdvklnsklvnz\",\n        \"custom_field_4\": \"svnl;aknvlak;wrn\",\n        \"company\": \"Ribit\",\n        \"profile_url\": \"https://www.linkedin.com/company/49088210/\"\n      }\n    ]\n  }"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List - CSV Import\n\nCreates a lead list from a CSV/spreadsheet URL. Lead count defaults to 1000 for CSV imports."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead list created successfully\"\n}"}],"_postman_id":"609fb39f-ae34-469c-8ee2-66dd38a5377a"},{"name":"Create Lead List - Sales Navigator","id":"99aa1605-da05-4675-acfd-cb2b9cb18696","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"Sales Nav Leads\",\n  \"lead_list_type\": \"sales-lead\",\n  \"url\": \"https://www.linkedin.com/sales/search/people?...\",\n  \"lead_count\": 200\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"<h1 id=\"create-lead-list---sales-navigator\">Create Lead List - Sales Navigator</h1>\n<p>Creates a lead list from a Sales Navigator search URL.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"fc6f5050-3499-45d6-892a-f639d451441f","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"Sales Nav Leads\",\n  \"lead_list_type\": \"sales-lead\",\n  \"url\": \"https://www.linkedin.com/sales/search/people?...\",\n  \"lead_count\": 200\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List - Sales Navigator\n\nCreates a lead list from a Sales Navigator search URL."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead list created successfully\"\n}"}],"_postman_id":"99aa1605-da05-4675-acfd-cb2b9cb18696"},{"name":"Create Lead List - Post Likes/Comments","id":"2c76418f-10e4-4d1b-a86e-5491f025f42e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"Post Engagers\",\n  \"lead_list_type\": \"post-likes\",\n  \"post_url\": \"https://www.linkedin.com/feed/update/urn:li:activity:123456\",\n  \"post_category\": \"like\",\n  \"lead_count\": 100\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"<h1 id=\"create-lead-list---post-likescomments\">Create Lead List - Post Likes/Comments</h1>\n<p>Creates a lead list from people who liked or commented on a LinkedIn post.</p>\n<p>Use <code>post-likes</code> or <code>post-comments</code> as the <code>lead_list_type</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"0bab4582-2262-4817-a44c-dbb61411ed61","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"encrypted_linkedin_user_id\",\n  \"organisation_member_id\": \"encrypted_organisation_member_id\",\n  \"campaign_name\": \"Post Engagers\",\n  \"lead_list_type\": \"post-likes\",\n  \"post_url\": \"https://www.linkedin.com/feed/update/urn:li:activity:123456\",\n  \"post_category\": \"like\",\n  \"lead_count\": 100\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List - Post Likes/Comments\n\nCreates a lead list from people who liked or commented on a LinkedIn post.\n\nUse `post-likes` or `post-comments` as the `lead_list_type`."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead list created successfully\"\n}"}],"_postman_id":"2c76418f-10e4-4d1b-a86e-5491f025f42e"},{"name":"Create Lead List - MCP Mode (Raw IDs)","id":"58d502a4-ed27-4bf3-969a-5c881c2183ec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"source\": \"mcp\",\n  \"linkedin_sender_id\": 863,\n  \"organisation_member_id\": 123,\n  \"campaign_name\": \"MCP Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=developer\",\n  \"lead_count\": 300\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"<h1 id=\"create-lead-list---mcp-mode\">Create Lead List - MCP Mode</h1>\n<p>Same as Create Lead List but with <code>source: mcp</code> to bypass ID encryption/decryption. Uses raw numeric IDs directly.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","create-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"a90c5ed0-b5dc-4e7b-a121-2922d77dc049","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"source\": \"mcp\",\n  \"linkedin_sender_id\": 863,\n  \"organisation_member_id\": 123,\n  \"campaign_name\": \"MCP Lead List\",\n  \"lead_list_type\": \"search_url\",\n  \"url\": \"https://www.linkedin.com/search/results/people/?keywords=developer\",\n  \"lead_count\": 300\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/create-leads","description":"# Create Lead List - MCP Mode\n\nSame as Create Lead List but with `source: mcp` to bypass ID encryption/decryption. Uses raw numeric IDs directly."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Lead list created successfully\"\n}"}],"_postman_id":"58d502a4-ed27-4bf3-969a-5c881c2183ec"}],"id":"50b10fc2-4e3c-44f7-bb8b-b48e820e0d61","description":"<p>Endpoints for creating lead lists from various LinkedIn sources (search URLs, CSV, Sales Navigator, post engagement, events, groups, etc.). This is pure lead list creation — does NOT link leads to a campaign routine.</p>\n","_postman_id":"50b10fc2-4e3c-44f7-bb8b-b48e820e0d61","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"CRM Integrations Sync","item":[{"name":"Get CRM Integrations (all)","id":"abfc764f-e808-4b0b-ba24-d6a172c23601","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/crm-integrations","description":"<h1 id=\"get-all-crm-integrations\">Get All CRM Integrations</h1>\n<p>Returns summary counts of all CRM integrations (HubSpot, Salesforce, SMTP) and available CRM types.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","crm-integrations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"90561cb5-d98b-414a-96a7-f99f98899b5d","name":"Success - All CRMs","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/crm-integrations","description":"# Get All CRM Integrations\n\nReturns summary counts of all CRM integrations (HubSpot, Salesforce, SMTP) and available CRM types."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"CRM integrations fetched successfully\",\n  \"data\": {\n    \"zoho_domain_names\": [\"accounts.zoho.com\", \"accounts.zoho.in\"],\n    \"available_list\": [\"hubspot\", \"salesforce\", \"zoho\", \"freshsales\", \"gmail\", \"smtp\"],\n    \"counts\": {\n      \"hubspot\": 2,\n      \"salesforce\": 1,\n      \"smtp\": 0\n    },\n    \"crm_integrations\": {}\n  }\n}"}],"_postman_id":"abfc764f-e808-4b0b-ba24-d6a172c23601"},{"name":"Get CRM Integrations (filtered by name)","id":"c4c0face-8bf0-4276-9f10-83956eb7193b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/crm-integrations?crm_name=hubspot","description":"<h1 id=\"get-crm-integrations-by-name\">Get CRM Integrations by Name</h1>\n<p>Returns CRM integration details filtered by CRM name.</p>\n<h2 id=\"query-parameters\">Query Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>crm_name</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>CRM name: <code>hubspot</code>, <code>salesforce</code>, <code>zoho</code>, <code>freshsales</code>, <code>gmail</code>, <code>smtp</code></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","crm-integrations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>Filter by CRM name: hubspot, salesforce, zoho, freshsales, gmail, smtp</p>\n","type":"text/plain"},"key":"crm_name","value":"hubspot"}],"variable":[]}},"response":[{"id":"12f8579c-2401-4d08-b74e-d62ea71e5f7b","name":"Success - HubSpot","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/crm-integrations?crm_name=hubspot","host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"path":["social_app","api","v1","third_party","crm-integrations"],"query":[{"key":"crm_name","value":"hubspot","description":"Filter by CRM name: hubspot, salesforce, zoho, freshsales, gmail, smtp"}]},"description":"# Get CRM Integrations by Name\n\nReturns CRM integration details filtered by CRM name.\n\n## Query Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `crm_name` | String | Yes | CRM name: `hubspot`, `salesforce`, `zoho`, `freshsales`, `gmail`, `smtp` |"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"CRM integrations fetched successfully\",\n  \"data\": {\n    \"crm_integrations\": [\n      {\n        \"id\": 73,\n        \"linkedin_user_information_id\": 501,\n        \"crm_name\": \"hubspot\",\n        \"domain_name\": \"app.hubspot.com\",\n        \"status\": 1,\n        \"portal_id\": \"12345678\"\n      }\n    ]\n  }\n}"}],"_postman_id":"c4c0face-8bf0-4276-9f10-83956eb7193b"},{"name":"Sync Contacts to CRM","id":"5452eb63-1aaa-4039-b026-eb63feaae439","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_ids\": [238121],\n  \"member_ids_type\": \"chat\",\n  \"crm_integration_ids\": [73]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/sync-contacts","description":"<h1 id=\"sync-contacts-to-crm\">Sync Contacts to CRM</h1>\n<p>Sync contacts from leads, chat, connections, or campaigns to connected CRM integrations.</p>\n<h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>member_ids</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>Array of member IDs to sync</td>\n</tr>\n<tr>\n<td><code>member_ids_type</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>Type: <code>lead</code>, <code>chat</code>, <code>connection</code>, <code>campaign</code></td>\n</tr>\n<tr>\n<td><code>crm_integration_ids</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>CRM integration IDs (from Get CRM Integrations)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","sync-contacts"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"730fc82d-a300-4bd5-a88d-83ecd501e98e","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"member_ids\": [238121],\n  \"member_ids_type\": \"chat\",\n  \"crm_integration_ids\": [73]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/sync-contacts","description":"# Sync Contacts to CRM\n\nSync contacts from leads, chat, connections, or campaigns to connected CRM integrations.\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `member_ids` | Array<Number> | Yes | Array of member IDs to sync |\n| `member_ids_type` | String | Yes | Type: `lead`, `chat`, `connection`, `campaign` |\n| `crm_integration_ids` | Array<Number> | Yes | CRM integration IDs (from Get CRM Integrations) |"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Contacts synced successfully\",\n  \"data\": [\n    {\n      \"crm\": \"hubspot\",\n      \"data\": {\n        \"synced\": 1,\n        \"failed\": 0\n      }\n    }\n  ]\n}"}],"_postman_id":"5452eb63-1aaa-4039-b026-eb63feaae439"}],"id":"e3885aa1-e9d9-498f-9887-32be790e1e3f","_postman_id":"e3885aa1-e9d9-498f-9887-32be790e1e3f","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Webhooks Integrations Sync","item":[{"name":"Get Webhooks List","id":"562ee0cb-f9a6-4af0-bd1d-6f4dc55ee3d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/get-webhooks-list","description":"<h1 id=\"get-webhooks-list\">Get Webhooks List</h1>\n<p>Returns all active webhooks configured for the organisation.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","get-webhooks-list"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"951341b3-4f31-4917-85ab-f2aea9760825","name":"Success","originalRequest":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/get-webhooks-list","description":"# Get Webhooks List\n\nReturns all active webhooks configured for the organisation."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Webhooks list data\",\n  \"data\": {\n    \"webhooks\": [\n      {\n        \"id\": 101,\n        \"api_key\": \"a1b2c3d4e5f6\",\n        \"url\": \"https://example.com/webhook\",\n        \"events\": [\"prospect_replied\", \"connection_request_accepted\"],\n        \"tags\": [],\n        \"status\": true,\n        \"meta\": {\n          \"level\": \"user\",\n          \"all_campaigns\": true,\n          \"webhook_name\": \"My Webhook\"\n        },\n        \"organisation_id\": 1,\n        \"organisation_member_id\": 2\n      }\n    ]\n  }\n}"}],"_postman_id":"562ee0cb-f9a6-4af0-bd1d-6f4dc55ee3d4"},{"name":"Send Chat Webhook Data","id":"9604e33f-7d0b-47c1-831a-90fe082b0852","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhook_id\": 101,\n  \"linkedin_message_member_id\": 238121\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/send-chat-webhook-data","description":"<h1 id=\"send-chat-webhook-data\">Send Chat Webhook Data</h1>\n<p>Sends chat conversation data (contact details, conversation history, campaign info) to a specific webhook endpoint.</p>\n<h2 id=\"body-parameters\">Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>webhook_id</code></td>\n<td>Number</td>\n<td>Yes</td>\n<td>Webhook ID (from Get Webhooks List)</td>\n</tr>\n<tr>\n<td><code>linkedin_message_member_id</code></td>\n<td>Number</td>\n<td>Yes</td>\n<td>Message member ID whose chat data to send</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","send-chat-webhook-data"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"5899baa8-39ac-464b-a8b6-399c2be350ae","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhook_id\": 101,\n  \"linkedin_message_member_id\": 238121\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/send-chat-webhook-data","description":"# Send Chat Webhook Data\n\nSends chat conversation data (contact details, conversation history, campaign info) to a specific webhook endpoint.\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `webhook_id` | Number | Yes | Webhook ID (from Get Webhooks List) |\n| `linkedin_message_member_id` | Number | Yes | Message member ID whose chat data to send |"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Webhook sent successfully\",\n  \"data\": {}\n}"},{"id":"bb6198cf-cee4-4d0c-81aa-274dc68241a3","name":"Webhook Failed","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhook_id\": 101,\n  \"linkedin_message_member_id\": 238121\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/send-chat-webhook-data","description":"# Send Chat Webhook Data\n\nSends chat conversation data (contact details, conversation history, campaign info) to a specific webhook endpoint.\n\n## Body Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `webhook_id` | Number | Yes | Webhook ID (from Get Webhooks List) |\n| `linkedin_message_member_id` | Number | Yes | Message member ID whose chat data to send |"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Webhook failed to send\",\n  \"data\": {}\n}"}],"_postman_id":"9604e33f-7d0b-47c1-831a-90fe082b0852"}],"id":"d6667174-6323-451c-9281-2368506da5fa","_postman_id":"d6667174-6323-451c-9281-2368506da5fa","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Campaign Lead Conversations","item":[{"name":"Get All Lead Conversations (no filters)","id":"3270302b-f5b1-4024-8cfc-584f85435173","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"get-campaign-lead-conversations\">Get Campaign Lead Conversations</h1>\n<p>Track post-reply conversations across all org campaigns. All filters are optional.</p>\n<p>Returns per-lead: replied status, lead reply count, user replies after lead's first reply, conversation timeline.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"30b53e33-f105-46a2-8dfc-d938a9771fcf","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"# Get Campaign Lead Conversations\n\nTrack post-reply conversations across all org campaigns. All filters are optional.\n\nReturns per-lead: replied status, lead reply count, user replies after lead's first reply, conversation timeline."},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign lead conversations fetched successfully\",\n  \"data\": {\n    \"filters_applied\": {\n      \"campaign_routine_ids\": [1, 2, 3],\n      \"linkedin_sender_id\": null,\n      \"stage\": null,\n      \"conversation_status\": null\n    },\n    \"summary\": {\n      \"total_members\": 150,\n      \"no_reply\": 95,\n      \"replied\": 30,\n      \"engaged_conversation\": 25\n    },\n    \"leads\": [\n      {\n        \"lead_id\": 4521,\n        \"campaign_member_id\": 8832,\n        \"stage\": \"prospect_replied\",\n        \"campaign\": {\n          \"id\": 1,\n          \"name\": \"Q3 Developer Outreach\",\n          \"status\": \"active\"\n        },\n        \"profile\": {\n          \"name\": \"John Smith\",\n          \"profile_url\": \"https://www.linkedin.com/in/john-smith\",\n          \"profile_id\": \"ACoAABx1234\",\n          \"public_identifier\": \"john-smith\",\n          \"images\": [\"https://media.licdn.com/dms/image/...\"],\n          \"occupation\": \"Senior Software Engineer at TechCorp\",\n          \"company_name\": \"TechCorp Solutions\"\n        },\n        \"linkedin_sender\": {\n          \"id\": 501,\n          \"name\": \"Sarah Johnson\",\n          \"profile_id\": \"ACoAABy5678\"\n        },\n        \"replied\": true,\n        \"first_reply_at\": \"2026-04-03T14:22:00.000Z\",\n        \"lead_replies_count\": 2,\n        \"user_replies_after_lead_count\": 2,\n        \"conversation_status\": \"engaged_conversation\",\n        \"conversation_timeline\": [\n          {\n            \"type\": \"campaign_message\",\n            \"at\": \"2026-04-01T10:00:00.000Z\",\n            \"message\": \"Hi John, I came across your profile...\"\n          },\n          {\n            \"type\": \"lead_reply\",\n            \"at\": \"2026-04-03T14:22:00.000Z\",\n            \"message\": \"Thanks for reaching out, Sarah!\"\n          },\n          {\n            \"type\": \"user_reply_after_lead\",\n            \"at\": \"2026-04-03T15:10:00.000Z\",\n            \"message\": \"Great to hear! Would Tuesday work for a call?\",\n            \"source\": \"chatbox\"\n          },\n          {\n            \"type\": \"lead_reply\",\n            \"at\": \"2026-04-03T18:45:00.000Z\",\n            \"message\": \"Tuesday works perfectly.\"\n          },\n          {\n            \"type\": \"user_reply_after_lead\",\n            \"at\": \"2026-04-04T09:00:00.000Z\",\n            \"message\": \"I'll send a calendar invite.\",\n            \"source\": \"chatbox\"\n          }\n        ]\n      }\n    ],\n    \"pagination\": {\n      \"limit\": 20,\n      \"offset\": 0,\n      \"total_count\": 150\n    }\n  }\n}"}],"_postman_id":"3270302b-f5b1-4024-8cfc-584f85435173"},{"name":"Filter by Campaign Routine ID","id":"0cf3067d-082c-4d3a-987b-3d7e4f62aada","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_routine_id\": \"123\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-by-campaign-routine-id\">Filter by Campaign Routine ID</h1>\n<p>Get lead conversations for a specific campaign.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"0cf3067d-082c-4d3a-987b-3d7e4f62aada"},{"name":"Filter by Campaign Name","id":"82700509-3bf5-4c32-9616-4006f8e8cbe0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Developer\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-by-campaign-name\">Filter by Campaign Name</h1>\n<p>Partial match on campaign name.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"82700509-3bf5-4c32-9616-4006f8e8cbe0"},{"name":"Filter: Engaged Conversations Only","id":"29e84fbc-4b1b-4026-b629-87886c1c514f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"conversation_status\": \"engaged_conversation\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-engaged-conversations\">Filter: Engaged Conversations</h1>\n<p>Only leads where back-and-forth conversation happened (user replied after lead's first reply).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"29e84fbc-4b1b-4026-b629-87886c1c514f"},{"name":"Filter: Replied Only (awaiting user response)","id":"63afdbe8-df38-4630-89fe-f67ff6361621","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"conversation_status\": \"replied\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-replied\">Filter: Replied</h1>\n<p>Leads who replied but user hasn't responded yet — action needed.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"63afdbe8-df38-4630-89fe-f67ff6361621"},{"name":"Filter: No Reply","id":"03a3973b-c6bb-40fd-9b78-f4ee83ba3bb7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"conversation_status\": \"no_reply\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-no-reply\">Filter: No Reply</h1>\n<p>Leads who haven't replied to any campaign message.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"03a3973b-c6bb-40fd-9b78-f4ee83ba3bb7"},{"name":"Filter by Sender + Stage","id":"a844c5e8-9015-44af-a5ba-43917478f10f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_sender_id\": \"501\",\n  \"stage\": \"prospect_replied\",\n  \"limit\": \"20\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"filter-by-sender--stage\">Filter by Sender + Stage</h1>\n<p>Combine filters: specific LinkedIn sender and campaign member stage.</p>\n<h2 id=\"available-stages\">Available Stages</h2>\n<ul>\n<li><code>new</code> — New member</li>\n<li><code>ongoing</code> — Campaign in progress</li>\n<li><code>completed</code> — Campaign completed</li>\n<li><code>prospect_replied</code> — Lead replied</li>\n<li><code>failed</code> — Step failed</li>\n<li><code>paused</code> — Member paused</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"a844c5e8-9015-44af-a5ba-43917478f10f"},{"name":"All Filters Combined","id":"d8e21b3d-5fe1-4bd8-9ab4-73102e7b0cec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_routine_id\": \"123\",\n  \"linkedin_sender_id\": \"501\",\n  \"stage\": \"prospect_replied\",\n  \"conversation_status\": \"engaged_conversation\",\n  \"limit\": \"50\",\n  \"offset\": \"0\"\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-lead-conversations","description":"<h1 id=\"all-filters-combined\">All Filters Combined</h1>\n<p>Example with every filter applied.</p>\n<h2 id=\"all-available-filters\">All Available Filters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>campaign_routine_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Specific campaign ID</td>\n</tr>\n<tr>\n<td><code>campaign_name</code></td>\n<td>String</td>\n<td>No</td>\n<td>Partial match on campaign name</td>\n</tr>\n<tr>\n<td><code>linkedin_sender_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>Specific LinkedIn sender</td>\n</tr>\n<tr>\n<td><code>stage</code></td>\n<td>String</td>\n<td>No</td>\n<td>Member stage: <code>new</code>, <code>ongoing</code>, <code>completed</code>, <code>prospect_replied</code>, <code>failed</code>, <code>paused</code></td>\n</tr>\n<tr>\n<td><code>conversation_status</code></td>\n<td>String</td>\n<td>No</td>\n<td><code>no_reply</code>, <code>replied</code>, <code>engaged_conversation</code></td>\n</tr>\n<tr>\n<td><code>limit</code></td>\n<td>String</td>\n<td>No</td>\n<td>Results per page (default 20)</td>\n</tr>\n<tr>\n<td><code>offset</code></td>\n<td>String</td>\n<td>No</td>\n<td>Pagination offset (default 0)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-lead-conversations"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"d8e21b3d-5fe1-4bd8-9ab4-73102e7b0cec"}],"id":"1bf20ead-4ac1-4961-a530-f017c3220150","_postman_id":"1bf20ead-4ac1-4961-a530-f017c3220150","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"1. Active Campaigns","item":[{"name":"Get Active Campaigns","event":[{"listen":"test","script":{"type":"text/javascript","exec":["// Save the first campaign so the later requests in this collection can use it.","const body = pm.response.json();","const campaign = (body.data && body.data.campaigns || [])[0];","if (campaign) {","    pm.collectionVariables.set('campaign_routine_id', campaign.campaign_routine_id);","    console.log('campaign_routine_id =', campaign.campaign_routine_id, '|', campaign.campaign_name);","}","","pm.test('200 OK', () => pm.response.to.have.status(200));"],"id":"f6fc6a5b-de54-48f8-9d6c-f6887d21f461"}}],"id":"f4e6763b-3f37-4adb-b0f6-57652e7d57bf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/active-campaigns?limit=20&offset=0","description":"<h1 id=\"get-active-campaigns\">Get Active Campaigns</h1>\n<p>The default view: every campaign currently <code>active</code>, newest first.</p>\n<p>Run this first — its test script saves <code>campaign_routine_id</code> into the collection variables, which every later request in this collection falls back on.</p>\n<h2 id=\"example-response\">Example response</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 200, \"status\": true,\n  \"message\": \"Campaigns fetched successfully\",\n  \"data\": {\n    \"campaigns\": [{\n      \"campaign_routine_id\": 2420,\n      \"campaign_name\": \"Test for Premium accounts\",\n      \"campaign_status\": \"active\",\n      \"campaign_type\": \"shared_campaign\",\n      \"max_campaign_days\": 180,\n      \"created_at\": \"2025-04-22T07:20:30.000Z\",\n      \"linkedin_senders\": [\n        { \"linkedin_sender_id\": 367, \"name\": \"Varun Shanker\",\n          \"email\": \"varun@example.com\", \"public_identifier\": \"varunshanker--marketing\" }\n      ],\n      \"leads\": { \"total\": 10, \"active\": 10, \"paused\": 0, \"replied\": 0, \"completed\": 0 }\n    }],\n    \"total_campaigns\": 1, \"limit\": 20, \"offset\": 0, \"campaign_status\": \"active\"\n  }\n}\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","active-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"20"},{"description":{"content":"<p>pagination offset</p>\n","type":"text/plain"},"key":"offset","value":"0"}],"variable":[]}},"response":[],"_postman_id":"f4e6763b-3f37-4adb-b0f6-57652e7d57bf"},{"name":"Search Campaigns by Name","id":"f2d7a958-1cb5-4dd3-ba81-fbbdba8d5a7f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/active-campaigns?name=premium&limit=20","description":"<h1 id=\"search-campaigns-by-name\">Search Campaigns by Name</h1>\n<p><code>name</code> is a partial, case-insensitive match — <code>premium</code> finds <em>Test for Premium accounts</em>. <code>term</code> and <code>campaign_name</code> are accepted as aliases so you can reuse the parameter name from <code>campaign-routines-v2</code>.</p>\n<p><code>%</code> and <code>_</code> in the search text are escaped, so a campaign literally named <code>Q3_launch</code> is found by searching <code>Q3_launch</code> rather than matching everything.</p>\n<p>No match returns <code>200</code> with an empty <code>campaigns</code> array and <code>total_campaigns: 0</code> — not a 404.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","active-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>partial, case-insensitive</p>\n","type":"text/plain"},"key":"name","value":"premium"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"20"}],"variable":[]}},"response":[],"_postman_id":"f2d7a958-1cb5-4dd3-ba81-fbbdba8d5a7f"},{"name":"Filter by Sender","id":"f4e82df1-a540-4c10-9327-4907ca5b87f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/active-campaigns?linkedin_sender_id={{linkedin_sender_id}}&limit=20","description":"<h1 id=\"filter-by-sender\">Filter by Sender</h1>\n<p>Only campaigns the given LinkedIn account actually runs:</p>\n<ul>\n<li><strong>smart campaign</strong> — the sender owns the campaign</li>\n<li><strong>shared campaign</strong> — the sender has an active account row on it (<code>status = true</code>); senders removed from a shared campaign are excluded</li>\n</ul>\n<p><code>linkedin_sender_ids</code> takes an array or a comma-separated string for several senders at once. <code>linkedin_user_information_id[s]</code> is accepted as the legacy alias.</p>\n<p>Get sender ids from <code>GET /third_party/linkedin-senders</code>, or read them off the <code>linkedin_senders</code> block of any campaign in this folder.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","active-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>raw id or encrypted identifier</p>\n","type":"text/plain"},"key":"linkedin_sender_id","value":"{{linkedin_sender_id}}"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"20"}],"variable":[]}},"response":[],"_postman_id":"f4e82df1-a540-4c10-9327-4907ca5b87f7"},{"name":"All Statuses (incl. draft / completed)","id":"508b7230-ea68-4ae4-aa16-8e7d6fd1a9c5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/active-campaigns?campaign_status=all&limit=50&offset=0","description":"<h1 id=\"all-statuses\">All Statuses</h1>\n<p><code>campaign_status=all</code> drops the status filter entirely — useful when a lead you expected is missing and you need to check whether its campaign was paused, completed or never activated.</p>\n<p>Pausing a lead in a non-active campaign is allowed but changes nothing in practice: the campaign itself is not scheduling work.</p>\n<p><code>total_campaigns</code> is the count <strong>before</strong> <code>limit</code>/<code>offset</code>, so page with <code>offset</code> until you have collected <code>total_campaigns</code> rows.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","active-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>active | inactive | completed | draft | all</p>\n","type":"text/plain"},"key":"campaign_status","value":"all"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"description":{"content":"<p>pagination offset</p>\n","type":"text/plain"},"key":"offset","value":"0"}],"variable":[]}},"response":[],"_postman_id":"508b7230-ea68-4ae4-aa16-8e7d6fd1a9c5"},{"name":"Get Active Campaigns (POST body)","id":"b0c09475-2c9c-4a85-9f21-2f9896a5d150","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"name\": \"premium\",\n  \"campaign_status\": \"active\",\n  \"limit\": 20,\n  \"offset\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/active-campaigns","description":"<h1 id=\"post-variant\">POST variant</h1>\n<p>Identical behaviour to the GET — the same route is registered for both verbs, so clients that prefer a JSON body (or have trouble with long query strings) can use POST.</p>\n<p>The response, filters and paging are exactly the same.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","active-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"b0c09475-2c9c-4a85-9f21-2f9896a5d150"}],"id":"330979ed-3cbc-4149-a646-a64b3077ad5d","description":"<h1 id=\"step-1--find-the-running-campaign\">Step 1 — find the running campaign</h1>\n<p><code>GET|POST /third_party/active-campaigns</code></p>\n<p>Lists the organisation's campaigns with a lead breakdown per campaign, so you can see where the leads you want to pause actually live. Only <code>smart_campaign</code> and <code>shared_campaign</code> types are returned — those are the ones that run sequences.</p>\n<h2 id=\"parameters\">Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Default</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>name</code> (aliases <code>term</code>, <code>campaign_name</code>)</td>\n<td>–</td>\n<td>partial, case-insensitive match on the campaign name</td>\n</tr>\n<tr>\n<td><code>campaign_status</code></td>\n<td><code>active</code></td>\n<td><code>active</code>, <code>inactive</code>, <code>completed</code>, <code>draft</code>, or <code>all</code></td>\n</tr>\n<tr>\n<td><code>linkedin_sender_id</code> / <code>linkedin_sender_ids</code></td>\n<td>–</td>\n<td>only campaigns this sender runs (smart-campaign owner, or an active shared-campaign account)</td>\n</tr>\n<tr>\n<td><code>limit</code> / <code>offset</code></td>\n<td><code>50</code> / <code>0</code></td>\n<td><code>limit</code> is capped at 100</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"the-leads-block\">The <code>leads</code> block</h2>\n<ul>\n<li><code>total</code> — every enrolment in the campaign</li>\n<li><code>paused</code> — enrolments with <code>status = false</code> (what pause writes)</li>\n<li><code>active</code> — <code>total - paused</code></li>\n<li><code>replied</code> — stage <code>prospect_replied</code> or <code>email_replied</code></li>\n<li><code>completed</code> — stage <code>completed</code></li>\n</ul>\n<p>The first request in this folder stores <code>campaign_routine_id</code> as a collection variable, so the rest of the collection runs without editing anything.</p>\n","_postman_id":"330979ed-3cbc-4149-a646-a64b3077ad5d","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"2. Campaign Leads","item":[{"name":"Get Leads in a Campaign","event":[{"listen":"test","script":{"type":"text/javascript","exec":["// Save the first enrolment so the pause / unpause requests work without editing.","const body = pm.response.json();","const lead = (body.data && body.data.leads || [])[0];","if (lead) {","    pm.collectionVariables.set('linkedin_campaign_routine_member_id', lead.linkedin_campaign_routine_member_id);","    pm.collectionVariables.set('campaign_routine_id', lead.campaign_routine_id);","    if (lead.lead) {","        pm.collectionVariables.set('profile_id', lead.lead.profile_id);","        pm.collectionVariables.set('lead_id', lead.lead.lead_id);","    }","    console.log('routine member', lead.linkedin_campaign_routine_member_id, '| stage', lead.stage, '| paused', lead.paused);","}","","pm.test('200 OK', () => pm.response.to.have.status(200));"],"id":"72196a00-4c01-4675-aee4-f5d5a11208bd"}}],"id":"7dc36e58-c096-43a2-90dc-5ec5e59cbc6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?campaign_routine_id={{campaign_routine_id}}&limit=20&offset=0","description":"<h1 id=\"get-leads-in-a-campaign\">Get Leads in a Campaign</h1>\n<p>Every enrolment in one campaign, newest first.</p>\n<p>Its test script saves <code>linkedin_campaign_routine_member_id</code>, <code>profile_id</code> and <code>lead_id</code> from the first row into collection variables, so the pause and unpause requests are ready to send as-is.</p>\n<h2 id=\"example-response\">Example response</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 200, \"status\": true,\n  \"message\": \"Campaign leads fetched successfully\",\n  \"data\": {\n    \"leads\": [{\n      \"linkedin_campaign_routine_member_id\": 610707,\n      \"campaign_routine_id\": 2420,\n      \"campaign_name\": \"Test for Premium accounts\",\n      \"campaign_status\": \"active\",\n      \"stage\": \"new\",\n      \"paused\": false,\n      \"member_status\": null,\n      \"progress_percentage\": 0,\n      \"message_status\": \"follow_up\",\n      \"first_communication_sent_time\": null,\n      \"last_message_activity_time\": null,\n      \"created_at\": \"2025-04-22T07:21:21.000Z\",\n      \"linkedin_sender\": { \"linkedin_sender_id\": 367, \"name\": \"Varun Shanker\" },\n      \"lead\": {\n        \"lead_id\": 4574293,\n        \"name\": \"Gaurav Pant\",\n        \"profile_id\": \"ACoAAAHFJUgBoREVs5fwXdFwHvxyi0w4HNDJue4\",\n        \"public_identifier\": \"pantgaurav\",\n        \"profile_url\": \"https://www.linkedin.com/in/pantgaurav\",\n        \"occupation\": \"Sales Director\",\n        \"company_name\": null,\n        \"location\": null\n      }\n    }],\n    \"total_leads\": 1, \"limit\": 20, \"offset\": 0\n  }\n}\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>from folder 1</p>\n","type":"text/plain"},"key":"campaign_routine_id","value":"{{campaign_routine_id}}"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"20"},{"description":{"content":"<p>pagination offset</p>\n","type":"text/plain"},"key":"offset","value":"0"}],"variable":[]}},"response":[],"_postman_id":"7dc36e58-c096-43a2-90dc-5ec5e59cbc6a"},{"name":"Search Leads by Name","id":"ece884c2-cbf8-49e7-a588-7d48223bbad7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?campaign_routine_id={{campaign_routine_id}}&name=gaurav&limit=20","description":"<h1 id=\"search-leads-by-name\">Search Leads by Name</h1>\n<p>Partial, case-insensitive match against the lead's <strong>name</strong> or <strong>public identifier</strong>, so <code>gaurav</code> finds <em>Gaurav Pant</em> and <code>pantgaurav</code> finds the same person by their LinkedIn handle.</p>\n<p>Drop <code>campaign_routine_id</code> to search the same name across every active campaign — that is how you find every campaign one person is currently enrolled in before deciding which ones to pause.</p>\n<p><code>term</code> and <code>member_name</code> are accepted as aliases.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>from folder 1</p>\n","type":"text/plain"},"key":"campaign_routine_id","value":"{{campaign_routine_id}}"},{"description":{"content":"<p>matches name or public identifier</p>\n","type":"text/plain"},"key":"name","value":"gaurav"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"20"}],"variable":[]}},"response":[],"_postman_id":"ece884c2-cbf8-49e7-a588-7d48223bbad7"},{"name":"Leads Across All Active Campaigns","id":"c0067c03-5dcb-44cb-9999-2c614aab69eb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?name=gaurav&limit=50","description":"<h1 id=\"leads-across-all-active-campaigns\">Leads Across All Active Campaigns</h1>\n<p>With no <code>campaign_routine_id</code>, the search spans every campaign matching <code>campaign_status</code> (default <code>active</code>). One person enrolled in three campaigns returns three rows, each with a different <code>campaign_routine_id</code> and <code>linkedin_campaign_routine_member_id</code>.</p>\n<p>This is the request to run before a cross-campaign pause: it tells you exactly what <code>POST campaign-leads/pause</code> with a bare <code>profile_id</code> would hit.</p>\n<p>Add <code>campaign_status=all</code> to include draft, inactive and completed campaigns.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>matches name or public identifier</p>\n","type":"text/plain"},"key":"name","value":"gaurav"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"50"}],"variable":[]}},"response":[],"_postman_id":"c0067c03-5dcb-44cb-9999-2c614aab69eb"},{"name":"Only Paused Leads","id":"89eef38e-46e4-4257-bd65-a3b0635ca9bb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?campaign_routine_id={{campaign_routine_id}}&paused=true&limit=50","description":"<h1 id=\"only-paused-leads\">Only Paused Leads</h1>\n<p><code>paused=true</code> returns the enrolments that are stopped (<code>status = false</code>); <code>paused=false</code> returns only the ones still in flight.</p>\n<p>Read <code>member_status</code> on each row to see <strong>why</strong> it stopped — your own pause <code>reason</code>, or a system pause such as:</p>\n<ul>\n<li><code>Duplicate - Active in another campaign</code></li>\n<li><code>Duplicate - Already enrolled in this campaign</code></li>\n<li><code>Blacklisted - Member is blacklisted in this organization</code></li>\n<li><code>Excluded - Previously messaged by same sender on LinkedIn</code></li>\n</ul>\n<p>This is the review list to run before a bulk unpause: blacklisted and excluded leads are deliberately <strong>not</strong> resumed (see folder 4).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>from folder 1</p>\n","type":"text/plain"},"key":"campaign_routine_id","value":"{{campaign_routine_id}}"},{"description":{"content":"<p>true = paused only, false = running only</p>\n","type":"text/plain"},"key":"paused","value":"true"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"50"}],"variable":[]}},"response":[],"_postman_id":"89eef38e-46e4-4257-bd65-a3b0635ca9bb"},{"name":"Filter by Stage and Sender","id":"bd57ca49-1d01-4913-ac9b-8755a08e3acf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?campaign_routine_id={{campaign_routine_id}}&stage=ongoing,awaiting_acceptance&linkedin_sender_id={{linkedin_sender_id}}&limit=50","description":"<h1 id=\"filter-by-stage-and-sender\">Filter by Stage and Sender</h1>\n<p>Narrows to leads mid-sequence for one sending account — the usual target set when an account needs to go quiet (warm-up, CAPTCHA, a seat being paused) without touching the rest of the campaign.</p>\n<p><code>stage</code> accepts several values as an array or a comma-separated string. The sender filter matches the account that actually sends: the managed sender on a shared campaign, otherwise the campaign owner.</p>\n<p>Pause the whole result set by collecting the returned <code>linkedin_campaign_routine_member_id</code> values and posting them to <code>campaign-leads/pause</code> (see <em>Bulk Pause</em> in folder 3).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>from folder 1</p>\n","type":"text/plain"},"key":"campaign_routine_id","value":"{{campaign_routine_id}}"},{"description":{"content":"<p>array or comma-separated</p>\n","type":"text/plain"},"key":"stage","value":"ongoing,awaiting_acceptance"},{"description":{"content":"<p>raw id or encrypted identifier</p>\n","type":"text/plain"},"key":"linkedin_sender_id","value":"{{linkedin_sender_id}}"},{"description":{"content":"<p>max 100</p>\n","type":"text/plain"},"key":"limit","value":"50"}],"variable":[]}},"response":[],"_postman_id":"bd57ca49-1d01-4913-ac9b-8755a08e3acf"},{"name":"Find an Enrolment by Profile ID","id":"6ff54165-ed47-47fd-a213-07a7b025f752","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads?profile_id={{profile_id}}&campaign_status=all","description":"<h1 id=\"find-an-enrolment-by-profile-id\">Find an Enrolment by Profile ID</h1>\n<p>Looks a specific person up by their LinkedIn <code>profile_id</code> (the <code>ACoAA…</code> urn fragment), across every campaign regardless of status.</p>\n<p><code>profile_ids</code> takes an array or comma-separated string for several people at once.</p>\n<p>A lead whose scrape has not finished yet has <code>profile_id: null</code> and cannot be matched this way — use <code>lead_id</code> or <code>linkedin_campaign_routine_member_id</code> for those.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[{"description":{"content":"<p>LinkedIn profile id (ACoAA…)</p>\n","type":"text/plain"},"key":"profile_id","value":"{{profile_id}}"},{"description":{"content":"<p>include non-active campaigns too</p>\n","type":"text/plain"},"key":"campaign_status","value":"all"}],"variable":[]}},"response":[],"_postman_id":"6ff54165-ed47-47fd-a213-07a7b025f752"},{"name":"Get Campaign Leads (POST body)","id":"a847d091-ba69-4b9c-a356-c27b8a2a4ae6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_routine_ids\": [\n    \"{{campaign_routine_id}}\"\n  ],\n  \"stage\": [\n    \"ongoing\",\n    \"new\"\n  ],\n  \"paused\": \"false\",\n  \"limit\": 50,\n  \"offset\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads","description":"<h1 id=\"post-variant\">POST variant</h1>\n<p>Same behaviour as the GET, with the filters in a JSON body — easier when you are passing arrays such as <code>campaign_routine_ids</code> or several <code>stage</code> values.</p>\n<p>Arrays and comma-separated strings are interchangeable on every list parameter.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"a847d091-ba69-4b9c-a356-c27b8a2a4ae6"}],"id":"939a698d-d324-41ee-a44e-3dfabba25190","description":"<h1 id=\"step-2--find-the-leads-enrolment\">Step 2 — find the lead's enrolment</h1>\n<p><code>GET|POST /third_party/campaign-leads</code></p>\n<p>Returns <strong>one row per enrolment</strong>, not per person. The same lead running in two campaigns comes back twice, each row carrying its own <code>linkedin_campaign_routine_member_id</code> — that id is what pause and unpause act on, and it is the only way to target one campaign while leaving the other running.</p>\n<h2 id=\"parameters\">Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Default</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>campaign_routine_id</code> / <code>campaign_routine_ids</code></td>\n<td>–</td>\n<td>omit to search across campaigns</td>\n</tr>\n<tr>\n<td><code>campaign_status</code></td>\n<td><code>active</code></td>\n<td>only applies when no campaign id is given; <code>all</code> to include every status</td>\n</tr>\n<tr>\n<td><code>name</code> (aliases <code>term</code>, <code>member_name</code>)</td>\n<td>–</td>\n<td>partial match on the lead's name <strong>or</strong> public identifier</td>\n</tr>\n<tr>\n<td><code>profile_id</code> / <code>profile_ids</code></td>\n<td>–</td>\n<td>LinkedIn profile id(s)</td>\n</tr>\n<tr>\n<td><code>stage</code></td>\n<td>–</td>\n<td>one or many stages (see below)</td>\n</tr>\n<tr>\n<td><code>paused</code></td>\n<td>–</td>\n<td><code>true</code> → only paused, <code>false</code> → only running</td>\n</tr>\n<tr>\n<td><code>linkedin_sender_id</code> / <code>linkedin_sender_ids</code></td>\n<td>–</td>\n<td>the account actually sending for the enrolment</td>\n</tr>\n<tr>\n<td><code>limit</code> / <code>offset</code></td>\n<td><code>20</code> / <code>0</code></td>\n<td><code>limit</code> is capped at 100</td>\n</tr>\n</tbody>\n</table>\n</div><p>Every list parameter accepts an array (<code>[1,2]</code>) or a comma-separated string (<code>\"1,2\"</code>).</p>\n<h2 id=\"stages\">Stages</h2>\n<p><code>new</code>, <code>ongoing</code>, <code>awaiting_acceptance</code>, <code>email_sent</code>, <code>completed</code>, <code>prospect_replied</code>, <code>email_replied</code>, <code>failed</code>, <code>paused</code>, <code>skipped</code>, <code>deleted</code>.</p>\n<h2 id=\"reading-a-row\">Reading a row</h2>\n<ul>\n<li><code>paused</code> — <code>true</code> when the enrolment is stopped (<code>status = false</code> in the database)</li>\n<li><code>member_status</code> — why it stopped: your pause <code>reason</code>, or a system reason such as <code>Duplicate - Active in another campaign</code> or <code>Blacklisted - …</code></li>\n<li><code>stage</code> — where the sequence stands; <code>progress_percentage</code> is 0–100</li>\n<li><code>linkedin_sender</code> — the account sending for this enrolment (the managed sender on a shared campaign, otherwise the campaign owner)</li>\n</ul>\n","_postman_id":"939a698d-d324-41ee-a44e-3dfabba25190","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"3. Pause Leads","item":[{"name":"Pause One Enrolment (by routine member id)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| paused', summary.paused,","            '| already_paused', summary.already_paused, '| skipped', summary.skipped);","pm.test('nothing was silently skipped', () => pm.expect(summary.skipped).to.eql(0));"],"id":"143cbac0-0684-4d3d-93cb-c5a236f2cc55"}}],"id":"5970b021-9f6e-40c3-b3eb-438733431c2f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_campaign_routine_member_id\": \"{{linkedin_campaign_routine_member_id}}\",\n  \"reason\": \"Customer asked to hold\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"pause-one-enrolment\">Pause One Enrolment</h1>\n<p>The precise form, and the one to prefer: <code>linkedin_campaign_routine_member_id</code> names exactly one enrolment, so there is no ambiguity about which campaign is affected when the lead runs in several.</p>\n<p><code>reason</code> is stored as <code>member_status</code> (truncated at 250 characters) and shows up on the lead listing and in the app, so use something a teammate reading it next month will understand. Omitted, it defaults to <code>Paused via API</code>.</p>\n<p>Ids may be raw numeric or the encrypted identifiers from <code>GET /third_party/encrypted-identifiers</code> — both take the same path, and <code>source=mcp</code> needs no special handling.</p>\n<p>Send it twice: the second call returns the lead under <code>already_paused</code> and changes nothing.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"5970b021-9f6e-40c3-b3eb-438733431c2f"},{"name":"Pause a Lead in One Campaign (by profile id)","id":"c518ada5-69f2-44f2-854b-40c34603676e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"profile_id\": \"{{profile_id}}\",\n  \"campaign_routine_ids\": [\n    \"{{campaign_routine_id}}\"\n  ],\n  \"reason\": \"Prospect asked to be contacted next quarter\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"pause-a-lead-in-one-campaign\">Pause a Lead in One Campaign</h1>\n<p>You know the person (<code>profile_id</code>) and the campaign, but not the enrolment id. <code>campaign_routine_ids</code> confines the pause to those campaigns, so the same person keeps running in every other campaign.</p>\n<p>This is the safe default for a <code>profile_id</code>-driven integration: always pass the campaign unless you genuinely mean <em>everywhere</em>.</p>\n<p>Pass several campaigns at once with <code>\"campaign_routine_ids\": [2420, 2421]</code>, or a comma-separated string.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"c518ada5-69f2-44f2-854b-40c34603676e"},{"name":"Pause a Lead Everywhere (all campaigns)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| paused', summary.paused,","            '| already_paused', summary.already_paused, '| skipped', summary.skipped);","pm.test('nothing was silently skipped', () => pm.expect(summary.skipped).to.eql(0));"],"id":"0d9bf90e-f5ea-46fa-9ba5-b48101ece3c9"}}],"id":"d870e228-de5b-4ae4-9cf0-5d6503957228","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"profile_id\": \"{{profile_id}}\",\n  \"reason\": \"Opted out - do not contact\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"pause-a-lead-everywhere\">Pause a Lead Everywhere</h1>\n<p><strong>No <code>campaign_routine_id</code></strong> — the lead is paused in <em>every</em> campaign it is currently running in across the organisation. This is what you want for an opt-out or a do-not-contact request.</p>\n<p>Run <em>Leads Across All Active Campaigns</em> (folder 2) with the same <code>profile_id</code> first to see exactly which enrolments this will hit.</p>\n<p>If more than 500 enrolments match, the call is rejected with <code>400</code> instead of acting on part of them — narrow it with <code>campaign_routine_ids</code>, or pass explicit <code>linkedin_campaign_routine_member_ids</code>.</p>\n<p>Note this pauses the sequences only. It does not add the person to a blacklist; a new campaign could still enrol them later.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"d870e228-de5b-4ae4-9cf0-5d6503957228"},{"name":"Pause by Lead ID","id":"0aefbed8-0ad4-4cc1-8cdc-2d0a6ef8013e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"lead_id\": \"{{lead_id}}\",\n  \"reason\": \"Wrong-fit lead, removed from outreach\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"pause-by-lead-id\">Pause by Lead ID</h1>\n<p><code>lead_id</code> is the <code>LinkedinCampaignMember</code> row id — the lead-list entry, as returned by <code>GET /third_party/lead-list-members</code> and by the <code>lead.lead_id</code> field of <code>campaign-leads</code>.</p>\n<p>Useful when you are working from lead lists rather than LinkedIn profile ids, and it is the only identifier that works for a lead whose scrape has not finished yet (those still have <code>profile_id: null</code>).</p>\n<p>Because a lead-list row belongs to one list, this targets the enrolments created from that row. The same person imported from a second list is a different <code>lead_id</code> — use <code>profile_id</code> to catch the person regardless of list.</p>\n<p><code>profile_id</code> and <code>lead_id</code> may be sent together; they combine as an OR.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"0aefbed8-0ad4-4cc1-8cdc-2d0a6ef8013e"},{"name":"Bulk Pause (several enrolments)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| paused', summary.paused,","            '| already_paused', summary.already_paused, '| skipped', summary.skipped);","pm.test('nothing was silently skipped', () => pm.expect(summary.skipped).to.eql(0));"],"id":"603602ee-a9de-4c13-a37a-926701ae31a3"}}],"id":"96e27019-03d8-4bf0-af50-589ffcb96882","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_campaign_routine_member_ids\": [\n    \"{{linkedin_campaign_routine_member_id}}\"\n  ],\n  \"reason\": \"Sender paused for warm-up\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"bulk-pause\">Bulk Pause</h1>\n<p>Paste the <code>linkedin_campaign_routine_member_id</code> values from a filtered <code>campaign-leads</code> query — for example every <code>ongoing</code> lead of one sender — and pause them in a single call.</p>\n<p>The ids may be an array or a comma-separated string. All of them share the one <code>reason</code>.</p>\n<p>The write runs inside a retrying transaction, so either the whole batch lands or none of it does; a MySQL deadlock is retried rather than leaving half the batch paused.</p>\n<p><strong>Limit:</strong> 500 enrolments per call. Beyond that the request is rejected with <code>400</code> rather than acting on a slice — page through your filter and send several calls.</p>\n<p>Check <code>summary</code> in the response: <code>matched</code> should equal the number of ids you sent, and any difference between <code>paused</code> and <code>matched</code> is explained by the <code>already_paused</code> and <code>skipped</code> arrays.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"96e27019-03d8-4bf0-af50-589ffcb96882"},{"name":"Error — no identifiers (400)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('400 Bad Request', () => pm.response.to.have.status(400));"],"id":"24f32f72-0102-4c95-9e64-19d58b2cd81f"}}],"id":"4dec0bd7-3bbc-42d8-abb0-b28ee37a26f3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"reason\": \"this call has nothing to act on\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"error--no-identifiers\">Error — no identifiers</h1>\n<p>Without <code>linkedin_campaign_routine_member_id(s)</code>, <code>profile_id(s)</code> or <code>lead_id(s)</code> there is nothing to act on, so the call is rejected rather than interpreted as <em>pause everything</em>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 400, \"status\": false,\n  \"message\": \"Pass linkedin_campaign_routine_member_id(s), profile_id(s), or lead_id(s) to say which leads to act on\",\n  \"data\": {}\n}\n</code></pre>\n<p>A <code>campaign_routine_id</code> on its own is <strong>not</strong> an identifier — it only narrows one. To pause a whole campaign, list its leads first and send their enrolment ids.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"4dec0bd7-3bbc-42d8-abb0-b28ee37a26f3"},{"name":"Error — unknown identifier (404)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('404 Not Found', () => pm.response.to.have.status(404));"],"id":"8314972c-8df0-4719-a38f-c0bbab50a93e"}}],"id":"161055f5-89ad-4a0b-b5bb-328fab1709a2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_campaign_routine_member_id\": 999999999\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/pause","description":"<h1 id=\"error--unknown-identifier\">Error — unknown identifier</h1>\n<p>Nothing in <strong>your organisation</strong> matches. Every query in this API is scoped to the organisation behind the API key, so an id belonging to another organisation is indistinguishable from one that does not exist:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 404, \"status\": false,\n  \"message\": \"No campaign lead in your organisation matches these identifiers. Call GET campaign-leads to find them.\",\n  \"data\": {}\n}\n</code></pre>\n<p>Soft-deleted enrolments are invisible too — a lead removed from a campaign returns 404 here rather than being silently paused.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","pause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"161055f5-89ad-4a0b-b5bb-328fab1709a2"}],"id":"4cc2a93b-71d5-4d58-adc1-43b80ac5c5ab","description":"<h1 id=\"step-3--pause\">Step 3 — pause</h1>\n<p><code>POST /third_party/campaign-leads/pause</code></p>\n<h2 id=\"identifying-what-to-pause\">Identifying what to pause</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Meaning</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>linkedin_campaign_routine_member_id</code> / <code>…_ids</code></td>\n<td>exact — one enrolment each</td>\n</tr>\n<tr>\n<td><code>profile_id</code> / <code>profile_ids</code></td>\n<td>the lead's LinkedIn profile id</td>\n</tr>\n<tr>\n<td><code>lead_id</code> / <code>lead_ids</code></td>\n<td><code>LinkedinCampaignMember</code> row id</td>\n</tr>\n<tr>\n<td><code>campaign_routine_id</code> / <code>campaign_routine_ids</code></td>\n<td>confines the action to those campaigns</td>\n</tr>\n<tr>\n<td><code>reason</code></td>\n<td>free text stored as <code>member_status</code>; defaults to <code>Paused via API</code></td>\n</tr>\n</tbody>\n</table>\n</div><p><code>profile_id</code> and <code>lead_id</code> combine as an <strong>OR</strong>; <code>campaign_routine_id[s]</code> then narrows whatever they matched. With a bare <code>profile_id</code> and no campaign filter, the lead is paused in <strong>every</strong> campaign it is currently running in.</p>\n<h2 id=\"what-a-pause-actually-writes\">What a pause actually writes</h2>\n<p>The same thing the duplicate/blacklist guard in <code>LinkedinCampaignRoutineMember#check_member_status</code> writes:</p>\n<ul>\n<li>routine member: <code>status = false</code>, <code>stage = \"paused\"</code>, <code>member_status = &lt;reason&gt;</code></li>\n<li>every pending step member (<code>new</code>, <code>enqueued</code>) → <code>paused</code></li>\n</ul>\n<p><code>status = false</code> is the load-bearing part: every sender worker re-reads it immediately before acting, so a job already sitting in the Sidekiq queue for that lead stops too. The pause is effective straight away, not at the next scheduling sweep.</p>\n<h2 id=\"leads-that-are-skipped-rather-than-paused\">Leads that are skipped rather than paused</h2>\n<p>Stages <code>prospect_replied</code>, <code>email_replied</code>, <code>completed</code> and <code>deleted</code> are returned under <code>skipped</code> with a reason and left untouched. <code>stage</code> is written with a bulk update — no callbacks, no audit trail — so pausing a replied lead would erase an outcome that cannot be recovered, and would stop reply detection from ever firing again for that enrolment.</p>\n<p>Leads already paused come back under <code>already_paused</code>: the call is idempotent and never overwrites an existing <code>member_status</code>.</p>\n<h2 id=\"response-shape\">Response shape</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 200, \"status\": true,\n  \"message\": \"Leads paused successfully\",\n  \"data\": {\n    \"paused\":         [ { \"linkedin_campaign_routine_member_id\": 610707, \"campaign_routine_id\": 2420,\n                          \"campaign_name\": \"…\", \"lead_id\": 4574293, \"profile_id\": \"ACoAA…\",\n                          \"name\": \"Gaurav Pant\", \"previous_stage\": \"new\", \"outcome\": \"paused\" } ],\n    \"already_paused\": [],\n    \"skipped\":        [],\n    \"summary\": { \"matched\": 1, \"paused\": 1, \"already_paused\": 0, \"skipped\": 0 }\n  }\n}\n</code></pre>\n<p>Always read <code>summary</code> — a <code>200</code> can still mean nothing was paused.</p>\n","_postman_id":"4cc2a93b-71d5-4d58-adc1-43b80ac5c5ab","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"4. Unpause Leads","item":[{"name":"Unpause One Enrolment","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| resumed', summary.resumed,","            '| not_paused', summary.not_paused, '| skipped', summary.skipped);"],"id":"d07196f2-b7c4-4737-9da0-9948c401b2eb"}}],"id":"509a0123-0e0d-4aa5-b03f-aa9cb55dd117","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_campaign_routine_member_id\": \"{{linkedin_campaign_routine_member_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/unpause","description":"<h1 id=\"unpause-one-enrolment\">Unpause One Enrolment</h1>\n<p>The exact counterpart of <em>Pause One Enrolment</em>. Run it right after the pause and compare: <code>previous_stage</code> reads <code>paused</code>, and the row returns to the stage its progress implies.</p>\n<p>Sending it against a lead that is already running is harmless — it comes back under <code>not_paused</code> with nothing changed.</p>\n<p>The lead resumes from where it stopped; steps already completed are not re-sent.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","unpause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"509a0123-0e0d-4aa5-b03f-aa9cb55dd117"},{"name":"Unpause a Lead in One Campaign","id":"d34a07f1-ae19-4826-b143-e4f97e75760c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"profile_id\": \"{{profile_id}}\",\n  \"campaign_routine_ids\": [\n    \"{{campaign_routine_id}}\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/unpause","description":"<h1 id=\"unpause-a-lead-in-one-campaign\">Unpause a Lead in One Campaign</h1>\n<p>Resumes the person in the named campaign only, leaving any pause in other campaigns in place.</p>\n<p>Worth knowing: a lead paused with <code>Duplicate - Active in another campaign</code> was stopped because the same person is mid-sequence elsewhere. Resuming it here does clear that flag, but the duplicate guard will pause it again on its next step while the other enrolment is still running — finish or stop that one first.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","unpause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"d34a07f1-ae19-4826-b143-e4f97e75760c"},{"name":"Bulk Unpause","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| resumed', summary.resumed,","            '| not_paused', summary.not_paused, '| skipped', summary.skipped);"],"id":"9906aa61-65d1-4aa2-a0a6-88e71b5f6e7f"}}],"id":"71c5a4b6-eaf1-4bf7-aa3a-4b21415afc56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"linkedin_campaign_routine_member_ids\": [\n    \"{{linkedin_campaign_routine_member_id}}\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/unpause","description":"<h1 id=\"bulk-unpause\">Bulk Unpause</h1>\n<p>Resumes a batch — the usual follow-up to <em>Bulk Pause</em> once a sender is back in service.</p>\n<p>The safe way to build the list is to run <em>Only Paused Leads</em> (folder 2) with the <code>reason</code> you paused under, and collect only those <code>linkedin_campaign_routine_member_id</code> values. That avoids sweeping up leads the system paused for its own reasons.</p>\n<p>Even so, replied, completed, excluded and blacklisted leads are filtered out server-side and returned under <code>skipped</code> — so a broad unpause cannot accidentally restart messaging someone who already replied.</p>\n<p>Same 500-enrolment ceiling as pause.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","unpause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"71c5a4b6-eaf1-4bf7-aa3a-4b21415afc56"},{"name":"Unpause a Lead Everywhere","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('200 OK', () => pm.response.to.have.status(200));","const summary = pm.response.json().data.summary;","console.log('matched', summary.matched, '| resumed', summary.resumed,","            '| not_paused', summary.not_paused, '| skipped', summary.skipped);"],"id":"f8cecf07-3e20-4d9e-9b71-ba077b45b261"}}],"id":"83c222f5-e5e8-4bf6-8af8-88e42d5b8f9c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"profile_id\": \"{{profile_id}}\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaign-leads/unpause","description":"<h1 id=\"unpause-a-lead-everywhere\">Unpause a Lead Everywhere</h1>\n<p>No campaign filter — resumes the person in every campaign where they are paused.</p>\n<p>Reverses <em>Pause a Lead Everywhere</em>. Check the <code>skipped</code> array afterwards: if the person replied in one campaign while paused in others, that enrolment stays stopped and only the rest resume, which is almost always what you want.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaign-leads","unpause"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"83c222f5-e5e8-4bf6-8af8-88e42d5b8f9c"}],"id":"3e660a85-bc98-4d18-b590-b93c057bf0e2","description":"<h1 id=\"step-4--unpause\">Step 4 — unpause</h1>\n<p><code>POST /third_party/campaign-leads/unpause</code></p>\n<p>Takes exactly the same identifiers as pause (<code>linkedin_campaign_routine_member_id[s]</code>, <code>profile_id[s]</code>, <code>lead_id[s]</code>, narrowed by <code>campaign_routine_id[s]</code>). <code>reason</code> is ignored — resuming clears <code>member_status</code>.</p>\n<h2 id=\"what-it-restores\">What it restores</h2>\n<ul>\n<li><code>status = true</code>, <code>member_status = null</code>, <code>campaign_ids = []</code></li>\n<li><code>stage</code> recomputed from progress the way the campaign itself would: <code>new</code> at 0%, <code>ongoing</code> at 1–99%, <code>completed</code> / <code>awaiting_acceptance</code> at 100%</li>\n<li>step members sitting at <code>paused</code> → <code>new</code>, so the scheduler picks them up again</li>\n<li>if the lead was paused before the campaign ever seeded its first step, that first step is generated immediately instead of waiting for the periodic sweep</li>\n</ul>\n<p>Clearing <code>member_status</code> matters: a lead left carrying <code>Duplicate - Active in another campaign</code> would be re-paused by the background job that reconciles duplicates.</p>\n<h2 id=\"leads-that-are-not-resumed\">Leads that are not resumed</h2>\n<p>A lead stopped by something other than a pause is reported under <code>skipped</code> and left alone:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Situation</th>\n<th>Why</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>prospect_replied</code> / <code>email_replied</code></td>\n<td>the lead replied — resuming would keep messaging a live conversation</td>\n</tr>\n<tr>\n<td><code>completed</code></td>\n<td>nothing left to run</td>\n</tr>\n<tr>\n<td><code>deleted</code></td>\n<td>removed from the campaign</td>\n</tr>\n<tr>\n<td><code>skipped</code></td>\n<td>the campaign's own lead-exclusion settings excluded it; resuming would override a setting the campaign owner turned on</td>\n</tr>\n<tr>\n<td><code>member_status</code> starts with <code>Blacklisted</code></td>\n<td>it would be paused again on its next step anyway</td>\n</tr>\n</tbody>\n</table>\n</div><p>Leads that were already running come back under <code>not_paused</code>.</p>\n<h2 id=\"response-shape\">Response shape</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"code\": 200, \"status\": true,\n  \"message\": \"Leads resumed successfully\",\n  \"data\": {\n    \"resumed\":    [ { \"linkedin_campaign_routine_member_id\": 610707, \"previous_stage\": \"paused\",\n                      \"outcome\": \"resumed\", \"…\": \"…\" } ],\n    \"not_paused\": [],\n    \"skipped\":    [],\n    \"summary\": { \"matched\": 1, \"resumed\": 1, \"not_paused\": 0, \"skipped\": 0 }\n  }\n}\n</code></pre>\n","_postman_id":"3e660a85-bc98-4d18-b590-b93c057bf0e2","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Predefined Campaigns","item":[{"name":"Create Campaign - Starter Connection (Draft)","id":"169a2f0d-84d9-4fd6-9bc5-67778f5342b7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, I'd love to connect!\",\n    \"followup\": \"Thanks for connecting {{first_name}} \\u2014 I help teams at {{company_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---starter-connection\">Create Campaign - Starter Connection</h1>\n<p>Creates a campaign using the <strong>Starter Connection</strong> predefined flow:</p>\n<p><code>if_connected</code> -&gt; (accepted) <strong>Send Follow-up Message</strong> / (not connected) <strong>Send Connection Request</strong></p>\n<p>Leads that are already connected get the follow-up; the rest get a connection request.</p>\n<h2 id=\"message-slots\">Message slots</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>followup</code></td>\n<td>Yes</td>\n<td>Message sent to already-connected leads</td>\n</tr>\n<tr>\n<td><code>connect_note</code></td>\n<td>No</td>\n<td>Note attached to the connection request</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"draft-vs-active\">Draft vs Active</h2>\n<p><code>is_draft: true</code> (default) stores the flow but does <strong>not</strong> materialize steps or start sending. Send <code>is_draft: false</code> to activate immediately (materializes steps + seeds members).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"a169338a-16cf-4155-8f44-523ba7a533bd","name":"Success - Draft","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, I'd love to connect!\",\n    \"followup\": \"Thanks for connecting {{first_name}} \\u2014 I help teams at {{company_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Starter Connection\n\nCreates a campaign using the **Starter Connection** predefined flow:\n\n`if_connected` -> (accepted) **Send Follow-up Message** / (not connected) **Send Connection Request**\n\nLeads that are already connected get the follow-up; the rest get a connection request.\n\n## Message slots\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup` | Yes | Message sent to already-connected leads |\n| `connect_note` | No | Note attached to the connection request |\n\n## Draft vs Active\n\n`is_draft: true` (default) stores the flow but does **not** materialize steps or start sending. Send `is_draft: false` to activate immediately (materializes steps + seeds members)."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2655,\n    \"campaign_name\": \"Q3 Outreach\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"starter_connection\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"},{"id":"b37e6e62-0021-4bbe-a399-36be1946a73a","name":"Error - Unknown flow","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, I'd love to connect!\",\n    \"followup\": \"Thanks for connecting {{first_name}} \\u2014 I help teams at {{company_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Starter Connection\n\nCreates a campaign using the **Starter Connection** predefined flow:\n\n`if_connected` -> (accepted) **Send Follow-up Message** / (not connected) **Send Connection Request**\n\nLeads that are already connected get the follow-up; the rest get a connection request.\n\n## Message slots\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup` | Yes | Message sent to already-connected leads |\n| `connect_note` | No | Note attached to the connection request |\n\n## Draft vs Active\n\n`is_draft: true` (default) stores the flow but does **not** materialize steps or start sending. Send `is_draft: false` to activate immediately (materializes steps + seeds members)."},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"flow must be one of: starter_connection, connect_only, message_only, free_open_inmail, nurture_outreach, nurture_open_inmail, pure_weekly, pure_fortnightly, pure_monthly, pure_quarterly\",\n  \"data\": {}\n}"},{"id":"25fcd5ef-5564-4ec9-baf5-5fcab323458e","name":"Error - Missing required message","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, I'd love to connect!\",\n    \"followup\": \"Thanks for connecting {{first_name}} \\u2014 I help teams at {{company_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Starter Connection\n\nCreates a campaign using the **Starter Connection** predefined flow:\n\n`if_connected` -> (accepted) **Send Follow-up Message** / (not connected) **Send Connection Request**\n\nLeads that are already connected get the follow-up; the rest get a connection request.\n\n## Message slots\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup` | Yes | Message sent to already-connected leads |\n| `connect_note` | No | Note attached to the connection request |\n\n## Draft vs Active\n\n`is_draft: true` (default) stores the flow but does **not** materialize steps or start sending. Send `is_draft: false` to activate immediately (materializes steps + seeds members)."},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Missing required message(s) for flow 'starter_connection': followup\",\n  \"data\": {}\n}"},{"id":"d814c0bf-d59c-4c10-881e-f00ffc7967b6","name":"Error - Duplicate name","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, I'd love to connect!\",\n    \"followup\": \"Thanks for connecting {{first_name}} \\u2014 I help teams at {{company_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Starter Connection\n\nCreates a campaign using the **Starter Connection** predefined flow:\n\n`if_connected` -> (accepted) **Send Follow-up Message** / (not connected) **Send Connection Request**\n\nLeads that are already connected get the follow-up; the rest get a connection request.\n\n## Message slots\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup` | Yes | Message sent to already-connected leads |\n| `connect_note` | No | Note attached to the connection request |\n\n## Draft vs Active\n\n`is_draft: true` (default) stores the flow but does **not** materialize steps or start sending. Send `is_draft: false` to activate immediately (materializes steps + seeds members)."},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 400,\n  \"status\": false,\n  \"message\": \"Campaign name 'Q3 Outreach' already exists in your organization\",\n  \"data\": {}\n}"}],"_postman_id":"169a2f0d-84d9-4fd6-9bc5-67778f5342b7"},{"name":"Create Campaign - Starter Connection (Activate)","id":"67ff2d91-303c-4ac9-81ca-b8b0c43fd6ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach Live\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": false,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}!\",\n    \"followup\": \"Thanks for connecting {{first_name}}!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---starter-connection-activate\">Create Campaign - Starter Connection (Activate)</h1>\n<p>Same as the draft example but <code>is_draft: false</code> — the campaign is created <strong>active</strong>, steps are materialized and first-step members are seeded, so sending begins on the normal schedule.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"badc266d-f189-4395-bc37-e9c8e7757324","name":"Success - Active","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Q3 Outreach Live\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": false,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}!\",\n    \"followup\": \"Thanks for connecting {{first_name}}!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Starter Connection (Activate)\n\nSame as the draft example but `is_draft: false` — the campaign is created **active**, steps are materialized and first-step members are seeded, so sending begins on the normal schedule."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2665,\n    \"campaign_name\": \"Q3 Outreach Live\",\n    \"campaign_status\": \"active\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"starter_connection\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 3,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"67ff2d91-303c-4ac9-81ca-b8b0c43fd6ae"},{"name":"Create Campaign - Connect Only","id":"e65cf682-caed-4a5c-927e-28241760f18a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Connect Blitz\",\n  \"flow\": \"connect_only\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, let's connect!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---connect-only\">Create Campaign - Connect Only</h1>\n<p>Single action: <strong>Send Connection Request</strong> with a note. No follow-up.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>connect_note</code></td>\n<td>Yes</td>\n<td>Connection request note</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"20880718-c32d-4f32-bf95-f9515acf4db6","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Connect Blitz\",\n  \"flow\": \"connect_only\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}, let's connect!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Connect Only\n\nSingle action: **Send Connection Request** with a note. No follow-up.\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `connect_note` | Yes | Connection request note |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2656,\n    \"campaign_name\": \"Connect Blitz\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"connect_only\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"e65cf682-caed-4a5c-927e-28241760f18a"},{"name":"Create Campaign - Message Only","id":"ba76b5b9-bf2d-438a-97f5-537906a581c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Reconnect\",\n  \"flow\": \"message_only\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"message\": \"Hey {{first_name}}, long time!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---message-only\">Create Campaign - Message Only</h1>\n<p>Single action: <strong>Send Message</strong> to leads who are already connections.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>Yes</td>\n<td>Message body</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"b13035cd-868d-4876-9ece-b504795994b2","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Reconnect\",\n  \"flow\": \"message_only\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"message\": \"Hey {{first_name}}, long time!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Message Only\n\nSingle action: **Send Message** to leads who are already connections.\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `message` | Yes | Message body |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2657,\n    \"campaign_name\": \"Reconnect\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"message_only\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"ba76b5b9-bf2d-438a-97f5-537906a581c2"},{"name":"Create Campaign - Free Open InMail","id":"ed702e0d-b036-4b48-a833-0c22413dc44e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Open InMail Push\",\n  \"flow\": \"free_open_inmail\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"subject\": \"Quick question\",\n    \"message\": \"Hi {{first_name}}, ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---free-open-inmail\">Create Campaign - Free Open InMail</h1>\n<p>Sends a free Open InMail to prospects who are <strong>not connected</strong> and have an <strong>open profile</strong>.</p>\n<p>Flow: <code>if_connected</code> -&gt; (not connected) <code>if_open_inmail</code> -&gt; (open) <strong>Open Mail</strong>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>Yes</td>\n<td>InMail body</td>\n</tr>\n<tr>\n<td><code>subject</code></td>\n<td>No</td>\n<td>InMail subject line</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"98865c0a-24c8-470b-8ddf-66401d173be9","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Open InMail Push\",\n  \"flow\": \"free_open_inmail\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"subject\": \"Quick question\",\n    \"message\": \"Hi {{first_name}}, ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Free Open InMail\n\nSends a free Open InMail to prospects who are **not connected** and have an **open profile**.\n\nFlow: `if_connected` -> (not connected) `if_open_inmail` -> (open) **Open Mail**.\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `message` | Yes | InMail body |\n| `subject` | No | InMail subject line |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2658,\n    \"campaign_name\": \"Open InMail Push\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"free_open_inmail\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"ed702e0d-b036-4b48-a833-0c22413dc44e"},{"name":"Create Campaign - Nurture & Outreach (5-action)","id":"bb80f41a-4c15-4b6f-ad66-64c8ee5bd669","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Nurture 5\",\n  \"flow\": \"nurture_outreach\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup_1\": \"Great to connect {{first_name}}!\",\n    \"followup_2\": \"Following up {{first_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---nurture--outreach\">Create Campaign - Nurture &amp; Outreach</h1>\n<p>5-action engagement flow:</p>\n<p><code>Visit Profile</code> -&gt; <code>Like Post</code> (12h) -&gt; <code>Comment Post</code> (15m) -&gt; <code>if_connected</code> -&gt;\n  (accepted) <code>Follow-up 1</code> (1d) -&gt; <code>Follow-up 2</code> (3d)  /  (not connected) <code>Connect</code> -&gt; <code>Like Post</code> (5d)</p>\n<p>Visit/Like/Comment carry no message (comment content is AI/keyword-driven).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>followup_1</code></td>\n<td>Yes</td>\n<td>First follow-up (connected branch)</td>\n</tr>\n<tr>\n<td><code>connect_note</code></td>\n<td>No</td>\n<td>Connection request note</td>\n</tr>\n<tr>\n<td><code>followup_2</code></td>\n<td>No</td>\n<td>Second follow-up (blank = skipped)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"b89b7f21-56ff-443c-9f15-99e503837695","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Nurture 5\",\n  \"flow\": \"nurture_outreach\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup_1\": \"Great to connect {{first_name}}!\",\n    \"followup_2\": \"Following up {{first_name}} ...\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Nurture & Outreach\n\n5-action engagement flow:\n\n`Visit Profile` -> `Like Post` (12h) -> `Comment Post` (15m) -> `if_connected` ->\n  (accepted) `Follow-up 1` (1d) -> `Follow-up 2` (3d)  /  (not connected) `Connect` -> `Like Post` (5d)\n\nVisit/Like/Comment carry no message (comment content is AI/keyword-driven).\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup_1` | Yes | First follow-up (connected branch) |\n| `connect_note` | No | Connection request note |\n| `followup_2` | No | Second follow-up (blank = skipped) |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2659,\n    \"campaign_name\": \"Nurture 5\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"nurture_outreach\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"bb80f41a-4c15-4b6f-ad66-64c8ee5bd669"},{"name":"Create Campaign - Nurture + Open InMail (6-action)","id":"6a3e7592-8817-43ba-8af1-6d9a8e29b055","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Nurture 6\",\n  \"flow\": \"nurture_open_inmail\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup_1\": \"F1\",\n    \"followup_2\": \"F2\",\n    \"followup_3\": \"F3\",\n    \"followup_4\": \"F4\",\n    \"subject\": \"Hello\",\n    \"message\": \"InMail {{first_name}}\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---nurture--open-inmail\">Create Campaign - Nurture + Open InMail</h1>\n<p>6-action flow:</p>\n<p><code>Visit</code> -&gt; <code>Like</code> (4h) -&gt; <code>Comment</code> (15m) -&gt; <code>if_connected</code> -&gt;\n  (accepted) <code>Follow-up 1..4</code>  /  (not connected) <code>Connect</code> (4h) -&gt; <code>if_open_inmail</code> (5d) -&gt; <code>Open Mail</code> / <code>Like</code></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Slot</th>\n<th>Required</th>\n<th>Maps to</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>followup_1</code></td>\n<td>Yes</td>\n<td>First follow-up (connected branch)</td>\n</tr>\n<tr>\n<td><code>message</code></td>\n<td>Yes</td>\n<td>Open InMail body (not-connected branch)</td>\n</tr>\n<tr>\n<td><code>connect_note</code></td>\n<td>No</td>\n<td>Connection request note</td>\n</tr>\n<tr>\n<td><code>followup_2</code>,<code>followup_3</code>,<code>followup_4</code></td>\n<td>No</td>\n<td>Additional follow-ups (blank = skipped)</td>\n</tr>\n<tr>\n<td><code>subject</code></td>\n<td>No</td>\n<td>InMail subject</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"17984ea8-b3f2-43e2-8658-1410763e1ece","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Nurture 6\",\n  \"flow\": \"nurture_open_inmail\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup_1\": \"F1\",\n    \"followup_2\": \"F2\",\n    \"followup_3\": \"F3\",\n    \"followup_4\": \"F4\",\n    \"subject\": \"Hello\",\n    \"message\": \"InMail {{first_name}}\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Nurture + Open InMail\n\n6-action flow:\n\n`Visit` -> `Like` (4h) -> `Comment` (15m) -> `if_connected` ->\n  (accepted) `Follow-up 1..4`  /  (not connected) `Connect` (4h) -> `if_open_inmail` (5d) -> `Open Mail` / `Like`\n\n| Slot | Required | Maps to |\n|------|----------|---------|\n| `followup_1` | Yes | First follow-up (connected branch) |\n| `message` | Yes | Open InMail body (not-connected branch) |\n| `connect_note` | No | Connection request note |\n| `followup_2`,`followup_3`,`followup_4` | No | Additional follow-ups (blank = skipped) |\n| `subject` | No | InMail subject |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2660,\n    \"campaign_name\": \"Nurture 6\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"nurture_open_inmail\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"6a3e7592-8817-43ba-8af1-6d9a8e29b055"},{"name":"Create Campaign - Pure Engagement: Weekly Comment","id":"528cdf41-c9f8-42af-a18f-433c07a4a128","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Weekly Comments\",\n  \"flow\": \"pure_weekly\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {}\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---pure-engagement-comment-cadence\">Create Campaign - Pure Engagement (Comment Cadence)</h1>\n<p>Message-less linear <code>comment_post</code> chain. Comment content is AI/keyword-driven (no caller messages).</p>\n<p>Four cadence variants (change only the <code>flow</code> value):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>flow</th>\n<th>Steps</th>\n<th>Interval</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>pure_weekly</code></td>\n<td>26</td>\n<td>7 days</td>\n</tr>\n<tr>\n<td><code>pure_fortnightly</code></td>\n<td>7</td>\n<td>14 days</td>\n</tr>\n<tr>\n<td><code>pure_monthly</code></td>\n<td>7</td>\n<td>30 days</td>\n</tr>\n<tr>\n<td><code>pure_quarterly</code></td>\n<td>7</td>\n<td>90 days</td>\n</tr>\n</tbody>\n</table>\n</div><p><code>messages</code> may be omitted or empty <code>{}</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"d04c579c-0086-43ed-96dd-3ebc54d91cf7","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Weekly Comments\",\n  \"flow\": \"pure_weekly\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {}\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Pure Engagement (Comment Cadence)\n\nMessage-less linear `comment_post` chain. Comment content is AI/keyword-driven (no caller messages).\n\nFour cadence variants (change only the `flow` value):\n\n| flow | Steps | Interval |\n|------|-------|----------|\n| `pure_weekly` | 26 | 7 days |\n| `pure_fortnightly` | 7 | 14 days |\n| `pure_monthly` | 7 | 30 days |\n| `pure_quarterly` | 7 | 90 days |\n\n`messages` may be omitted or empty `{}`."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2661,\n    \"campaign_name\": \"Weekly Comments\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"pure_weekly\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"528cdf41-c9f8-42af-a18f-433c07a4a128"},{"name":"Create Campaign - Pure Engagement: Monthly Comment","id":"d79fbb2d-1c73-4fc7-81d9-4ebac55c433c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Monthly Comments\",\n  \"flow\": \"pure_monthly\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {}\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---pure-engagement-monthly\">Create Campaign - Pure Engagement: Monthly</h1>\n<p>Same as Weekly but with <code>flow: pure_monthly</code> (7 comment_post steps, 30-day interval). Swap <code>flow</code> for <code>pure_fortnightly</code> or <code>pure_quarterly</code> for the other cadences.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"64a1beec-41b5-46d1-9612-d8614987d30e","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Monthly Comments\",\n  \"flow\": \"pure_monthly\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"messages\": {}\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - Pure Engagement: Monthly\n\nSame as Weekly but with `flow: pure_monthly` (7 comment_post steps, 30-day interval). Swap `flow` for `pure_fortnightly` or `pure_quarterly` for the other cadences."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2663,\n    \"campaign_name\": \"Monthly Comments\",\n    \"campaign_status\": \"draft\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"pure_monthly\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 50,\n    \"steps_materialized\": 0,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"d79fbb2d-1c73-4fc7-81d9-4ebac55c433c"},{"name":"Create Campaign - MCP Mode (Raw IDs)","id":"8bdc7181-6155-49c5-8bea-1300f42a0a19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"source\": \"mcp\",\n  \"campaign_name\": \"MCP Campaign\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    1591\n  ],\n  \"lead_list_ids\": [\n    5521\n  ],\n  \"campaign_member_ids\": [\n    1001,\n    1002\n  ],\n  \"is_draft\": false,\n  \"max_campaign_days\": 30,\n  \"time_zone\": \"UTC\",\n  \"settings\": {\n    \"per_day_friend_request\": 20,\n    \"per_day_message_request\": 40,\n    \"auto_comment\": false\n  },\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup\": \"Thanks {{first_name}}!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"<h1 id=\"create-campaign---mcp-mode\">Create Campaign - MCP Mode</h1>\n<p><code>source: mcp</code> uses raw numeric IDs directly (no encryption). Shows every optional field:</p>\n<ul>\n<li><code>campaign_member_ids</code> — add specific <code>LinkedinCampaignMember</code> ids (in addition to / instead of <code>lead_list_ids</code>).</li>\n<li><code>max_campaign_days</code>, <code>time_zone</code> — routine settings.</li>\n<li><code>settings.per_day_friend_request</code> / <code>per_day_message_request</code> — daily send caps.</li>\n<li><code>settings.auto_comment</code> — enable auto-comment.</li>\n</ul>\n<p>Multiple senders (<code>linkedin_sender_ids: [a, b]</code>) create a <strong>shared</strong> campaign; a single sender creates a <strong>smart</strong> campaign.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[{"id":"97215991-464f-4caa-afff-9f106153e6ae","name":"Success","originalRequest":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"source\": \"mcp\",\n  \"campaign_name\": \"MCP Campaign\",\n  \"flow\": \"starter_connection\",\n  \"linkedin_sender_ids\": [\n    1591\n  ],\n  \"lead_list_ids\": [\n    5521\n  ],\n  \"campaign_member_ids\": [\n    1001,\n    1002\n  ],\n  \"is_draft\": false,\n  \"max_campaign_days\": 30,\n  \"time_zone\": \"UTC\",\n  \"settings\": {\n    \"per_day_friend_request\": 20,\n    \"per_day_message_request\": 40,\n    \"auto_comment\": false\n  },\n  \"messages\": {\n    \"connect_note\": \"Hi {{first_name}}\",\n    \"followup\": \"Thanks {{first_name}}!\"\n  }\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns","description":"# Create Campaign - MCP Mode\n\n`source: mcp` uses raw numeric IDs directly (no encryption). Shows every optional field:\n\n- `campaign_member_ids` — add specific `LinkedinCampaignMember` ids (in addition to / instead of `lead_list_ids`).\n- `max_campaign_days`, `time_zone` — routine settings.\n- `settings.per_day_friend_request` / `per_day_message_request` — daily send caps.\n- `settings.auto_comment` — enable auto-comment.\n\nMultiple senders (`linkedin_sender_ids: [a, b]`) create a **shared** campaign; a single sender creates a **smart** campaign."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[],"cookie":[],"responseTime":null,"body":"{\n  \"code\": 200,\n  \"status\": true,\n  \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2670,\n    \"campaign_name\": \"MCP Campaign\",\n    \"campaign_status\": \"active\",\n    \"campaign_type\": \"smart_campaign\",\n    \"flow\": \"starter_connection\",\n    \"senders\": [\n      {\n        \"id\": 1591,\n        \"name\": \"Ansh K\"\n      }\n    ],\n    \"total_leads_added\": 52,\n    \"steps_materialized\": 3,\n    \"warnings\": []\n  }\n}"}],"_postman_id":"8bdc7181-6155-49c5-8bea-1300f42a0a19"}],"id":"7007ab33-5b54-4214-975c-4c10bd9b35a3","description":"<h1 id=\"predefined-campaigns\">Predefined Campaigns</h1>\n<p>Create a complete LinkedIn campaign (<code>LinkedinCampaignRoutine</code>) from a <strong>backend-owned predefined flow template</strong> by choosing a <code>flow</code> and supplying the message text. The backend builds the full step tree, assigns leads, and (optionally) activates the campaign.</p>\n<h2 id=\"endpoint\">Endpoint</h2>\n<p><code>POST /social_app/api/v1/third_party/predefined-campaigns</code></p>\n<h2 id=\"request-parameters\">Request parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Default</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>campaign_name</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>Unique campaign name within the organisation</td>\n</tr>\n<tr>\n<td><code>flow</code></td>\n<td>String</td>\n<td>Yes</td>\n<td>-</td>\n<td>One of the 10 flow keys (see catalog)</td>\n</tr>\n<tr>\n<td><code>linkedin_sender_ids</code></td>\n<td>Array</td>\n<td>Yes</td>\n<td>-</td>\n<td>Sender LinkedIn ids. Also accepts <code>linkedin_sender_id</code> (single) or legacy <code>linkedin_user_information_id[s]</code></td>\n</tr>\n<tr>\n<td><code>messages</code></td>\n<td>Object</td>\n<td>depends</td>\n<td>-</td>\n<td>Message slots for the chosen flow (see per-flow tables)</td>\n</tr>\n<tr>\n<td><code>lead_list_ids</code></td>\n<td>Array</td>\n<td>one of*</td>\n<td>-</td>\n<td><code>LinkedinUserCampaign</code> (lead list) ids -&gt; all members assigned</td>\n</tr>\n<tr>\n<td><code>campaign_member_ids</code></td>\n<td>Array</td>\n<td>one of*</td>\n<td>-</td>\n<td>Explicit <code>LinkedinCampaignMember</code> ids</td>\n</tr>\n<tr>\n<td><code>is_draft</code></td>\n<td>Boolean</td>\n<td>No</td>\n<td><code>true</code></td>\n<td><code>true</code> = draft (not materialized); <code>false</code> = active</td>\n</tr>\n<tr>\n<td><code>max_campaign_days</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>30</code></td>\n<td>Campaign duration</td>\n</tr>\n<tr>\n<td><code>time_zone</code></td>\n<td>String</td>\n<td>No</td>\n<td><code>UTC</code></td>\n<td>Campaign time zone</td>\n</tr>\n<tr>\n<td><code>settings.per_day_friend_request</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>20</code></td>\n<td>Daily connection-request cap</td>\n</tr>\n<tr>\n<td><code>settings.per_day_message_request</code></td>\n<td>Integer</td>\n<td>No</td>\n<td><code>40</code></td>\n<td>Daily message cap</td>\n</tr>\n<tr>\n<td><code>settings.auto_comment</code></td>\n<td>Boolean</td>\n<td>No</td>\n<td><code>false</code></td>\n<td>Enable auto-comment</td>\n</tr>\n<tr>\n<td><code>organisation_member_id</code> / <code>member_id</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Organisation member id</td>\n</tr>\n<tr>\n<td><code>source</code></td>\n<td>String</td>\n<td>No</td>\n<td>-</td>\n<td>Set to <code>mcp</code> to use raw numeric IDs</td>\n</tr>\n</tbody>\n</table>\n</div><p>*At least one of <code>lead_list_ids</code> or <code>campaign_member_ids</code> is required.</p>\n<h2 id=\"flow-catalog\">Flow catalog</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>flow</th>\n<th>Actions</th>\n<th>Required msg</th>\n<th>Optional msg</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>starter_connection</code></td>\n<td>if_connected -&gt; followup / connect</td>\n<td><code>followup</code></td>\n<td><code>connect_note</code></td>\n</tr>\n<tr>\n<td><code>connect_only</code></td>\n<td>connect request</td>\n<td><code>connect_note</code></td>\n<td>-</td>\n</tr>\n<tr>\n<td><code>message_only</code></td>\n<td>message</td>\n<td><code>message</code></td>\n<td>-</td>\n</tr>\n<tr>\n<td><code>free_open_inmail</code></td>\n<td>if_connected -&gt; if_open_inmail -&gt; open_mail</td>\n<td><code>message</code></td>\n<td><code>subject</code></td>\n</tr>\n<tr>\n<td><code>nurture_outreach</code></td>\n<td>visit,like,comment -&gt; if_connected -&gt; 2 followups / connect,like</td>\n<td><code>followup_1</code></td>\n<td><code>connect_note</code>,<code>followup_2</code></td>\n</tr>\n<tr>\n<td><code>nurture_open_inmail</code></td>\n<td>visit,like,comment -&gt; if_connected -&gt; 4 followups / connect -&gt; if_open_inmail -&gt; open_mail</td>\n<td><code>followup_1</code>,<code>message</code></td>\n<td><code>connect_note</code>,<code>followup_2..4</code>,<code>subject</code></td>\n</tr>\n<tr>\n<td><code>pure_weekly</code></td>\n<td>26x comment_post @ 7d</td>\n<td>-</td>\n<td>-</td>\n</tr>\n<tr>\n<td><code>pure_fortnightly</code></td>\n<td>7x comment_post @ 14d</td>\n<td>-</td>\n<td>-</td>\n</tr>\n<tr>\n<td><code>pure_monthly</code></td>\n<td>7x comment_post @ 30d</td>\n<td>-</td>\n<td>-</td>\n</tr>\n<tr>\n<td><code>pure_quarterly</code></td>\n<td>7x comment_post @ 90d</td>\n<td>-</td>\n<td>-</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"message-placeholders\">Message placeholders</h2>\n<p>Message bodies support these merge tags (substituted at send time):</p>\n<p><code>{{first_name}}</code> <code>{{last_name}}</code> <code>{{company_name}}</code> <code>{{sender_name}}</code> <code>{{sender_signature}}</code> <code>{{location}}</code> <code>{{occupation}}</code> <code>{{industry}}</code> <code>{{tenure_at_company}}</code> <code>{{tenure_at_position}}</code> <code>{{custom_field_1}}</code> … <code>{{custom_field_10}}</code></p>\n<p>Unknown tags are allowed but render blank and are echoed back in the response <code>warnings</code> array.</p>\n<h2 id=\"response\">Response</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"code\": 200, \"status\": true, \"message\": \"Campaign created successfully\",\n  \"data\": {\n    \"campaign_routine_id\": 2665, \"campaign_name\": \"...\",\n    \"campaign_status\": \"draft|active\", \"campaign_type\": \"smart_campaign|shared_campaign\",\n    \"flow\": \"starter_connection\", \"senders\": [{\"id\": 1591, \"name\": \"Ansh K\"}],\n    \"total_leads_added\": 50, \"steps_materialized\": 0, \"warnings\": []\n  }\n}\n</code></pre><p><code>steps_materialized</code> is <code>0</code> for drafts and the real step count once activated.</p>\n","_postman_id":"7007ab33-5b54-4214-975c-4c10bd9b35a3","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Manual Campaigns","item":[{"name":"Create Campaign - Manual Steps (Draft)","id":"e4d8a4b0-117b-4a86-bfa2-60be5678eff5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Manual Outreach Q3\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"steps\": [\n    {\n      \"action\": \"send_connect_request\",\n      \"message\": \"Hi {{first_name}}, saw your work at {{company_name}} — would love to connect.\"\n    },\n    {\n      \"action\": \"send_followup_msg\",\n      \"delay\": \"2 days\",\n      \"message\": \"Thanks for connecting, {{first_name}}!\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/manual-campaigns","description":"<h1 id=\"create-campaign---manual-steps\">Create Campaign - Manual Steps</h1>\n<p>A plain linear sequence: connection request, then a follow-up two days later.</p>\n<p>Creates a <strong>draft</strong> by default — no steps are materialized and nothing is sent. Review it with <strong>Preview Campaign Step Tree</strong>, then take it live with <strong>Activate Draft Campaign</strong>.</p>\n<h2 id=\"response\">Response</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"data\": {\n    \"campaign_routine_id\": 7900,\n    \"campaign_status\": \"draft\",\n    \"flow\": \"manual\",\n    \"total_leads_added\": 1,\n    \"steps_materialized\": 0\n  }\n}\n</code></pre>\n<p>Save <code>campaign_routine_id</code> — preview, activate and append-steps all need it.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","manual-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"e4d8a4b0-117b-4a86-bfa2-60be5678eff5"},{"name":"Create Campaign - Manual Steps with if_connected Branch","id":"8fcefdcb-6edc-42de-b67b-00aa0e6a15e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"campaign_name\": \"Manual Branching Q3\",\n  \"linkedin_sender_ids\": [\n    \"encrypted_linkedin_user_id\"\n  ],\n  \"lead_list_ids\": [\n    \"encrypted_lead_list_id\"\n  ],\n  \"is_draft\": true,\n  \"max_campaign_days\": 30,\n  \"time_zone\": \"UTC\",\n  \"settings\": {\n    \"auto_comment\": false,\n    \"per_day_friend_request\": 20,\n    \"per_day_message_request\": 40\n  },\n  \"steps\": [\n    {\n      \"action\": \"send_connect_request\",\n      \"message\": \"Hi {{first_name}}, would love to connect.\"\n    },\n    {\n      \"action\": \"if_connected\",\n      \"delay\": \"2 days\",\n      \"on_connected\": [\n        {\n          \"action\": \"send_followup_msg\",\n          \"delay\": \"1 day\",\n          \"message\": \"Thanks for connecting, {{first_name}}!\"\n        }\n      ],\n      \"on_not_connected\": [\n        {\n          \"action\": \"visit_profile\"\n        },\n        {\n          \"action\": \"like_post\",\n          \"delay\": \"3 days\"\n        }\n      ]\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/manual-campaigns","description":"<h1 id=\"manual-steps-with-a-branch\">Manual Steps with a Branch</h1>\n<p>Forks on whether the lead is already a connection.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>send_connect_request\n└─ if_connected (wait 2 days)\n   ├─ [connected]     send_followup_msg (wait 1 day)\n   └─ [not connected] visit_profile → like_post (wait 3 days)\n</code></pre><h2 id=\"branch-rules\">Branch rules</h2>\n<ul>\n<li><code>if_connected</code> carries <code>on_connected</code> and <code>on_not_connected</code>; at least one must be non-empty.</li>\n<li>It must be the <strong>last</strong> step in its list. Anything after it is unreachable and is rejected.</li>\n<li>Branches can nest.</li>\n</ul>\n<h2 id=\"placeholders\">Placeholders</h2>\n<p><code>{{first_name}}</code>, <code>{{last_name}}</code>, <code>{{company_name}}</code>, <code>{{sender_name}}</code>, <code>{{sender_signature}}</code>, <code>{{location}}</code>, <code>{{occupation}}</code>, <code>{{industry}}</code>, <code>{{tenure_at_company}}</code>, <code>{{tenure_at_position}}</code>, and any <code>{{custom_field_*}}</code> from the lead's CSV. Unknown placeholders render blank and come back as warnings.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","manual-campaigns"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"8fcefdcb-6edc-42de-b67b-00aa0e6a15e8"}],"id":"5a22f172-caa0-4e7e-a39f-5d4b236abc6e","description":"<p>Create a campaign from <strong>caller-defined steps</strong> instead of a predefined flow. Everything else — senders, leads, draft/activate, preview — behaves exactly as the predefined path.</p>\n<h2 id=\"actions\">Actions</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Action</th>\n<th>Message</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>send_connect_request</code></td>\n<td>optional</td>\n<td>Message is the connection note</td>\n</tr>\n<tr>\n<td><code>send_followup_msg</code></td>\n<td><strong>required</strong></td>\n<td>Lead must be connected by this point</td>\n</tr>\n<tr>\n<td><code>comment_post</code> / <code>like_post</code></td>\n<td>-</td>\n<td>Optional <code>meta</code> with keywords / days</td>\n</tr>\n<tr>\n<td><code>visit_profile</code></td>\n<td>-</td>\n<td></td>\n</tr>\n<tr>\n<td><code>if_connected</code></td>\n<td>-</td>\n<td>Branch: <code>on_connected</code> / <code>on_not_connected</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"rules\">Rules</h2>\n<ul>\n<li><code>if_connected</code> must be the <strong>last</strong> step in its sequence — a branch ends the straight-line flow.</li>\n<li><code>delay</code> accepts minutes (integer) or a human string: <code>\"2 days\"</code>, <code>\"30 min\"</code>, <code>\"1 week\"</code>. Defaults to 0.</li>\n<li>Campaign names must be unique within the organization.</li>\n</ul>\n","_postman_id":"5a22f172-caa0-4e7e-a39f-5d4b236abc6e","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}},{"name":"Preview, Activate & Edit Steps","item":[{"name":"Preview Campaign Step Tree","id":"0757cb25-6be5-4194-b393-84419eb3ef98","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns/{{campaign_routine_id}}/preview","description":"<h1 id=\"preview-campaign-step-tree\">Preview Campaign Step Tree</h1>\n<p>Renders every action, branch, delay and message body the campaign will run. <strong>Read-only — previewing sends nothing.</strong></p>\n<p>This is the only endpoint that can show a <strong>draft's</strong> steps: a draft's tree lives in <code>metadata['steps']</code> and has no materialized step rows yet, so campaign-detail endpoints return nothing for it. Also works on active campaigns.</p>\n<h2 id=\"worth-checking-in-the-response\">Worth checking in the response</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Meaning</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>total_steps</code></td>\n<td>Step count including branch nodes</td>\n</tr>\n<tr>\n<td><code>can_activate</code></td>\n<td>Draft has both steps and leads</td>\n</tr>\n<tr>\n<td><code>tree[].uuid</code></td>\n<td><strong>Needed as <code>after_uuid</code> when appending steps</strong></td>\n</tr>\n<tr>\n<td><code>delay_in_mins</code></td>\n<td><code>\"2 days\"</code> resolves to <code>2880</code></td>\n</tr>\n<tr>\n<td><code>branch</code></td>\n<td><code>connected</code> / <code>not connected</code> on branch children</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns","{{campaign_routine_id}}","preview"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"0757cb25-6be5-4194-b393-84419eb3ef98"},{"name":"Activate Draft Campaign","id":"5f06079a-128c-4389-9d1e-77b8dfa259fb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/predefined-campaigns/{{campaign_routine_id}}/activate","description":"<h1 id=\"activate-draft-campaign\">Activate Draft Campaign</h1>\n<p>Materializes the draft's steps and starts sending to every enrolled lead.</p>\n<blockquote>\n<p><strong>Real messages go to real people.</strong> Preview and confirm the tree first.</p>\n</blockquote>\n<p>Only works on drafts that have both steps and leads. An already-active campaign is rejected rather than restarted.</p>\n<h2 id=\"note-on-the-campaign-window\">Note on the campaign window</h2>\n<p><code>max_campaign_days</code> is counted from <strong>creation</strong>, not activation. A draft left sitting can go live already past its own window — the response returns a warning when that happens. Raise <code>max_campaign_days</code> before activating an old draft.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","predefined-campaigns","{{campaign_routine_id}}","activate"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"5f06079a-128c-4389-9d1e-77b8dfa259fb"},{"name":"Append Steps - End of Sequence","id":"2d89eb3c-c2c1-4582-a710-bd8669b346e3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"after_uuid\": \"1785136606m3-863\",\n  \"steps\": [\n    {\n      \"action\": \"send_followup_msg\",\n      \"delay\": \"3 days\",\n      \"message\": \"One more thought, {{first_name}} — worth a quick chat?\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaigns/{{campaign_routine_id}}/append-steps","description":"<h1 id=\"append-steps---end-of-sequence\">Append Steps - End of Sequence</h1>\n<p>Extends an existing campaign — draft <strong>or already active</strong> — by adding steps at a leaf.</p>\n<h2 id=\"only-leaf-positions-are-accepted\">Only leaf positions are accepted</h2>\n<p>The end of the sequence, or an <code>if_connected</code> arm that was never filled in. Inserting between existing steps is rejected on purpose: leads already past that point would silently skip the new node.</p>\n<p>Get <code>after_uuid</code> from <strong>Preview Campaign Step Tree</strong>. To extend an arm that already has steps, use the uuid of the <strong>last</strong> step in that arm.</p>\n<h2 id=\"which-leads-receive-the-new-steps\">Which leads receive the new steps</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Lead state</th>\n<th>What happens</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Mid-sequence</td>\n<td>Picks the new steps up automatically</td>\n</tr>\n<tr>\n<td>Already finished</td>\n<td>Re-enrolled onto the first appended step</td>\n</tr>\n<tr>\n<td>Already replied</td>\n<td>Left alone — they're in a human conversation</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-counts\">Response counts</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"data\": {\n    \"appended_step_uuids\": [\"1785215560a1-2432\"],\n    \"leads_in_flight\": 0,\n    \"leads_already_finished\": 1,\n    \"leads_reenrolled\": 1,\n    \"leads_skipped_replied\": 0\n  }\n}\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaigns","{{campaign_routine_id}}","append-steps"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"2d89eb3c-c2c1-4582-a710-bd8669b346e3"},{"name":"Append Steps - Into an if_connected Arm","id":"beab7f51-6d53-4c1d-ac6d-f5efc2d807d8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"after_uuid\": \"1785136606m2-863\",\n  \"branch\": \"not_connected\",\n  \"steps\": [\n    {\n      \"action\": \"send_connect_request\"\n    },\n    {\n      \"action\": \"send_followup_msg\",\n      \"delay\": \"1 day\",\n      \"message\": \"hi\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaigns/{{campaign_routine_id}}/append-steps","description":"<h1 id=\"append-steps---into-an-if_connected-arm\">Append Steps - Into an if_connected Arm</h1>\n<p>Fills in an arm of a branch that was left empty.</p>\n<p><code>branch</code> is <strong>required</strong> when <code>after_uuid</code> points at an <code>if_connected</code> step, and must be <code>connected</code> or <code>not_connected</code>. Passing it for any other step is rejected.</p>\n<h2 id=\"common-errors\">Common errors</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Message</th>\n<th>Cause</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Step 'X' is an if_connected branch — pass branch as 'connected' or 'not_connected'</code></td>\n<td><code>branch</code> omitted</td>\n</tr>\n<tr>\n<td><code>The 'connected' arm of step 'X' already continues</code></td>\n<td>Arm is already filled — append to the last step of that arm instead</td>\n</tr>\n<tr>\n<td><code>branch only applies to an if_connected step</code></td>\n<td><code>branch</code> sent for a plain step</td>\n</tr>\n<tr>\n<td><code>Step 'X' is not a leaf — it already leads to 'Y'</code></td>\n<td>Mid-tree insert attempted</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaigns","{{campaign_routine_id}}","append-steps"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"beab7f51-6d53-4c1d-ac6d-f5efc2d807d8"},{"name":"Append Steps - In-flight Leads Only","id":"654d27e2-ca16-4678-b530-aa2763593595","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-API-KEY","value":"{{x_api_key}}","type":"text"},{"key":"Authorization","value":"{{authorization}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"after_uuid\": \"1785136606m5-863\",\n  \"include_finished_leads\": false,\n  \"steps\": [\n    {\n      \"action\": \"visit_profile\"\n    }\n  ]\n}"},"url":"https://api.warmgtm.com/social_app/api/v1/third_party/social_app/api/v1/third_party/campaigns/{{campaign_routine_id}}/append-steps","description":"<h1 id=\"append-steps---in-flight-leads-only\">Append Steps - In-flight Leads Only</h1>\n<p><code>include_finished_leads</code> defaults to <strong>true</strong>: leads that already ran out of steps are re-enrolled so the appended steps reach them too. Without that, they would never receive the new steps — the next step is resolved when the current one completes, and a finished lead has nothing pending to trigger it.</p>\n<p>Send <code>false</code> to extend the sequence for leads still in flight only.</p>\n<h2 id=\"when-re-enrolment-is-refused\">When re-enrolment is refused</h2>\n<p><code>complete_by</code> comes from the campaign window, which counts <code>max_campaign_days</code> from <strong>creation</strong>. Past that point, re-enrolled rows would be created already expired and could never send, so the request is rejected:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>400  Campaign window closed on ... — raise max_campaign_days first,\n     or pass include_finished_leads=false\n</code></pre>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}},"urlObject":{"path":["social_app","api","v1","third_party","campaigns","{{campaign_routine_id}}","append-steps"],"host":["https://api.warmgtm.com/social_app/api/v1/third_party"],"query":[],"variable":[]}},"response":[],"_postman_id":"654d27e2-ca16-4678-b530-aa2763593595"}],"id":"d8f638f2-12ff-4214-b244-f92ba943d29d","description":"<p>The draft → preview → activate lifecycle, plus extending a campaign after the fact. Works for both predefined and manual campaigns.</p>\n<p><code>{{campaign_routine_id}}</code> accepts the raw id returned at creation <strong>or</strong> an encrypted campaign id.</p>\n","_postman_id":"d8f638f2-12ff-4214-b244-f92ba943d29d","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]},"isInherited":true,"source":{"_postman_id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","id":"21c4b0b2-cf36-47a4-91ba-61c67975ed33","name":"LinkedIn API","type":"collection"}}}],"auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"X-API-KEY"},{"key":"value","value":"{{authorization_secret}}"}]}},"event":[{"listen":"prerequest","script":{"id":"7a9abc69-4644-4860-ae6a-a1c9df8d2e5a","type":"text/javascript","requests":{},"exec":["// You can use this script to perform actions before each request","// For example, you could set environment variables or perform validation","","// Example: Log the current request URL","console.log('Making request to: ' + pm.request.url.toString());","","// Example: Set a timestamp variable","pm.environment.set('current_timestamp', new Date().toISOString());"]}},{"listen":"test","script":{"id":"466ae9e1-7059-4e42-ab4c-32d9ebc6cd5d","type":"text/javascript","requests":{},"exec":["// You can use this script to perform actions after each request","// For example, you could validate the response or set environment variables","","// Example: Check if the response status is 200 OK","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","","// Example: Check if the response has the correct structure","pm.test(\"Response has correct structure\", function () {","    var jsonData = pm.response.json();","    pm.expect(jsonData).to.have.property('code');","    pm.expect(jsonData).to.have.property('status');","    pm.expect(jsonData).to.have.property('message');","    pm.expect(jsonData).to.have.property('data');","});"]}}],"variable":[{"key":"base_url","value":"https://api.warmgtm.com/social_app/api/v1/third_party"},{"key":"api_key","value":"fgajerijfg45345rt343324232","disabled":true}]}