Get locks owned by the user
Returns locks where LockAggregate.state.ownerId === user.userId, sourced from the SpacetimeDB device_state read model.
curl -X GET "https://api.spkey.co/users/example_string/owned-locks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN (JWT)" \
-H "X-API-Key: YOUR_API_KEY"
import requests
import json
url = "https://api.spkey.co/users/example_string/owned-locks"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)",
"X-API-Key": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://api.spkey.co/users/example_string/owned-locks", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)",
"X-API-Key": "YOUR_API_KEY"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.spkey.co/users/example_string/owned-locks", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN (JWT)")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.spkey.co/users/example_string/owned-locks')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN (JWT)'
request['X-API-Key'] = 'YOUR_API_KEY'
response = http.request(request)
puts response.body
{
"locks": [
{
"lockUuid": "example_string",
"serialNumber": "null",
"thingName": "null",
"online": true,
"keysCount": 10,
"residentCount": 123,
"lastEvent": "null",
"lastUpdated": "null"
}
],
"totalCount": 10,
"source": "spacetimedb"
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
/users/{id}/owned-locksTarget server for requests. Edit to use your own host.
JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.
API key for B2B organization access. Provided during organization onboarding.
User ID
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token (JWT). JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.
API Key for authentication. API key for B2B organization access. Provided during organization onboarding.
Path Parameters
User ID
Responses
Lock device UUID
Manufacturer serial number
AWS IoT thing name
Whether the device is currently reporting online
Number of physical keys on the lock
Number of users granted access
Last projected event type
Unix epoch ms when the last projected event was applied
spacetimedbunavailable