AimRank Expert Oracle API
The Expert Oracle API from AimRank — 7 operation(s) for expert oracle.
The Expert Oracle API from AimRank — 7 operation(s) for expert oracle.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/aimrank-io:aimrank-io-expert-oracle-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: AimRank Expert Oracle API
description: Ranking-as-a-Service API — Turn binary comparisons into calibrated rankings with Glicko-2, Bradley-Terry, TrueSkill, and cross-domain transfer learning. Includes webhooks, API keys, RLHF exports, and embeddable widgets.
version: 4.12.0
tags:
- name: Expert Oracle
paths:
/api/v1/experts/queries:
post:
tags:
- Expert Oracle
summary: Submit Query
description: 'Submit a question to the expert pool.
Returns immediately with a query_id + status=''pending''. The agent
polls GET /queries/{id} until status=''answered'' or SLA expires.'
operationId: submit_query_api_v1_experts_queries_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ExpertQueryCreate'
required: true
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ExpertQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/queries/pending:
get:
tags:
- Expert Oracle
summary: List Pending
description: 'Return pending queries the caller is κ-credentialed to answer.
For each candidate query, the caller''s ExpertCredential in its domain
is fetched via get_expert_credential and checked with can_act_as_expert
— only queries in domains where the caller holds at least the
''credentialed'' tier are returned. The caller never sees their own
pending queries (requester_user_id != caller).'
operationId: list_pending_api_v1_experts_queries_pending_get
parameters:
- name: domain_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Domain Id
- name: limit
in: query
required: false
schema:
type: integer
default: 20
title: Limit
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ExpertQueryResponse'
title: Response List Pending Api V1 Experts Queries Pending Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/me/credentials:
get:
tags:
- Expert Oracle
summary: My Credentials
description: The caller's derived expert credential for a domain (console).
operationId: my_credentials_api_v1_experts_me_credentials_get
parameters:
- name: domain_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Domain Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/attestations:
post:
tags:
- Expert Oracle
summary: Create Attestation
description: A credentialed expert records a κ-stamped attestation on a subject.
operationId: create_attestation_api_v1_experts_attestations_post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AttestationCreate'
responses:
'201':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- Expert Oracle
summary: List Attestations
description: List attestations for a subject.
operationId: list_attestations_api_v1_experts_attestations_get
parameters:
- name: subject_type
in: query
required: true
schema:
type: string
title: Subject Type
- name: subject_id
in: query
required: true
schema:
type: string
title: Subject Id
- name: limit
in: query
required: false
schema:
type: integer
default: 50
title: Limit
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/attestations/{attestation_id}/push-to-icomply:
post:
tags:
- Expert Oracle
summary: Push Attestation To Icomply
description: 'Build an EvidenceBundle from the attestation and ship it to iCOMPLY.
Idempotent: re-pushing an already-pushed attestation returns the
stored bundle id without a second call.'
operationId: push_attestation_to_icomply_api_v1_experts_attestations__attestation_id__push_to_icomply_post
parameters:
- name: attestation_id
in: path
required: true
schema:
type: string
title: Attestation Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/queries/{query_id}:
get:
tags:
- Expert Oracle
summary: Get Query
description: 'Poll for the answer to a previously-submitted query.
Side-effect: if ``status=''pending''`` AND the query has expired,
this call flips ``status=''expired''`` so subsequent polls see the
final state without further work.'
operationId: get_query_api_v1_experts_queries__query_id__get
parameters:
- name: query_id
in: path
required: true
schema:
type: string
title: Query Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ExpertQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/experts/queries/{query_id}/answer:
post:
tags:
- Expert Oracle
summary: Answer Query
description: 'An expert posts the answer to a pending query.
Snapshots the expert''s current κ from any prior votes — that
κ stamp is what makes the answer admissible as Annex IV evidence
later. Without it, the answer is hearsay; with it, it''s audit-grade.'
operationId: answer_query_api_v1_experts_queries__query_id__answer_post
parameters:
- name: query_id
in: path
required: true
schema:
type: string
title: Query Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ExpertQueryAnswer'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ExpertQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ExpertQueryResponse:
properties:
id:
type: string
title: Id
domain_id:
anyOf:
- type: string
- type: 'null'
title: Domain Id
question:
type: string
title: Question
context:
anyOf:
- type: string
- type: 'null'
title: Context
sla_tier:
type: string
title: Sla Tier
status:
type: string
title: Status
answer:
anyOf:
- type: string
- type: 'null'
title: Answer
expert_user_id:
anyOf:
- type: string
- type: 'null'
title: Expert User Id
expert_kappa_at_answer:
anyOf:
- type: number
- type: 'null'
title: Expert Kappa At Answer
llm_judge_fallback:
type: boolean
title: Llm Judge Fallback
created_at:
anyOf:
- type: string
- type: 'null'
title: Created At
expires_at:
anyOf:
- type: string
- type: 'null'
title: Expires At
answered_at:
anyOf:
- type: string
- type: 'null'
title: Answered At
type: object
required:
- id
- domain_id
- question
- context
- sla_tier
- status
- answer
- expert_user_id
- expert_kappa_at_answer
- llm_judge_fallback
- created_at
- expires_at
- answered_at
title: ExpertQueryResponse
ExpertQueryCreate:
properties:
question:
type: string
maxLength: 4000
minLength: 3
title: Question
context:
anyOf:
- type: string
maxLength: 8000
- type: 'null'
title: Context
domain_id:
anyOf:
- type: string
maxLength: 36
- type: 'null'
title: Domain Id
sla_tier:
type: string
pattern: ^(cached_llm|async_human|human_panel)$
title: Sla Tier
default: async_human
timeout_seconds:
type: integer
maximum: 86400.0
minimum: 30.0
title: Timeout Seconds
default: 1800
type: object
required:
- question
title: ExpertQueryCreate
AttestationCreate:
properties:
subject_type:
type: string
pattern: ^(ranking|l3_model|expert_query|external_ref)$
title: Subject Type
subject_id:
type: string
maxLength: 255
minLength: 1
title: Subject Id
domain_id:
anyOf:
- type: string
maxLength: 36
- type: 'null'
title: Domain Id
statement:
type: string
maxLength: 8000
minLength: 3
title: Statement
verdict:
type: string
pattern: ^(endorse|flag|reject)$
title: Verdict
type: object
required:
- subject_type
- subject_id
- statement
- verdict
title: AttestationCreate
ExpertQueryAnswer:
properties:
answer:
type: string
maxLength: 8000
minLength: 1
title: Answer
type: object
required:
- answer
title: ExpertQueryAnswer
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
securitySchemes:
APIKeyHeader:
type: apiKey
in: header
name: X-API-Key