Appointments¶
For the creation of an xDSL or FttH line, an appointment must be set.
Covage allows you to list the available time slots and make a reservation.
Note
If an order is placed via API, the appointment is optional, on all FttH products.
Listing the available time slots¶
To retrieve the list of available time slots, you can do GET on the /api/v2/appointment/slots/ URL.
If an order has already been created¶
The following parameters can be provided to the API:
Parameter name |
Type |
Mandatory |
Description |
|---|---|---|---|
order_uuid |
query param |
Yes |
|
start_date |
query param |
No |
Search start date |
end_date |
query param |
No |
Search end date |
level |
query param |
No |
Level type: |
If no order has been created yet¶
Note
This API (said v2) replaces API v1, now deprecated.
Parameters kosc_insee_code and kosc_street_code replace parameters insee_code and rivoli_code to be compatible with eligibility API.
The following parameters can be provided to the API:
Parameter name |
Type |
Mandatory |
Description |
|---|---|---|---|
building_ref |
query param |
Fibre : mandatory. xDSL : no |
-
FttH only : required |
endpoint_ref |
query param |
Fibre : no. xDSL : mandatory |
-
xDSL : Reference of the endpoint (mandatory)-
FttH Please use the building_ref parameter instead |
kosc_insee_code |
query param |
Yes |
|
kosc_street_code |
query param |
Yes |
|
product_code |
query param |
Yes |
Selected product code |
start_date |
query param |
No |
Search start date |
end_date |
query param |
No |
Search end date |
vt |
query param |
Non |
Technical visit (vt_simple or vt_complexe) |
otp or pto |
query param |
Non |
reference of the OTTP |
level |
query param |
No |
Level type: |
There are four types of ‘erdv’: creation, overwrite (activate_defined), simple technical visit, and complex technical visit.
The type of ‘erdv’ is determined based on the product code, the ‘vt’ key, and the pto/otp.
If the product code corresponds to a “comfort” product, then the ‘erdv’ type is a complex technical visit.
If the ‘vt’ parameter is specified with one of the two accepted values, then the ‘erdv’ type corresponds to that value (simple technical visit / complex technical visit).
Finally, the otp/pto parameter allows the selection of an ‘erdv’ of type overwrite, provided that none of the previous cases apply and that the pto exists.
Appointment dates¶
For xDSL, the date ranges where you can book an appointment depend on the service level.
standard: start_date = request date + 8 days | end_date = request date + 26 dayspremium: start_date = request date + 6 days | end_date = request date + 26 days
For FttH, date ranges are processed this way : Depending on the product and location, there is a default interval. Therefore, start_date and end_date are optional. If either one is specified, the resulting interval will automatically be adjusted to remain within the default interval.
Response¶
The API response is a dictionary containing the list of available time slots.
Field name |
Type |
Description |
|---|---|---|
available_slots |
dictionary list |
List of available time slots |
postponed |
boolean |
Availability of a postponed appointment (xDSL only) |
available_slots field¶
The available_slots field contains a list of dictionaries that represent the available time slots.
Field name |
Type |
Description |
|---|---|---|
start_date |
string |
Appointment start date |
end_date |
string |
Appointment end date |
slot_id |
string |
Id to be used when booking an appointment (FTTH AI only) |
orange_ui_code |
string |
Id provided by the local loop operator to be used when booking an appointment (sDSL only) |
xDSL Example¶
Request:
GET /api/v2/appointment/slots/?endpoint_ref=0472078025&kosc_insee_code=06036&kosc_street_code=06036109P0&product_code=AM01&start_date=2019-06-16T00:00:00Z&end_date=2019-06-17T18:00:00Z&level=standard HTTP/1.1
Host: extranet.kosc-telecom.fr
Response:
HTTP/1.1 200 OK
Content-Type: application/json
{
"available_slots": [
{
"start_date": "2017-06-17T12:00:00Z",
"end_date": "2017-06-17T14:00:00Z",
"orange_ui_code": "EH1"
},
{
"start_date": "2017-06-17T12:30:00Z",
"end_date": "2017-06-17T14:30:00Z",
"orange_ui_code": "EH1"
},
{
"start_date": "2017-06-17T13:00:00Z",
"end_date": "2017-06-17T15:00:00Z",
"orange_ui_code": "EH1"
},
],
"postponed": false
}
FttH Example, eRDV (type 1)¶
Request:
GET /api/v2/appointment/slots/?kosc_insee_code=06036&kosc_street_code=06036109P0&product_code=FP01 HTTP/1.1
Host: extranet.kosc-telecom.fr
Response:
HTTP/1.1 200 OK
Content-Type: application/json
{
"available_slots": [
{
"start_date": "2021-06-17T06:00:00Z",
"end_date": "2021-06-17T10:00:00Z",
"slot_id": "38-191-6096-20210617"
},
{
"start_date": "2021-06-17T12:00:00Z",
"end_date": "2021-06-17T16:00:00Z",
"slot_id": "38-191-6097-20210617"
},
{
"start_date": "2021-06-18T06:00:00Z",
"end_date": "2021-06-18T10:00:00Z",
"slot_id": "38-191-6098-20210618"
},
{
"start_date": "2021-06-18T12:00:00Z",
"end_date": "2021-06-18T16:00:00Z",
"slot_id": "38-191-6099-20210618"
}
]
}
FttH AI Example, wished Appointment (type 2)¶
Request:
GET /api/v2/appointment/slots/?kosc_insee_code=06036&kosc_street_code=06036109P0&product_code=FP04 HTTP/1.1
Host: extranet.kosc-telecom.fr
Response:
HTTP/1.1 200 OK
Content-Type: application/json
{
"available_slots": [
{
"start_date": "2021-06-17T06:00:00Z",
"end_date": "2021-06-17T10:00:00Z"
},
{
"start_date": "2021-06-17T12:00:00Z",
"end_date": "2021-06-17T16:00:00Z"
},
{
"start_date": "2021-06-18T06:00:00Z",
"end_date": "2021-06-18T10:00:00Z"
},
{
"start_date": "2021-06-18T12:00:00Z",
"end_date": "2021-06-18T16:00:00Z"
}
]
}
Note
slot_id format is unspecified and depends on the geographic zone. This field can be up to 80 chars long.
Note
Having a response of type 1 or 2 depends on the disponibility of type 1.
Booking or modifying an appointment¶
To book or modify an appointment, you must perform a PUT on the /api/v2/orders/{order_uuid}/appointment/ URL.
Note
You can only book or modify an appointment when the order is in the draft state.
Note
The end_customer[contact] parameter of an order must be filled in before booking an appointment.
The following parameters can be provided to the API:
Parameter name |
Type |
Mandatory |
Description |
|---|---|---|---|
start_date |
string |
Yes |
Appointment start date |
end_date |
string |
Yes |
Appointment end date |
slot_id |
string |
Conditional (mandatory for FTTH eRDV) |
Provided by type 1 response |
orange_ui_code |
string |
Conditional (mandatory for Copper Orange) |
Orange code |
level |
string |
No |
Level type: |
postponed |
boolean |
No |
Default: False - Postponed appointment (xDSL only) |
comment |
string |
No |
Comment on the appointment sent to the local loop operator |
Request (xDSL):
PUT /api/v2/orders/6d1f0d8a-de30-465b-b2f8-8a324e1c9398/appointment/ HTTP/1.1
Host: extranet.kosc-telecom.fr
Content-Type: application/json
{
"start_date": "2017-06-17T12:00:00Z",
"end_date": "2017-06-17T14:00:00Z",
"level": "standard",
"postponed": false,
"orange_ui_code": "EH1",
"comment": "Comments on the appointment go here"
}
Request (FttH eRDV):
PUT /api/v2/orders/6d1f0d8a-de30-465b-b2f8-8a324e1c9398/appointment/ HTTP/1.1
Host: extranet.kosc-telecom.fr
Content-Type: application/json
{
"start_date": "2019-06-17T12:00:00Z",
"end_date": "2019-06-17T14:00:00Z",
"comment": "Comments on the appointment go here",
"slot_id": "38-191-6099-20190617",
"status": "confirmed",
"booking_date": "202019-06-10:25:09.021719Z"
}
Request (FttH wished Appointment):
PUT /api/v2/orders/6d1f0d8a-de30-465b-b2f8-8a324e1c9398/appointment/ HTTP/1.1
Host: extranet.kosc-telecom.fr
Content-Type: application/json
{
"start_date": "2019-06-17T12:00:00Z",
"end_date": "2019-06-17T14:00:00Z",
"comment": "Comments on the appointment go here"
}
Note
Once the appointment is booked, you have 40 hours before it expires. If it does, you will have to book a new appointment.
Retrieving an appointment¶
To retrieve the appointment associated with an order, you can do GET on the /api/v2/orders/{order_uuid}/appointment/ URL.
The API response is a dictionary.
Field name |
Type |
Description |
|---|---|---|
type |
string |
Appointment type ( |
start_date |
string |
Appointment start date |
end_date |
string |
Appointment end date |
level |
string |
Level type ( |
status |
string |
Appointment state ( |
provider_appoint_ref |
string |
Reference of the appointment with the local loop operator (copper) |
erdv_id |
string |
Reference of the appointment (FTTH eRDV) |
comment |
string |
Comments on the appointment |
creation_date |
string |
Date of the appointment booking |
Request::
GET /api/v2/orders/6d1f0d8a-de30-465b-b2f8-8a324e1c9398/appointment/ HTTP/1.1
Host: extranet.kosc-telecom.fr
Response (copper):
HTTP/1.1 200 OK
Content-Type: application/json
{
"type": "erdv",
"start_date": "2017-06-17T12:00:00Z",
"end_date": "2017-06-17T14:00:00Z",
"level": "standard",
"status": "confirmed",
"provider_appoint_ref": "R10-DGT-19667000-0200000001000-ERDV",
"comment": "Comments on the appointment"
"creation_date": "2017-06-07T14:12:06.149000"
}
Response (Fiber eRDV):
HTTP/1.1 200 OK
Content-Type: application/json
{
"type": "erdv",
"start_date": "2017-06-17T12:00:00Z",
"end_date": "2017-06-17T14:00:00Z",
"erdv_id": "38-191-6097-20210617",
"status": "confirmed",
"comment": "Comments on the appointment"
"creation_date": "2017-06-07T14:12:06.149000"
}
Cancelling an appointment¶
To cancel an appointment associated with an order, you can do DELETE on the /api/v2/orders/{order_uuid}/appointment/ URL.
Request:
DELETE /api/v2/orders/6d1f0d8a-de30-465b-b2f8-8a324e1c9398/appointment/ HTTP/1.1
Host: extranet.kosc-telecom.fr
Note
You can only cancel an appointment when the order is in the draft state.