api:product:campaign:signups
Table of Contents
API : Product campaign Sign-ups
Introduction
This request counts the accounts created inside a campaign's enrolment window, and what became of each. It counts from the day an account is created, where the usageCount of the Overview only counts accounts once they have been invoiced.
Each account is put through the same enrolment rule billing uses, so an account whose reseller runs its own campaign at the same time is counted as going elsewhere rather than twice.
- Accounts are counted as they are now. An account deleted before its first invoice is not counted, and neither is an account moved to another rateplan.
- A reseller sees its own accounts only. On a master campaign it is counted as the one reseller it is.
byReselleris only returned on a master campaign, to RESELLER_ADMIN and ADMIN. It also counts the sign-ups on each reseller's copy of the campaign (viaCopy), which the top-level figures leave out.
Request
| URL | https://api.telecomx.dk/product/PRODUCT_ID/campaign/CAMPAIGN_ID/signups | ||
|---|---|---|---|
| Method | GET | ||
| Param | PRODUCT_ID | Id of the rateplan product holding the campaign | |
| Param | CAMPAIGN_ID | Id of the campaign | |
| Access level | RESELLER with read access to the reseller, for a reseller product. RESELLER named on the campaign, for a master campaign. RESELLER_ADMIN or ADMIN for any campaign. |
||
Query example
GET https://api.telecomx.dk/product/60bf169291eb7e58090617a3/campaign/6aba6a8be5b8b45688b9faed/signups
Response
| JSON object | ||
|---|---|---|
| campaign | Id | Id of the campaign. |
| product | Id | Id of the product holding it. |
| total | Number | enrolled + pending + missed. |
| enrolled | Number | Accounts billing has enrolled on the campaign. |
| pending | Number | Accounts not invoiced yet and still within 3 months of being created - they will be enrolled at their first invoicing. |
| missed | Number | Accounts that would have had the campaign but never will: invoiced without being enrolled, or not activated within 3 months. |
| elsewhere | Number | Accounts created inside the window that went to another campaign, for example the reseller's own campaign. Not part of total. |
| byDay | Array | total per Copenhagen day the accounts were created on, oldest first. Days without sign-ups are left out. |
| byDay[].day | String | The day, as YYYY-MM-DD. |
| byDay[].count | Number | Sign-ups created that day. |
| byReseller | Array | [optional] Per reseller, sorted by total, highest first. Master campaigns, RESELLER_ADMIN and ADMIN only. |
| byReseller[].reseller | Id | Id of the reseller. |
| byReseller[].resellerName | String | Name of the reseller. |
| byReseller[].enrolled | Number | As above, for this reseller. |
| byReseller[].pending | Number | As above, for this reseller. |
| byReseller[].missed | Number | As above, for this reseller. |
| byReseller[].total | Number | enrolled + pending + missed for this reseller, including sign-ups on its copy. |
| byReseller[].viaCopy | Number | How many of this reseller's total signed up on its own copy of the campaign. |
Example
{ "campaign": "6aba6a8be5b8b45688b9faed", "product": "60bf169291eb7e58090617a3", "total": 1, "enrolled": 0, "pending": 1, "missed": 0, "elsewhere": 0, "byDay": [ { "day": "2026-10-05", "count": 1 } ], "byReseller": [ { "reseller": "58fdbb7d1e3389290630f1b2", "resellerName": "Sundbynet", "enrolled": 0, "pending": 1, "missed": 0, "total": 1, "viaCopy": 1 }, { "reseller": "5b361e2d7a01314a6b1c3a47", "resellerName": "Panther Applications", "enrolled": 0, "pending": 1, "missed": 0, "total": 1, "viaCopy": 0 } ] }
Errors
| Error code | Message | Description |
|---|---|---|
| 422 | <property> | Invalid input for the named property - the request body, query or URL parameter failed validation |
| 403 | access_denied | Insufficient access level |
| 404 | not_found | Product not found |
| 404 | campaignId | Campaign not found on this product |
| 409 | inheritFromReseller | A customer product holds no campaigns |
| 500 | internal_error | <Unspecified> |
api/product/campaign/signups.txt · Last modified: by Thomas Andersen