Campaign Management
Create, schedule, and track bulk SMS campaigns with Lineserve's campaign management tools.
Quick Startโ
Create Campaignโ
# Create campaign via CLI
lineserve messaging create-campaign \
--name "Summer Sale" \
--message "Hi {{name}}, 20% off summer items! Code: SUMMER20" \
--sender-id "YourBrand" \
--recipients-file customers.csv \
--schedule "2024-07-15 10:00"
API Exampleโ
curl -X POST https://api.lineserve.com/v1/messaging/campaigns \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{
"name": "Product Launch",
"message": "New product alert: {{product_url}}",
"recipients": [{"phone": "+1234567890", "name": "John"}]
}'
Recipient Managementโ
Contact Listsโ
# Create contact list
lineserve messaging create-list \
--name "VIP Customers" \
--file vip-list.csv
# CSV format: phone,name,email,custom_field
# +1234567890,John Doe,john@example.com,premium
Segmentationโ
# Create audience segment
lineserve messaging create-segment \
--name "High Value" \
--criteria "purchase_amount > 1000"
Message Personalizationโ
Dynamic Contentโ
Hi {{first_name}},
Your order #{{order_id}} shipped!
Track: {{tracking_url}}
{{#if vip}}VIP perk: Free returns!{{/if}}
Conditional Messagesโ
# Python personalization example
campaign = {
"message": "Hi {{name}}, {{#if birthday}}Happy Birthday! 25% off{{else}}15% off{{/if}}",
"recipients": [
{"phone": "+1234567890", "name": "John", "birthday": True},
{"phone": "+1987654321", "name": "Jane", "birthday": False}
]
}
Schedulingโ
Send Optionsโ
# Send immediately
lineserve messaging send-campaign --campaign-id camp-123 --send-now
# Schedule for specific time
lineserve messaging schedule-campaign \
--campaign-id camp-123 \
--send-at "2024-06-15 10:00" \
--timezone "America/New_York"
# Optimal timing (AI-powered)
lineserve messaging schedule-campaign \
--campaign-id camp-123 \
--optimal-timing \
--time-window "09:00-17:00"
Recurring Campaignsโ
# Weekly newsletter
lineserve messaging create-recurring-campaign \
--name "Weekly Updates" \
--frequency weekly \
--day monday \
--time "09:00"
A/B Testingโ
Create A/B Testโ
lineserve messaging create-ab-test \
--name "Subject Test" \
--variant-a "Flash Sale: 50% Off!" \
--variant-b "Limited Time: Half Price!" \
--split-ratio 50 \
--winner-criteria "click_rate"
Test Resultsโ
# Get A/B test results
lineserve messaging get-ab-results \
--test-id test-123 \
--metrics "delivery_rate,click_rate"
Analytics & Trackingโ
Campaign Metricsโ
# Real-time campaign status
lineserve messaging get-campaign-status --campaign-id camp-123
# Detailed analytics
lineserve messaging get-analytics \
--campaign-id camp-123 \
--metrics "delivery,clicks,conversions"
Key Metricsโ
- Delivery Rate: Successfully delivered messages
- Click Rate: Links clicked in messages
- Conversion Rate: Desired actions completed
- Opt-out Rate: Unsubscribe requests
Analytics APIโ
import requests
def get_campaign_analytics(campaign_id):
response = requests.get(
f'https://api.lineserve.com/v1/messaging/campaigns/{campaign_id}/analytics',
headers={'Authorization': 'Bearer YOUR_TOKEN'}
)
return response.json()
Compliance & Opt-outsโ
Opt-out Managementโ
# Auto-handle STOP keywords
lineserve messaging create-campaign \
--message "Your message. Reply STOP to opt out." \
--auto-opt-out true
# Manual opt-out processing
lineserve messaging process-opt-out \
--phone "+1234567890"
TCPA Complianceโ
# Enable compliance features
lineserve messaging set-compliance \
--tcpa-compliant true \
--consent-required true \
--quiet-hours "21:00-08:00"
Templatesโ
Create Templateโ
lineserve messaging create-template \
--name "Order Confirmation" \
--message "Order #{{order_id}} confirmed. Total: ${{amount}}" \
--category transactional
Use Templateโ
lineserve messaging create-campaign \
--template-id template-123 \
--recipients-file orders.csv
Automationโ
Triggered Campaignsโ
# Welcome message trigger
lineserve messaging create-trigger \
--name "Welcome Series" \
--trigger-event "user_signup" \
--delay "1 hour" \
--message "Welcome {{name}}!"
Drip Campaignsโ
# Multi-message sequence
lineserve messaging create-drip-campaign \
--name "Onboarding" \
--messages '[
{"delay": "0", "message": "Welcome!"},
{"delay": "1 day", "message": "Getting started tips"},
{"delay": "3 days", "message": "Advanced features"}
]'
Performance Optimizationโ
Send Rate Controlโ
# Configure send limits
lineserve messaging set-send-rate \
--campaign-id camp-123 \
--rate-limit 1000 \
--time-window "per_hour"
Cost Managementโ
# Set budget limits
lineserve messaging set-budget \
--campaign-id camp-123 \
--max-cost 500.00
# Analyze costs
lineserve messaging analyze-costs \
--campaign-id camp-123 \
--breakdown "by_country"
Troubleshootingโ
Common Issuesโ
- Low delivery rates: Check sender ID approval, verify numbers
- High opt-outs: Review frequency and relevance
- Poor engagement: A/B test content and timing
Debug Toolsโ
# Debug campaign issues
lineserve messaging debug-campaign \
--campaign-id camp-123 \
--show-failures \
--export-logs
API Referenceโ
Create Campaignโ
POST /v1/messaging/campaigns
{
"name": "Campaign Name",
"message": "Your message",
"recipients": [...]
}
Campaign Statusโ
GET /v1/messaging/campaigns/{id}/status
Analyticsโ
GET /v1/messaging/campaigns/{id}/analytics