Skip to main content
Use the Responses resource when you want the MKA1 API to return text. Start with a plain string for simple prompts. Use message items when you need explicit roles or conversation state.

Send a simple prompt

Pass a string in input for a single-turn request. The response includes generated text in output_text.
curl https://apigw.mka1.com/api/v1/llm/responses \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <mka1-api-key>' \
  --header 'X-On-Behalf-Of: <end-user-id>' \
  --data '{
    "model": "meetkai:functionary-urdu-mini-pak",
    "input": "Write a one-sentence summary of the MKA1 API."
  }'
If you are not acting for an end user, omit X-On-Behalf-Of.

Add instructions

Use instructions to define behavior before the model sees the user input. Keep instructions short and specific.
curl https://apigw.mka1.com/api/v1/llm/responses \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <mka1-api-key>' \
  --header 'X-On-Behalf-Of: <end-user-id>' \
  --data '{
    "model": "meetkai:functionary-urdu-mini-pak",
    "instructions": "You are a support assistant. Reply in plain English. Keep answers under 80 words.",
    "input": "Explain what embeddings are used for."
  }'

Send structured messages

Use an array of message items in input when you want explicit roles. Each message item uses type, role, and content.
{
  "model": "meetkai:functionary-urdu-mini-pak",
  "input": [
    {
      "type": "message",
      "role": "developer",
      "content": "Answer as a technical writer. Keep the reply concise."
    },
    {
      "type": "message",
      "role": "user",
      "content": "Draft a short product update about faster response times."
    }
  ]
}
This pattern is useful when you want the request body to carry the message history directly.

Continue a multi-turn exchange

Use previous_response_id to continue from an earlier response without resending the full history.
curl https://apigw.mka1.com/api/v1/llm/responses \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <mka1-api-key>' \
  --header 'X-On-Behalf-Of: <end-user-id>' \
  --data '{
    "model": "meetkai:functionary-urdu-mini-pak",
    "previous_response_id": "resp_123",
    "input": "Now turn that into an email subject line."
  }'
If you need a reusable conversation container, create one with the Conversations resource and then pass the conversation ID in conversation.
curl https://apigw.mka1.com/api/v1/llm/conversations \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <mka1-api-key>' \
  --header 'X-On-Behalf-Of: <end-user-id>' \
  --data '{
    "metadata": {
      "session_id": "web-42"
    }
  }'
Then include that ID in your next response request.
{
  "model": "meetkai:functionary-urdu-mini-pak",
  "conversation": "conv_123",
  "input": "What should I ask next to refine this draft?"
}
See the Conversations and Responses pages in the API Reference for the full resource workflow.

Stream text as it is generated

Set stream to true to receive server-sent events instead of waiting for the full response.
{
  "model": "meetkai:functionary-urdu-mini-pak",
  "input": "Write three release notes bullets for our docs update.",
  "stream": true
}
Use streaming when you want to render partial output as it arrives.

Next steps

Review the API overview for authentication and base URL details. Then use the Responses pages in the API Reference to explore background jobs, tool calls, and structured output options.