action graphhopper_solve_clustering_problem { label: "POST Cluster Endpoint" description: "\nThe Cluster endpoint is used with a POST request towards\n`https://graphhopper.com/api/1/cluster?key=`. The solution will be provided in the JSON response.\nPlease note that for problems that take longer than 10 seconds a bad request error is returned.\nIn this case please use the asynchronous [Batch Cluster Endpoint](#operation/asyncClusteringProblem) instead.\n" provider: graphhopper method: POST path: "/cluster" encoding: json input: { type: "object" properties: { configuration: { type: "object" properties: { clustering: { type: "object" properties: { max_quantity: { type: "number" format: "int32" description: "Specifies max. quantity in a cluster" } min_quantity: { type: "number" format: "int32" description: "Specifies min. quantity in a cluster" } num_clusters: { type: "number" format: "int32" description: "Specifies the number of clusters" } } } response_type: { type: "string" description: "Specifies the response format. You can either choose `geojson` or `json`." } routing: { type: "object" properties: { cost_per_meter: { type: "number" format: "double" description: "Cost per meter (travel distance)" } cost_per_second: { type: "number" format: "double" description: "Cost per second (travel time)" } profile: { type: "string" description: "The routing profile for which the travel times and distances should be calculated. Other profiles are listed [here](#section/Map-Data-and-Routing-Profiles/OpenStreetMap)" } } } } } customers: { type: "array" items: { type: "object" properties: { address: { type: "object" properties: { lat: { type: "number" format: "double" description: "Latitude" } lon: { type: "number" format: "double" description: "Longitude" } street_hint: { type: "string" description: "Optional parameter. Specifies a hint for each address to better snap the coordinates (lon,lat) to road network. E.g. if there is an address or house with two or more neighboring streets you can control for which street the closest location is looked up." } } } id: { type: "string" description: "id of customer" } quantity: { type: "number" format: "int32" description: "demand of customer" } } } } } } output: { type: "object" properties: { clusters: { type: "array" items: { type: "object" properties: { ids: { type: "array" description: "Array of customer ids assigned to this specific cluster" items: { type: "string" } } quantity: { type: "number" format: "int32" description: "Cluster size" } } } } copyrights: { type: "array" items: { type: "string" } } processing_time: { type: "number" format: "double" } status: { type: "string" description: "Indicates the current status of the job" enum: ["waiting_in_queue", "processing", "finished"] } waiting_time_in_queue: { type: "number" format: "double" } } } }