Config Registry

Resolve a config

Changed on

Explicitly starts or retries a project-scoped background analysis while preserving current global knowledge when available. Use /config-registry/lookup for side-effect-free reads.

post/config-registry/resolve

Request

  • Base URL
    https://api.onkernel.com
  • URL
    https://api.onkernel.com/config-registry/resolve
  • Auth
    HTTP bearer

Request body

allowed_proxy_countriesstring[]

ISO 3166 country codes Kernel may use when searching for or returning a proxy configuration. Kernel may test a subset of allowed countries. When omitted, Kernel uses its default country selection.

intentstring

Plain-language description of the workload you intend to run against this target, in a sentence or two. Requires an https target, because the pass treats any non-HTTPS destination as off-site and will not drive an http one. Kernel uses it to drive the browser further into the site, where it can observe protections that only appear once a session interacts. When this target already has a recommended configuration, the run confirms that one instead of re-deriving the whole matrix, so supplying an intent narrows what can be recommended.

urlstring uri required

Public HTTP(S) URL to refresh.

Example request

{
  "allowed_proxy_countries": [
    "US"
  ],
  "intent": "search for a black hoodie and add it to the cart"
}

Response

Current recommendation returned. Analysis is null if DNS validation or workflow submission prevented the requested refresh.

guidancestring nullable

Short advisory markdown to facilitate navigating this target. Returned even when no configuration reached the target, since knowing what prevented success is useful without a configuration. Not verified against this target. Null when nothing applicable was observed or no notes exist.

workload_outcome'completed' | 'turn_limit' | 'auth_required' | 'payment_required' | 'blocked' | 'error' nullable

How far the workload pass got, when an intent was supplied and a pass ran. A run outcome rather than advice, so it is reported whether or not any guidance could be assembled. Null when no intent was supplied or no pass ran.

Example response

{
  "analysis": {
    "failure": {
      "code": "bad_request",
      "details": [
        {
          "code": "invalid_input",
          "message": "Provided version string is not semver compliant"
        }
      ],
      "inner_error": {
        "code": "invalid_input",
        "message": "Provided version string is not semver compliant"
      },
      "message": "Missing required field: app_name"
    }
  },
  "recommendation": {
    "browser": {
      "viewport": {
        "height": 800,
        "refresh_rate": 60,
        "width": 1280
      }
    },
    "proxy": {
      "create": {
        "config": {
          "country": "US"
        }
      }
    }
  },
  "working_configurations": [
    {
      "browser": {
        "viewport": {
          "height": 800,
          "refresh_rate": 60,
          "width": 1280
        }
      },
      "proxy": {
        "create": {
          "config": {
            "country": "US"
          }
        }
      }
    }
  ]
}

Changes