api:internet:request:update
Table of Contents
API : Internet Request Update
Introduction
This request allows ADMINs to update and make offers on an Internet Request.
Updating a request with offers will also notify the notify list members by e-mail that it is time to select an offer.
Request
| URL | https://api.telecomx.dk/internet/request/REQUEST_ID | ||
|---|---|---|---|
| Method | POST | ||
| Access level | RESELLER_ADMIN or ADMIN. | ||
| Params | REQUEST_ID | Id of the Internet Request. | |
| Property | Type | Description | |
| Body | type | String | Type of circuit: DSL or FIBER |
| notes | String | Notes about the request | |
| address | Object | Installation address | |
| address._id | Id | Unique ID of the address, if using existing address on customer. | |
| address.address | String | Road, number, floor, door | |
| address.zip | Number | Zip code | |
| address.city | String | City name | |
| address2 | Object | Second address. For specific products. Point-to-Point connections. (FIBER only). | |
| address2._id | Id | Unique ID of the address, if using existing address on customer | |
| address2.address | String | Road, number, floor, door | |
| address2.zip | Number | Zip code | |
| address2.city | String | City name | |
| product | Id | Id of the product | |
| takeover | Boolean | True if this is a takeover (DSL only). | |
| takeoverCircuit | String | Name of existing circuit, if takeover (DSL only). | |
| takeoverCustomer | String | Customer ID/number at donor operator, if takeover (DSL only). | |
| ipAddresses | Number | Number of IP addresses. (1, 2, 4, 8, 16, 32) (FIBER Only) | |
| commitment1 | Boolean | True to get an offer for a 1 year commitment (FIBER only). | |
| commitment2 | Boolean | True to get an offer for a 2 year commitment (FIBER only). | |
| commitment3 | Boolean | True to get an offer for a 3 year commitment (FIBER only). | |
| reference | String | A reference id/name/customer. | |
| notify | Array | List of id's of employees to notify by e-mail when request has been answered. | |
| startDate | Date | [optional] Desired date for delivery of the Internet Access account, omit for as soon as possible. | |
| installCallNumber | String | Number that technician will call 30 minutes before arriving to install the service. | |
| installCallName | String | Name of contact to call. | |
| installTime | String | Wanted time of delivery Valid values 7_30_TO_16, 7_30_TO_12, 12_TO_16 | |
| offers | Array | List of offered solutions | |
| offers[]._id | Id | Unique id of the offer. | |
| offers[].product | Id | Product offered - describes speed and technology. | |
| offers[].initiationFeeProduct | Id | Id of the product used for initiation | |
| offers[].initiationCost | Number | Initiation price for TCX (FIBER only). | |
| offers[].initiationWholesale | Number | Initiation price for reseller (FIBER only). | |
| offers[].initiationCustomer | Number | Initiation price for customer (FIBER only). | |
| offers[].monthlyCost | Number | Price pr. month for TCX (FIBER only). | |
| offers[].monthlyWholesale | Number | Price pr. month for reseller (FIBER only). | |
| offers[].monthlyCustomer | Number | Price pr. month for customer (FIBER only). | |
| offers[].commitment | Number | Number of months before the account can be cancelled. | |
| offers[].providerName | String | Name of the provider. | |
| offers[].providerOfferId | String | Id of the providers offer. | |
| offers[].notes | String | Notes from the reseller about this offer (max 1024 characters). | |
Query examples
{ "offers": [ { "product": "650000000000000000000010", "initiationFeeProduct": "650000000000000000000011", "initiationCost": 800.00, "initiationWholesale": 900.00, "initiationCustomer": 1000.00, "monthlyCost": 1400.00, "monthlyWholesale": 1500.00, "monthlyCustomer": 1600.00, "commitment": 12, "providerName": "Eksempel Fiber A/S", "providerOfferId": "644677533246" }, { "product": "650000000000000000000012", "initiationFeeProduct": "650000000000000000000011", "initiationCost": 0, "initiationWholesale": 0, "initiationCustomer": 0, "monthlyCost": 1100.00, "monthlyWholesale": 1200.00, "monthlyCustomer": 1300.00, "commitment": 24, "providerName": "Eksempel Fiber A/S", "providerOfferId": "644677533247" } ] }
Response
| Property | Type | Description |
|---|---|---|
| _id | Id | Unique id of the request. |
| type | String | Type of circuit: DSL or FIBER |
| customer | Id | Id of customer, if linked to a customer - otherwise null. |
| reseller | Id | Id of reseller, if not linked to a customer, the request belongs to the reseller. |
| notes | String | Notes about the request. |
| address | Object | Installation address |
| address._id | Id | Unique ID of the address, if using existing address on customer. |
| address.address | String | Road, number, floor, door |
| address.zip | Number | Zip code |
| address.city | String | City name |
| address2 | Object | Second address. For specific products. Point-to-Point connections. (FIBER only). |
| address2._id | Id | Unique ID of the address, if using existing address on customer |
| address2.address | String | Road, number, floor, door |
| address2.zip | Number | Zip code |
| address2.city | String | City name |
| product | Id | Id of the product |
| takeover | Boolean | True if this is a takeover (DSL only). |
| takeoverCircuit | String | Name of existing circuit, if takeover (DSL only). |
| takeoverCustomer | String | Customer ID/number at donor operator, if takeover (DSL only). |
| ipAddresses | Number | Number of IP addresses. (1, 2, 4, 8, 16, 32) (FIBER Only) |
| commitment1 | Boolean | True to get an offer for a 1 year commitment (FIBER only). |
| commitment2 | Boolean | True to get an offer for a 2 year commitment (FIBER only). |
| commitment3 | Boolean | True to get an offer for a 3 year commitment (FIBER only). |
| reference | String | A reference id/name/customer. |
| notify | Array | List of employees to notify by e-mail when request has been answered. |
| notify[]._id | Id | Id of employee. |
| notify[].name | String | Name of employee. |
| startDate | Date | [optional] Desired date for delivery of the Internet Access account, omit for as soon as possible. |
| installCallNumber | String | Number that technician will call 30 minutes before arriving to install the service. |
| installCallName | String | Name of contact to call. |
| installTime | String | Wanted time of delivery Valid values 7_30_TO_16, 7_30_TO_12, 12_TO_16 |
| offers | Array | List of offered solutions |
| offers[]._id | Id | Unique id of the offer. |
| offers[].product | Id | Product offered - describes speed and technology. |
| offers[].initiationFeeProduct | Id | Id of the product used for initiation |
| offers[].initiationCost | Number | Initiation price for TCX (FIBER only). |
| offers[].initiationWholesale | Number | Initiation price for reseller (FIBER only). |
| offers[].initiationCustomer | Number | Initiation price for customer (FIBER only). |
| offers[].monthlyCost | Number | Price pr. month for TCX (FIBER only). |
| offers[].monthlyWholesale | Number | Price pr. month for reseller (FIBER only). |
| offers[].monthlyCustomer | Number | Price pr. month for customer (FIBER only). |
| offers[].commitment | Number | Number of months before the account can be cancelled. |
| offers[].providerName | String | Name of the provider. |
| offers[].providerOfferId | String | Id of the providers offer. |
| offers[].notes | String | Notes from the reseller about this offer (max 1024 characters). |
| created | Date | Date and time when the request was created. |
| createdBy | Id | Id of employee who created the request. |
| answered | Date | Date and time when the request was answered (offers expires 30 days after this date). |
Note that properties holding no value may be omitted from the object.
Example
{ "_id": "650000000000000000000001", "type": "FIBER", "customer": "650000000000000000000002", "reseller": "650000000000000000000003", "notes": "In stairwell behind the door", "address": { "_id": "650000000000000000000004", "address": "Eksempelvej 20A, 3. th.", "zip": 2605, "city": "Brøndby" }, "address2": null, "product": "650000000000000000000005", "ipAddresses": 8, "commitment1": true, "commitment2": true, "commitment3": true, "reference": "REQ-2026-0117", "notify": [ { "_id": "650000000000000000000006", "name": "Hans Eksempel" } ], "startDate": "2026-09-01T00:00:00.000Z", "installCallNumber": "71919999", "installCallName": "Hans Eksempel", "installTime": "7_30_TO_12", "offers": [ { "_id": "650000000000000000000009", "product": "650000000000000000000010", "initiationFeeProduct": "650000000000000000000011", "initiationCost": 1000, "initiationWholesale": 2000, "initiationCustomer": 3000, "monthlyCost": 500, "monthlyWholesale": 600, "monthlyCustomer": 700, "commitment": 36, "providerName": "Eksempel Fiber A/S", "providerOfferId": "4656367R", "notes": "" } ], "created": "2026-08-01T00:00:00.000Z", "createdBy": "650000000000000000000006", "answered": "2026-08-02T12:00:00.000Z" }
Errors
| Error code | Message | Description |
|---|---|---|
| 404 | not_found | Internet request not found |
| 422 | type | Value is not one of the permitted values. |
| 422 | notes | Invalid length. At most 4096 is required. |
| 404 | address._id | Address not found |
| 404 | address2._id | Address not found |
| 422 | product | Product is not valid for customer |
| 422 | product | Product not found |
| 422 | takeoverCircuit | Circuit is required for takeover |
| 422 | takeoverCustomer | Customer id is required for takeover |
| 422 | ipAddresses | IP address is required and must be 1,2,4,8,16 or 32 |
| 422 | startDate | Date must be between 1 month ago and 6 months into the future |
| 422 | offers[].product | Product is not valid for customer |
| 422 | offers[].product | Product not found |
| 422 | offers[].initiationFeeProduct | Product is not valid for customer |
| 422 | offers[].initiationFeeProduct | Product not found |
| 422 | offers[].initiationCost | Must be between 0 and 500000 |
| 422 | offers[].initiationWholesale | Must be between 0 and 500000 |
| 422 | offers[].initiationCustomer | Must be between 0 and 500000 |
| 422 | offers[].monthlyCost | Must be between 0 and 500000 |
| 422 | offers[].monthlyWholesale | Must be between 0 and 500000 |
| 422 | offers[].monthlyCustomer | Must be between 0 and 500000 |
| 422 | offers[].commitment | Must be between 0 and 60 months |
| 422 | offers[].notes | Notes must be at most 1024 characters. |
| 404 | notify[] | Recipient not found |
| 422 | multiple | Multiple validation errors - the individual errors are in the inner array |
| 403 | access_denied | Insufficient access level |
| 500 | internal_error | <Unspecified> |
api/internet/request/update.txt · Last modified: by Mikkel Meerwaldt Jørgensen