January
Welcome to our changelog! 🚀
Stay updated on the latest changes and improvements in nullplatform.
✨ UI and discovery improvements
This month includes several UI and usability improvements focused on faster discovery, clearer context, and better sorting across key views.
Applications list (grid)
The Applications grid has been redesigned to make navigation and management easier.
- Quick access links to repository, scopes, and deployments are now available directly on each application card.
- New sorting options, including recently used, help you find relevant applications faster.
- Improved card layout and visual hierarchy for better scanning.
Search and sorting enhancements
We’ve expanded filtering and sorting capabilities across multiple sections of the platform:
- Namespaces: new sort by name option.
- Releases: sort by name and created date.
- Logs: improved sorting when using date range filters.
- Releases list: search now supports more flexible matching by branch.
- Service actions view: now shows Last activity so you can quickly see recent usage.
✨ OCI and OKE provider support
You can now configure Oracle Cloud Infrastructure (OCI) and Oracle Kubernetes Engine (OKE) as supported providers in nullplatform. This expands your cloud and container orchestration options, enabling you to run agent workloads and manage clusters on Oracle Cloud.
Where to configure them:
- OCI: Platform settings → Cloud providers
- OKE: Platform settings → Container orchestration
👉 See the Supported providers docs for setup details.
✨ Cross-property validation in JSON Schema ($data)
Forms generated from JSON Schema now support cross-property validation using AJV’s $data extension.
You can define rules that compare values across fields directly in the schema — for example, requiring one field to be greater than another.
Example: ensure interval is greater than timeout:
{
"type": "object",
"properties": {
"timeout": {
"type": "number",
"title": "Timeout (seconds)"
},
"interval": {
"type": "number",
"title": "Interval (seconds)",
"exclusiveMinimum": { "$data": "1/timeout" }
}
}
}
"$data": "1/timeout"is a relative JSON Pointer:1= parent object,timeout= property.- The
intervalvalue must be strictly greater thantimeout.
You can also use $data with keywords such as minimum, maximum, minLength, and maxLength to express cross-field rules.
👉 See the Special JSON schema keys docs for more details.
✨ Bulk create grants for a user
You can now create multiple grants for a user in a single request, simplifying and speeding up permissions management.
Use the user ID and send a bulk request to the grants endpoint:
curl -L 'https://api.nullplatform.com/user/:id/grant' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <token>' \
-d '[
{
"nrn": "organization=1:account=2",
"role_slug": "developer"
},
{
"nrn": "organization=1:account=3",
"role_slug": "ops"
}
]'
👉 See the Grants and permissions docs for more information.
Wishing you a fantastic year ahead – from the nullplatform team! ❤️