Alle Bestellungen eines Kunden von der API

Thema wurde von Frankenwald Hanf-Shop, 13. März 2023 erstellt.

  1. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Registriert seit:
    1. August 2019
    Beiträge:
    71
    Danke erhalten:
    14
    Danke vergeben:
    42
    Wie bekommt man von der API alle Bestellungen eines Kunden?
    Sowas wie: orders/customer_id/history aber ich steht gerade aufm Schlauch. -_-
    Ideal wär wenn ich die History eines Kunden über fields=firstname,lastname an der API suchen könnte.
    Eigentlich ist es egal ob customer_id oder firstname,lastname.
    Ziel ist es, Kunden aus einem bestimmten PLZ-Bereich zu suchen und dann seine order history zu bekommen.

    mfg
     
  2. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.660
    Danke erhalten:
    1.262
    Danke vergeben:
    300
    @Frankenwald Hanf-Shop Um bestimmte Bestellungen zu durchsuchen kannst du den Endpunkt Search benutzen:

    (Link nur für registrierte Nutzer sichtbar.)

    Damit kannst du nach customers_id, customers_firstname oder auch customers_postcode oder delivery_postcode

    Code:
    {
        "search": [
            {
                "match": {
                    "orders.customers_firstname": "Bill"
                }
            },
            {
                "match": {
                    "orders.delivery_postcode": "12345"
                }
            }
        ]
    }
     
  3. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Registriert seit:
    1. August 2019
    Beiträge:
    71
    Danke erhalten:
    14
    Danke vergeben:
    42
    :rolleyes: die Suche ist kein GET sondern ein POST - ich glaub ich leg mich wieder hin :D
    Danke @Till (Gambio)
     
  4. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Registriert seit:
    1. August 2019
    Beiträge:
    71
    Danke erhalten:
    14
    Danke vergeben:
    42
    #4 Frankenwald Hanf-Shop, 22. März 2023
    Zuletzt bearbeitet: 22. März 2023
    An was kann es liegen dass ich vom Endpunkt:
    Code:
    https://shopdomain.de/shop/api.php/v3/products/11/variants
    Code:
    {
    "data": [
    {
    "id": 35,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 2
    }
    ],
    "sortOrder": 2,
    "modelNumber": "10",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 174,
    "weightType": "replacing",
    "weight": 0,
    "priceType": "replacing",
    "price": 0,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    },
    {
    "id": 37,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 7
    }
    ],
    "sortOrder": 4,
    "modelNumber": "30",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 9031,
    "weightType": "replacing",
    "weight": 0,
    "priceType": "replacing",
    "price": 35.2941,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    },
    {
    "id": 58,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 16
    }
    ],
    "sortOrder": 12,
    "modelNumber": "",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 897,
    "weightType": "replacing",
    "weight": 0,
    "priceType": "replacing",
    "price": 37.8151,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    }
    ],
    "_meta": {
    "page": 1,
    "perPage": 25,
    "totalItems": 3,
    "totalPages": 1,
    "links": [ ]
    }
    }
    zurück bekomm und vom Endpunkt:
    Code:
    https://shopdomain.de/shop/api.php/v3/products/12/variants
    Code:
    {
    "data": [
    {
    "id": 28,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 2
    }
    ],
    "sortOrder": 1,
    "modelNumber": "",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 6479,
    "weightType": "replacing",
    "weight": 0.04,
    "priceType": "replacing",
    "price": 0,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 1,
    "imageListId": null
    },
    {
    "id": 29,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 7
    }
    ],
    "sortOrder": 2,
    "modelNumber": "",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 53844,
    "weightType": "replacing",
    "weight": 0.08,
    "priceType": "replacing",
    "price": 70.5862,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 1,
    "imageListId": null
    },
    {
    "id": 52,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 16
    }
    ],
    "sortOrder": 3,
    "modelNumber": "",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 876,
    "weightType": "replacing",
    "weight": 0,
    "priceType": "replacing",
    "price": 73.1092,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    }
    ],
    "_meta": {
    "page": 1,
    "perPage": 25,
    "totalItems": 3,
    "totalPages": 1,
    "links": [ ]
    }
    }
    ohne modelNumber bzw. leerer String?

    Eigentlich sollte ich von productId 12 auch 10 und 30 als Variante bekommen.

    Vom Endpunkt:
    Code:
    https://shopdomain.de/shop/api.php/v3/products/32/variants
    bekomm ich wieder modelNumber's.

    Code:
    {
    "data": [
    {
    "id": 38,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 12
    }
    ],
    "sortOrder": 3,
    "modelNumber": "P-1800",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 461,
    "weightType": "replacing",
    "weight": 1.8,
    "priceType": "replacing",
    "price": 17.605,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    },
    {
    "id": 40,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 13
    }
    ],
    "sortOrder": 1,
    "modelNumber": "P-300",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 487,
    "weightType": "replacing",
    "weight": 0.3,
    "priceType": "replacing",
    "price": 0,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    },
    {
    "id": 74,
    "combination": [
    {
    "optionId": 1,
    "optionValueId": 19
    }
    ],
    "sortOrder": 4,
    "modelNumber": "P-5400",
    "GTIN": "",
    "ASIN": "",
    "EAN": "",
    "stockType": "not-managed",
    "stock": 9992,
    "weightType": "replacing",
    "weight": 0,
    "priceType": "replacing",
    "price": 55.4202,
    "vpeScalarValue": 0,
    "vpeUnitId": null,
    "deliveryTimeId": 0,
    "imageListId": null
    }
    ],
    "_meta": {
    "page": 1,
    "perPage": 25,
    "totalItems": 3,
    "totalPages": 1,
    "links": [ ]
    }
    }
     
  5. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.660
    Danke erhalten:
    1.262
    Danke vergeben:
    300
    @Frankenwald Hanf-Shop Da man die Datenbank und die interne Modelnumber in deinem Shop so von Außen nicht direkt sehen kann, ist es hier schwer was allgemeines zu sagen. Das muss gezielt untersucht werden anhand der echten Daten in der Datenbank. Mach da bitte ein Ticket auf und sende uns alle erforderlichen Daten von den genannten Artikel mit, welche du hier erwartest.
     
  6. Frankenwald Hanf-Shop

    Frankenwald Hanf-Shop Erfahrener Benutzer

    Registriert seit:
    1. August 2019
    Beiträge:
    71
    Danke erhalten:
    14
    Danke vergeben:
    42
    Man schickt den API-Token über https an die API. Im request header steht der API-Token in Klartext.
    Ist das ein Problem?
    Sollte man, in einer eigenen Webapp, diesen Token noch mal bearbeiten oder als Basis für einen JsonWebToken verwenden?
    Kann man so etwas überhaupt mit der Gambio-API machen?