# Generate Muhurta Report (PDF or HTML)

`POST https://api.astroway.info/v1/reports/muhurta`

Render a standard A4 report of the most auspicious dates for a chosen activity over a search window. Same window-scan engine as /vedic/muhurat/*: it scores each day by sunrise Panchang (Tithi/Vara/Nakshatra/Yoga/Karana) per Muhurta Chintamani + B.V.Raman, and lists ranked days with per-day Abhijit Muhurat and the scoring factors as the rationale. `activity` is one of the 12 from /muhurta/types. PDF default; ?format=html returns HTML.

Group: Reports. Auth: `X-Api-Key` header. Operation ID: `reports_muhurta`.

## Parameters

| Name | In | Required | Type | Description |
|---|---|---|---|---|
| `fields` | query | no | string | Comma-separated dotted paths, relative to `data`, to keep in the response. A path is applied to every element of an array, so `planets.name` means the name of each planet. Paths that match nothing come back in `_fields_unmatched`; a list where nothing matches at all is a 400, because an empty object would be a confident wrong answer. |
| `precision` | query | no | integer | Round every non-integer number in the response to this many decimal places. Integers are left alone, because an id is not a measurement. Ecliptic longitudes ship with fourteen decimals by default; 2 is about a tenth of an arcminute. |

## Request body

| Field | Type | Required | Description |
|---|---|---|---|
| `activity` | "marriage" \| "vehicle-purchase" \| "business-start" \| "travel" \| "naming-ceremony" \| "surgery" \| "education-start" \| "investment" \| … | yes |  |
| `search_window_start` | string | yes |  |
| `search_window_end` | string | no |  |
| `latitude` | number | yes |  |
| `longitude` | number | yes |  |
| `timezoneOffset` | number | no | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. |
| `ayanamsaId` | number | no |  |
| `ayanamsa` | "fagan-bradley" \| "lahiri" \| "de-luce" \| "raman" \| "krishnamurti" \| "kp" \| "yukteshwar" \| "jn-bhasin" \| … | no | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. |
| `topN` | integer | no |  |
| `language` | "uk" \| "en" \| "de" \| "ru" \| "pl" \| "es" \| "pt" \| "hi" \| … | no |  |
| `whitelabel` | boolean \| object | no |  |

```json
{
  "activity": "marriage",
  "search_window_start": "2026-05-15",
  "search_window_end": "2026-06-15",
  "latitude": 28.61,
  "longitude": 77.21,
  "timezoneOffset": 5.5,
  "topN": 10,
  "language": "en"
}
```

## Responses

| Status | Meaning |
|---|---|
| 200 | Successful calculation |
| 400 | Validation error |
| 401 | Missing or invalid API key |

### Success fields, under `data`

| Field | Type | Required | Description |
|---|---|---|---|
| `url` | string | no |  |
| `storage_key` | string | no |  |
| `byte_length` | number | no |  |
| `page_count` | number | no |  |
| `duration_ms` | number | no |  |
| `expires_at` | string | no |  |

## Example

```bash
curl -X POST https://api.astroway.info/v1/reports/muhurta \
  -H "X-Api-Key: aw_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "activity": "marriage", "search_window_start": "2026-05-15", "search_window_end": "2026-06-15", "latitude": 28.61, "longitude": 77.21, "timezoneOffset": 5.5, "topN": 10, "language": "en" }'
```

---

Rendered from https://api.astroway.info/v1/openapi.json. HTML page: https://api.astroway.info/docs/api/operations/reports_muhurta/
