KINETIC
KINETIC APIProtocol · API reference
MD-Version 2026-06-11 Request access

Attribution

Network Attribution

Lawful IP/network auxiliary attribution signals.

POST/v1/network-attribution/signalsAdd network attribution signal
POST/v1/network-attribution/correlateCorrelate network signals
GET/v1/network-attribution/{network_attribution_id}Get network attribution
POST/v1/network-attribution/signals

Add network attribution signal

Adds lawful auxiliary IP/network/provider signal with source restrictions and confidence level.

scope · network:writeidempotent · Idempotency-Key
§ Body parameters
FieldType
matter_idstring
signal_typestring
sourcestring
wallet_addressstring
legal_process_idstring
timestampdate-time
raw_value_redactedstring
privacy_restrictionsarray
# sandbox: full surface, no production data
curl -X POST https://sandbox.api.microndelta.com/v1/network-attribution/signals \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4f8a-bd31" \
  -d '{
  "matter_id": "string",
  "signal_type": "string",
  "source": "string",
  "wallet_address": "string",
  "legal_process_id": "string",
  "timestamp": "2026-06-01T12:00:00Z",
  "raw_value_redacted": "string",
  "privacy_restrictions": [
    "string"
  ]
}'
import requests

resp = requests.post(
    "https://sandbox.api.microndelta.com/v1/network-attribution/signals",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
        "Idempotency-Key": "4f8a-bd31",
    },
    json={
        "matter_id": "string",
        "signal_type": "string",
        "source": "string",
        "wallet_address": "string",
        "legal_process_id": "string",
        "timestamp": "2026-06-01T12:00:00Z",
        "raw_value_redacted": "string",
        "privacy_restrictions": [
            "string"
        ]
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/network-attribution/signals", {
  method: "POST",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
    "Content-Type": "application/json",
    "Idempotency-Key": "4f8a-bd31",
  },
  body: JSON.stringify({
    "matter_id": "string",
    "signal_type": "string",
    "source": "string",
    "wallet_address": "string",
    "legal_process_id": "string",
    "timestamp": "2026-06-01T12:00:00Z",
    "raw_value_redacted": "string",
    "privacy_restrictions": [
      "string"
    ]
  }),
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
201 Response
{
  "network_attribution_id": "string",
  "matter_id": "string",
  "wallet_address": "string",
  "signal_type": "exchange_login_ip",
  "source": "string",
  "legal_process_id": "string",
  "timestamp": "2026-06-01T12:00:00Z",
  "confidence_level": "L0"
}
POST/v1/network-attribution/correlate

Correlate network signals

Correlates wallet, exchange, provider, claimant, domain, cloud, and telemetry signals without treating IP as standalone proof.

scope · network:correlateidempotent · Idempotency-Key
§ Body parameters
FieldType
matter_idstring
wallet_idsarray
signal_idsarray
# sandbox: full surface, no production data
curl -X POST https://sandbox.api.microndelta.com/v1/network-attribution/correlate \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4f8a-bd31" \
  -d '{
  "matter_id": "string",
  "wallet_ids": [
    "string"
  ],
  "signal_ids": [
    "string"
  ]
}'
import requests

resp = requests.post(
    "https://sandbox.api.microndelta.com/v1/network-attribution/correlate",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
        "Idempotency-Key": "4f8a-bd31",
    },
    json={
        "matter_id": "string",
        "wallet_ids": [
            "string"
        ],
        "signal_ids": [
            "string"
        ]
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/network-attribution/correlate", {
  method: "POST",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
    "Content-Type": "application/json",
    "Idempotency-Key": "4f8a-bd31",
  },
  body: JSON.stringify({
    "matter_id": "string",
    "wallet_ids": [
      "string"
    ],
    "signal_ids": [
      "string"
    ]
  }),
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "matter_id": "string",
  "correlations": [
    {
      "subject": "string",
      "signal_id": "string",
      "confidence_level": "string",
      "explanation": "string",
      "review_required": true
    }
  ]
}
GET/v1/network-attribution/{network_attribution_id}

Get network attribution

Gets a network signal/correlation result with privacy restrictions and legal process provenance.

scope · network:read
§ Path parameters
ParameterType
network_attribution_id
required · path
string
# sandbox: full surface, no production data
curl https://sandbox.api.microndelta.com/v1/network-attribution/net_91Lk \
  -H "Authorization: Bearer md_test_xxxxxxxxxxxxxxxx" \
  -H "MD-Version: 2026-06-11"
import requests

resp = requests.get(
    "https://sandbox.api.microndelta.com/v1/network-attribution/net_91Lk",
    headers={
        "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
        "MD-Version": "2026-06-11",
    },
)
print(resp.json())
const resp = await fetch("https://sandbox.api.microndelta.com/v1/network-attribution/net_91Lk", {
  method: "GET",
  headers: {
    "Authorization": "Bearer md_test_xxxxxxxxxxxxxxxx",
    "MD-Version": "2026-06-11",
  },
});
console.log(await resp.json());
● 200MD-Request-Id: req_01J…
200 Response
{
  "network_attribution_id": "string",
  "matter_id": "string",
  "wallet_address": "string",
  "signal_type": "exchange_login_ip",
  "source": "string",
  "legal_process_id": "string",
  "timestamp": "2026-06-01T12:00:00Z",
  "confidence_level": "L0"
}