FactorGuide Navigate API
The Navigate API from FactorGuide — 1 operation(s) for navigate.
The Navigate API from FactorGuide — 1 operation(s) for navigate.
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/factorguide-io:factorguide-io-navigate-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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: FactorGuide Navigate API
version: 1.2.1
tags:
- name: Navigate
paths:
/navigate:
post:
summary: Navigate
description: 'POST /navigate — primary navigation endpoint.
State machine per spec §8.6.1.2:
- X-Wallet valid → paid path (svc.navigate)
- X-Wallet malformed → 400 INVALID_WALLET (no rate-limit charge)
- No X-Wallet, valid MPP token → paid path (wallet derived)
- No X-Wallet, malformed/no MPP → assessment path'
operationId: navigate_navigate_post
parameters:
- name: x-wallet
in: header
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: X-Wallet
- name: x-forwarded-for
in: header
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: X-Forwarded-For
- name: authorization
in: header
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Authorization
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/NavigateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/NavigateResponse'
'400':
description: Invalid wallet or request
'402':
description: Payment required
'422':
description: Validation error
'429':
description: Rate limit exceeded
tags:
- Navigate
components:
schemas:
CorrelationMatrixInput:
properties:
correlation_matrix:
items:
items:
type: number
type: array
type: array
title: Correlation Matrix
type: object
required:
- correlation_matrix
title: CorrelationMatrixInput
EdgeListInput:
properties:
edge_list:
items: {}
type: array
title: Edge List
n:
type: integer
minimum: 2.0
title: N
type: object
required:
- edge_list
- n
title: EdgeListInput
ConditionNumberAction:
type: string
enum:
- normal
- caution
- warning
- reject
- not_applicable
title: ConditionNumberAction
CostModel:
type: string
enum:
- cubic
- quadratic
- linear
- information_cost
title: CostModel
InputValidation:
properties:
matrix_symmetric:
type: boolean
title: Matrix Symmetric
positive_definite:
type: boolean
title: Positive Definite
condition_number:
anyOf:
- type: number
- type: 'null'
title: Condition Number
condition_number_action:
$ref: '#/components/schemas/ConditionNumberAction'
noise_floor:
type: number
title: Noise Floor
pairs_below_noise_floor:
type: integer
title: Pairs Below Noise Floor
effective_rank:
type: integer
title: Effective Rank
shrinkage_applied:
type: boolean
title: Shrinkage Applied
precision_estimation_method:
type: string
title: Precision Estimation Method
aspect_ratio:
type: number
title: Aspect Ratio
aspect_ratio_reliability:
type: string
title: Aspect Ratio Reliability
variance_data_available:
type: boolean
title: Variance Data Available
variance_ratio:
anyOf:
- type: number
- type: 'null'
title: Variance Ratio
variance_ratio_action:
anyOf:
- type: string
- type: 'null'
title: Variance Ratio Action
warnings:
items:
type: string
type: array
title: Warnings
type: object
required:
- matrix_symmetric
- positive_definite
- condition_number_action
- noise_floor
- pairs_below_noise_floor
- effective_rank
- shrinkage_applied
- precision_estimation_method
- aspect_ratio
- aspect_ratio_reliability
- variance_data_available
title: InputValidation
SynergyStage1:
properties:
status:
type: string
title: Status
note:
type: string
title: Note
candidate_triples:
items:
additionalProperties: true
type: object
type: array
title: Candidate Triples
type: object
required:
- status
- note
title: SynergyStage1
IfYouWantBetter:
properties:
missing:
items:
type: string
type: array
title: Missing
would_improve:
items:
type: string
type: array
title: Would Improve
observational_cost_guidance:
anyOf:
- $ref: '#/components/schemas/ObservationalCostGuidance'
- type: 'null'
type: object
title: IfYouWantBetter
ObservationalUpgrade:
properties:
capability:
type: string
title: Capability
relative_cost:
anyOf:
- type: number
- type: string
title: Relative Cost
requires:
anyOf:
- type: string
- type: 'null'
title: Requires
availability:
anyOf:
- type: string
- type: 'null'
title: Availability
pairs_where_nearly_free:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Pairs Where Nearly Free
pairs_with_free_sign:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Pairs With Free Sign
note:
anyOf:
- type: string
- type: 'null'
title: Note
type: object
required:
- capability
- relative_cost
title: ObservationalUpgrade
WhatIfAnalysis:
properties:
fully_independent:
$ref: '#/components/schemas/WhatIfScenario'
preserve_zone3_only:
$ref: '#/components/schemas/WhatIfScenario'
recommended:
$ref: '#/components/schemas/WhatIfScenario'
type: object
required:
- fully_independent
- preserve_zone3_only
- recommended
title: WhatIfAnalysis
ConfidenceLevel:
type: string
enum:
- high
- medium
- low
- extrapolated
- unavailable
title: ConfidenceLevel
SeveredPairCost:
properties:
i:
type: string
title: I
j:
type: string
title: J
ic:
type: number
title: Ic
V_ic:
type: number
title: V Ic
conditional_information_lost_nats:
type: number
title: Conditional Information Lost Nats
type: object
required:
- i
- j
- ic
- V_ic
- conditional_information_lost_nats
title: SeveredPairCost
StabilizerSummary:
properties:
n_variables:
type: integer
title: N Variables
n_pairs:
type: integer
title: N Pairs
ic_distribution:
additionalProperties:
type: number
type: object
title: Ic Distribution
coupling_regime:
type: string
title: Coupling Regime
connectivity_profile:
type: string
title: Connectivity Profile
total_cost_nats:
type: number
title: Total Cost Nats
mean_cost_per_pair_nats:
type: number
title: Mean Cost Per Pair Nats
noise_floor:
type: number
title: Noise Floor
effective_rank:
type: integer
title: Effective Rank
zone_distribution:
additionalProperties:
type: integer
type: object
title: Zone Distribution
note:
type: string
title: Note
type: object
required:
- n_variables
- n_pairs
- ic_distribution
- coupling_regime
- connectivity_profile
- total_cost_nats
- mean_cost_per_pair_nats
- noise_floor
- effective_rank
- zone_distribution
- note
title: StabilizerSummary
CCAsymmetry:
properties:
status:
type: string
title: Status
available_in:
anyOf:
- type: string
- type: 'null'
title: Available In
note:
anyOf:
- type: string
- type: 'null'
title: Note
pairs:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Pairs
type: object
required:
- status
title: CCAsymmetry
description: 'CC (cross-coupling) asymmetry output for control-theory tasks.
When ``status`` is ``reserved``, the implementation has not yet populated
per-pair leverage; the field still exists so agents can introspect the
future shape without seeing a bare ``null``. When ``status`` is
``populated``, ``pairs`` holds per-pair CC² = IC² estimates derived from
the covariance input (wave-mechanics identity, v1.1 §8.3).'
Confidence:
properties:
overall:
$ref: '#/components/schemas/ConfidenceLevel'
coupling_quality:
type: string
title: Coupling Quality
calibration_match:
type: string
title: Calibration Match
precision_estimation:
type: string
title: Precision Estimation
nonlinearity_check:
type: string
title: Nonlinearity Check
definite_fraction:
type: number
title: Definite Fraction
extrapolation_distance:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Extrapolation Distance
type: object
required:
- overall
- coupling_quality
- calibration_match
- precision_estimation
- nonlinearity_check
- definite_fraction
title: Confidence
DistributionDiagnostics:
properties:
excess_kurtosis:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Excess Kurtosis
skewness:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Skewness
spearman_rank_correlation:
anyOf:
- items:
items:
type: number
type: array
type: array
- type: 'null'
title: Spearman Rank Correlation
type: object
title: DistributionDiagnostics
RecommendedStrategy:
properties:
blocks:
items:
$ref: '#/components/schemas/Block'
type: array
title: Blocks
independent_variables:
items:
type: string
type: array
title: Independent Variables
total_cost:
type: number
title: Total Cost
full_structured_cost:
type: number
title: Full Structured Cost
cost_ratio:
type: number
title: Cost Ratio
fidelity_preserved:
type: number
title: Fidelity Preserved
predicted_mse_overhead:
type: number
title: Predicted Mse Overhead
severed_pair_costs:
items:
$ref: '#/components/schemas/SeveredPairCost'
type: array
title: Severed Pair Costs
preserved_edges:
items:
$ref: '#/components/schemas/PreservedEdge'
type: array
title: Preserved Edges
severed_edges:
items:
$ref: '#/components/schemas/SeveredEdge'
type: array
title: Severed Edges
severance_priority:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Severance Priority
zone2_triage:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Zone2 Triage
type: object
required:
- blocks
- total_cost
- full_structured_cost
- cost_ratio
- fidelity_preserved
- predicted_mse_overhead
title: RecommendedStrategy
Block:
properties:
variables:
items:
type: string
type: array
title: Variables
max_internal_ic:
type: number
title: Max Internal Ic
min_internal_ic:
anyOf:
- type: number
- type: 'null'
title: Min Internal Ic
cost:
type: number
title: Cost
cost_model:
type: string
title: Cost Model
reason:
type: string
title: Reason
information_cost_nats:
type: number
title: Information Cost Nats
type: object
required:
- variables
- max_internal_ic
- cost
- cost_model
- reason
- information_cost_nats
title: Block
ObservationalCostGuidance:
properties:
note:
type: string
title: Note
current_capability:
type: string
title: Current Capability
current_relative_cost:
type: number
title: Current Relative Cost
upgrades:
items:
$ref: '#/components/schemas/ObservationalUpgrade'
type: array
title: Upgrades
type: object
required:
- note
- current_capability
- current_relative_cost
title: ObservationalCostGuidance
DipoleAnalysis:
properties:
model_class_used:
type: string
title: Model Class Used
role_function:
type: string
title: Role Function
risk_curve:
type: string
title: Risk Curve
equilibrium_ic:
type: number
title: Equilibrium Ic
equilibrium_regime:
type: string
title: Equilibrium Regime
equilibrium_note:
type: string
title: Equilibrium Note
zone_boundaries:
additionalProperties:
type: number
type: object
title: Zone Boundaries
pair_classification:
items:
$ref: '#/components/schemas/PairClassificationEntry'
type: array
title: Pair Classification
type: object
required:
- model_class_used
- role_function
- risk_curve
- equilibrium_ic
- equilibrium_regime
- equilibrium_note
- zone_boundaries
- pair_classification
title: DipoleAnalysis
PreservedEdge:
properties:
i:
type: string
title: I
j:
type: string
title: J
ic:
type: number
title: Ic
zone:
type: integer
title: Zone
type: object
required:
- i
- j
- ic
- zone
title: PreservedEdge
OutcomeCallback:
properties:
prediction_hash:
type: string
title: Prediction Hash
report_template:
$ref: '#/components/schemas/ReportTemplate'
tool:
type: string
title: Tool
default: factorguide_report_outcome
note:
type: string
title: Note
default: ''
type: object
required:
- prediction_hash
- report_template
title: OutcomeCallback
DetectionCostClass:
type: string
enum:
- free
- cheap
- marginal
- expensive
title: DetectionCostClass
ModelClass:
type: string
enum:
- filtering
- hierarchical
- deep_hierarchy
- graphical_model
- gp
- vae
- unknown
- constitutive
- inductive
title: ModelClass
CovarianceMatrixInput:
properties:
covariance_matrix:
items:
items:
type: number
type: array
type: array
title: Covariance Matrix
type: object
required:
- covariance_matrix
title: CovarianceMatrixInput
SignDetectability:
properties:
available:
type: boolean
title: Available
note:
anyOf:
- type: string
- type: 'null'
title: Note
reason:
anyOf:
- type: string
- type: 'null'
title: Reason
pairs:
items:
$ref: '#/components/schemas/SignDetectabilityPair'
type: array
title: Pairs
type: object
required:
- available
title: SignDetectability
NavigateRequest:
properties:
coupling:
anyOf:
- $ref: '#/components/schemas/PrecisionMatrixInput'
- $ref: '#/components/schemas/CorrelationMatrixInput'
- $ref: '#/components/schemas/CovarianceMatrixInput'
- $ref: '#/components/schemas/EdgeListInput'
title: Coupling
sample_size:
type: integer
minimum: 10.0
title: Sample Size
model_class:
$ref: '#/components/schemas/ModelClass'
default: unknown
accuracy_target:
type: number
maximum: 7.0
exclusiveMinimum: 1.0
title: Accuracy Target
default: 2.0
compute_budget:
anyOf:
- type: number
- type: string
const: minimize
title: Compute Budget
default: minimize
cost_model:
$ref: '#/components/schemas/CostModel'
default: cubic
variable_names:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Variable Names
synergy_check:
type: boolean
title: Synergy Check
default: false
report_marginal_ic:
type: boolean
title: Report Marginal Ic
default: false
report_sign_detectability:
type: boolean
title: Report Sign Detectability
default: false
task_type:
$ref: '#/components/schemas/TaskType'
default: inference
distribution_diagnostics:
anyOf:
- $ref: '#/components/schemas/DistributionDiagnostics'
- type: 'null'
encoding_label:
anyOf:
- type: string
maxLength: 128
- type: 'null'
title: Encoding Label
type: object
required:
- coupling
- sample_size
title: NavigateRequest
SynergyAnalysis:
properties:
method:
type: string
title: Method
default: two_stage_protocol
stage_1_ic2:
$ref: '#/components/schemas/SynergyStage1'
stage_2_ic_int:
type: string
title: Stage 2 Ic Int
default: deferred (requires Walsh-Hadamard over truth table)
synergy_candidate:
type: boolean
title: Synergy Candidate
default: false
mediation_triples:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Mediation Triples
type: object
required:
- stage_1_ic2
title: SynergyAnalysis
description: 'Stage-1 synergy detection summary (IC₂ pairwise heuristic).
Full Walsh-Hadamard IC₃ is deferred; this field surfaces candidate
triples from the precision matrix where every pairwise |IC| is below
the noise floor but the marginal-conditional divergence is high,
flagging regions of the coupling graph that may carry higher-order
structure invisible to pairwise analysis.'
WhatIfScenario:
properties:
total_information_cost_nats:
type: number
title: Total Information Cost Nats
predicted_mse_overhead:
anyOf:
- type: number
- type: 'null'
title: Predicted Mse Overhead
pairs_severed:
type: integer
title: Pairs Severed
type: object
required:
- total_information_cost_nats
- pairs_severed
title: WhatIfScenario
NavigateResponse:
properties:
factorguide_version:
type: string
title: Factorguide Version
default: 1.2.1
response_tier:
type: string
const: paid
title: Response Tier
default: paid
tier:
anyOf:
- type: string
- type: 'null'
title: Tier
request_hash:
type: string
title: Request Hash
timestamp:
type: string
title: Timestamp
theta_version:
anyOf:
- type: string
- type: 'null'
title: Theta Version
input_validation:
$ref: '#/components/schemas/InputValidation'
coupling_diagnostics:
$ref: '#/components/schemas/CouplingDiagnostics'
dipole_analysis:
$ref: '#/components/schemas/DipoleAnalysis'
sign_detectability:
anyOf:
- $ref: '#/components/schemas/SignDetectability'
- type: 'null'
cc_asymmetry:
anyOf:
- $ref: '#/components/schemas/CCAsymmetry'
- type: 'null'
synergy:
anyOf:
- $ref: '#/components/schemas/SynergyAnalysis'
- type: 'null'
recommended_strategy:
$ref: '#/components/schemas/RecommendedStrategy'
what_if:
anyOf:
- $ref: '#/components/schemas/WhatIfAnalysis'
- type: 'null'
confidence:
$ref: '#/components/schemas/Confidence'
prediction:
$ref: '#/components/schemas/Prediction'
if_you_want_better:
$ref: '#/components/schemas/IfYouWantBetter'
spectral_summary:
anyOf:
- $ref: '#/components/schemas/SpectralSummary'
- type: 'null'
stabilizer_summary:
anyOf:
- $ref: '#/components/schemas/StabilizerSummary'
- type: 'null'
encoding_label:
anyOf:
- type: string
- type: 'null'
title: Encoding Label
reserved_fields_noted:
items:
type: string
type: array
title: Reserved Fields Noted
outcome_callback:
$ref: '#/components/schemas/OutcomeCallback'
type: object
required:
- request_hash
- timestamp
- input_validation
- coupling_diagnostics
- dipole_analysis
- recommended_strategy
- confidence
- prediction
- if_you_want_better
- outcome_callback
title: NavigateResponse
SpectralSummary:
properties:
n_variables:
type: integer
title: N Variables
threshold_used:
type: number
title: Threshold Used
n_edges_above_threshold:
type: integer
title: N Edges Above Threshold
algebraic_connectivity:
type: number
title: Algebraic Connectivity
spectral_gap_ratio:
type: number
title: Spectral Gap Ratio
fiedler_partition:
anyOf:
- items:
items:
type: string
type: array
type: array
- type: 'null'
title: Fiedler Partition
connectivity_class:
type: string
title: Connectivity Class
note:
type: string
title: Note
type: object
required:
- n_variables
- threshold_used
- n_edges_above_threshold
- algebraic_connectivity
- spectral_gap_ratio
- connectivity_class
- note
title: SpectralSummary
ReportTemplate:
properties:
prediction_hash:
type: string
title: Prediction Hash
approach_taken:
anyOf:
- type: string
- type: 'null'
title: Approach Taken
ess_ratio:
anyOf:
- type: number
- type: 'null'
title: Ess Ratio
psis_khat:
anyOf:
- type: number
- type: 'null'
title: Psis Khat
log_lik_gap:
anyOf:
- type: number
- type: 'null'
title: Log Lik Gap
type: object
required:
- prediction_hash
title: ReportTemplate
Prediction:
properties:
predicted_mse_ratio:
type: number
title: Predicted Mse Ratio
confidence_interval_90:
items:
type: number
type: array
title: Confidence Interval 90
falsification_criterion:
type: string
title: Falsification Criterion
prediction_hash:
type: string
title: Prediction Hash
type: object
required:
- predicted_mse_ratio
- confidence_interval_90
- falsification_criterion
- prediction_hash
title: Prediction
SignDetectabilityPair:
properties:
i:
type: string
title: I
j:
type: string
title: J
ic:
type: number
title: Ic
variance_ratio:
type: number
title: Variance Ratio
k_eff:
type: number
title: K Eff
even_odd_gap:
type: number
title: Even Odd Gap
sign_detectable:
type: boolean
title: Sign Detectable
signed_ic:
anyOf:
- type: number
- type: 'null'
title: Signed Ic
detection_cost_class:
$ref: '#/components/schemas/DetectionCostClass'
type: object
required:
- i
- j
- ic
- variance_ratio
- k_eff
- even_odd_gap
- sign_detectable
- detection_cost_class
title: SignDetectabilityPair
CouplingDiagnostics:
properties:
ic_type:
type: string
title: Ic Type
marginal_conditional_divergence:
type: number
title: Marginal Conditional Divergence
divergence_interpretation:
type: string
title: Divergence Interpretation
pairs_with_divergence_gt_0.2:
type: integer
title: Pairs With Divergence Gt 0.2
conditional_independence_fraction:
type: number
title: Conditional Independence Fraction
ic_crit_fraction:
type: number
title: Ic Crit Fraction
type: object
required:
- ic_type
- marginal_conditional_divergence
- divergence_interpretation
- pairs_with_divergence_gt_0.2
- conditional_independence_fraction
- ic_crit_fraction
title: CouplingDiagnostics
SeveredEdge:
properties:
i:
type: string
title: I
j:
type: string
title: J
ic:
type: number
title: Ic
zone:
type: integer
title: Zone
information_cost_nats:
type: number
title: Information Cost Nats
type: object
required:
- i
- j
- ic
- zone
- information_cost_nats
title: SeveredEdge
TaskType:
type: string
enum:
- inference
- control
title: TaskType
PrecisionMatrixInput:
properties:
precision_matrix:
items:
items:
type: number
type: array
type: array
title: Precision Matrix
type: object
required:
- precision_matrix
title: PrecisionMatrixInput
PairClassificationEntry:
properties:
i:
type: string
title: I
j:
type: string
title: J
ic:
type: number
title: Ic
zone:
type: integer
title: Zone
recommendation:
type: string
title: Recommendation
confidence:
type: string
title: Confidence
information_cost_nats:
type: number
title: Information Cost Nats
default: 0.0
mi_nats:
type: number
title: Mi Nats
default: 0.0
model_class_action:
anyOf:
- type: string
- type: 'null'
title: Model Class Action
below_noise_floor:
type: boolean
title: Below Noise Floor
default: false
marginal_ic:
anyOf:
- type: number
- type: 'null'
title: Marginal Ic
marginal_partial_divergence:
anyOf:
- type: number
- type: 'null'
title: Marginal Partial Divergence
coupling_interpretation:
anyOf:
- type: string
- type: 'null'
title: Coupling Interpretation
conditional_contribution:
anyOf:
- type: number
- type: 'null'
title: Conditional Contribution
type: object
required:
- i
- j
- ic
- zone
- recommendation
- confidence
title: PairClassificationEntry