Back to free tools
Label definition builder

BlueSky moderation labeler and tag builder

Draft custom label value definitions, labeler service policy JSON, and unsigned sample labels for AT Protocol moderation workflows before a developer builds the actual labeler service.

Build label JSON

Custom label values use lowercase letters and dashes. Global values that start with ! are reserved and should not be created here.

Definition shape ready

Generated JSON

{
  "labelValueDefinition": {
    "identifier": "needs-source",
    "severity": "inform",
    "blurs": "none",
    "defaultSetting": "warn",
    "adultOnly": false,
    "locales": [
      {
        "lang": "en",
        "name": "Needs source",
        "description": "Marks posts where a citation or primary source would help readers evaluate the claim."
      }
    ]
  },
  "labelerServiceRecord": {
    "$type": "app.bsky.labeler.service",
    "policies": {
      "labelValues": [
        "needs-source"
      ],
      "labelValueDefinitions": [
        {
          "identifier": "needs-source",
          "severity": "inform",
          "blurs": "none",
          "defaultSetting": "warn",
          "adultOnly": false,
          "locales": [
            {
              "lang": "en",
              "name": "Needs source",
              "description": "Marks posts where a citation or primary source would help readers evaluate the claim."
            }
          ]
        }
      ]
    },
    "subjectTypes": [
      "record"
    ],
    "subjectCollections": [
      "app.bsky.feed.post"
    ],
    "reasonTypes": [
      "com.atproto.moderation.defs#reasonOther"
    ],
    "createdAt": "2026-06-21T22:26:16.923Z"
  },
  "sampleUnsignedLabel": {
    "src": "did:web:moderation.example.com",
    "uri": "at://did:plc:example123/app.bsky.feed.post/3example",
    "val": "needs-source",
    "cts": "2026-06-21T22:26:16.923Z"
  },
  "headersForClients": {
    "requestHeader": "atproto-accept-labelers: did:web:moderation.example.com",
    "note": "Clients include labeler DIDs to request labels from selected labelers. This tool does not subscribe users or publish labels."
  }
}
From free tool to scheduled queue

Stop fighting formatting limits and API bugs. Craft your blocks cleanly using our automated tools, then schedule them directly to your BlueSky feed using ONYX.

Start Planning for Free