Skip to main content
POST
/
admin
/
api
/
v1
/
onboarding
/
scan
Scan
curl --request POST \
  --url https://api.example.com/admin/api/v1/onboarding/scan
{
  "scanResult": {
    "root": "<string>",
    "detected": [
      {
        "filePath": "<string>",
        "variableName": "<string>",
        "inferredName": "<string>"
      }
    ],
    "hasPythonFiles": true,
    "hasIdunConfig": true,
    "scanDurationMs": 123
  },
  "currentAgent": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>",
    "baseEngineConfig": {
      "agent": {
        "config": {
          "name": "<string>",
          "graph_definition": "<string>",
          "observability": {
            "provider": "<string>",
            "enabled": false,
            "options": {}
          },
          "checkpointer": {
            "type": "<string>",
            "db_url": "<string>"
          },
          "store": {}
        }
      },
      "server": {
        "api": {
          "port": 8000
        }
      },
      "mcpServers": [
        {
          "name": "<string>",
          "transport": "streamable_http",
          "url": "<string>",
          "command": "<string>",
          "args": [
            "<string>"
          ],
          "headers": {},
          "env": {},
          "cwd": "<string>",
          "encoding": "<string>",
          "timeoutSeconds": 123,
          "sseReadTimeoutSeconds": 123,
          "terminateOnClose": true,
          "sessionKwargs": {}
        }
      ],
      "guardrails": {
        "input": [
          {
            "banned_words": [
              "<string>"
            ],
            "config_id": "ban_list",
            "api_key": "",
            "reject_message": "ban!!",
            "guard_url": "hub://guardrails/ban_list"
          }
        ],
        "output": [
          {
            "banned_words": [
              "<string>"
            ],
            "config_id": "ban_list",
            "api_key": "",
            "reject_message": "ban!!",
            "guard_url": "hub://guardrails/ban_list"
          }
        ]
      },
      "observability": [
        {
          "config": {
            "provider": "LANGFUSE",
            "host": "https://cloud.langfuse.com",
            "publicKey": "",
            "secretKey": "",
            "runName": ""
          },
          "provider": "LANGFUSE",
          "enabled": true
        }
      ],
      "sso": {
        "issuer": "<string>",
        "clientId": "<string>",
        "enabled": true,
        "audience": "<string>",
        "allowedDomains": [
          "<string>"
        ],
        "allowedEmails": [
          "<string>"
        ]
      },
      "integrations": [
        {
          "config": {
            "accessToken": "<string>",
            "phoneNumberId": "<string>",
            "verifyToken": "<string>",
            "apiVersion": "v21.0"
          },
          "enabled": true
        }
      ],
      "prompts": [
        {
          "promptId": "<string>",
          "version": 123,
          "content": "<string>",
          "tags": [
            "<string>"
          ]
        }
      ]
    },
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "slug": "<string>",
    "description": "<string>",
    "version": "<string>",
    "baseUrl": "<string>"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.idun-group.com/llms.txt

Use this file to discover all available pages before exploring further.

Response

200 - application/json

Successful Response

Response for POST /admin/api/v1/onboarding/scan.

The five-state classification is computed server-side from the scan result plus the agent row's existence. current_agent is only populated when state == "ALREADY_CONFIGURED".

state
enum<string>
required
Available options:
EMPTY,
NO_SUPPORTED,
ONE_DETECTED,
MANY_DETECTED,
ALREADY_CONFIGURED
scanResult
ScanResult · object
required

Aggregate result of a single scan_folder call.

currentAgent
StandaloneAgentRead · object

GET response and the data payload of PATCH responses.

Last modified on May 22, 2026