SignOps · JSON-LD Context
Signops Context
JSON-LD context defining the semantic vocabulary for Signops from SignOps.
12 Classes
52 Properties
4 Namespaces
Namespaces
schema:
https://schema.org/
xsd:
http://www.w3.org/2001/XMLSchema#
dcterms:
http://purl.org/dc/terms/
signops:
https://signops.dev/schema#
Classes
Error
Token
Device
PushRequest
PushResult
PushSummary
PushDetail
Template
Approval
Passkey
ActivityStart
ActivityState
Properties
| Property | Type | Container |
|---|---|---|
| error | ||
| token | string | |
| expires_at | dateTime | |
| id | string | |
| user_id | string | |
| platform | string | |
| route | string | |
| name | string | |
| trusted | boolean | |
| created_at | dateTime | |
| last_seen_at | dateTime | |
| user_ids | list | |
| topic | string | |
| all | boolean | |
| title | string | |
| body | string | |
| image | string | |
| link | string | |
| data | ||
| buttons | list | |
| sound | ||
| badge | integer | |
| android_channel | string | |
| ios_category | string | |
| thread_id | string | |
| priority | string | |
| ttl | integer | |
| collapse_key | string | |
| send_at | dateTime | |
| marketing | boolean | |
| template | string | |
| fields | ||
| fields_by_user | ||
| inbox | boolean | |
| status | string | |
| devices | integer | |
| sent | integer | |
| failed | integer | |
| opened | integer | |
| by_platform | ||
| description | string | |
| context | string | |
| device_id | string | |
| answered_at | dateTime | |
| synced | boolean | |
| last_used_at | dateTime | |
| ref | string | |
| progress | integer | |
| content_state | ||
| alert | ||
| stale_at | dateTime | |
| dismiss_at | dateTime |
JSON-LD Document
{
"@context": {
"@vocab": "https://signops.dev/schema#",
"schema": "https://schema.org/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"dcterms": "http://purl.org/dc/terms/",
"signops": "https://signops.dev/schema#",
"Error": "signops:Error",
"error": {
"@id": "signops:error"
},
"Token": "signops:Token",
"token": {
"@id": "signops:token",
"@type": "xsd:string"
},
"expires_at": {
"@id": "signops:expires_at",
"@type": "xsd:dateTime"
},
"Device": "signops:Device",
"id": {
"@id": "signops:id",
"@type": "xsd:string"
},
"user_id": {
"@id": "signops:user_id",
"@type": "xsd:string"
},
"platform": {
"@id": "signops:platform",
"@type": "xsd:string"
},
"route": {
"@id": "signops:route",
"@type": "xsd:string"
},
"name": {
"@id": "signops:name",
"@type": "xsd:string"
},
"trusted": {
"@id": "signops:trusted",
"@type": "xsd:boolean"
},
"created_at": {
"@id": "signops:created_at",
"@type": "xsd:dateTime"
},
"last_seen_at": {
"@id": "signops:last_seen_at",
"@type": "xsd:dateTime"
},
"PushRequest": "signops:PushRequest",
"user_ids": {
"@id": "signops:user_ids",
"@container": "@list"
},
"topic": {
"@id": "signops:topic",
"@type": "xsd:string"
},
"all": {
"@id": "signops:all",
"@type": "xsd:boolean"
},
"title": {
"@id": "signops:title",
"@type": "xsd:string"
},
"body": {
"@id": "signops:body",
"@type": "xsd:string"
},
"image": {
"@id": "signops:image",
"@type": "xsd:string"
},
"link": {
"@id": "signops:link",
"@type": "xsd:string"
},
"data": {
"@id": "signops:data"
},
"buttons": {
"@id": "signops:buttons",
"@container": "@list"
},
"sound": {
"@id": "signops:sound"
},
"badge": {
"@id": "signops:badge",
"@type": "xsd:integer"
},
"android_channel": {
"@id": "signops:android_channel",
"@type": "xsd:string"
},
"ios_category": {
"@id": "signops:ios_category",
"@type": "xsd:string"
},
"thread_id": {
"@id": "signops:thread_id",
"@type": "xsd:string"
},
"priority": {
"@id": "signops:priority",
"@type": "xsd:string"
},
"ttl": {
"@id": "signops:ttl",
"@type": "xsd:integer"
},
"collapse_key": {
"@id": "signops:collapse_key",
"@type": "xsd:string"
},
"send_at": {
"@id": "signops:send_at",
"@type": "xsd:dateTime"
},
"marketing": {
"@id": "signops:marketing",
"@type": "xsd:boolean"
},
"template": {
"@id": "signops:template",
"@type": "xsd:string"
},
"fields": {
"@id": "signops:fields"
},
"fields_by_user": {
"@id": "signops:fields_by_user"
},
"inbox": {
"@id": "signops:inbox",
"@type": "xsd:boolean"
},
"PushResult": "signops:PushResult",
"status": {
"@id": "signops:status",
"@type": "xsd:string"
},
"devices": {
"@id": "signops:devices",
"@type": "xsd:integer"
},
"sent": {
"@id": "signops:sent",
"@type": "xsd:integer"
},
"failed": {
"@id": "signops:failed",
"@type": "xsd:integer"
},
"PushSummary": "signops:PushSummary",
"PushDetail": "signops:PushDetail",
"opened": {
"@id": "signops:opened",
"@type": "xsd:integer"
},
"by_platform": {
"@id": "signops:by_platform"
},
"Template": "signops:Template",
"description": {
"@id": "signops:description",
"@type": "xsd:string"
},
"Approval": "signops:Approval",
"context": {
"@id": "signops:context",
"@type": "xsd:string"
},
"device_id": {
"@id": "signops:device_id",
"@type": "xsd:string"
},
"answered_at": {
"@id": "signops:answered_at",
"@type": "xsd:dateTime"
},
"Passkey": "signops:Passkey",
"synced": {
"@id": "signops:synced",
"@type": "xsd:boolean"
},
"last_used_at": {
"@id": "signops:last_used_at",
"@type": "xsd:dateTime"
},
"ActivityStart": "signops:ActivityStart",
"ref": {
"@id": "signops:ref",
"@type": "xsd:string"
},
"progress": {
"@id": "signops:progress",
"@type": "xsd:integer"
},
"content_state": {
"@id": "signops:content_state"
},
"alert": {
"@id": "signops:alert"
},
"stale_at": {
"@id": "signops:stale_at",
"@type": "xsd:dateTime"
},
"dismiss_at": {
"@id": "signops:dismiss_at",
"@type": "xsd:dateTime"
},
"ActivityState": "signops:ActivityState"
},
"@type": "schema:Dataset",
"schema:name": "SignOps API JSON-LD context",
"schema:description": "A JSON-LD @context for the objects SignOps's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-11-08) from openapi/signops-openapi.json.",
"dcterms:created": "2026-11-08",
"dcterms:source": [
"openapi/signops-openapi.json"
]
}