Introduction - Ownera Router APIs

Welcome to the Ownera Router API reference.

The Router APIs are the interface for interacting with the Ownera orchestration layer. They provide a unified way for institutions, platforms, and developers to build SuperApps - applications that orchestrate transactions, custody, payments, and distribution across the global digital assets ecosystem.


API Categories

The Router exposes three categories of APIs:

Application APIs

For SuperApp developers building business applications.

APIProtocolPurposeWhen to Use
Transactional APIREST (/finapi/*)Actions that change stateCreate profiles, submit intents, execute trades, manage certificates
Query APIGraphQL (/oss/query)Read state and relationshipsQuery assets, positions, portfolios, execution plan status, events

Operational APIs

For platform operators and administrators managing Router infrastructure.

APIPurposeExamples
Policy ManagementConfigure trading and compliance policiesGet/set trading policies, validation rules
Workflow ManagementManage execution plans and workflowsCancel workflows, reset stuck executions
Data OperationsImport and reconcile external dataImport external transactions, sync balances
ConfigurationRouter and organization setupOrganization settings, routing rules

Adapter APIs

For infrastructure teams connecting the Router to ledgers and custody systems.

The Router communicates with underlying ledgers and custody providers through adapter interfaces. Each adapter type supports two integration patterns:

PatternDirectionDescriptionWhen to Use
Push APIRouter → AdapterRouter calls the adapter directly via RESTWhen your adapter can expose an HTTP endpoint that the Router can reach
Proxy (Pull) APIAdapter → RouterAdapter polls the Router for pending commands and submits responsesWhen your adapter cannot expose an endpoint (firewall, network constraints) or prefers to pull work

Ledger Adapters - Connect the Router to blockchains, tokenization platforms, and traditional ledgers for asset operations (issuance, transfers, holds, settlements).

Custody Adapters - Connect the Router to key management and custody solutions for account creation, signing operations, and execution plan approvals.

All API categories share the same authentication model.


What You Can Do

With these APIs, your SuperApp can:

Identity & Profiles

  • Create and manage investor (owner) profiles
  • Link investors to custody services and obtain FinIDs
  • Attach compliance certificates (KYC/AML, accreditation)
  • Share profiles across organizations for multi-party workflows

Assets & Intents

  • Create and configure asset profiles
  • Define intents (primary sale, secondary trading, transfers, financing)
  • Enable/disable intent types per asset

Execution & Orchestration

  • Execute against open intents (investments, trades, transfers)
  • Track execution plan status through completion
  • Cancel or reset in-flight executions

Positions & Portfolios

  • Query investor positions and balances
  • Monitor portfolio state across assets and custodians
  • Sync balances with underlying ledgers

Messaging & Documents

  • Send messages between organizations
  • Attach and retrieve documents on certificates


Quick Reference: Common Flows

Onboard an Investor

POST /profiles/owner          → Create investor profile
POST /profiles/owner/{id}/account  → Link to custody (async)
POST /profiles/{id}/certificates   → Add KYC/AML certificates  
POST /profiles/{id}/share          → Share with counterparties

Execute a Primary Sale Investment

GraphQL: Query assets & active intents
POST /tokens/execute          → Execute against intent
GraphQL: Poll execution plan status

Transfer Positions

POST /profiles/asset/intent/transfer           → Create transfer intent
POST /profiles/asset/intent/transfer/execute   → Execute transfer

Authentication

All API requests require JWT bearer token authentication.

  • Tokens are signed with your RSA private key
  • Each token is single-use (new token per request)
  • Tokens expire after 30 seconds

→ See Authorization for full details


Resource ID Format

All resources use a globally unique identifier format:

<organization>:<resource-type>:<uuid>
Type CodeResource
101Owner/Investor profile
102Asset profile
105Intent
106Execution Plan

Example: your-org:101:edc5c2cc-6688-457a-a0f6-1e7aea28d144


Next Steps

Understand the Concepts

Dive into the APIs