Skip to content

Commit 33f1e79

Browse files
release: v0.1.14
1 parent e5d3d4d commit 33f1e79

3 files changed

Lines changed: 293 additions & 3 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "uv_build"
44

55
[project]
66
name = "roxy-sdk"
7-
version = "0.1.13"
7+
version = "0.1.14"
88
description = "Python SDK for RoxyAPI. Astrology, tarot, numerology, and more."
99
readme = "README.md"
1010
license = "MIT"

specs/openapi.json

Lines changed: 291 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
},
4040
{
4141
"name": "Numerology",
42-
"description": "Production-ready Pythagorean numerology API + hosted MCP for AI agents and developers. Connect Claude Code, Cursor, VS Code in seconds, no local setup. Calculate life path, expression, soul urge, personality, and maturity numbers. Pinnacle and Challenge life phase timing with meanings. Hidden Passion, Subconscious Self, and Cornerstone/Capstone name analysis. Birth day 1-31 profiles, lucky associations (colors, gemstones, planets), personal year and month forecasts, relationship compatibility, karmic debt and lessons. 16 endpoints with detailed interpretations optimized for numerology apps, editorial platforms, AI chatbots, wellness platforms, and spiritual services."
42+
"description": "Production-ready Pythagorean numerology API + hosted MCP for AI agents and developers. Connect Claude Code, Cursor, VS Code in seconds, no local setup. Calculate life path, expression, soul urge, personality, and maturity numbers. Pinnacle and Challenge life phase timing with meanings. Hidden Passion, Subconscious Self, and Cornerstone/Capstone name analysis. Birth day 1-31 profiles, lucky associations (colors, gemstones, planets), personal year and month forecasts, relationship compatibility, karmic debt and lessons. Unicode-aware multilingual name handling: Spanish, French, German, Italian, Portuguese, Russian, Ukrainian, Belarusian, Hindi, Bengali, Tamil, Japanese, Chinese, Korean, Arabic, Greek, and Hebrew names produce correct Pythagorean numbers via automatic transliteration so accented and non-Latin scripts no longer silently drop letters. 16 endpoints with detailed interpretations optimized for numerology apps, editorial platforms, AI chatbots, wellness platforms, and spiritual services."
4343
},
4444
{
4545
"name": "Tarot",
@@ -72,6 +72,10 @@
7272
{
7373
"name": "Usage",
7474
"description": "Monitor your API usage, check rate limits, and track request consumption. Get detailed usage breakdowns by endpoint, current month statistics, and recommendations for plan upgrades when approaching limits. Essential for managing API quotas and optimizing subscription plans."
75+
},
76+
{
77+
"name": "Languages",
78+
"description": "List the response languages accepted by the `lang` query parameter on every i18n-aware endpoint. Use to populate language pickers, validate user input, or auto-detect available locales in agent integrations."
7579
}
7680
],
7781
"components": {
@@ -31932,6 +31936,7 @@
3193231936
"fullName": {
3193331937
"type": "string",
3193431938
"minLength": 1,
31939+
"maxLength": 200,
3193531940
"example": "John William Smith",
3193631941
"description": "Full birth name (first, middle, last)"
3193731942
}
@@ -32351,6 +32356,7 @@
3235132356
"fullName": {
3235232357
"type": "string",
3235332358
"minLength": 1,
32359+
"maxLength": 200,
3235432360
"example": "John William Smith",
3235532361
"description": "Full legal birth name as it appears on the birth certificate. Used to calculate Expression, Soul Urge, and Personality numbers. Include first, middle, and last names separated by spaces."
3235632362
},
@@ -32844,6 +32850,7 @@
3284432850
"fullName": {
3284532851
"type": "string",
3284632852
"minLength": 1,
32853+
"maxLength": 200,
3284732854
"example": "John William Smith",
3284832855
"description": "Full birth name (vowels will be extracted)"
3284932856
}
@@ -33263,6 +33270,7 @@
3326333270
"fullName": {
3326433271
"type": "string",
3326533272
"minLength": 1,
33273+
"maxLength": 200,
3326633274
"example": "John William Smith",
3326733275
"description": "Full birth name (consonants will be extracted)"
3326833276
}
@@ -34116,6 +34124,7 @@
3411634124
"fullName": {
3411734125
"type": "string",
3411834126
"minLength": 1,
34127+
"maxLength": 200,
3411934128
"example": "John William Smith",
3412034129
"description": "Full birth name to calculate Expression number automatically. Use instead of passing expression directly."
3412134130
},
@@ -34553,6 +34562,7 @@
3455334562
"fullName": {
3455434563
"type": "string",
3455534564
"minLength": 1,
34565+
"maxLength": 200,
3455634566
"example": "John William Smith",
3455734567
"description": "Full birth name to analyze for missing numbers"
3455834568
}
@@ -34918,6 +34928,7 @@
3491834928
"fullName": {
3491934929
"type": "string",
3492034930
"minLength": 1,
34931+
"maxLength": 200,
3492134932
"example": "John William Smith",
3492234933
"description": "Full birth name (checks Expression, Soul Urge, Personality)"
3492334934
}
@@ -36312,6 +36323,7 @@
3631236323
"fullName": {
3631336324
"type": "string",
3631436325
"minLength": 1,
36326+
"maxLength": 200,
3631536327
"example": "John William Smith",
3631636328
"description": "Full birth name to calculate Expression and Soul Urge numbers automatically. Use instead of passing expression and soulUrge directly."
3631736329
},
@@ -36365,6 +36377,7 @@
3636536377
"fullName": {
3636636378
"type": "string",
3636736379
"minLength": 1,
36380+
"maxLength": 200,
3636836381
"example": "Jane Marie Doe",
3636936382
"description": "Full birth name to calculate Expression and Soul Urge numbers automatically. Use instead of passing expression and soulUrge directly."
3637036383
},
@@ -36810,6 +36823,7 @@
3681036823
"fullName": {
3681136824
"type": "string",
3681236825
"minLength": 1,
36826+
"maxLength": 200,
3681336827
"example": "John William Smith",
3681436828
"description": "Full birth name as it appears on the birth certificate. Used for all letter-based Pythagorean numerology calculations including Expression, Soul Urge, Personality, and Karmic Lessons."
3681536829
},
@@ -56476,6 +56490,282 @@
5647656490
}
5647756491
}
5647856492
}
56493+
},
56494+
"/languages": {
56495+
"get": {
56496+
"operationId": "listLanguages",
56497+
"tags": [
56498+
"Languages"
56499+
],
56500+
"summary": "List supported response languages",
56501+
"description": "Returns the language codes accepted by the `lang` query parameter on every i18n-aware endpoint. Use this to populate language pickers, validate user input before calling chart or reading endpoints, or auto-detect available locales in agent integrations. Codes follow ISO 639-1. Endpoints without a translation for the requested language fall back to English silently.",
56502+
"security": [
56503+
{
56504+
"apiKey": []
56505+
}
56506+
],
56507+
"responses": {
56508+
"200": {
56509+
"description": "Supported languages",
56510+
"content": {
56511+
"application/json": {
56512+
"schema": {
56513+
"type": "object",
56514+
"properties": {
56515+
"languages": {
56516+
"type": "array",
56517+
"items": {
56518+
"type": "object",
56519+
"properties": {
56520+
"code": {
56521+
"type": "string",
56522+
"enum": [
56523+
"en",
56524+
"tr",
56525+
"de",
56526+
"es",
56527+
"hi",
56528+
"pt",
56529+
"fr",
56530+
"ru"
56531+
],
56532+
"example": "en",
56533+
"description": "ISO 639-1 language code. Pass this value as the `lang` query parameter."
56534+
},
56535+
"name": {
56536+
"type": "string",
56537+
"example": "English",
56538+
"description": "Language name in English."
56539+
},
56540+
"nativeName": {
56541+
"type": "string",
56542+
"example": "English",
56543+
"description": "Language name written in the language itself."
56544+
}
56545+
},
56546+
"required": [
56547+
"code",
56548+
"name",
56549+
"nativeName"
56550+
]
56551+
},
56552+
"description": "All language codes accepted by the `lang` query parameter."
56553+
}
56554+
},
56555+
"required": [
56556+
"languages"
56557+
]
56558+
}
56559+
}
56560+
}
56561+
},
56562+
"400": {
56563+
"description": "Validation error. `issues[]` lists every failed field.",
56564+
"content": {
56565+
"application/json": {
56566+
"schema": {
56567+
"type": "object",
56568+
"properties": {
56569+
"error": {
56570+
"type": "string",
56571+
"description": "First issue summary."
56572+
},
56573+
"code": {
56574+
"type": "string",
56575+
"enum": [
56576+
"validation_error"
56577+
]
56578+
},
56579+
"issues": {
56580+
"type": "array",
56581+
"description": "Every validation failure. Use this to rebuild a valid request.",
56582+
"items": {
56583+
"type": "object",
56584+
"properties": {
56585+
"path": {
56586+
"type": "string",
56587+
"description": "Dot-separated field path, or \"(root)\" for top-level."
56588+
},
56589+
"message": {
56590+
"type": "string"
56591+
},
56592+
"code": {
56593+
"type": "string",
56594+
"description": "Zod issue code (invalid_type, too_small, too_big, invalid_string, ...)."
56595+
},
56596+
"expected": {
56597+
"type": "string",
56598+
"description": "Expected type for invalid_type."
56599+
},
56600+
"minimum": {
56601+
"description": "Minimum bound for too_small issues.",
56602+
"oneOf": [
56603+
{
56604+
"type": "number"
56605+
},
56606+
{
56607+
"type": "string"
56608+
}
56609+
]
56610+
},
56611+
"maximum": {
56612+
"description": "Maximum bound for too_big issues.",
56613+
"oneOf": [
56614+
{
56615+
"type": "number"
56616+
},
56617+
{
56618+
"type": "string"
56619+
}
56620+
]
56621+
},
56622+
"inclusive": {
56623+
"type": "boolean"
56624+
},
56625+
"format": {
56626+
"type": "string",
56627+
"description": "Format name for string issues (regex, email, url, uuid)."
56628+
},
56629+
"pattern": {
56630+
"type": "string",
56631+
"description": "Regex pattern when format is regex."
56632+
}
56633+
},
56634+
"required": [
56635+
"path",
56636+
"message"
56637+
]
56638+
}
56639+
}
56640+
},
56641+
"required": [
56642+
"error",
56643+
"code",
56644+
"issues"
56645+
]
56646+
}
56647+
}
56648+
}
56649+
},
56650+
"401": {
56651+
"description": "Invalid or missing API key",
56652+
"content": {
56653+
"application/json": {
56654+
"schema": {
56655+
"type": "object",
56656+
"properties": {
56657+
"error": {
56658+
"type": "string",
56659+
"description": "Human-readable error message. May change wording."
56660+
},
56661+
"code": {
56662+
"type": "string",
56663+
"description": "Machine-readable error code. Stable identifier."
56664+
}
56665+
},
56666+
"required": [
56667+
"error",
56668+
"code"
56669+
]
56670+
}
56671+
}
56672+
}
56673+
},
56674+
"405": {
56675+
"description": "Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.",
56676+
"headers": {
56677+
"Allow": {
56678+
"description": "Comma-separated list of allowed methods (RFC 7231).",
56679+
"schema": {
56680+
"type": "string"
56681+
}
56682+
}
56683+
},
56684+
"content": {
56685+
"application/json": {
56686+
"schema": {
56687+
"type": "object",
56688+
"properties": {
56689+
"error": {
56690+
"type": "string"
56691+
},
56692+
"code": {
56693+
"type": "string",
56694+
"enum": [
56695+
"method_not_allowed"
56696+
]
56697+
},
56698+
"allow": {
56699+
"type": "array",
56700+
"items": {
56701+
"type": "string"
56702+
},
56703+
"description": "Allowed HTTP methods for this path. Mirrors the Allow response header."
56704+
},
56705+
"docs": {
56706+
"type": "string",
56707+
"description": "Link to the product page for this domain."
56708+
}
56709+
},
56710+
"required": [
56711+
"error",
56712+
"code",
56713+
"allow"
56714+
]
56715+
}
56716+
}
56717+
}
56718+
},
56719+
"429": {
56720+
"description": "Monthly rate limit exceeded",
56721+
"content": {
56722+
"application/json": {
56723+
"schema": {
56724+
"type": "object",
56725+
"properties": {
56726+
"error": {
56727+
"type": "string",
56728+
"description": "Human-readable error message. May change wording."
56729+
},
56730+
"code": {
56731+
"type": "string",
56732+
"description": "Machine-readable error code. Stable identifier."
56733+
}
56734+
},
56735+
"required": [
56736+
"error",
56737+
"code"
56738+
]
56739+
}
56740+
}
56741+
}
56742+
},
56743+
"500": {
56744+
"description": "Internal server error",
56745+
"content": {
56746+
"application/json": {
56747+
"schema": {
56748+
"type": "object",
56749+
"properties": {
56750+
"error": {
56751+
"type": "string",
56752+
"description": "Human-readable error message. May change wording."
56753+
},
56754+
"code": {
56755+
"type": "string",
56756+
"description": "Machine-readable error code. Stable identifier."
56757+
}
56758+
},
56759+
"required": [
56760+
"error",
56761+
"code"
56762+
]
56763+
}
56764+
}
56765+
}
56766+
}
56767+
}
56768+
}
5647956769
}
5648056770
}
5648156771
}

src/roxy_sdk/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION = "0.1.13"
1+
VERSION = "0.1.14"

0 commit comments

Comments
 (0)