# Request to amend an inflight service problem. This endpoint is called to request amendment of an existing inflight service problem on an active service. The Fibre Cafe will validate the request and generate a unique ID which is returned. If the problem amendment is rejected immediately then a 4XX code will be returned with reason(s) for the rejection in the response. The problem amendment will then be sent to the supplier for processing and further updates will be sent via KCIs - this could include a rejection if the request does not meet supplier validation/processing rules. Endpoint: POST /service-problem-amendments Version: 1.17 Security: oauth2 ## Header parameters: - `X-Request-ID` (string, required) Unique identifier to identify request and response events across the Fibre Cafe gateway - `X-Conversation-ID` (string, required) Identifier to track message journey across the Fibre Cafe gateway ## Request fields (application/json): - `serviceProblemId` (number, required) Unique reference identifying the service problem to be amended Example: 123 - `problemText` (string) The description of problem being raised as defined by the end user. Example: "The service keeps dropping between 6pm and 9pm every evening." - `characteristics` (array) Update any characteristics of the problem - `characteristics.name` (string, required) Name of the characteristic - `characteristics.value` (string, required) Value for this characteristic - `hazards` (string) Hazard information about the site where the service will be restored Example: "Hazardous materials stored on site" - `onSiteRestrictions` (string) Information about restrictions on the site where the service will be restored Example: "Restricted access" - `notes` (string) Notes about the problem which are required by the supplier. This includes additional information that may be required - refer to developer portal Example: "Lorem ipsum dolor sit amet..." - `primaryContact` (object) Represents a contact available at the given address. - `primaryContact.name` (string, required) Contact name Example: "John Smith" - `primaryContact.email` (string) Contact email address (if available) Example: "john@smith.com" - `primaryContact.phoneNumber` (string, required) Contact phone number Example: "01234 567890" - `secondaryContact` (object) Represents a contact available at the given address. - `appointmentReservationId` (number) Unique identifier for the new reserved appointment Example: 345 ## Response 201 fields (application/json): - `id` (number, required) Unique reference identifying this service problem amendment (generated by Fibre Cafe) Example: 123 - `status` (string, required) State model for amendment and cancellation requests. Enum: "RECEIVED_BY_GATEWAY", "PENDING", "FAILED_TO_SEND", "REJECTED", "COMPLETED" - `serviceProblemId` (number, required) Unique reference identifying the service problem to be amended Example: 123 - `problemText` (string) The description of problem being raised as defined by the end user. Example: "The service keeps dropping between 6pm and 9pm every evening." - `characteristics` (array) Update any characteristics of the problem - `characteristics.name` (string, required) Name of the characteristic - `characteristics.value` (string, required) Value for this characteristic - `hazards` (string) Hazard information about the site where the service will be restored Example: "Hazardous materials stored on site" - `onSiteRestrictions` (string) Information about restrictions on the site where the service will be restored Example: "Restricted access" - `notes` (string) Notes about the problem which are required by the supplier. This includes additional information that may be required - refer to developer portal Example: "Lorem ipsum dolor sit amet..." - `primaryContact` (object) Represents a contact available at the given address. - `primaryContact.name` (string, required) Contact name Example: "John Smith" - `primaryContact.email` (string) Contact email address (if available) Example: "john@smith.com" - `primaryContact.phoneNumber` (string, required) Contact phone number Example: "01234 567890" - `secondaryContact` (object) Represents a contact available at the given address. - `appointmentReservationId` (number) Unique identifier for the new reserved appointment Example: 345 ## Response 400 fields (application/json): - `uuid` (string, required) Unique identifier of this error - for tracing purposes Example: "87432dfb-2e47-4532-a1b7-4b113d48867d" - `code` (string, required) Fibre Cafe error codes Enum: "GATEWAY_FAULT", "INVALID_REQUEST", "MALFORMED_REQUEST", "NOT_AUTHORISED", "NOT_FOUND", "NOT_IMPLEMENTED", "SUPPLIER_FAULT", "SUPPLIER_TIMED_OUT", "TENANT_FAULT" - `messages` (array, required) Message describing the error Example: ["e.g. Invalid value for field x - accepted values are y"] ## Response 401 fields (application/json): - `uuid` (string, required) Unique identifier of this error - for tracing purposes Example: "87432dfb-2e47-4532-a1b7-4b113d48867d" - `code` (string, required) Fibre Cafe error codes Enum: "GATEWAY_FAULT", "INVALID_REQUEST", "MALFORMED_REQUEST", "NOT_AUTHORISED", "NOT_FOUND", "NOT_IMPLEMENTED", "SUPPLIER_FAULT", "SUPPLIER_TIMED_OUT", "TENANT_FAULT" - `messages` (array, required) Message describing the error Example: ["e.g. Invalid value for field x - accepted values are y"] ## Response 422 fields (application/json): - `uuid` (string, required) Unique identifier of this error - for tracing purposes Example: "87432dfb-2e47-4532-a1b7-4b113d48867d" - `code` (string, required) Fibre Cafe error codes Enum: "GATEWAY_FAULT", "INVALID_REQUEST", "MALFORMED_REQUEST", "NOT_AUTHORISED", "NOT_FOUND", "NOT_IMPLEMENTED", "SUPPLIER_FAULT", "SUPPLIER_TIMED_OUT", "TENANT_FAULT" - `messages` (array, required) Message describing the error Example: ["e.g. Invalid value for field x - accepted values are y"] ## Response 500 fields (application/json): - `uuid` (string, required) Unique identifier of this error - for tracing purposes Example: "87432dfb-2e47-4532-a1b7-4b113d48867d" - `code` (string, required) Fibre Cafe error codes Enum: "GATEWAY_FAULT", "INVALID_REQUEST", "MALFORMED_REQUEST", "NOT_AUTHORISED", "NOT_FOUND", "NOT_IMPLEMENTED", "SUPPLIER_FAULT", "SUPPLIER_TIMED_OUT", "TENANT_FAULT" - `messages` (array, required) Message describing the error Example: ["e.g. Invalid value for field x - accepted values are y"] ## Response 403 fields ## Response 503 fields