> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aioka.io/llms.txt
> Use this file to discover all available pages before exploring further.

# SOL Council Verdict

> Latest SOL AI Council verdict with 6 specialist agent votes, confidence score, SOL-specific signal overlay, and network health context

<Note>
  Pro tier endpoint -- requires a valid Pro API key. The SOL council
  runs 6 specialist agents tuned to Solana-specific intelligence
  (Sprint SOL Phase 2).
</Note>

**Tier:** Pro (\$199/mo)
**Cache:** None
**Rate limit:** 30/min (per tier)
**Read-only:** Never writes to any trading table.

## Response Fields

### Top-level

| Field                | Type           | Meaning                                                                                                 |
| -------------------- | -------------- | ------------------------------------------------------------------------------------------------------- |
| `verdict`            | object \| null | Latest SOL council verdict. `null` if no verdict has been produced yet (first 30 minutes after deploy). |
| `nextRefreshMinutes` | int            | Minutes until the next scheduled council auto-refresh. Always `30`.                                     |

### verdict fields

| Field                | Type           | Meaning                                                                                                                                                                                              |
| -------------------- | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                 | string         | UUID of this verdict record                                                                                                                                                                          |
| `ruling`             | string         | `STRONG_BUY` / `BUY` / `ACCUMULATE` / `HOLD` / `REDUCE` / `AVOID`                                                                                                                                    |
| `confidence`         | number         | 0.0 -- 1.0. SOL entry threshold is confidence >= 0.65.                                                                                                                                               |
| `agentVotes`         | object         | Per-agent breakdown from all 6 SOL specialist agents                                                                                                                                                 |
| `agentVotes.<AGENT>` | object         | Each agent entry has `ruling` (string) and `confidence` (number)                                                                                                                                     |
| `chiefRationale`     | string \| null | Chief Judge's plain-language explanation of the ruling and why agent disagreements were resolved as they were                                                                                        |
| `plainExplanation`   | string \| null | Plain-English, jargon-free 2-3 sentence summary of WHY the council reached its ruling, synthesized by the Chief Judge in the same call. `null` for historical verdicts recorded before this feature. |
| `snapshotSignals`    | object         | Raw signal readings at the time of council deliberation (key-value pairs)                                                                                                                            |
| `createdAt`          | string         | ISO 8601 timestamp of verdict                                                                                                                                                                        |

## Specialist Agents

The SOL council replaces the generic BTC agent personas with 6 specialists
calibrated for Solana-specific intelligence. Each agent produces an
independent ruling and confidence score. The Chief Judge aggregates all 6
votes into the final verdict.

| Agent                | Weight | Veto    | Domain                                                              |
| -------------------- | ------ | ------- | ------------------------------------------------------------------- |
| `NETWORK_SENTINEL`   | 0.20   | No      | Solana TPS, network health, staking participation                   |
| `MACRO_SAGE`         | 0.15   | No      | DXY, US10Y, BTC dominance, Fear & Greed, BTC trend                  |
| `ECOSYSTEM_ANALYST`  | 0.20   | No      | DeFi TVL, memecoin activity, SOL/BTC ratio                          |
| `MOMENTUM_HUNTER`    | 0.20   | No      | RSI 1H/4H, MACD, EMA distance, SOL funding rate                     |
| `LIQUIDITY_GUARDIAN` | 0.10   | **Yes** | Funding rate squeeze, TPS execution risk, whale exchange flows      |
| `RISK_WARDEN`        | 0.15   | **Yes** | Tail risks, network outages, memecoin crash risk, protocol exploits |

The `agentVotes` object in every verdict response maps each agent name
to its individual `ruling` and `confidence`. Disagreement between agents
is reflected in the final confidence score -- unanimous verdicts carry
the highest confidence.

## Veto Rules

LIQUIDITY\_GUARDIAN and RISK\_WARDEN carry veto power. When either
returns AVOID with confidence > 0.7, the council ruling becomes AVOID
regardless of what the other four agents vote. Vetoes are enforced
deterministically in Python -- never trusted to LLM compliance.

| Veto Agent           | Trigger                  | Effect                         |
| -------------------- | ------------------------ | ------------------------------ |
| `LIQUIDITY_GUARDIAN` | AVOID + confidence > 0.7 | Council ruling forced to AVOID |
| `RISK_WARDEN`        | AVOID + confidence > 0.7 | Council ruling forced to AVOID |

