Build with SpatioSDK
A comprehensive Swift package for building API-based capabilities that integrate with Spatio and Spatio AI. Create command-line tools, manage authentication hierarchies, and build capabilities with built-in mock data support.
Key Features
Everything you need to build AI capabilities
Command-Line First
Build executable capabilities with swift-sh support and automatic parameter parsing
Hierarchical Auth
Organization → Group → Capability authentication with environment variable integration
Multiple Storage
Local SQLite, Spatio AI format, or remote capabilities-store repository
Use Cases
What developers are building
Explore how teams leverage SpatioSDK to create transformative experiences
API Integration Tools
Build command-line capabilities that integrate with any REST API. Automatic parameter parsing, authentication handling, and mock data support.
Spatio AI Integration
Create capabilities compatible with Spatio AI's ecosystem. Programmatically generate organizations, groups, and capabilities with full metadata support.
Mock Data Testing
Develop and test capabilities without API access. Built-in mock data provider system with automatic response generation.
SDK Components
Enterprise-ready development tools
A comprehensive Swift package with authentication management, capability generation, and multi-format persistence
BaseRemoteCapability
Abstract base class for creating remote API capabilities. Handles authentication, parameter validation, and mock data automatically.
CapabilityGenerator
Programmatically create organizations and capabilities. Supports local storage, Spatio AI format, and remote repository modes.
AuthManager
Hierarchical authentication system with organization, group, and capability-level auth. Environment variable integration included.
Multi-Format Storage
Store capabilities in local SQLite, Spatio AI's native format, or capabilities-store repository. Full compatibility across all formats.
Command Line Tools
Build executable scripts with swift-sh. Automatic parameter parsing, result formatting, and error handling for CLI capabilities.
SwiftUI Integration
Native SwiftUI components for building capability management interfaces and apps with full SDK integration.
Live Examples
From idea to production
Real implementations developers are shipping. Copy, customize, and deploy in minutes.
#!/usr/bin/env swift sh
import SpatioSDK // @spatio-labs ~> 1.0.0
import Foundation
// Configure authentication for your organization
func configureAuth() {
let authConfig = AuthConfig(
type: .apiKey,
parameterName: "X-API-Key",
location: .header,
envVariable: "WEATHER_API_KEY"
)
AuthManager.shared.setAuthConfig(for: "weather-org", config: authConfig)
}
// Create a capability by extending BaseRemoteCapability
class WeatherCapability: BaseRemoteCapability {
override func configureRequest() -> APIRequest {
return APIRequest(
baseURL: "https://api.openweathermap.org",
endpoint: "/data/2.5/weather",
method: "GET",
parameters: [
APIParameter(
name: "q",
type: "string",
required: true,
location: .query,
description: "City name or coordinates"
)
]
)
}
// Optional: Provide mock data for testing
override func provideMockData(for params: [String: String]) -> String {
return """
{
"weather": [{"main": "Clear", "description": "clear sky"}],
"main": {"temp": 22.5, "humidity": 65},
"name": "\(params["q"] ?? "Unknown")"
}
"""
}
}
// Main execution
@main
struct WeatherCapabilityScript {
static func main() async throws {
configureAuth()
let capability = WeatherCapability(
organization: "weather-org",
capability: "weather-lookup"
)
// Parse command line arguments
let params = CommandLineUtils.parseArguments(for: capability.request.parameters)
// Execute capability
let result = try await capability.execute(params: params)
// Output result
CommandLineUtils.printResult(result)
}
}Ready to get started?
Join thousands of professionals who trust our products to enhance their productivity.