~ knotless Search/
↑↓ move↵ open⇧↵ all results

johnandersen777.bsky.social/atlibs-fedproxy

fedproxy and ingress modules for atlibs: SSH public keys on your PDS, did:key ingress; pages and web tiles

0
0
main
54 lines · 2.3 KB Raw History
{
	"name": "ingress",
	"description": "Serve HTTP and XRPC from this module at https://did-key-<key>.xrpc.fedproxy.com, through the fedproxy did:key ingress relay.",
	"didkey": {
		"services": ["https://xrpc.fedproxy.com"]
	},
	"actions": [
		{
			"entry": "serve",
			"label": "Serve",
			"description": "Registers a did:key with xrpc.fedproxy.com and answers what reaches its host name (and each alias whose _xrpc TXT holds the did:key) until maxRequests are served or lifetimeMs passes. With forward, the host's com.fedfork.exec.ingress.request output {status, body, contentType, headers} is the response; headers: name -> string or [string].",
			"fields": [
				{
					"key": "maxRequests",
					"label": "Requests to serve"
				},
				{
					"key": "lifetimeMs",
					"label": "Lifetime (ms)"
				},
				{
					"key": "forward",
					"label": "Forward every request to the host (true)"
				},
				{
					"key": "aliases",
					"label": "Custom host names (space separated; each needs a _xrpc.<host> TXT naming this did:key)"
				},
				{
					"key": "quietMs",
					"label": "Quiet (ms): leave keepalives unanswered so the relay evicts, to test reconnect"
				}
			]
		}
	],
	"config": [
		{ "key": "routes", "label": "XRPC methods to route", "type": "array", "description": "NSIDs whose /xrpc/<nsid> requests become calls to that NSID (a composition edge serves each)" },
		{ "key": "deadlineMs", "label": "Deadline (ms)", "type": "integer", "description": "How long a routed or forwarded call may take before the request answers 504 (default 8000)" },
		{ "key": "maxRequests", "label": "Requests to serve", "type": "integer" },
		{ "key": "lifetimeMs", "label": "Lifetime (ms)", "type": "integer" },
		{ "key": "forward", "label": "Forward every request to the host", "type": "boolean" },
		{ "key": "aliases", "label": "Custom host names", "type": "array", "description": "Each needs a _xrpc.<host> TXT naming this did:key" },
		{ "key": "relay", "label": "Relay", "type": "string", "description": "default https://xrpc.fedproxy.com" }
	],
	"calls": [
		"com.fedfork.exec.didkey.getServiceAuth",
		"com.fedfork.exec.didkey.sign",
		"com.fedproxy.temp.xrpc.getRegistrationNonce",
		"com.fedproxy.temp.xrpc.subscribe",
		"com.atproto.repo.describeRepo",
		"com.fedfork.exec.ingress.request"
	],
	"anyHooks": true
}