# Trooli Trooli expose a RESTful API built around the Netadmin Nine API with some custom enhancements. The Fibre Cafe has a connector to integrate with this API. ## TROOLI Connector (Tenant API 1.17 / Tenant Updates API 1.14) The initial connector was created for use with the Tenant API version 1.17 and the Tenant Updates API version 1.14 ### Authentication Authentication is based on OAuth 2.0 and uses password-based credentials to create a bearer token. Tenants will be provided with these credentials which must be configured on the Fibre Cafe for each tenant. ### Address Search This is not currently supported by the connector. ### Service Availability Trooli support service availability lookup by UPRN. The only service specification is 'FTTP' and available line profiles will be returned in the response. There are currently 2 different address types that Trooli use which have slightly different order journey pathways: - Standard - Non-standard: - NDLI (Non Duct Lead In) - JUP (Joint User Pole) Standard installs will have `installationType` of 'STANDARD' and will follow the conventional order journey. For non-standard installs, an initial appointment cannot be booked so `installationType` will not be present and a constraint will be returned. The order should be placed without an appointment. ```json "line": { "lineType": "FIBRE", "constraints": [ { "code": "FEASIBILITY_CHECK", "text": "Address is of type NDLI - no appointment required at this time" } ] } ``` Where an address already has an ONT installed, this will be indicated as an existing line with status (ACTIVE, STOPPED or UNAVAILABLE). Trooli do not provide ONT reference details in availability responses so a default ONT reference will be returned (ONT0000000000). Again, orders should be placed without an appointment to start, transfer or takeover the service. ### Appointing For STANDARD addresses where a managed install is required `installationType` returned as ;STANDARD', appointment timeslots can be listed and reserved. Note: orders for non-standard addresses that contain an appointment will be rejected - supply only a `requestedCompletionDate` in the initial order. ### Orders The following service characteristics are required when placing orders: - LINE_PROFILE : see below for values These service characteristics are optional according to the order: - RETAILER_ID : unique identifier for the retailer provided by OFCOM - CARE_LEVEL : see below for values Amendment and cancellation requests can be made for inflight orders. There are limitations to what amendments can be done with the BB1 API - the following are permitted: - Change appointment - Update contact details #### Line Profiles For Trooli, line profiles map directly to an underlying product ID as setup for each tenant. Please refer to the onboarding document for the list of line profile product identifiers. #### Care Levels Trooli will default orders to their standard care level (level 1) - there is currently no way to request this level but it will be used where no CARE_LEVEL is specified. | Care Level | Description | | --- | --- | | Care Level 1 (default) | End of next working day + 1 | | Care Level 2 | End of next working day | | Care Level 3 | Report Before 13:00, Clear by 23:59 Same Day | | | Report After 13:00, Clear by 12:59 Next Day | Care levels map directly to an underlying product ID in the same way as line profiles. Please refer to the onboarding document for the list of care level product identifiers. #### Order updates Trooli provide the following service characteristics in KCIs: - SERVICE_ID - this is known as a "subscription ID" in Trooli terminology. Once a non-standard order is able to progress, a REAPPOINT KCI will be sent.