Skip to documentation
Weavers Docs

Pages and endpoints

Tab to navigate · Enter to openEsc to close

GET /api/niches/:nicheKey

Public access · HTTP API reference

All endpoints · Authentication and retries · Download OpenAPI

Request

ParameterLocationType and requirement
nicheKeypathstring · required
sortquery"sample_depth" | "deflated_sharpe" | "raw_sharpe" | "paper_consistency" | "certified_at" · optional
directionquery"asc" | "desc" · optional

No request body.

Example

Examples use fictional data. Replace identifiers with resources you can access. For account requests, cookies.txt must contain your own session; set CSRF_TOKEN to the matching CSRF cookie value where required.

cURL (POSIX shell)
curl --include \
  --request GET \
  'https://api.weavers.app/api/niches/example'

Responses

200 · Successful response.

application/json

200 example · synthetic data
{
  "niche": {
    "nicheId": 1,
    "nicheKey": null,
    "displayName": "Example research",
    "source": "example",
    "visibility": "example",
    "targetRegime": null,
    "membershipKind": "static",
    "assetType": null,
    "countryCode": null,
    "exchange": null,
    "certifiedCount": 1,
    "liveCount": 1,
    "medianDailyDollarVolume": null,
    "realizedVolatility": null,
    "crossSectionalDispersion": null,
    "historyDepthDays": null,
    "pricedConstituentCount": null,
    "metricsAsOfDate": null,
    "themeTags": [],
    "description": null,
    "certifiedDefinition": "example",
    "sort": {
      "key": "sample_depth",
      "direction": "asc"
    },
    "certifiedStrategies": [],
    "reference": null
  }
}
View response model
niche required · object
View niche model
nicheId required · number
nicheKey required · null | string
View nicheKey model
Variant 1: null

null

Variant 2: string

string

displayName required · string
source required · string
visibility required · string
targetRegime required · null | string
View targetRegime model
Variant 1: null

null

Variant 2: string

string

membershipKind required · "static" | "channel_episode"
assetType required · null | string
View assetType model
Variant 1: null

null

Variant 2: string

string

countryCode required · null | string
View countryCode model
Variant 1: null

null

Variant 2: string

string

exchange required · null | string
View exchange model
Variant 1: null

null

Variant 2: string

string

certifiedCount required · number
liveCount required · number
medianDailyDollarVolume required · null | number
View medianDailyDollarVolume model
Variant 1: null

null

Variant 2: number

number

realizedVolatility required · null | number
View realizedVolatility model
Variant 1: null

null

Variant 2: number

number

crossSectionalDispersion required · null | number
View crossSectionalDispersion model
Variant 1: null

null

Variant 2: number

number

historyDepthDays required · null | number
View historyDepthDays model
Variant 1: null

null

Variant 2: number

number

pricedConstituentCount required · null | number
View pricedConstituentCount model
Variant 1: null

null

Variant 2: number

number

metricsAsOfDate required · null | string
View metricsAsOfDate model
Variant 1: null

null

Variant 2: string

string

themeTags required · array of string
View themeTags model

Array items:

string

description required · null | string
View description model
Variant 1: null

null

Variant 2: string

string

certifiedDefinition required · string
sort required · object
View sort model
key required · "sample_depth" | "deflated_sharpe" | "raw_sharpe" | "paper_consistency" | "certified_at"
direction required · "asc" | "desc"

Additional fields: JSON values.

certifiedStrategies required · array of object
View certifiedStrategies model

Array items:

strategyRegistryId required · number
strategyId required · null | string
View strategyId model
Variant 1: null

null

Variant 2: string

string

alias required · null | string
View alias model
Variant 1: null

null

Variant 2: string

string

displayName required · string
artifactId required · null | number
View artifactId model
Variant 1: null

null

Variant 2: number

number

lifecycleStatus required · null | string
View lifecycleStatus model
Variant 1: null

null

Variant 2: string

string

