{
  "info": {
    "name": "DIP Clustering Phase E Compact Run",
    "_postman_id": "57e745df-cb97-4a13-8c74-9e5c689ef0ac",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "description": "Phase E compact run execution: Spring keeps metadata, Python receives only runId."
  },
  "variable": [
    {
      "key": "springBaseUrl",
      "value": "http://localhost:8889/api"
    },
    {
      "key": "pythonBaseUrl",
      "value": "http://localhost:8001"
    },
    {
      "key": "runId",
      "value": ""
    }
  ],
  "item": [
    {
      "name": "Python Health",
      "request": {
        "method": "GET",
        "url": {
          "raw": "{{pythonBaseUrl}}/health",
          "host": [
            "{{pythonBaseUrl}}"
          ],
          "path": [
            "health"
          ]
        }
      }
    },
    {
      "name": "Python Cluster Run",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{pythonBaseUrl}}/cluster-run",
          "host": [
            "{{pythonBaseUrl}}"
          ],
          "path": [
            "cluster-run"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"runId\": \"{{runId}}\"\n}"
        }
      }
    },
    {
      "name": "Create TED DBSCAN run",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{springBaseUrl}}/v1/dip/clustering/runs",
          "host": [
            "{{springBaseUrl}}"
          ],
          "path": [
            "v1",
            "dip",
            "clustering",
            "runs"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"TED notices DBSCAN PCA200\",\n  \"algorithm\": \"DBSCAN\",\n  \"executionBackend\": \"PYTHON_REMOTE\",\n  \"reduction\": {\n    \"method\": \"PCA\",\n    \"targetDimensions\": 200\n  },\n  \"selection\": {\n    \"documentTypes\": [\n      \"TED_NOTICE\"\n    ],\n    \"representationTypes\": [\n      \"SEMANTIC_TEXT\"\n    ],\n    \"embeddingStatuses\": [\n      \"COMPLETED\"\n    ],\n    \"primaryRepresentationOnly\": true\n  },\n  \"parameters\": {\n    \"eps\": 0.25,\n    \"minSamples\": 5,\n    \"metric\": \"euclidean\",\n    \"normalizeVectors\": true\n  }\n}"
        }
      }
    },
    {
      "name": "Queue Run",
      "request": {
        "method": "POST",
        "url": {
          "raw": "{{springBaseUrl}}/v1/dip/clustering/runs/{{runId}}/start",
          "host": [
            "{{springBaseUrl}}"
          ],
          "path": [
            "v1",
            "dip",
            "clustering",
            "runs",
            "{{runId}}",
            "start"
          ]
        }
      }
    },
    {
      "name": "Get Run",
      "request": {
        "method": "GET",
        "url": {
          "raw": "{{springBaseUrl}}/v1/dip/clustering/runs/{{runId}}",
          "host": [
            "{{springBaseUrl}}"
          ],
          "path": [
            "v1",
            "dip",
            "clustering",
            "runs",
            "{{runId}}"
          ]
        }
      }
    }
  ]
}