{
  "title": "08-offer-selection",
  "steps": [
    {
      "key": "create-definition-division",
      "method": "POST",
      "path": "/api/divisions",
      "credential": "author",
      "request": {
        "meta": {
          "request_id": "req-definition-division-{{namespace}}",
          "idempotency_key": "idem-definition-division-{{namespace}}"
        },
        "data": {
          "type": "division",
          "attributes": {
            "division_code": "{{division_code}}",
            "state": "active"
          }
        }
      },
      "expect": {
        "status": 201
      },
      "extract": {
        "division_id": "data.id"
      }
    },
    {
      "key": "validate-definition-pass-1",
      "method": "POST",
      "path": "/api/divisions/{{division_id}}/shipping-method-definition/validate",
      "credential": "author",
      "expect": {
        "status": 200
      },
      "file": "definition-1.json",
      "request": {
        "meta": {
          "request_id": "req-validate-definition-pass-1-{{namespace}}",
          "idempotency_key": "idem-validate-definition-pass-1-{{namespace}}"
        }
      }
    },
    {
      "key": "plan-definition-pass-1",
      "method": "POST",
      "path": "/api/divisions/{{division_id}}/shipping-method-definition/plan",
      "credential": "author",
      "expect": {
        "status": 200,
        "values": {
          "data.attributes.succeeded": true
        }
      },
      "file": "definition-1.json",
      "request": {
        "meta": {
          "request_id": "req-plan-definition-pass-1-{{namespace}}",
          "idempotency_key": "idem-plan-definition-pass-1-{{namespace}}"
        }
      }
    },
    {
      "key": "apply-definition-pass-1",
      "method": "POST",
      "path": "/api/divisions/{{division_id}}/shipping-method-definition/apply",
      "credential": "author",
      "expect": {
        "status": 200,
        "values": {
          "data.attributes.succeeded": true
        }
      },
      "file": "definition-1.json",
      "request": {
        "meta": {
          "request_id": "req-apply-definition-pass-1-{{namespace}}",
          "idempotency_key": "idem-apply-definition-pass-1-{{namespace}}"
        }
      }
    },
    {
      "key": "export-definition-pass-1",
      "method": "GET",
      "path": "/api/divisions/{{division_id}}/shipping-method-definition/export",
      "credential": "read",
      "request": null,
      "expect": {
        "status": 200
      }
    },
    {
      "key": "issue-runtime_1",
      "method": "POST",
      "path": "/api/access-tokens",
      "credential": "author",
      "request": {
        "data": {
          "type": "access-token",
          "attributes": {
            "token_type": "sk",
            "name": "Disposable walkthrough token",
            "abilities": [
              "*"
            ],
            "division_id": "{{division_id}}",
            "rate_limit_per_minute": 600
          }
        }
      },
      "extract": {
        "runtime_1": "data.attributes.plain_text_token"
      },
      "expect": {
        "status": 201
      }
    },
    {
      "key": "evaluate-control",
      "method": "POST",
      "path": "/api/rating/evaluate",
      "credential": "runtime_1",
      "expect": {
        "status": 200,
        "values": {
          "data.attributes.shipping_options.0.total_price.amount": "12.50",
          "data.attributes.shipping_options.0.total_price.currency_code": "EUR",
          "data.attributes.shipping_options.length": 1,
          "data.attributes.shipping_options.0.price_components.0.code": "offers-before-tariff-standard-row-definition-offers-before-tariff-fixture",
          "data.attributes.shipping_options.0.price_components.0.calculation_basis.artifact_row_code": "offers-before-tariff-standard-row-definition-offers-before-tariff-fixture",
          "data.attributes.shipping_options.0.price_components.0.calculation_basis.offer_codes": []
        }
      },
      "file": "evaluate-control.json"
    },
    {
      "key": "evaluate-vip",
      "method": "POST",
      "path": "/api/rating/evaluate",
      "credential": "runtime_1",
      "expect": {
        "status": 200,
        "values": {
          "data.attributes.shipping_options.0.total_price.amount": "18.00",
          "data.attributes.shipping_options.0.total_price.currency_code": "EUR",
          "data.attributes.shipping_options.length": 1,
          "data.attributes.shipping_options.0.price_components.0.code": "offers-before-tariff-vip-row-definition-offers-before-tariff-fixture",
          "data.attributes.shipping_options.0.price_components.0.calculation_basis.artifact_row_code": "offers-before-tariff-vip-row-definition-offers-before-tariff-fixture",
          "data.attributes.shipping_options.0.price_components.0.calculation_basis.offer_codes": [
            "VIP_SERVICE_AVAILABLE"
          ]
        }
      },
      "file": "evaluate-vip.json"
    }
  ],
  "initial_state": {
    "division_code": "definition-docs-{{namespace}}"
  }
}