lifecycle required · null | "live" | "stress_testing" | "stress_failed" | "paper_active" | "paper_failed" | "retired" | "experimental"
View lifecycle model
Variant 1: null

null

Variant 2: "live"

"live"

Variant 3: "stress_testing"

"stress_testing"

Variant 4: "stress_failed"

"stress_failed"

Variant 5: "paper_active"

"paper_active"

Variant 6: "paper_failed"

"paper_failed"

Variant 7: "retired"

"retired"

Variant 8: "experimental"

"experimental"

certifiedAt required · string
evidence required · object
View evidence model
sampleDepth required · object
View sampleDepth model
state required · "available" | "not_yet_available"
reason required · null | string
View reason model
Variant 1: null

null

Variant 2: string

string

payload required · object
View payload model

Additional fields: JSON value.

Additional fields: JSON values.

deflatedSharpe required · object
View deflatedSharpe model
state required · "available" | "not_yet_available"
reason required · null | string
View reason model
Variant 1: null

null

Variant 2: string

string

payload required · object
View payload model

Additional fields: JSON value.

Additional fields: JSON values.

paperConsistency required · object
View paperConsistency model
state required · "available" | "not_yet_available"
reason required · null | string
View reason model
Variant 1: null

null

Variant 2: string

string

payload required · object
View payload model

Additional fields: JSON value.

Additional fields: JSON values.

Additional fields: JSON values.

disclosure required · object
View disclosure model
rawSharpe required · null | number
View rawSharpe model
Variant 1: null

null

Variant 2: number

number

trialCount required · null | number
View trialCount model
Variant 1: null

null

Variant 2: number

number

Additional fields: JSON values.

limitations required · array of string
View limitations model

Array items:

string

sortKeyMissing required · boolean

Additional fields: JSON values.

reference required · null | object
View reference model
Variant 1: null

null

Variant 2: object
label required · "Reference for comparison"
benchmarkSymbol required · string
annualisedSharpe required · null | number
View annualisedSharpe model
Variant 1: null

null

Variant 2: number

number

totalReturn required · null | number
View totalReturn model
Variant 1: null

null

Variant 2: number

number

windowStartDay required · null | string
View windowStartDay model
Variant 1: null

null

Variant 2: string

string

windowEndDay required · null | string
View windowEndDay model
Variant 1: null

null

Variant 2: string

string

Additional fields: JSON values.

Additional fields: JSON values.

Additional fields: JSON values.

400 · Invalid request.

application/json

400 example · synthetic data
{
  "error": "niche_key_required"
}
View response model
Variant 1: object
error required · "niche_key_required" | "invalid_niche_key"

Additional fields: JSON values.

Variant 2: object
error required · string
allowed required · array of "sample_depth" | "deflated_sharpe" | "raw_sharpe" | "paper_consistency" | "certified_at"
View allowed model

Array items:

Variant 1: "sample_depth"

"sample_depth"

Variant 2: "deflated_sharpe"

"deflated_sharpe"

Variant 3: "raw_sharpe"

"raw_sharpe"

Variant 4: "paper_consistency"

"paper_consistency"

Variant 5: "certified_at"

"certified_at"

Additional fields: JSON values.

Variant 3: object
error required · string
allowed required · array of "asc" | "desc"
View allowed model

Array items:

Variant 1: "asc"

"asc"

Variant 2: "desc"

"desc"

Additional fields: JSON values.

404 · Resource or enabled capability not found.

application/json

404 example · synthetic data
{
  "error": "example"
}
View response model
error required · string

Additional fields: JSON values.

429 · Rate limit reached; honor Retry-After when supplied.

application/json

429 example · synthetic data
{}
View response model

Error envelopes can include resource-specific details. Check the status before reading these fields.

error optional · string
code optional · string
message optional · string

Additional fields: JSON values.

500 · Server failure.

application/json

500 example · synthetic data
{
  "error": "example"
}
View response model
error required · string

Additional fields: JSON values.