---
title: "Register an oracle provider"
method: POST
path: "/v1/oracle/providers"
tags: ["Oracle"]
---

# Register an oracle provider

`POST /v1/oracle/providers`

## Request

- Base URL: `https://origin.predictasiax.com`
- URL: `https://origin.predictasiax.com/v1/oracle/providers`
- Auth: API key in header `X-API-Key`

Requires an api-key with the oracle:write scope. Registers a provider owned by the authenticated user.

## Request body

- RegisterProviderRequest
  - `display_name` string, required: Human-readable provider name (1-80 chars, no control characters).
  - `adapter_kind` 'feed' | 'official_source' | 'regional_data' | 'manual', required

## Response `201`

Provider created.

- OracleProvider: An oracle attestation provider (resolver) registered by a platform user.
  - `id` string
  - `user_id` string
  - `display_name` string
  - `adapter_kind` 'feed' | 'official_source' | 'regional_data' | 'manual'
  - `status` string
  - `staked_pax` string: Decimal string with up to 6 fractional digits
  - `attestations_total` integer
  - `disputed_total` integer
  - `slashed_total` integer
  - `rewards_pax` string: Decimal string with up to 6 fractional digits
  - `created_at` string, date-time, nullable
  - `updated_at` string, date-time, nullable

## Other responses

- `400`: Invalid display_name or adapter_kind.
- `401`: Missing or invalid api-key.
- `403`: Key lacks the oracle:write scope.

---

[API](https://skmtc.dev/predictasiax/apis/predictasiax-network-api.md) · [All operations](https://skmtc.dev/predictasiax/apis/predictasiax-network-api/llms.txt) · [OpenAPI document](https://skmtc.dev/predictasiax/apis/predictasiax-network-api/revisions/c2ed1a03ce79?raw)
