---
title: "Get dataset metadata"
method: GET
path: "/meta"
tags: ["Metadata"]
---

# Get dataset metadata

`GET /meta`

## Request

- Base URL: `https://api.rateapi.dev`
- URL: `https://api.rateapi.dev/meta`
- Auth: API key in header `X-API-Key`

Returns metadata about the mortgage rates dataset including:
- When the data was last updated
- Total number of rates in the dataset
- Available product types (e.g., "30-Year Fixed", "15-Year Fixed", "5/1 ARM")
- Available institutions (credit unions)
- Min/max ranges for rate, APR, and points

Use this endpoint to discover what data is available before querying `/v1/decisions` for personalized recommendations.

**Authentication required**: Pass your API key in the `X-API-Key` header.

## Response `200`

Dataset metadata retrieved successfully

- MetaResponse: Corpus-level summary of the served rate book: when it was generated, how many rates it holds, which product types and institutions are represented, and the observed rate/APR ranges.
  - `generatedAt` string, date-time, required: ISO 8601 timestamp when the dataset was last generated/updated
  - `count` integer, required: Total number of mortgage rates in the complete dataset
  - `productTypes` string[], required: Sorted list of all unique product types available in the dataset. Use these values for the productType filter.
  - `institutions` string[], required: Sorted list of all institutions (credit unions) in the dataset. Use these values for the institution filter.
  - `ranges` object, required: Min/max ranges for numeric fields across the entire dataset. Useful for setting UI slider bounds or validating filters.
    - `rate` NumericRange, required: Observed minimum and maximum of a numeric field across the served corpus.
      - `min` number, float, nullable, required: Minimum value in the dataset (null if dataset is empty)
      - `max` number, float, nullable, required: Maximum value in the dataset (null if dataset is empty)
    - `apr` NumericRange, required: Observed minimum and maximum of a numeric field across the served corpus.
      - `min` number, float, nullable, required: Minimum value in the dataset (null if dataset is empty)
      - `max` number, float, nullable, required: Maximum value in the dataset (null if dataset is empty)
    - `points` NumericRange, required: Observed minimum and maximum of a numeric field across the served corpus.
      - `min` number, float, nullable, required: Minimum value in the dataset (null if dataset is empty)
      - `max` number, float, nullable, required: Maximum value in the dataset (null if dataset is empty)

## Other responses

- `401`: Missing or invalid API key
- `404`: Route not found
- `405`: Method not allowed - only GET requests are supported for this endpoint
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/rateapi/apis/rate-api.md) · [All operations](https://skmtc.dev/rateapi/apis/rate-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rateapi/apis/rate-api/revisions/06a6db76995f?raw)
