I am experiencing an issue where newly created Wit.ai apps return HTTP 200 from GET /message, but the response always contains an empty intents array, even when the query text exactly matches a validated/trained utterance.
The same API endpoint and request format worked previously with an older app. However, after creating new apps, the model appears to recognize keyword entities, but does not return any intents.
This makes the app unusable for intent-based voice command recognition.
Environment:
- Wit.ai app language: English
- App type: Private
- API endpoint:
GET https://api.wit.ai/message
- API version tested:
20260505
- Also tested other version dates with the same behavior
- Requests tested in Postman, PowerShell, and Python
- Authentication: Server Access Token / Bearer token
- Response status: HTTP 200
What works:
- Authentication works.
GET /apps works.
GET /intents returns the created intents.
GET /entities returns the created entities.
GET /utterances shows utterances correctly associated with intents.
- Keyword entities are sometimes extracted correctly from
/message.
What does not work:
GET /message always returns "intents": [], even for exact training examples.
Example request:
curl -X GET "https://api.wit.ai/message?v=20260505&q=yes&n=8" \
-H "Authorization: Bearer <SERVER_ACCESS_TOKEN>"
Is there currently an issue with intent training/publishing for newly created Wit.ai apps? Is there an extra step required to make intents available to GET /message after uploading/validating utterances?
I am experiencing an issue where newly created Wit.ai apps return HTTP 200 from
GET /message, but the response always contains an emptyintentsarray, even when the query text exactly matches a validated/trained utterance.The same API endpoint and request format worked previously with an older app. However, after creating new apps, the model appears to recognize keyword entities, but does not return any intents.
This makes the app unusable for intent-based voice command recognition.
Environment:
GET https://api.wit.ai/message20260505What works:
GET /appsworks.GET /intentsreturns the created intents.GET /entitiesreturns the created entities.GET /utterancesshows utterances correctly associated with intents./message.What does not work:
GET /messagealways returns"intents": [], even for exact training examples.Example request: