An Apache Spark-based analytics platform optimized for Azure.
What you are observing is expected behavior based on how the Databricks Genie Conversation API works compared to the Genie UI.
When you call the Genie API and poll a message until its status becomes COMPLETED, the response you receive in the attachments field is the final result for that specific API execution path. The API does not provide a second “final answer” later, and there is no additional endpoint that returns a refined version after completion.
The difference you are seeing between the API response and the Genie UI is because the UI can perform additional refinement steps that are not automatically triggered in your API flow. In the Genie UI, features such as Inspect, Fix it / try again, or internal regeneration can re-run or improve the generated SQL and response before displaying it. This can result in a more refined or human-friendly answer compared to the initial completed response returned by the API.
From the API perspective:
- A message reaches
COMPLETEDwhen Genie has finished generating the response for that request - The
attachmentsarray contains the response text, generated SQL (if any), and references to query results - Query results are retrieved separately using the attachment ID
- The response will not change after the message is marked
COMPLETED
Because of this, re-polling the same message will always return identical results, which matches what you are observing.
If you want to replicate the UI behavior more closely, you would need to explicitly implement additional steps such as re-submitting the query, applying feedback, or simulating refinement logic in your application. The API itself does not automatically perform multiple refinement rounds for a single message.
Helpful References:
https://docs.databricks.com/aws/en/genie/conversation-api
https://docs.databricks.com/aws/en/genie
The API is returning the correct completed response, and the difference you see in the UI is due to additional refinement or regeneration flows that are not part of the single API call lifecycle.
Hope this helps. Please let us know if you have any questions or concerns. If this solves your issue, kindly click “Accept Answer” so it can help others in the community.