Migration guide
This page records the breaking changes between versions of the Asgard SDK and what to do about them.
SDK versions
0.1.x → 0.2.x
SDK 0.2.x brought several significant improvements.
Breaking changes
| What changed | 0.1.x | 0.2.x | How to migrate |
|---|---|---|---|
| Package name | @asgard-js/core | @asgard-js/core (unchanged) | Upgrade the version |
| SSE event format | The basic events | Adds asgard.process.start/complete and asgard.tool_call.start/complete | Add handlers for the new events |
| React integration | Basic configuration | More configuration options | Check the config on <Chatbot> |
Upgrading
- Update the packages:
npm install @asgard-js/core@latest @asgard-js/react@latest
-
Look at the new SSE event types and add handling for them (not required, but worth doing)
-
If you use the React SDK, check whether the
configon<Chatbot>needs updating
What is new
- Automation Tool support: the
asgard.tool_call.startandasgard.tool_call.completeevents - Process tracking: the
asgard.process.startandasgard.process.completeevents - Knowledge Base 2.0: an improved RAG response format
- Data Insight integration: responses that carry charts and data visualisations
Platform releases
For the full record of platform updates, see the release notes.
Milestones
| Date | Version | What it brought |
|---|---|---|
| 2024-07 | 1.0 | The Asgard LLM Application SaaS Platform goes live |
| 2024-11 | 1.1 | Automation Tools, and a lift in efficiency |
| 2025-01 | 1.2 | RAG Enhancement and a stronger knowledge base |
| 2025-05 | 2.0 | Knowledge Base 2.0 and new segment settings |
| 2025-07 | 2.1 | The Billing Portal (Fehu) |
| 2025-09 | 2.2 | Data Insight (Mimir) |
| 2025-11 | 2.3 | The Integration Tool |
API compatibility
The Asgard API follows these compatibility principles:
- SSE events: a new event type is backward compatible, and an older client can ignore an event it does not know
- Request format: the core fields
customChannelId,textandactionstay stable - Response format: a new field inside the
factobject is backward compatible
tip
Add a default case to your SSE event handling and ignore event types you do not recognise. That is what keeps it backward compatible:
switch (event.eventType) {
case 'asgard.message.delta':
// handle the streamed text
break;
case 'asgard.message.complete':
// handle the completed message
break;
// ... the other events you know about
default:
// ignore an unknown event type, which keeps this backward compatible
break;
}
Getting help
If you run into trouble while migrating:
- Read the FAQ
- Contact technical support: service@asgard-ai.com
- Look through the open-source resources in the Yggdrasil community