# Query Products for Location Check the available products for a given location using the location's UPRN. The seller will then respond with a list of one or multiple available products (if any) along with information about the need for an appointment (yes/no/maybe). For more information on products see the reference Some products such as auxiliary services could depend on other products (this is indicated via the dependsOn property). For example ResVOIP1 can depend on CPEInst1, meaning if ResVOIP1 is ordered then CPEInst1 needs to be requested as well. Endpoint: POST /queryProductsForLocation Version: 2.30 Security: Certificate ## Request 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" - `location` (object, required) - `location.addressKey` (string, required) Unique identifier of the address (UPRN) ## 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)