# -*- coding: utf-8 -*- import json from fastapi import APIRouter, Response from pythainlp.soundex import ( soundex as py_soundex ) from enum import Enum router = APIRouter() class SoundexEngine(str, Enum): udom83 = "udom83" lk82 = "lk82" metasound = "metasound" prayut_and_somchaip = "prayut_and_somchaip" @router.post('/soundex') def soundex(word: str, engine: SoundexEngine = "udom83"): """ This api converts Thai text into phonetic code. ## Input - **word**: A word that want into phonetic code. - **engine**: Soundex Engine (default is udom83) """ return Response( json.dumps({"soundex": py_soundex(text=word, engine=engine)}, ensure_ascii=False), media_type="application/json; charset=utf-8", )