{"id":7,"date":"2024-10-26T13:07:20","date_gmt":"2024-10-26T13:07:20","guid":{"rendered":"https:\/\/makulu.online\/?page_id=7"},"modified":"2024-10-27T08:09:23","modified_gmt":"2024-10-27T08:09:23","slug":"api","status":"publish","type":"page","link":"https:\/\/makulu.online\/index.php\/api\/","title":{"rendered":"API"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\"><\/h1>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"has-large-font-size\"><strong>Base URL:<\/strong>\u00a0<strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-orange-color\">https:\/\/makulu.online:6003<\/mark><\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">1. Chat Endpoint &#8211; Only Text capable Endpoint<\/h2>\n\n\n\n<p class=\"has-medium-font-size\"><strong>URL:<\/strong>&nbsp;<code>\/api\/chat<\/code><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Method:<\/strong>&nbsp;<code>POST<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Request Payload:<\/h3>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>{\n    \"prompt\": \"Your message here\",\n    \"conversation_id\": \"optional-conversation-id\"\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Parameters:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>prompt<\/strong>&nbsp;(string): The message you want to send to the chat API.<\/li>\n\n\n\n<li><strong>conversation_id<\/strong>&nbsp;(string, optional): Identify an ongoing conversation.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Response Format:<\/h3>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>{\n    \"response\": \"AI response here\",\n    \"conversation_id\": \"the conversation ID used\"\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Example Requests:<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Python Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\nimport requests\n\nurl = \"https:\/\/makulu.online:6003\/api\/chat\"\npayload = {\n    \"prompt\": \"Hello, how can I improve my coding skills?\",\n    \"conversation_id\": \"12345\"\n}\nresponse = requests.post(url, json=payload)\nprint(response.json())\n        <\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Bash Command<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>curl -X POST \"https:\/\/makulu.online:6003\/api\/chat\" \\\n     -H \"Content-Type: application\/json\" \\\n     -d '{\"prompt\":\"Hello, how can I improve my coding skills?\", \"conversation_id\": \"12345\"}'<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Java Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\nimport java.io.OutputStream;\nimport java.net.HttpURLConnection;\nimport java.net.URL;\n\npublic class Main {\n    public static void main(String&#91;] args) {\n        try {\n            URL url = new URL(\"https:\/\/makulu.online:6003\/api\/chat\");\n            HttpURLConnection conn = (HttpURLConnection) url.openConnection();\n            conn.setRequestMethod(\"POST\");\n            conn.setRequestProperty(\"Content-Type\", \"application\/json\");\n            conn.setDoOutput(true);\n\n            String input = \"{\\\"prompt\\\":\\\"Hello, how can I improve my coding skills?\\\", \\\"conversation_id\\\": \\\"12345\\\"}\";\n\n            try(OutputStream os = conn.getOutputStream()) {\n                byte&#91;] inputBytes = input.getBytes(\"utf-8\");\n                os.write(inputBytes, 0, inputBytes.length);           \n            }\n            System.out.println(\"Response Code: \" + conn.getResponseCode());\n        } catch (Exception e) {\n            e.printStackTrace();\n        }\n    }\n}\n        <\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Go Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\npackage main\n\nimport (\n    \"bytes\"\n    \"encoding\/json\"\n    \"fmt\"\n    \"net\/http\"\n)\n\nfunc main() {\n    url := \"https:\/\/makulu.online:6003\/api\/chat\"\n    payload := map&#91;string]interface{}{\n        \"prompt\": \"Hello, how can I improve my coding skills?\",\n        \"conversation_id\": \"12345\",\n    }\n    jsonPayload, _ := json.Marshal(payload)\n\n    resp, err := http.Post(url, \"application\/json\", bytes.NewBuffer(jsonPayload))\n    if err != nil {\n        fmt.Println(err)\n    }\n    defer resp.Body.Close()\n    fmt.Println(\"Response Status:\", resp.Status)\n}\n        <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">2. Ask Endpoint &#8211; Text, Mode, Image, Audio and Video capable Endpoint<\/h2>\n\n\n\n<p class=\"has-medium-font-size\"><strong>URL:<\/strong>&nbsp;<code>\/api\/ask<\/code><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Method:<\/strong>&nbsp;<code>POST<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Request Payload:<\/h3>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>{\n    \"message\": \"Your question here\",\n    \"mode\": \"optional-mode\", \/\/ e.g., \"normal\", \"coder\", etc.\n    \"conversation_id\": \"optional-conversation-id\"\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Parameters:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>message<\/strong>&nbsp;(string): The user&#8217;s message\/question.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>mode<\/strong>&nbsp;(string, optional): The mode to use for the AI response: ( normal, informational, anti_woke, imaginative, coder, blogger )<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>conversation_id<\/strong>&nbsp;(string, optional): Identify an ongoing conversation.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Response Format:<\/h3>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>{\n    \"response\": \"AI response here\",\n    \"conversation_id\": \"the conversation ID used\"\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Example Requests:<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Python Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\nimport requests\n\nurl = \"https:\/\/makulu.online:6003\/api\/ask\"\npayload = {\n    \"message\": \"What's the best way to learn Python?\",\n    \"mode\": \"coder\",\n    \"conversation_id\": \"12345\"\n}\nresponse = requests.post(url, json=payload)\nprint(response.json())\n        <\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Bash Command<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>curl -X POST \"https:\/\/makulu.online:6003\/api\/ask\" \\\n     -H \"Content-Type: application\/json\" \\\n     -d '{\"message\":\"What\\'s the best way to learn Python?\", \"mode\": \"coder\", \"conversation_id\": \"12345\"}'<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Java Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\nimport java.io.OutputStream;\nimport java.net.HttpURLConnection;\nimport java.net.URL;\n\npublic class Main {\n    public static void main(String&#91;] args) {\n        try {\n            URL url = new URL(\"https:\/\/makulu.online:6003\/api\/ask\");\n            HttpURLConnection conn = (HttpURLConnection) url.openConnection();\n            conn.setRequestMethod(\"POST\");\n            conn.setRequestProperty(\"Content-Type\", \"application\/json\");\n            conn.setDoOutput(true);\n\n            String input = \"{\\\"message\\\":\\\"What\u2019s the best way to learn Python?\\\", \\\"mode\\\": \\\"coder\\\", \\\"conversation_id\\\": \\\"12345\\\"}\";\n\n            try(OutputStream os = conn.getOutputStream()) {\n                byte&#91;] inputBytes = input.getBytes(\"utf-8\");\n                os.write(inputBytes, 0, inputBytes.length);           \n            }\n            System.out.println(\"Response Code: \" + conn.getResponseCode());\n        } catch (Exception e) {\n            e.printStackTrace();\n        }\n    }\n}\n        <\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Go Request<\/h4>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>\npackage main\n\nimport (\n    \"bytes\"\n    \"encoding\/json\"\n    \"fmt\"\n    \"net\/http\"\n)\n\nfunc main() {\n    url := \"https:\/\/makulu.online:6003\/api\/ask\"\n    payload := map&#91;string]interface{}{\n        \"message\": \"What's the best way to learn Python?\",\n        \"mode\": \"coder\",\n        \"conversation_id\": \"12345\",\n    }\n    jsonPayload, _ := json.Marshal(payload)\n\n    resp, err := http.Post(url, \"application\/json\", bytes.NewBuffer(jsonPayload))\n    if err != nil {\n        fmt.Println(err)\n    }\n    defer resp.Body.Close()\n    fmt.Println(\"Response Status:\", resp.Status)\n}\n        <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Notes<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">The \/chat endpoint is text only, but its snappy and fast.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">The \/ask endpoint gives Electra generaton capabilities, you can ask her to generate images, audio or videos.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Ensure HTTPS is used to keep requests secure.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Only &#8220;normal, informational and anti_woke&#8221; modes are capable of generating images, audio and videos.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">&#8220;Conversation_id&#8221; is used to track conversation history, Replace all instances of &#8220;12345&#8221; in conversation_id with the actual ID you want to track the conversation.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">This API can handle 100 requests per second, 6000 requests per minute, anything above that and your requests will get qeued.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">We capped storage of conversation history at around 7000 words \/ 14 pages worth of text. We will adjust history storage as needed.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Base URL:\u00a0https:\/\/makulu.online:6003 1. Chat Endpoint &#8211; Only Text capable Endpoint URL:&nbsp;\/api\/chat Method:&nbsp;POST Request Payload: Parameters: Response Format: Example Requests: Python Request Bash Command Java Request Go Request 2. Ask Endpoint &#8211; Text, Mode, Image, Audio and Video capable Endpoint URL:&nbsp;\/api\/ask Method:&nbsp;POST Request Payload: Parameters: Response Format: Example Requests: Python Request Bash Command Java Request Go [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-7","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/pages\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":7,"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/pages\/7\/revisions"}],"predecessor-version":[{"id":99,"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/pages\/7\/revisions\/99"}],"wp:attachment":[{"href":"https:\/\/makulu.online\/index.php\/wp-json\/wp\/v2\/media?parent=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}