# Amend an Order

Request to amend an in flight order.

An ALA Provider can either respond that the amendment is pending or can reject the amendment up front.

Endpoint: POST /amendOrder
Version: 2.31
Security: Certificate

## Request fields (application/xml):

  - `message` (object)
    The meta-data of the request. It includes information regarding the message UUID, transaction ID and the sent timestamp

  - `message.messageId` (string, required)
    A unique ID to identify the message
    Example: b68b2cf4-475e-11e1-a92e-fb2ff6467c99

  - `message.correlationId` (string, required)
    A Correlation ID, also known as a Transit ID, is a unique identifier value that is attached to requests and messages that allow reference to a particular transaction or event chain
    Example: bac72cfa-475e-11e1-a92e-fb2ff6467c99

  - `message.sentAt` (string, required)
    The timestamp when the message has been sent
    Example: 2012-01-20T18:30:43Z

  - `buyer` (object)
    The Service Provider who consumes the service is the buyer

  - `buyer.buyerIdentifier` (string, required)
    Unique identifier of the buyer
    Example: SPDEV1

  - `buyer.cfh:resellerId` (string)
    Unique identifier of the reseller. Sourced from the Ofcom Reseller Identification List
    Example: BAQ

  - `seller` (object)
    the Active Network Operator who provides the service is the seller

  - `seller.sellerIdentifier` (string, required)
    Unique identifier of the seller
    Example: CITYFIBRE

  - `orderReferences` (object)
    Reference for the order for this buyer

  - `orderReferences.buyerOrderReference` (string, required)
    Example: 123e4567-e89b-12d3-a456-426614174000

  - `targetSellerOrderReference` (string)

  - `serviceItem` (object)

  - `serviceItem.alaServiceConfiguration` (object, required)

  - `serviceItem.alaServiceConfiguration.nniIdentifier` (string)
    Optional - If none specified, will be allocated based on valid configuration
    Example: S1945

  - `serviceItem.alaServiceConfiguration.nniSVlanId` (integer)
    Optional - If none specified, will be allocated based on valid configuration
    Example: 3000

  - `serviceItem.alaServiceConfiguration.cfh:lineProfile` (string)
    Example: G1000/1000/A/V

  - `appointment` (object)

  - `appointment.appointmentReservationKey` (string)
    The unique key for appointment reservation
    Example: EI7PBRU6TL8KN1YNGO8ICEUI0UDFE9M8

  - `buyerContactDetails` (object)
    Information to update

  - `buyerContactDetails.email` (string)
    Example: bob@gmail.com

  - `buyerContactDetails.telephoneNumber` (string)
    Example: 12345678987654

  - `requestedDate` (string)
    Point at which the change should be applied
    Example: 2022-01-20T18:30:43Z

  - `cfh:addCaseComment` (object)
    Case comment related to the order

  - `cfh:addCaseComment.cfh:caseId` (string)
    Example: 123

  - `cfh:addCaseComment.cfh:body` (string)
    Example: Example comment body

  - `cfh:acceptQuote` (object)
    Accept a desktop or physical survey quote for a complex order

  - `cfh:acceptQuote.cfh:quoteId` (string, required)
    The identifier of the quote being accepted

  - `cfh:rejectQuote` (object)
    Reject a desktop or physical survey quote for a complex order

  - `cfh:rejectQuote.cfh:quoteId` (string, required)
    The identifier of the quote being rejected

  - `cfh:rejectQuote.cfh:rejectionReason` (string, required)
    The reason the quote is being rejected

## Response 200 fields (application/xml):

  - `message` (object, required)
    The meta-data of the request. It includes information regarding the message UUID, transaction ID and the sent timestamp

  - `message.messageId` (string, required)
    A unique ID to identify the message
    Example: b68b2cf4-475e-11e1-a92e-fb2ff6467c99

  - `message.correlationId` (string, required)
    A Correlation ID, also known as a Transit ID, is a unique identifier value that is attached to requests and messages that allow reference to a particular transaction or event chain
    Example: bac72cfa-475e-11e1-a92e-fb2ff6467c99

  - `message.sentAt` (string, required)
    The timestamp when the message has been sent
    Example: 2012-01-20T18:30:43Z

  - `buyer` (object, required)
    The Service Provider who consumes the service is the buyer

  - `buyer.buyerIdentifier` (string, required)
    Unique identifier of the buyer
    Example: SPDEV1

  - `buyer.cfh:resellerId` (string)
    Unique identifier of the reseller. Sourced from the Ofcom Reseller Identification List
    Example: BAQ

  - `seller` (object, required)
    the Active Network Operator who provides the service is the seller

  - `seller.sellerIdentifier` (string, required)
    Unique identifier of the seller
    Example: CITYFIBRE

  - `orderReferences` (object, required)
    Reference for the order for this buyer

  - `orderReferences.buyerOrderReference` (string, required)
    Example: 123e4567-e89b-12d3-a456-426614174000

  - `orderReferences.sellerOrderReference` (string)
    Example: PROD00000001

  - `amendmentPending` (null, required)

  - `amendmentRejected` (any, required)

  - `amendmentRejected.amendmentError` (any, required)

  - `amendmentRejected.amendmentError.tooLateToAmend` (null)

  - `amendmentRejected.amendmentError.invalidOrderReference` (null)

  - `amendmentRejected.amendmentError.cfh:unauthorized` (null)

  - `amendmentRejected.amendmentError.invalidBuyer` (null)

  - `amendmentRejected.amendmentError.orderCompletedOrFailed` (null)

  - `amendmentRejected.validationFailures` (array)

  - `amendmentRejected.validationFailures.validationFailure` (object)

  - `amendmentRejected.validationFailures.validationFailure.validationFailureField` (string, required)
    Validation Failure Field
    Example: postcode

  - `amendmentRejected.validationFailures.validationFailure.validationFailureMessage` (string, required)
    Validation Failure message
    Example: Invalid Postcode

## Response 400 fields (application/xml):

  - `fault` (object)

  - `fault.faultcode` (string, required)

  - `fault.faultmessage` (string, required)

  - `fault.detail` (string)

## Response 401 fields (application/xml):

  - `fault` (object)

  - `fault.faultcode` (string, required)

  - `fault.faultmessage` (string, required)

  - `fault.detail` (string)

## Response 403 fields (application/xml):

  - `fault` (object)

  - `fault.faultcode` (string, required)

  - `fault.faultmessage` (string, required)

  - `fault.detail` (string)

