Complete crystal database
Returns all 50 crystals in the database sorted alphabetically. Each entry includes chakra associations, elemental correspondences, Vedic and Western planetary assignments, healing properties, origins, affirmations, and safety cautions. Vedic correspondences are strictly separated: 'navaratna' (classical primary gem), 'uparatna' (classical substitute), or 'none_classical' (no Vedic text assigns this stone).
Endpoint
GET /v1/crystals
Request parameters
No fields documented in the OpenAPI schema.
Example request
- curl
- Python
- TypeScript
curl -X GET "https://api.asterwise.com/v1/crystals" \
-H "Authorization: Bearer YOUR_API_KEY"
import asterwise
from asterwise.api.crystals_api import CrystalsApi
configuration = asterwise.Configuration(
host="https://api.asterwise.com",
access_token="YOUR_API_KEY",
)
with asterwise.ApiClient(configuration) as client:
api = CrystalsApi(client)
result = api.crystals_list()
print(result)
import { createClient, createConfig, crystalsList } from 'asterwise';
const client = createClient(createConfig({
baseUrl: 'https://api.asterwise.com',
headers: { Authorization: 'Bearer YOUR_API_KEY' },
}));
const result = await crystalsList({
client,
});
console.log(result.data);
Example response
Response fields
| Field | Type | Description |
|---|---|---|
| success | boolean | True if the request succeeded |
| message | string | Human-readable status message |
| data | object | |
| data.total | integer | Total number of crystals in the database. |
| data.crystals | array[object] | All crystals sorted alphabetically. |
| data.crystals[].slug | string | URL-safe identifier, e.g. 'amethyst', 'blue-sapphire'. |
| data.crystals[].name | string | Display name of the crystal. |
| data.crystals[].colors | array[string] | Primary colours of this crystal. |
| data.crystals[].hardness_mohs | number | Hardness on the Mohs scale (1-10). |
| data.crystals[].chakras | array[string] | Associated chakras. |
| data.crystals[].element | string | Classical element: Earth, Water, Fire, Air, or All. |
| data.crystals[].zodiac_signs | array[string] | Associated Western zodiac signs. |
| data.crystals[].vedic_planet | string | null | Vedic planetary correspondence. Null if no classical Vedic text assigns this stone. |
| data.crystals[].vedic_correspondence | string | 'navaratna' (primary classical gem), 'uparatna' (substitute gem), or 'none_classical' (no Vedic text assigns this stone). |
| data.crystals[].western_planet | string | null | Western metaphysical planetary correspondence. |
| data.crystals[].keywords | array[string] | Primary energy keywords. |
| data.crystals[].healing_physical | string | Physical healing properties. |
| data.crystals[].healing_emotional | string | Emotional healing properties. |
| data.crystals[].healing_spiritual | string | Spiritual healing properties. |
| data.crystals[].description | string | Overview description. |
| data.crystals[].origins | array[string] | Primary geographic origins. |
| data.crystals[].affirmation | string | Affirmation for working with this crystal. |
| data.crystals[].caution | string | null | Important safety or usage cautions. Null if none. |
Errors
| Code | Description | Reference |
|---|---|---|
| authentication_failed | Missing or invalid API key. | authentication_failed |
| ephemeris_unavailable | Upstream ephemeris service error. | ephemeris_unavailable |
| insufficient_tier | API key tier does not include this endpoint. | insufficient_tier |
| internal_error | Unexpected server error. | internal_error |
| ip_rate_limit_exceeded | Too many requests in a short window. | ip_rate_limit_exceeded |
| payload_too_large | Request body exceeds the size limit. | payload_too_large |
| resource_not_found | Referenced resource was not found. | resource_not_found |
| validation_error | Request body failed schema validation. | validation_error |