Get Geography by Name - Fabric
Get Geography by Name
cURL
curl --request GET \
--url https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName} \
--header 'Authorization: Bearer <token>' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>'
Python
import requests
url = "https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}"
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)
JavaScript (Fetch)
const options = {
method: 'GET',
headers: {'x-fabric-tenant-id': '<x-fabric-tenant-id>', Authorization: 'Bearer <token>'}
};
fetch('https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, [\
CURLOPT_URL => "https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}",\
CURLOPT_RETURNTRANSFER => true,\
CURLOPT_ENCODING => "",\
CURLOPT_MAXREDIRS => 10,\
CURLOPT_TIMEOUT => 30,\
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\
CURLOPT_CUSTOMREQUEST => "GET",\
CURLOPT_HTTPHEADER => [\
"Authorization: Bearer <token>",\
"x-fabric-tenant-id: <x-fabric-tenant-id>"\
],\
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
?>
Go
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Unirest (Java)
HttpResponse<String> response = Unirest.get("https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.asString();
Ruby
require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/location-geographies/geography-name/{geographyName}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body
Response Codes
- 200
- 400
- 401
- 404
- 500
Example Response (200)
{
"version": 2,
"geographyName": "US_Geo_PostalCode",
"type": "PostalCode",
"geographyId": "9372919a8219e8",
"description": "Specific geography for US Zones",
"values": ["<string>"],
"associatedZone": "US_Zone",
"linkedNetworks": ["<string>"],
"createdAt": "2022-07-11T15:03:14.642Z",
"updatedAt": "2022-07-11T15:03:14.642Z",
"resourceId": "<string>",
"subResourceId": "<string>"
}
Example Response (400)
{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4003",
"message": "Mandatory param(s): `requiredField1` is/are missing",
"errors": [{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4002",
"message": "Invalid value(s) specified for 'requiredField.field3'",
"errors": []
}],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders"
}
}
Example Response (401)
{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4001",
"message": "Unauthorized request",
"errors": [],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders/OrderId_12345"
}
}
Example Response (404)
{
"message": "Geography with geographyName: US_ZONE not found"
}
Example Response (500)
{
"type": "SERVER_ERROR",
"errorCode": "SERVICE-5000",
"message": "Internal server error",
"errors": [],
"context": {
"service": "inventories",
"endpoint": "POST /v3/inventories/actions/find-by-geography"
}
}
Authorizations
Authorization
- Type:
string - Location:
header - Required:
Yes - Description: Bearer authentication header of the form
Bearer <token>, where<token>is your auth token.
Headers
x-fabric-tenant-id
- Type:
string - Required:
Yes - Description: A header used by fabric to identify the tenant making the request. You must include tenant id in the authentication header for an API request to access any of fabric’s endpoints. You can retrieve the tenant id , which is also called account id, from Copilot.
x-fabric-request-id
- Type:
string - Description: Unique request ID.
x-fabric-channel-id
- Type:
string - Description: x-fabric-channel-id identifies the sales channel through which the API request is being made; primarily for multichannel use cases. It is an optional field. The default US channel is 12 while the default Canada channel is 13.
Path Parameters
geographyName
- Type:
string - Required:
Yes - Description: Merchant-specified unique number to identify the geography.