Dokumentacja API

Zintegruj potężny silnik cenowy Grula ze swoimi aplikacjami za pomocą naszego kompleksowego REST API. Obliczaj ceny, zarządzaj politykami cenowymi i konfiguruj dynamiczne dostosowania programowo.

Szybki start

Rozpocznij pracę z API Grula w kilka minut. Wszystko czego potrzebujesz to token API, aby zacząć wysyłać zapytania.

Uwierzytelnianie

Wszystkie zapytania API wymagają uwierzytelniania za pomocą tokena Bearer. Możesz wygenerować swój token API z panelu Grula.

Authorization: Bearer YOUR_API_TOKEN

Base URL

https://api.grula.net

Kluczowe koncepcje

Polityki cenowe (Cenniki)

Polityki cenowe definiują Twoje ceny bazowe dla produktów lub usług. Pomyśl o nich jak o Twoich cennikach, które zawierają fundamentalne reguły cenowe dla Twojego biznesu.

Polityki dostosowań cen (Rabaty i opłaty)

Polityki dostosowań cen modyfikują Twoje ceny bazowe poprzez zastosowanie rabatów, opłat lub innych dostosowań na podstawie określonych warunków, takich jak typ klienta, wolumen lub czynniki sezonowe.

Get PricePOST

Oblicz pojedynczą cenę na podstawie sterowników cen, waluty i opcjonalnej daty cenowej. To jest główny endpoint do obliczeń cen w czasie rzeczywistym.

Endpoint

POST /api/v1/price
curl -X POST "https://api.grula.net/api/v1/price" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "environmentId": "123e4567-e89b-12d3-a456-426614174000",
    "priceDrivers": [
      {
        "name": "product",
        "value": "laptop"
      },
      {
        "name": "customer_tier",
        "value": "premium"
      }
    ],
    "currencyThreeLetterCode": "USD",
    "pricingDate": "2024-01-15T10:00:00Z"
  }'

Get Multiple PricesPOST

Oblicz wiele cen w jednym zapytaniu. Wydajne dla operacji masowego ustalania cen z maksymalnie 100 zapytaniami cenowymi na wywołanie.

Endpoint

POST /api/v1/prices
curl -X POST "https://api.grula.net/api/v1/prices" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "environmentId": "123e4567-e89b-12d3-a456-426614174000",
    "priceRequests": [
      {
        "priceDrivers": [
          {"name": "product", "value": "laptop"},
          {"name": "customer_tier", "value": "premium"}
        ],
        "currencyThreeLetterCode": "USD",
        "pricingDate": "2024-01-15T10:00:00Z"
      },
      {
        "priceDrivers": [
          {"name": "product", "value": "desktop"},
          {"name": "customer_tier", "value": "standard"}
        ],
        "currencyThreeLetterCode": "EUR",
        "pricingDate": "2024-01-15T10:00:00Z"
      }
    ]
  }'

Przykłady odpowiedzi

Zrozumienie struktury odpowiedzi API pomaga efektywnie integrować dane cenowe w Twoich aplikacjach.

Price Response

{
  "amount": {
    "amount": 1299.99,
    "currencyThreeLetterCode": "USD"
  },
  "priceComponents": [
    {
      "pricingPolicyId": "123e4567-e89b-12d3-a456-426614174000",
      "amount": {
        "amount": 1499.99,
        "currencyThreeLetterCode": "USD"
      }
    },
    {
      "priceAdjustmentPolicyId": "456e7890-e89b-12d3-a456-426614174001",
      "amount": {
        "amount": -200.00,
        "currencyThreeLetterCode": "USD"
      },
      "priceAdjustmentPolicyActionName": "Premium Customer Discount",
      "priceAdjustmentPolicyValue": 0.15
    }
  ]
}

Obsługa błędów

API używa standardowych kodów statusu HTTP do wskazania powodzenia lub niepowodzenia zapytań. Oto najczęstsze kody statusu, które napotkasz.

Kody statusu HTTP

200
Success - Zapytanie zakończone pomyślnie
201
Created - Zasób utworzony pomyślnie
400
Bad Request - Nieprawidłowe parametry zapytania
401
Unauthorized - Nieprawidłowy lub brakujący token API
404
Not Found - Zasób nie znaleziony
409
Conflict - Zasób już istnieje lub niezgodność wersji
500
Internal Server Error - Wystąpił błąd po stronie serwera