curl --request POST \
--url https://api.aisa.one/apis/v1/graphhopper/get-matrix \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"point": [
"<string>"
],
"profile": "car"
}
'import requests
url = "https://api.aisa.one/apis/v1/graphhopper/get-matrix"
payload = {
"point": ["<string>"],
"profile": "car"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({point: ['<string>'], profile: 'car'})
};
fetch('https://api.aisa.one/apis/v1/graphhopper/get-matrix', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/graphhopper/get-matrix",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'point' => [
'<string>'
],
'profile' => 'car'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/graphhopper/get-matrix"
payload := strings.NewReader("{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/graphhopper/get-matrix")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/graphhopper/get-matrix")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}"
response = http.request(request)
puts response.read_body{
"info": {
"copyrights": [
"<string>"
],
"took": 123
},
"hints": [
{
"message": "<string>",
"details": "<string>",
"point_pairs": [
[
123
]
],
"invalid_to_points": [
123
],
"invalid_from_points": [
123
]
}
],
"times": [
[
123
]
],
"weights": [
[
123
]
],
"distances": [
[
123
]
]
}Get Matrix
curl --request POST \
--url https://api.aisa.one/apis/v1/graphhopper/get-matrix \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"point": [
"<string>"
],
"profile": "car"
}
'import requests
url = "https://api.aisa.one/apis/v1/graphhopper/get-matrix"
payload = {
"point": ["<string>"],
"profile": "car"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({point: ['<string>'], profile: 'car'})
};
fetch('https://api.aisa.one/apis/v1/graphhopper/get-matrix', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/graphhopper/get-matrix",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'point' => [
'<string>'
],
'profile' => 'car'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/graphhopper/get-matrix"
payload := strings.NewReader("{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/graphhopper/get-matrix")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/graphhopper/get-matrix")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"point\": [\n \"<string>\"\n ],\n \"profile\": \"car\"\n}"
response = http.request(request)
puts response.read_body{
"info": {
"copyrights": [
"<string>"
],
"took": 123
},
"hints": [
{
"message": "<string>",
"details": "<string>",
"point_pairs": [
[
123
]
],
"invalid_to_points": [
123
],
"invalid_from_points": [
123
]
}
],
"times": [
[
123
]
],
"weights": [
[
123
]
],
"distances": [
[
123
]
]
}Request contract
- Method and path: POST /apis/v1/graphhopper/get-matrix
- Availability: enabled
- Request URL template:
https://api.aisa.one/apis/v1/graphhopper/get-matrix - Runtime facts: 6a72f8e2fa7fb1c29379e3b24b3a247c8428a3b6ed621b3f84f84e75cb0de2bc
{
"operationId": "graphhopper.get-matrix",
"method": "POST",
"path": "/apis/v1/graphhopper/get-matrix",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [],
"security": [
{
"bearerAuth": []
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"point": {
"items": {
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"type": "array",
"description": "Specify multiple points in 'latitude,longitude' format for which the matrix should be calculated. The starts are identical to the destinations. If there are N points, then NxN entries will be calculated. Specify at least three points. Cannot be used together with from_point or to_point."
},
"profile": {
"enum": [
"car"
],
"type": "string",
"description": "The routing profile. It determines the network, speed and other physical attributes used when computing the route. Valid values include 'car', 'bike', 'foot', 'hike', 'mtb', 'racingbike', 'scooter', 'truck', and 'small_truck'."
},
"curbside": {
"type": "array",
"items": {
"enum": [
"any",
"left",
"right"
],
"type": "string"
},
"description": "Optional parameter. Specifies on which side a point should be relative to the driver when she leaves/arrives at a start/target/via point. Must be 'any', 'left', or 'right'. Specify for either none or all points."
},
"to_point": {
"type": "array",
"items": {
"type": "string"
},
"examples": [
[
"48.1351,11.5820",
"53.5511,9.9937"
]
],
"description": "The destination points for the routes in 'latitude,longitude' format. Use together with from_point for asymmetric matrices."
},
"fail_fast": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not the matrix calculation should return with an error as soon as possible in case some points cannot be found or some points are not connected. If set to false, the matrix will be calculated for all valid points and contain null values for entries that could not be calculated."
},
"out_array": {
"type": "array",
"items": {
"enum": [
"weights",
"times",
"distances"
],
"type": "string"
},
"examples": [
[
"times",
"distances"
]
],
"description": "Specifies which arrays should be included in the response. Specify one or more of 'weights', 'times', 'distances'. The units of distances are meters, times are seconds, and weights are arbitrary."
},
"from_point": {
"type": "array",
"items": {
"type": "string"
},
"examples": [
[
"52.5200,13.4050"
]
],
"description": "The origin points for the routes in 'latitude,longitude' format. Use together with to_point for asymmetric matrices."
},
"point_hint": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional parameter. Specifies a hint for each point parameter to prefer a certain street for the closest location lookup."
},
"to_curbside": {
"type": "array",
"items": {
"enum": [
"any",
"left",
"right"
],
"type": "string"
},
"description": "Curbside setting for the to_point parameter. Must be 'any', 'left', or 'right'."
},
"from_curbside": {
"type": "array",
"items": {
"enum": [
"any",
"left",
"right"
],
"type": "string"
},
"description": "Curbside setting for the from_point parameter. Must be 'any', 'left', or 'right'."
},
"to_point_hint": {
"type": "array",
"items": {
"type": "string"
},
"description": "For the to_point parameter. Specifies a hint to prefer a certain street for the closest location lookup."
},
"from_point_hint": {
"type": "array",
"items": {
"type": "string"
},
"description": "For the from_point parameter. Specifies a hint to prefer a certain street for the closest location lookup."
},
"snap_prevention": {
"type": "array",
"items": {
"enum": [
"motorway",
"trunk",
"ferry",
"tunnel",
"bridge",
"ford"
],
"type": "string"
},
"description": "Optional parameter to prevent snapping to specific types of roads. Supported values: 'motorway', 'trunk', 'ferry', 'tunnel', 'bridge', 'ford'."
}
},
"required": [
"point",
"profile"
]
}
}
}
},
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "response_units",
"customer_multiplier": 1.0,
"customer_pricing": "provider_cost_multiplier",
"default_request_estimate_usd": 0.0803,
"estimate_source": "profile_seed",
"evidence_source": "response_body",
"maximum_units": 10000000,
"unit": "provider_credit",
"unit_rate_usd": 1e-06
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
Cost and request rules
Usage-based billing; Default request estimate: $0.0803 USD (not a fixed price). Declared unit rate: $0.000001 USD per provider_credit. Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.- Default request reference estimate (USD): 0.0803
- Declared unit rate (USD): 1e-06
- Billing unit: provider_credit
- Cost contract: response_units
- Published reference multiplier: 1.0
- Declared maximum count/units: 10000000
- Settlement evidence source: response_body
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Specify multiple points in 'latitude,longitude' format for which the matrix should be calculated. The starts are identical to the destinations. If there are N points, then NxN entries will be calculated. Specify at least three points. Cannot be used together with from_point or to_point.
1 - 20 elementsThe routing profile. It determines the network, speed and other physical attributes used when computing the route. Valid values include 'car', 'bike', 'foot', 'hike', 'mtb', 'racingbike', 'scooter', 'truck', and 'small_truck'.
car Optional parameter. Specifies on which side a point should be relative to the driver when she leaves/arrives at a start/target/via point. Must be 'any', 'left', or 'right'. Specify for either none or all points.
any, left, right The destination points for the routes in 'latitude,longitude' format. Use together with from_point for asymmetric matrices.
["48.1351,11.5820", "53.5511,9.9937"]
Specifies whether or not the matrix calculation should return with an error as soon as possible in case some points cannot be found or some points are not connected. If set to false, the matrix will be calculated for all valid points and contain null values for entries that could not be calculated.
Specifies which arrays should be included in the response. Specify one or more of 'weights', 'times', 'distances'. The units of distances are meters, times are seconds, and weights are arbitrary.
weights, times, distances ["times", "distances"]
The origin points for the routes in 'latitude,longitude' format. Use together with to_point for asymmetric matrices.
["52.5200,13.4050"]
Optional parameter. Specifies a hint for each point parameter to prefer a certain street for the closest location lookup.
Curbside setting for the to_point parameter. Must be 'any', 'left', or 'right'.
any, left, right Curbside setting for the from_point parameter. Must be 'any', 'left', or 'right'.
any, left, right For the to_point parameter. Specifies a hint to prefer a certain street for the closest location lookup.
For the from_point parameter. Specifies a hint to prefer a certain street for the closest location lookup.
Optional parameter to prevent snapping to specific types of roads. Supported values: 'motorway', 'trunk', 'ferry', 'tunnel', 'bridge', 'ford'.
motorway, trunk, ferry, tunnel, bridge, ford