# MerQube > MerQube is an index technology company that designs, calculates and administers rules-based > investment strategies and custom indices for banks, asset managers and ETF issuers. Its public > REST API covers the IndexAPI (index manifests, target portfolios, identifiers, documents, run > state) and the SecAPI (security metrics, index levels, portfolios, statistics, options pricing). Generated by API Evangelist (https://apievangelist.com) on 2026-08-25 from MerQube's own published artifacts. MerQube does not publish an llms.txt of its own; /llms.txt on merqube.com returns the site's SPA HTML shell and on api.merqube.com returns 404. This file is a faithful index of what MerQube publishes, not a claim made on MerQube's behalf. ## API - [MerQube API (OpenAPI 3.1, info.version 4.40.0)](https://api.merqube.com/api): The link-resolved OpenAPI document, served unauthenticated from the API host itself. 53 paths, 76 operations, 252 component schemas. - [MerQube API (raw, unresolved YAML)](https://api.merqube.com/api-raw): The source document with remote $refs intact. - [Browsable API reference](https://www.merqube.com/api): Redoc rendering of the same spec. - [Documentation portal](https://merqube.stoplight.io/): Stoplight project "MerQube API". - [Authentication](https://merqube.stoplight.io/docs/api/p6s6m4p35ehfv-authentication): The single prose reference - keys, resources, authorization model, Index and TargetPortfolio walkthroughs. - Production base URL: https://api.merqube.com - Testing base URL: https://api.staging.merqube.com (note: the Stoplight copy of the spec still names the older, non-responding https://staging.api.merqube.com) ## Authentication - API key in an `Authorization` header with the literal prefix `APIKEY ` - for example `Authorization: APIKEY {your_api_key}`. Not Bearer. - Keys are human-issued: register at https://merqube.com/register, then email support@merqube.com with the registration address and intended use. A one-time-use link reveals the key once. - Unauthenticated calls are allowed and return only the world-readable `default` namespace, which holds MerQube-branded public indices. Authorization is per namespace, not per object. - The published OpenAPI declares NO securitySchemes, so this cannot be discovered from the contract. ## Conventions - Pagination: `page` (default 1) and `page_size` (default 1000) query parameters. - Filtering and projection: `filter` (substring on name/title), `name`, `names`, `ids`, `namespace`, `fields` (sparse fieldset), `format=csv`, `debug=true`. - Consistency: `prefer_read_replica=false` by default, which keeps reads on the writer and bypasses SecAPI caches for read-after-write consistency. - Envelope: `{results, error_codes, deprecation_warnings, linked_resources}`. `error_codes` carries partial-failure signals on an HTTP 200 - e.g. code 00001 RESULTS_WERE_FILTERED when permissions withheld rows. - Concurrency: every object carries a `status` block that must be supplied on PUT/PATCH; the write is rejected unless it matches storage. There is no Idempotency-Key header. - `status.locked_after` locks an index manifest against edits after a timestamp. - Every response carries an `x-request-id` header (undocumented, but usable for support). - No rate limits are published and no RateLimit-*, X-RateLimit-* or Retry-After header is returned. ## Resources - Index: GET/POST /index, GET/PUT/PATCH/DELETE /index/{uuid} - Index data: /index/{uuid}/portfolio, /portfolio_allocations, /stats, /caps, /run_state, /data_collections, /documents - TargetPortfolio: GET/PUT /index/{uuid}/target_portfolio, GET/PATCH/DELETE /index/{uuid}/target_portfolio/{target_portfolio_uuid} - TargetPortfolioHandler: /target_portfolio_handler, /target_portfolio_handler/{uuid} - Identifier (vendor tickers): /identifier, /identifier/{provider}, /identifier/{provider}/{uuid} - Security (SecAPI): /security, /security/{type}, /security/{type}/{secid}, /security/{type}/metrics, /security/{type}/data, /security/{type}/data/delete - SecurityList: /security_list, /security_list/{uuid} - Options: POST /optionprice, POST /findstrike, GET /options/availability_dates/{fysm_id}/{country_code} - Index templating (renders a manifest without creating it): POST /helper/index-template/*, POST /helper/solver/defined_outcome ## SDK - [merqube-client-lib (Python)](https://pypi.org/project/merqube-client-lib/): first-party, Apache-2.0, version 0.23.2 published 2025-08-05. `pip install merqube-client-lib`. - [Source](https://github.com/merqube/merqube-client-lib) - includes console scripts `create`, `get_example`, `update_portfolio`, and bin/generate_types.sh which regenerates pydantic types from the live OpenAPI. ## Company - [Website](https://merqube.com/) - [Index finder](https://merqube.com/indices) - [Index governance - announcements, consultations, policies](https://merqube.com/governance) - [Support (Salesforce Experience Cloud)](https://support.merqube.com/) - [Contact](https://merqube.com/contact) - support@merqube.com - [FAQs](https://merqube.com/faqs) - [Blog](https://merqube.com/news/blog) - [GitHub](https://github.com/merqube) - [Sign up](https://merqube.com/register) / [Log in](https://merqube.com/login) - [Terms of use](https://merqube.com/terms-of-use) / [Privacy notice](https://merqube.com/privacy-notice) ## Not published MerQube does not publish: a status page, an API changelog, a deprecation or versioning policy, an SLA, pricing or plans, rate limits, OAuth scopes, a webhook or event surface, an AsyncAPI, a GraphQL endpoint, an MCP server, an A2A agent card, a security.txt, a vulnerability-disclosure or bug-bounty program, or a trust center. These were probed on 2026-08-25 and each is recorded as an absence in this repository rather than assumed.