LeadConduit supports two controls that set constraints on lead submissions and pings.
A cap allows limiting the number of leads sent to a flow. If a lead is successful, it will be counted against the
maximum
configured leads. If configured, the rule set will be evaluated to determine whether a lead will be counted
against the cap.
A cap allows limiting the number of leads sent into or out of a flow. If a lead is successful, it will be counted against the maximum configured leads. If configured, the rule set will be evaluated to determine whether a lead will be counted against the cap.
id | string (ID) ^[0-9a-fA-F]{24}$ ID of this cap |
type | string The type of this cap (LeadConduit may eventually support different types of caps) |
name | string The human-readable name of the cap |
maximum | number The number of successful leads that will be accepted |
duration | number >= 1 The number duration_units for which the cap persists |
duration_units | string The unit of time for which the cap persists |
object (rule-set) This rule set must pass in order for the lead to count against the cap | |
caps | Array of objects (Cap) Nested caps evaluated if rules for the parent cap pass |
time_zone | string The time zone in which cap resets |
reason | string (Template) When the cap is met this is the reason (default: 'Cap reached') |
created_at | string <date-time> Read-only time the cap was created |
{- "id": "5fd4371e940df5a34a3888b2",
- "type": "volume",
- "name": "Monthly leads from TX",
- "maximum": 1200,
- "duration": 1,
- "duration_units": "month",
- "rule_set": {
- "id": "1aacd0",
- "op": "and",
- "rules": [
- {
- "id": "1aacd0",
- "lhv": "lead.state",
- "op": "is equal to",
- "rhv": "TX",
- "rule_set": { }
}
]
}, - "caps": [
- { }
], - "time_zone": "America/New_York",
- "reason": "string",
- "created_at": "2020-11-23T11:41:52Z"
}
A cap counter keeps track of the number of leads counted against the cap. The counter has the same ID as the cap configuration saved with the flow. Most of the properties of the cap configuration are available on the cap counter, as a convenience.
id | string (ID) ^[0-9a-fA-F]{24}$ ID of this cap |
cap_ids | Array of strings (ID) |
Array of objects (Cap) Nested caps evaluated if rules for the parent cap pass | |
count | integer The number of successful leads during the current interval |
duration required | number >= 1 The number duration_units for which the cap persists |
duration_units required | string The unit of time for which the cap persists |
expires_at | string <date-time> Read-only time the cap interval ends |
failed_count | integer The number of leads that failed because the cap was reached during the current interval |
flow_id | string (ID) ^[0-9a-fA-F]{24}$ ID of the flow this cap belongs to |
maximum required | number The number of successful leads that will be accepted |
name | string The human-readable name of the cap |
source_id | string (ID) ^[0-9a-fA-F]{24}$ ID of the source this cap belongs to |
started_at | string <date-time> Read-only time the cap interval started |
step_id | string (ShortID) ^[0-9a-zA-Z]{6}$ ID of the step this cap belongs to |
time_zone | string The time zone in which cap resets |
type required | string The type of this cap (LeadConduit may eventually support different types of caps) |
updated_at | string <date-time> |
{- "id": "5fd4371e940df5a34a3888b2",
- "cap_ids": [
- "5fd4371e940df5a34a3888b2"
], - "caps": [
- {
- "id": "5fd4371e940df5a34a3888b2",
- "type": "volume",
- "name": "Monthly leads from TX",
- "maximum": 1200,
- "duration": 1,
- "duration_units": "month",
- "rule_set": {
- "id": "1aacd0",
- "op": "and",
- "rules": [
- {
- "id": "1aacd0",
- "lhv": "lead.state",
- "op": "is equal to",
- "rhv": "TX",
- "rule_set": { }
}
]
}, - "caps": [
- { }
], - "time_zone": "America/New_York",
- "reason": "string",
- "created_at": "2020-11-23T11:41:52Z"
}
], - "count": 0,
- "duration": 1,
- "duration_units": "month",
- "expires_at": "2020-11-23T11:41:52Z",
- "failed_count": 0,
- "flow_id": "5fd4371e940df5a34a3888b2",
- "maximum": 1200,
- "name": "Monthly leads from TX",
- "source_id": "5fd4371e940df5a34a3888b2",
- "started_at": "2020-11-23T11:41:52Z",
- "step_id": "1aacd0",
- "time_zone": "America/New_York",
- "type": "volume",
- "updated_at": "2020-11-23T11:41:52Z"
}
The ping limit configuration is defined in a flow on a source, or directly on the flow itself. The configuration controls the behavior of the ping limit by setting the maximum and the duration. The counter for a ping limit is kept as a standalone record which shares ping limit's ID.
id | string (ID) ^[0-9a-fA-F]{24}$ 24 character alpha-numeric BSON identifier |
name | string The human-readable name of the ping limit |
maximum | integer The number of pings that will be accepted |
duration | integer The number duration_units the ping limit persists for |
duration_units | string The unit of time the ping limit persists for: minute, hour, day, week, or month |
time_zone | string The time zone in which ping limit resets |
created_at | string <date-time> (Timestamp) Read-only time the ping limit was created |
{- "id": "5fd4371e940df5a34a3888b2",
- "name": "string",
- "maximum": 0,
- "duration": 0,
- "duration_units": "string",
- "time_zone": "America/New_York",
- "created_at": "2019-08-24T14:15:22Z"
}
A ping limit counter keeps track of the number of pings counted against the ping limit. The counter has the same ID as the ping limit configuration saved with the flow. Most of the properties of the ping limit configuration are available on the ping limit counter, as a convenience.
id | string (ID) ^[0-9a-fA-F]{24}$ 24 character alpha-numeric BSON identifier |
name | string The human-readable name of the ping limit |
failed_count | integer The number of leads that failed during the current interval |
flow_id | string (ID) ^[0-9a-fA-F]{24}$ 24 character alpha-numeric BSON identifier |
source_id | string (ID) ^[0-9a-fA-F]{24}$ The entity of the flow source if the limit is set on a source |
maximum | integer The number of pings that will be accepted |
duration | integer The number duration_units the ping limit persists for |
duration_units | string The unit of time the ping limit persists for: minute, hour, day, week, or month |
time_zone | string The time zone in which ping limit resets |
started_at | string <date-time> (Timestamp) Read-only time the ping limit interval started |
expires_at | string <date-time> (Timestamp) Read-only time the ping limit interval ends |
{- "id": "5fd4371e940df5a34a3888b2",
- "name": "string",
- "failed_count": 0,
- "flow_id": "5fd4371e940df5a34a3888b2",
- "source_id": "5fd4371e940df5a34a3888b2",
- "maximum": 0,
- "duration": 0,
- "duration_units": "string",
- "time_zone": "America/New_York",
- "started_at": "2019-08-24T14:15:22Z",
- "expires_at": "2019-08-24T14:15:22Z"
}
Get the counters for all active caps. Caps that haven't received lead traffic during the current interval will not be included.
OK
[- {
- "id": "5fd4371e940df5a34a3888b2",
- "cap_ids": [
- "5fd4371e940df5a34a3888b2"
], - "caps": [
- {
- "id": "5fd4371e940df5a34a3888b2",
- "type": "volume",
- "name": "Monthly leads from TX",
- "maximum": 1200,
- "duration": 1,
- "duration_units": "month",
- "rule_set": {
- "id": "1aacd0",
- "op": "and",
- "rules": [
- {
- "id": "1aacd0",
- "lhv": "lead.state",
- "op": "is equal to",
- "rhv": "TX",
- "rule_set": { }
}
]
}, - "caps": [
- { }
], - "time_zone": "America/New_York",
- "reason": "string",
- "created_at": "2020-11-23T11:41:52Z"
}
], - "count": 0,
- "duration": 1,
- "duration_units": "month",
- "expires_at": "2020-11-23T11:41:52Z",
- "failed_count": 0,
- "flow_id": "5fd4371e940df5a34a3888b2",
- "maximum": 1200,
- "name": "Monthly leads from TX",
- "source_id": "5fd4371e940df5a34a3888b2",
- "started_at": "2020-11-23T11:41:52Z",
- "step_id": "1aacd0",
- "time_zone": "America/New_York",
- "type": "volume",
- "updated_at": "2020-11-23T11:41:52Z"
}
]
{- "id": "5fd4371e940df5a34a3888b2",
- "cap_ids": [
- "5fd4371e940df5a34a3888b2"
], - "caps": [
- {
- "id": "5fd4371e940df5a34a3888b2",
- "type": "volume",
- "name": "Monthly leads from TX",
- "maximum": 1200,
- "duration": 1,
- "duration_units": "month",
- "rule_set": {
- "id": "1aacd0",
- "op": "and",
- "rules": [
- {
- "id": "1aacd0",
- "lhv": "lead.state",
- "op": "is equal to",
- "rhv": "TX",
- "rule_set": { }
}
]
}, - "caps": [
- { }
], - "time_zone": "America/New_York",
- "reason": "string",
- "created_at": "2020-11-23T11:41:52Z"
}
], - "count": 0,
- "duration": 1,
- "duration_units": "month",
- "expires_at": "2020-11-23T11:41:52Z",
- "failed_count": 0,
- "flow_id": "5fd4371e940df5a34a3888b2",
- "maximum": 1200,
- "name": "Monthly leads from TX",
- "source_id": "5fd4371e940df5a34a3888b2",
- "started_at": "2020-11-23T11:41:52Z",
- "step_id": "1aacd0",
- "time_zone": "America/New_York",
- "type": "volume",
- "updated_at": "2020-11-23T11:41:52Z"
}
Get the counters for all active ping limits. Ping limits that haven't received ping traffic during the current interval will not be included.
OK
[- {
- "id": "5fd4371e940df5a34a3888b2",
- "name": "string",
- "maximum": 0,
- "duration": 0,
- "duration_units": "string",
- "time_zone": "America/New_York",
- "created_at": "2019-08-24T14:15:22Z"
}
]
Get a counter for a single ping limit.
OK
{- "id": "5fd4371e940df5a34a3888b2",
- "name": "string",
- "maximum": 0,
- "duration": 0,
- "duration_units": "string",
- "time_zone": "America/New_York",
- "created_at": "2019-08-24T14:15:22Z"
}