#!/usr/bin/env bash
set -euo pipefail

: "${DECISIOQ_CLIENT_ID:?Set DECISIOQ_CLIENT_ID}"
: "${DECISIOQ_CLIENT_SECRET:?Set DECISIOQ_CLIENT_SECRET}"

IDENTITY_URL="${DECISIOQ_IDENTITY_URL:-https://identity.vinquery.com/connect/token}"
DKS_URL="${DECISIOQ_DKS_URL:-https://dks.vinquery.com}"
DDE_URL="${DECISIOQ_DDE_URL:-https://dde.vinquery.com}"
AUDIENCE="${DECISIOQ_AUDIENCE:-vinquery:api:decisioq}"
CORRELATION_ID="auto-rent-008-curl-$(date -u +%Y%m%d%H%M%S)"

TOKEN_JSON=$(curl -sS -X POST "$IDENTITY_URL" \
  -H "Content-Type: application/json" \
  --data "{\"clientId\":\"$DECISIOQ_CLIENT_ID\",\"clientSecret\":\"$DECISIOQ_CLIENT_SECRET\",\"audience\":\"$AUDIENCE\"}")

DECISIOQ_TOKEN=$(printf '%s' "$TOKEN_JSON" | python -c "import json,sys; print(json.load(sys.stdin)['jwtToken'])")

curl -sS "$DKS_URL/decisioncatalog/decisions/AUTO-RENT-008" \
  -H "Authorization: Bearer $DECISIOQ_TOKEN" \
  -H "X-Correlation-Id: $CORRELATION_ID" >/dev/null

curl -sS -X POST "$DDE_URL/api/v1/execute-catalog" \
  -H "Authorization: Bearer $DECISIOQ_TOKEN" \
  -H "Content-Type: application/json" \
  -H "X-Correlation-Id: $CORRELATION_ID" \
  --data @auto-rent-008-execute.json
