---
updatedAt: 2026-06-02T07:06:18.000Z
agentTools:
  projectIndex: https://docs.bavest.co/llms.txt
---

# API Status

Returns API health status. Use for connectivity checks and uptime monitoring.

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Bavest API",
    "description": "Enterprise-grade REST API for financial market data, analytics, and quantitative portfolio management.\n\n## Categories\n\n| Category | Description |\n|----------|-------------|\n| **Account** | API status and usage quota |\n| **Bulk** | Batch any endpoint across up to 100 symbols/ISINs |\n| **Calendar** | IPO event calendar |\n| **Corporate Actions** | Stock splits, earnings events, transcripts |\n| **Crypto** | Cryptocurrency profiles |\n| **Dividends** | Dividend history, annual summaries, calendar |\n| **Economic Indicators** | Macroeconomic indicators (CPI, GDP, inflation, rates, unemployment) |\n| **Equities** | Company profiles, peers, financial statements, metrics, market cap |\n| **Estimates** | Analyst consensus estimates, recommendations, upgrades/downgrades |\n| **ETFs** | ETF profiles, holdings, sectors, countries, risk, fees, KID |\n| **Forex** | Currency pair quotes and candles |\n| **Funds** | Mutual fund profiles, holdings, sectors, countries, and metrics (NAV, AUM, performance returns) |\n| **News** | Stock-specific and market-wide news |\n| **Bavest QuantOS** | Quantitative portfolio analytics (allocation, stats) |\n| **Reference** | Security search, screener, market indices |\n| **Timeseries Data** | Real-time quotes, end-of-day prices, historical prices, OHLCV candles, NAV |\n| **AI** | MCP server to connect AI agents to all Bavest API endpoints |\n\n## Response Envelope\nAll responses wrap the result in a **data** field.\n\n## Examples\nRequest examples use one security identifier. Clear it before supplying an alternative identifier.\nOptional filters are left blank so that the API's defaults apply; supported values are described beside each parameter.\nResponse examples are snapshots with abbreviated lists, not live quotes. Check each observation's own date for freshness.\n\n## Authentication\nAll requests require an **x-api-key** header. Include it in every request.\n\nKeep your API key secret. Do not expose it in client-side code.\n\n## Rate Limits\nRate limits vary by plan tier. When exceeded, you will receive a 429 Too Many Requests response.\n\n## Versioning\nMajor version in URL path (/v2/). Minor and patch versions are backward-compatible.\n\n## SDKs\nOfficial SDKs are available for Python, TypeScript, and Go.",
    "version": "2.2.0",
    "termsOfService": "https://www.bavest.co/en/legal/terms-of-service",
    "contact": {
      "name": "Bavest API Support",
      "url": "https://bavest.co",
      "email": "support@bavest.co"
    },
    "license": {
      "name": "Proprietary",
      "url": "https://bavest.co/terms"
    },
    "x-logo": {
      "url": "https://bavest.co/logo.png",
      "altText": "Bavest"
    }
  },
  "servers": [
    {
      "url": "https://api.bavest.co",
      "description": "Production API"
    },
    {
      "url": "https://sandbox.api.bavest.co",
      "description": "Sandbox (test data)"
    }
  ],
  "security": [
    {
      "apiKey": []
    }
  ],
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true,
    "samples-languages": [
      "shell",
      "python",
      "javascript",
      "go"
    ],
    "parameter-ordering": [
      "path",
      "query",
      "body",
      "cookie",
      "form",
      "header"
    ],
    "metrics-enabled": true
  },
  "tags": [
    {
      "name": "Account",
      "description": "API health status and usage quota.\n\nUse these endpoints to verify API connectivity and monitor your usage against plan limits."
    }
  ],
  "paths": {
    "/v2/account/status": {
      "get": {
        "operationId": "account.status",
        "summary": "API Status",
        "description": "Returns API health status. Use for connectivity checks and uptime monitoring.",
        "tags": [
          "Account"
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "status": {
                          "type": "string",
                          "enum": [
                            "not_active",
                            "active"
                          ]
                        },
                        "version": {
                          "type": "string",
                          "description": "API version identifier",
                          "example": "v2"
                        }
                      }
                    },
                    "meta": {
                      "$ref": "#/components/schemas/ResponseMeta"
                    }
                  }
                },
                "example": {
                  "data": {
                    "status": "active",
                    "version": "v2"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/Unauthorized"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "429": {
            "$ref": "#/components/responses/RateLimited"
          },
          "500": {
            "$ref": "#/components/responses/InternalServerError"
          },
          "502": {
            "$ref": "#/components/responses/BadGateway"
          },
          "504": {
            "$ref": "#/components/responses/GatewayTimeout"
          },
          "default": {
            "$ref": "#/components/responses/InternalServerError"
          }
        },
        "x-readme": {
          "code-samples": [
            {
              "lang": "shell",
              "label": "cURL",
              "source": "curl -H 'x-api-key: YOUR_API_KEY' https://api.bavest.co/v2/account/status"
            },
            {
              "lang": "python",
              "label": "Python",
              "source": "import requests\n\nresp = requests.get('https://api.bavest.co/v2/account/status',\n    headers={'x-api-key': 'YOUR_API_KEY'})\nprint(resp.json())"
            },
            {
              "lang": "javascript",
              "label": "Node.js",
              "source": "const resp = await fetch('https://api.bavest.co/v2/account/status', {\n  headers: { 'x-api-key': 'YOUR_API_KEY' }\n});\nconsole.log(await resp.json());"
            }
          ]
        },
        "parameters": [
          {
            "$ref": "#/components/parameters/acceptJson"
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication. Obtain from [bavest.co/dashboard](https://bavest.co/dashboard).",
        "x-default": "demo_api_key"
      }
    },
    "parameters": {
      "acceptJson": {
        "name": "Accept",
        "in": "header",
        "required": false,
        "schema": {
          "type": "string",
          "default": "application/json"
        },
        "description": "Response content type. Defaults to `application/json`."
      }
    },
    "responses": {
      "Unauthorized": {
        "description": "Missing or invalid API key.",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Missing Authentication Token",
              "status": "ERROR"
            }
          }
        }
      },
      "NotFound": {
        "description": "Resource not found.",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "The requested security is not found.",
              "status": "ERROR"
            }
          }
        }
      },
      "RateLimited": {
        "description": "Rate limit exceeded. Retry after the `Retry-After` header interval.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Rate limit exceeded. Please retry after cooldown.",
              "status": "ERROR"
            }
          }
        },
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          },
          "Retry-After": {
            "schema": {
              "type": "integer"
            },
            "description": "Seconds until rate limit resets"
          },
          "X-RateLimit-Remaining": {
            "schema": {
              "type": "integer"
            },
            "description": "Remaining requests in current window"
          },
          "X-RateLimit-Limit": {
            "schema": {
              "type": "integer"
            },
            "description": "Maximum requests allowed in current window"
          },
          "X-RateLimit-Reset": {
            "schema": {
              "type": "integer"
            },
            "description": "Unix timestamp when the rate limit window resets"
          }
        }
      },
      "BadRequest": {
        "description": "Invalid request parameters. Returned when required query parameters are missing, have invalid types, or violate constraints (e.g., providing both symbol and isin when they are mutually exclusive).",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Either 'symbol', 'isin', or 'cusip' must be provided.",
              "status": "ERROR"
            }
          }
        }
      },
      "BadGateway": {
        "description": "Upstream data provider returned an error or is temporarily unavailable. Retry after a short delay.",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Upstream data provider is temporarily unavailable. Please retry after a short delay.",
              "status": "ERROR"
            }
          }
        }
      },
      "GatewayTimeout": {
        "description": "The request timed out waiting for a response from the upstream data provider. This may occur for complex queries or during peak load.",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Request timed out waiting for upstream data provider. Consider narrowing your date range or simplifying the query.",
              "status": "ERROR"
            }
          }
        }
      },
      "InternalServerError": {
        "description": "An unexpected error occurred on the server. If the issue persists, contact support with the X-Request-Id header value.",
        "headers": {
          "X-Request-Id": {
            "$ref": "#/components/headers/RequestId"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "message": "Bavest server error.",
              "status": "ERROR"
            }
          }
        }
      }
    },
    "headers": {
      "RequestId": {
        "schema": {
          "type": "string",
          "format": "uuid"
        },
        "description": "Unique request identifier for tracing and debugging. Present on every response.",
        "example": "550e8400-e29b-41d4-a716-446655440000"
      }
    },
    "schemas": {
      "Error": {
        "type": "object",
        "description": "Standard error response.\n\nTwo 404 messages exist and they mean different things. \"The requested\nsecurity is not found.\" means the identifier did not resolve. \"No data\navailable for the requested security.\" means it resolved but has no data\nfor this request.\n",
        "properties": {
          "message": {
            "type": "string",
            "description": "Human-readable error description",
            "example": "No data available for the requested security."
          },
          "status": {
            "type": "string",
            "description": "Error status indicator",
            "example": "ERROR"
          },
          "meta": {
            "$ref": "#/components/schemas/ResponseMeta"
          }
        },
        "required": [
          "message",
          "status"
        ]
      },
      "ResponseMeta": {
        "type": "object",
        "description": "Response envelope metadata. Always present on a 200: `time` is set by\n`core/response.py` on every successful response. Errors carry the same\nblock, built by the same code, so a client parses one meta shape whether\nthe call succeeded or failed.",
        "properties": {
          "time": {
            "type": "integer",
            "description": "Server-side processing time in milliseconds",
            "example": 17
          },
          "parameters": {
            "type": "object",
            "additionalProperties": true,
            "description": "Echo of the request parameters the endpoint resolved",
            "example": {
              "symbol": "AAPL"
            }
          }
        }
      }
    }
  }
}
```