# Hidden stems (Cang Gan)

`POST https://api.astroway.info/v1/bazi/hidden-stems`

The one to three stems each branch shelters, with role and weight. This is where most of a chart's elements live: a chart with no visible Water can still be soaked in it. On the four storage branches the middle role belongs to the stored element, not to the second in the list.

Group: BaZi (Four Pillars). Auth: `X-Api-Key` header. Operation ID: `bazi_hidden-stems`.

## Request body

| Field | Type | Required | Description |
|---|---|---|---|
| `date` | string | yes |  |
| `time` | string | no |  |
| `timezoneOffset` | number | no |  |
| `longitude` | number | no |  |
| `trueSolarTime` | boolean | no |  |
| `stageSchool` | "classical" \| "unified" | no |  |
| `includeFullTable` | boolean | no |  |
| `language` | string | no |  |

```json
{
  "date": "1990-05-15",
  "time": "14:30:00",
  "timezoneOffset": 8
}
```

## Responses

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

### Success fields, under `data`

| Field | Type | Required | Description |
|---|---|---|---|
| `solarYear` | number | no |  |
| `pillars` | object[] | no |  |
| `weighting` | string | no |  |
| `notes` | object[] | no |  |
| `methodology` | string | no |  |
| `source` | string | no |  |
| `disclaimer` | string | no |  |

## Example

```bash
curl -X POST https://api.astroway.info/v1/bazi/hidden-stems \
  -H "X-Api-Key: aw_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "date": "1990-05-15", "time": "14:30:00", "timezoneOffset": 8 }'
```

---

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