Skip to main content
POST
https://api.linquid.io
/
rules
Create Rule
curl --request POST \
  --url https://api.linquid.io/rules \
  --header 'Authorization: Bearer <token>'

Create Rule

Create a new routing rule.

Request

curl -X POST https://api.linquid.io/rules \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "linkId": "link_abc123",
    "campaignId": "campaign_def",
    "name": "Mobile Users",
    "type": "device",
    "conditions": {"devices": ["mobile"]},
    "destinationUrl": "https://m.example.com",
    "priority": 80
  }'

Body Parameters

ParameterTypeRequiredDescription
linkIdstringNoAssociate with link
campaignIdstringYesParent campaign
namestringNoRule name
typestringYesRule type
conditionsobjectYesMatch conditions
destinationUrlstringYesRedirect destination
prioritynumberNo1-100 (default: 50)
enabledbooleanNoActive (default: true)

Deep Linking Options

ParameterTypeDescription
deepLinkEnabledbooleanEnable deep links
deepLinkIosstringiOS URL scheme
deepLinkAndroidstringAndroid intent
deepLinkFallbackUrlstringFallback URL

Condition Examples

Geographic

{
  "type": "geo",
  "conditions": {
    "countries": ["US", "CA"],
    "operator": "in"
  }
}

Device

{
  "type": "device",
  "conditions": {
    "devices": ["mobile", "tablet"],
    "os": ["ios", "android"]
  }
}

Time

{
  "type": "time",
  "conditions": {
    "timezone": "America/New_York",
    "days": ["saturday", "sunday"],
    "startTime": "10:00",
    "endTime": "18:00"
  }
}

Percentage

{
  "type": "percentage",
  "conditions": {
    "percentage": 25
  }
}

Response

{
  "success": true,
  "data": {
    "id": "rule_new123",
    "type": "device",
    "conditions": {"devices": ["mobile"]},
    "destinationUrl": "https://m.example.com",
    "priority": 80,
    "enabled": true,
    "createdAt": "2024-01-15T10:30:00Z"
  }
}