app.rocksky.mirror.putMirrorSource

Upsert a mirror source for the authenticated user. Toggling `enabled` notifies the mirror process over NATS so it can start/stop the per-user task without a restart.

Repository @rocksky.app did:plc:vegqomyce4ssoqs7zwqvgqty namespace authority
Details · procedure
Kindprocedure
Authoritymirror.rocksky.app
Indexed
cid bafyreifayhn564l3dlxrerzo7nmdf2jevonopryelm7oym2r3t3dmwx7t4

Checks

Valid
  • unlimited-string defs.main.input.schema.properties.apiKeyNo maxLength, maxGraphemes or format limits this string.
  • unlimited-string defs.main.input.schema.properties.externalUsernameNo maxLength, maxGraphemes or format limits this string.
  • unlimited-string defs.main.input.schema.properties.providerNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Upsert a mirror source for the authenticated user. Toggling `enabled` notifies the mirror process over NATS so it can start/stop the per-user task without a restart.",
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "apiKey": {
              "description": "API key / token to be encrypted at rest. Omit to leave the existing key unchanged. Pass an empty string to clear it.",
              "type": "string"
            },
            "enabled": {
              "description": "Enable or disable mirroring for this provider.",
              "type": "boolean"
            },
            "externalUsername": {
              "description": "External username (Last.fm / ListenBrainz). Required when enabling those providers. Ignored for Teal.fm.",
              "type": "string"
            },
            "provider": {
              "description": "One of: lastfm, listenbrainz, tealfm",
              "type": "string"
            }
          },
          "required": [
            "provider"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "ref": "app.rocksky.mirror.defs#mirrorSourceView",
          "type": "ref"
        }
      },
      "type": "procedure"
    }
  },
  "id": "app.rocksky.mirror.putMirrorSource",
  "lexicon": 1
}