{"openapi":"3.1.0","info":{"title":"Bol API","version":"0.1.0","description":"A hand-curated Hindi/Hinglish slang and everyday-phrase glossary: definitions, literal-vs-actual meaning, example sentences, formality notes, categories, regional/generational notes, keyword search, a phrase of the day, and an English-to-Hinglish translate hint.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://bol.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/bol/docs"},"termsOfService":"https://connectorbay.com/bol/terms"},"servers":[{"url":"https://bol.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/bol/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/slang_lookup":{"post":{"operationId":"slang_lookup","summary":"One term's definition: literal meaning vs. actual meaning, an example sentence in Hindi/Hinglish with an","description":"One term's definition: literal meaning vs. actual meaning, an example sentence in Hindi/Hinglish with an\n    English translation, its category, and a formality/register note. Use for \"what does jugaad mean\", \"what's\n    the actual meaning of chalta hai\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"description":"A Hindi/Hinglish slang term or everyday phrase.","examples":["jugaad","chalta hai","bindaas"],"minLength":1,"title":"Term","type":"string"}},"required":["term"],"title":"slang_lookupArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/slang_search":{"post":{"operationId":"slang_search","summary":"Keyword search across every term's name, definitions, and example sentences. Use for \"find slang about","description":"Keyword search across every term's name, definitions, and example sentences. Use for \"find slang about\n    money\", \"any phrases with 'tension' in them\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"description":"Keyword(s) to search for across terms, definitions and example sentences.","minLength":1,"title":"Query","type":"string"}},"required":["query"],"title":"slang_searchArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/random_slang":{"post":{"operationId":"random_slang","summary":"A random slang term or everyday phrase, optionally restricted to one category. Use for \"give me a random","description":"A random slang term or everyday phrase, optionally restricted to one category. Use for \"give me a random\n    Hindi slang word\", \"surprise me with a food-related phrase\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Optional category filter, e.g. greeting, exclamation, insult-mild, praise, filler-word, money, food-related, bollywood-derived, everyday-life, emotion, agreement, warning-advice. Omit for any category.","title":"Category"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Optional seed for a reproducible pick.","title":"Seed"}},"title":"random_slangArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/slang_by_category":{"post":{"operationId":"slang_by_category","summary":"Every term in one category. Use for \"list all the exclamations\", \"show me all money-related slang\".","description":"Every term in one category. Use for \"list all the exclamations\", \"show me all money-related slang\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"description":"A category, e.g. greeting, exclamation, insult-mild, praise, filler-word, money, food-related, bollywood-derived, everyday-life, emotion, agreement, warning-advice.","title":"Category","type":"string"}},"required":["category"],"title":"slang_by_categoryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/phrase_of_the_day":{"post":{"operationId":"phrase_of_the_day","summary":"Today's phrase of the day — a deterministic pick (seeded by today's date, so it's the same for everyone","description":"Today's phrase of the day — a deterministic pick (seeded by today's date, so it's the same for everyone\n    and stable across calls today) with a full explanation. Use for \"what's today's Hindi phrase of the day\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"phrase_of_the_dayArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/translate_hint":{"post":{"operationId":"translate_hint","summary":"Best-effort match from a common English casual phrase or idiom to its closest Hinglish/Hindi slang","description":"Best-effort match from a common English casual phrase or idiom to its closest Hinglish/Hindi slang\n    equivalent(s) in this dataset — a simple keyword/synonym match against hand-written mappings, not a live\n    translation API. Use for \"how do I say 'no big deal' in Hinglish\", \"what's the Hindi slang for 'stop\n    worrying'\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"english_phrase":{"description":"A common English casual phrase or idiom.","examples":["no big deal","what's the plan","stop worrying","that's awesome"],"minLength":1,"title":"English Phrase","type":"string"}},"required":["english_phrase"],"title":"translate_hintArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/formality_check":{"post":{"operationId":"formality_check","summary":"Whether a term is casual-only (friends/family), broadly acceptable anywhere, or could be seen as a bit","description":"Whether a term is casual-only (friends/family), broadly acceptable anywhere, or could be seen as a bit\n    rude or pointed depending on audience — this dataset is kept to mild, family-friendly slang throughout, never\n    actual profanity. Use for \"is 'yaar' okay to use with my boss\", \"is 'ghanta' rude\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"description":"A Hindi/Hinglish slang term or phrase.","minLength":1,"title":"Term","type":"string"}},"required":["term"],"title":"formality_checkArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/regional_note":{"post":{"operationId":"regional_note","summary":"Where relevant, whether a term skews to a specific region/city or generation — many entries are simply","description":"Where relevant, whether a term skews to a specific region/city or generation — many entries are simply\n    pan-India and used by all generations. Use for \"is 'jhakaas' a Mumbai thing\", \"who uses 'dhasu'\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"description":"A Hindi/Hinglish slang term or phrase.","minLength":1,"title":"Term","type":"string"}},"required":["term"],"title":"regional_noteArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/glossary_stats":{"post":{"operationId":"glossary_stats","summary":"Term counts by category and the total term count in this dataset. Use for \"how many slang terms do you","description":"Term counts by category and the total term count in this dataset. Use for \"how many slang terms do you\n    know\", \"how many categories are there\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"glossary_statsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}