Your articles as GO JOE holds them
curl --request GET \
--url https://gojoe.de/api/pharm/v1/inventory \
--header 'Authorization: Bearer <token>'import requests
url = "https://gojoe.de/api/pharm/v1/inventory"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gojoe.de/api/pharm/v1/inventory', 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://gojoe.de/api/pharm/v1/inventory",
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>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://gojoe.de/api/pharm/v1/inventory"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://gojoe.de/api/pharm/v1/inventory")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://gojoe.de/api/pharm/v1/inventory")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"pharmacy_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"next_cursor": "<string>",
"has_more": true,
"data": [
{
"pharmacy_sku": "<string>",
"name": "<string>",
"last_pushed_at": "2023-11-07T05:31:56Z",
"pushed": {
"available": true,
"stock_grams": 123,
"price_cents": 123,
"min_order_grams": 123,
"order_increment": 123
},
"mapping": "mapped",
"in_shop": {
"product_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"available": true,
"stock_grams": 123,
"price_cents": 123,
"min_order_grams": 123,
"order_increment": 123,
"updated_at": "2023-11-07T05:31:56Z"
},
"price_warning": {
"old_price_cents": 123,
"new_price_cents": 123,
"at": "2023-11-07T05:31:56Z"
}
}
]
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}Inventory
Your articles as GO JOE holds them
Every article you pushed for a pharmacy, what you last sent, whether
GO JOE has mapped it, and what the shop sells right now. Use it to
check your pushes and to see which numbers still wait for mapping.
Sorted by pharmacy_sku and paged: follow next_cursor until
has_more is false.
GET
/
inventory
Your articles as GO JOE holds them
curl --request GET \
--url https://gojoe.de/api/pharm/v1/inventory \
--header 'Authorization: Bearer <token>'import requests
url = "https://gojoe.de/api/pharm/v1/inventory"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gojoe.de/api/pharm/v1/inventory', 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://gojoe.de/api/pharm/v1/inventory",
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>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://gojoe.de/api/pharm/v1/inventory"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://gojoe.de/api/pharm/v1/inventory")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://gojoe.de/api/pharm/v1/inventory")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"pharmacy_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"next_cursor": "<string>",
"has_more": true,
"data": [
{
"pharmacy_sku": "<string>",
"name": "<string>",
"last_pushed_at": "2023-11-07T05:31:56Z",
"pushed": {
"available": true,
"stock_grams": 123,
"price_cents": 123,
"min_order_grams": 123,
"order_increment": 123
},
"mapping": "mapped",
"in_shop": {
"product_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"available": true,
"stock_grams": 123,
"price_cents": 123,
"min_order_grams": 123,
"order_increment": 123,
"updated_at": "2023-11-07T05:31:56Z"
},
"price_warning": {
"old_price_cents": 123,
"new_price_cents": 123,
"at": "2023-11-07T05:31:56Z"
}
}
]
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}{
"status": 123,
"code": "invalid_transition",
"detail": "<string>",
"request_id": "<string>",
"type": "<string>",
"title": "<string>"
}Authorizations
Authorization: Bearer gj_live_… (production) or gj_test_… (sandbox).
Query Parameters
Required range:
1 <= x <= 500