<RequestExample>
  ```bash curl theme={null}
  curl https://api.aioka.io/v1/sol/council \
    -H "X-API-Key: aik_pro_your_key_here"
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "verdict": {
      "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "ruling": "ACCUMULATE",
      "confidence": 0.70,
      "agentVotes": {
        "NETWORK_SENTINEL": {"ruling": "BUY", "confidence": 0.74},
        "MACRO_SAGE": {"ruling": "HOLD", "confidence": 0.61},
        "ECOSYSTEM_ANALYST": {"ruling": "ACCUMULATE", "confidence": 0.69},
        "MOMENTUM_HUNTER": {"ruling": "BUY", "confidence": 0.76},
        "LIQUIDITY_GUARDIAN": {"ruling": "ACCUMULATE", "confidence": 0.65},
        "RISK_WARDEN": {"ruling": "ACCUMULATE", "confidence": 0.63}
      },
      "chiefRationale": "Solana network TPS healthy at 3,200. MACRO_SAGE cautious on rising DXY. ECOSYSTEM_ANALYST confirms rising DeFi TVL and low memecoin euphoria -- early-cycle accumulation setup. Confidence trimmed to 0.70 reflecting macro uncertainty.",
      "plainExplanation": "The council turned cautious because Solana network health is steady but momentum has cooled and broader risk appetite is fading. With no strong bullish edge, the council preferred to wait rather than open new exposure.",
      "snapshotSignals": {
        "sol_price": 89.4,
        "rsi_1h": 52.1,
        "ema_200": 85.2,
        "sol_network_tps": 3200.0,
        "sol_defi_tvl_trend": 0.028,
        "sol_staking_participation": 0.72
      },
      "createdAt": "2026-05-06T08:30:00+00:00"
    },
    "nextRefreshMinutes": 30
  }
  ```
</ResponseExample>


## OpenAPI

````yaml GET /v1/sol/council
openapi: 3.1.0
info:
  title: AIOKA Intelligence API
  description: |

    ## AI-powered crypto market intelligence

    AIOKA Intelligence API provides real-time access to our AI Council verdicts,
    market signals, regime detection, and Ghost Trader entry signals.

    ### Tiers
    - **Free**: 100 calls/day — Verdict + Regime
    - **Basic** ($49/mo): 1,000 calls/day — + Signals
    - **Pro** ($199/mo): 10,000 calls/day — + Council + Ghost

    ### Authentication
    Pass your API key in the `X-API-Key` header:

    ```
    X-API-Key: aik_free_xxxxxxxxxxxx
    ```

    ### Get your API key
    `POST /v1/keys/generate` (free tier, no credit card)
  contact:
    name: AIOKA Support
    url: https://docs.aioka.io/
    email: api@aioka.io
  license:
    name: Commercial
    url: https://aioka.io/terms
  version: 1.0.0
servers:
  - url: https://api.aioka.io
    description: Production — AIOKA Intelligence API
security: []
paths:
  /v1/sol/council:
    get:
      tags:
        - SOL Ghost Trader
      summary: Latest SOL Council Verdict
      description: |-
        Latest SOL Council verdict with full agent breakdown (6 SOL Phase 2
        specialist agents -- NETWORK_SENTINEL, MACRO_SAGE, ECOSYSTEM_ANALYST,
        MOMENTUM_HUNTER, LIQUIDITY_GUARDIAN, RISK_WARDEN), chief rationale,
        and signal snapshot at convene time.

        **Tier:** Pro
        **Cache:** None
        **Rate limit:** 30/min (per tier)
      operationId: get_sol_council_v1_sol_council_get
      responses:
        '200':
          description: SOL council verdict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SOLCouncilResponse'
        '401':
          description: Missing or invalid API key
        '403':
          description: Tier insufficient
      security:
        - APIKeyHeader: []
components:
  schemas:
    SOLCouncilResponse:
      properties:
        verdict:
          anyOf:
            - $ref: '#/components/schemas/SOLCouncilVerdict'
            - type: 'null'
        nextRefreshMinutes:
          type: integer
          title: Nextrefreshminutes
          default: 30
      type: object
      title: SOLCouncilResponse
    SOLCouncilVerdict:
      properties:
        id:
          type: string
          title: Id
        ruling:
          type: string
          title: Ruling
        confidence:
          type: number
          title: Confidence
        agentVotes:
          type: object
          title: Agentvotes
        riskFlags:
          items:
            type: string
          type: array
          title: Riskflags
        chiefRationale:
          anyOf:
            - type: string
            - type: 'null'
          title: Chiefrationale
        snapshotSignals:
          type: object
          title: Snapshotsignals
        plainExplanation:
          anyOf:
            - type: string
            - type: 'null'
          title: Plainexplanation
        createdAt:
          type: string
          format: date-time
          title: Createdat
      type: object
      required:
        - id
        - ruling
        - confidence
        - createdAt
      title: SOLCouncilVerdict
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      description: 'Your AIOKA Intelligence API key (format: aik_{tier}_{random})'
      in: header
      name: X-API-Key

````