This request allows RESELLER_ADMIN and ADMIN users to update and make offers on an Internet Request. All body properties are optional; omitted properties keep their stored value.
Updating a request with offers will also notify the notify list members by e-mail that it is time to select an offer.
| 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 | [optional] Unique id of the offer. Generated when omitted. |
|
| offers[].product | Id | [required] Product offered - describes speed and technology. |
|
| offers[].initiationFeeProduct | Id | [required] Id of the product used for initiation |
|
| offers[].initiationCost | Number | Initiation price for TCX, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].initiationWholesale | Number | Initiation price for reseller, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].initiationCustomer | Number | Initiation price for customer, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].monthlyCost | Number | Price pr. month for TCX, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].monthlyWholesale | Number | Price pr. month for reseller, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].monthlyCustomer | Number | Price pr. month for customer, 0-500000. Required for FIBER offers, ignored for DSL. | |
| offers[].commitment | Number | Number of months before the account can be cancelled, 0-60. Required for FIBER offers. | |
| 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). | |
{ "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" } ] }
| 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.
{ "_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" }
| Error code | Message | Description |
|---|---|---|
| 422 | <property> | Invalid input for the named property - the request body, query or URL parameter failed validation |
| 404 | _id | Internet request not found |
| 404 | address._id | Address not found |
| 404 | address2._id | Address not found |
| 404 | notify[n] | Recipient not found |
| 422 | product | Product is not valid for customer |
| 422 | product | Product not found |
| 422 | product | Product(s) is not valid for use |
| 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[n].product | Product is not valid for customer |
| 422 | offers[n].product | Product not found |
| 422 | offers[n].product | Product(s) is not valid for use |
| 422 | offers[n].initiationFeeProduct | Product is not valid for customer |
| 422 | offers[n].initiationFeeProduct | Product not found |
| 422 | offers[n].initiationFeeProduct | Product(s) is not valid for use |
| 422 | offers[n].initiationCost, offers[n].initiationWholesale, offers[n].initiationCustomer, offers[n].monthlyCost, offers[n].monthlyWholesale, offers[n].monthlyCustomer, offers[n].commitment | Required for FIBER offer |
| 422 | multiple | Multiple errors - see inner |
| 403 | access_denied | Insufficient access level |
| 500 | internal_error | <Unspecified> |