Developer API

Gnosis Lexicon API

Free, open access to a growing corpus of gnostic and esoteric terminology. Built for researchers, developers, and anyone building tools for the study of ancient wisdom traditions.

Base URL

GET https://pleroma.stefansalkimia.com/api/lexicon/public

Authentication

None required. The API is free and open. No API key needed.

Rate Limits

100 requests per hour per IP address. Rate limit headers are included in every response.

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 99
X-RateLimit-Reset: 1712764800
X-License: CC-BY-SA-4.0

Every response also includes an X-License header advertising the CC BY-SA 4.0 license that governs the data — so downstream tooling can detect the license without parsing this page.

Endpoints

GET /api/lexicon/public

Returns a paginated list of all lexicon terms. Supports filtering by pillar, locale, and search query.

Query Parameters

ParameterTypeDefaultDescription
localestring"en"Language: "en" (English) or "bg" (Bulgarian)
pillarstring-Filter by knowledge pillar (e.g. cosmology, alchemy, shadow)
qstring-Search term name (case-insensitive partial match)
limitnumber50Results per page (1-500)
offsetnumber0Pagination offset

Example Request

curl
curl "https://pleroma.stefansalkimia.com/api/lexicon/public?pillar=cosmology&limit=10"

Example Response

JSON
{
  "data": [
    {
      "term": "Archon",
      "slug": "archon",
      "definition": "A cosmic parasitic entity in Gnostic cosmology...",
      "pillar": "cosmology",
      "tradition": "Gnostic",
      "etymology": "Greek: archon — ruler",
      "relatedTerms": [
        "demiurge",
        "sophia"
      ],
      "url": "https://pleroma.stefansalkimia.com/en/lexicon/archon"
    }
  ],
  "meta": {
    "total": 222,
    "limit": 50,
    "offset": 0,
    "locale": "en",
    "hasMore": true
  },
  "attribution": {
    "source": "Pleroma Gnosis Lexicon",
    "url": "https://pleroma.stefansalkimia.com",
    "license": "CC BY-SA 4.0",
    "required": "Attribution required: 'Powered by Pleroma Gnosis'"
  }
}

GET /api/lexicon/public/[slug]

Returns a single term by its slug, including full content and related blog posts that reference it.

Example Request

curl
curl "https://pleroma.stefansalkimia.com/api/lexicon/public/archon"

Example Response

JSON
{
  "data": {
    "term": "Archon",
    "slug": "archon",
    "definition": "A cosmic parasitic entity in Gnostic cosmology...",
    "fullContent": "A cosmic parasitic entity in Gnostic cosmology that rules the material world...",
    "pillar": "cosmology",
    "tradition": "Gnostic",
    "etymology": "Greek: archon — ruler",
    "pronunciation": "AR-kon",
    "termOriginal": null,
    "relatedTerms": [
      "demiurge",
      "sophia"
    ],
    "relatedPosts": [
      {
        "title": "What Are Archons?",
        "slug": "what-are-archons",
        "url": "https://pleroma.stefansalkimia.com/en/blog/what-are-archons"
      }
    ],
    "url": "https://pleroma.stefansalkimia.com/en/lexicon/archon"
  },
  "attribution": {
    "source": "Pleroma Gnosis Lexicon",
    "url": "https://pleroma.stefansalkimia.com",
    "license": "CC BY-SA 4.0",
    "required": "Attribution required: 'Powered by Pleroma Gnosis'"
  }
}

Response Fields

Every response is a JSON object with three top-level keys: data (the term or array of terms), meta (pagination + request metadata, list endpoint only), and attribution (license and credit info). The tables below document every field the API can return.

data — term object

FieldTypeDescription
termstringCanonical name of the term as it appears in the lexicon.
slugstringURL-safe identifier. Use this in the single-term endpoint path.
definitionstringShort one- or two-sentence definition suitable for cards, tooltips, and preview UIs.
pillarstringThe knowledge pillar this term belongs to (e.g. cosmology, alchemy, shadow).
traditionstringThe lineage or tradition the term originates from (e.g. Gnostic, Hermetic, Kabbalistic).
etymologystring | nullOrigin of the word, usually including the source language. May be null when unknown.
relatedTermsstring[]Slugs of other terms cross-linked to this one. Useful for graph walks and related-reading UIs.
urlstringCanonical URL of the term's page on Pleroma.
fullContentstringLong-form prose body of the term entry, in Markdown. Single-term endpoint only.
pronunciationstring | nullRough phonetic pronunciation guide. May be null. Single-term endpoint only.
termOriginalstring | nullOriginal-script form of the term (e.g. Greek, Hebrew) when applicable. May be null. Single-term endpoint only.
relatedPostsobject[]Array of blog posts that reference this term, each with title, slug, and url. Single-term endpoint only.

meta — list endpoint only

FieldTypeDescription
meta.totalnumberTotal number of terms that match the current filter, before pagination.
meta.limitnumberPage size that was actually applied (after clamping to the 1-500 allowed range).
meta.offsetnumberOffset that was actually applied (after clamping).
meta.localestringLocale that was resolved for this response (en or bg).
meta.hasMorebooleanTrue when there are additional pages after this one. Equivalent to (offset + limit) < total.
meta.warningsstring[] (optional)Present only when the API silently adjusted your input — for example, clamped an out-of-range limit or fell back to the default locale. Each string explains one adjustment.

attribution

FieldTypeDescription
attribution.sourcestringHuman-readable name of the data source.
attribution.urlstringURL you should link back to when attributing the data.
attribution.licensestringSPDX-style identifier for the license. Always CC BY-SA 4.0 today.
attribution.requiredstringThe exact attribution string we ask you to display alongside reused content.

Fields marked as "single-term endpoint only" appear when you fetch GET /api/lexicon/public/[slug] and are omitted from the list endpoint to keep responses small.

Available Pillars

Use these values with the pillar query parameter to filter terms by knowledge domain.

cosmology
alchemy
frequency
temple
matrix
shadow
astrology
mastery
sophia

Attribution

This API is licensed under CC BY-SA 4.0. You are free to use the data in any project, provided you include attribution linking back to Pleroma.

HTML
<a href="https://pleroma.stefansalkimia.com">Powered by Pleroma Gnosis</a>

License

Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0). You may share and adapt the data for any purpose, including commercial, as long as you provide attribution and distribute derivative works under the same license.

Error Codes

CodeMeaning
200Success
400Bad request (invalid locale or parameters)
404Term not found (single-term endpoint only)
429Rate limit exceeded. Check the Retry-After header.

Feedback & Contact

Found a bug, a wrong definition, or need a higher rate limit for research or a larger integration? Reach out directly — a human reads every message.

pleroma@stefansalkimia.com

Rate-limit increases are granted case by case. Include a short note about the project and expected request volume and you will usually hear back within a few days.