# pub.chive.governance.listTrustedEditors

> Published by [chive.pub](https://lexicon.garden/identity/did:plc:7natp5xae72bddaqlkef2t4e)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:7natp5xae72bddaqlkef2t4e/pub.chive.governance.listTrustedEditors)
- [Documentation](https://lexicon.garden/lexicon/did:plc:7natp5xae72bddaqlkef2t4e/pub.chive.governance.listTrustedEditors/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:7natp5xae72bddaqlkef2t4e/pub.chive.governance.listTrustedEditors/examples)

## Definitions

### `pub.chive.governance.listTrustedEditors`

**Type**: `query`

List all users with trusted editor or higher roles (admin only)

#### Parameters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `role` | `string` | No | Filter by role |
| `limit` | `integer` | No | Maximum number of results to return |
| `cursor` | `string` | No | Pagination cursor for next page |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `total` | `integer` | Yes | Total number of editors |
| `cursor` | `string` | No | Cursor for next page |
| `editors` | `array` | Yes | List of trusted editors |

#### Errors

- **AuthenticationRequired**
- **Unauthorized**

### `pub.chive.governance.listTrustedEditors#trustedEditor`

**Type**: `object`

Trusted editor record

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `did` | `string` (did) | Yes | Editor DID |
| `role` | `string` | Yes | Current governance role |
| `handle` | `string` | No | Editor handle |
| `metrics` | `ref` → `#reputationMetrics` | Yes |  |
| `displayName` | `string` | No | Editor display name |
| `hasDelegation` | `boolean` | Yes | Whether editor has an active PDS delegation |
| `roleGrantedAt` | `integer` | Yes | Timestamp when role was granted |
| `roleGrantedBy` | `string` (did) | No | DID of admin who granted the role |
| `dailyRateLimit` | `integer` | No | Daily rate limit for delegation |
| `delegationExpiresAt` | `integer` | No | Delegation expiration timestamp |
| `recordsCreatedToday` | `integer` | No | Records created today under delegation |

### `pub.chive.governance.listTrustedEditors#reputationMetrics`

**Type**: `object`

User reputation metrics for governance

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `did` | `string` (did) | Yes | User DID |
| `role` | `string` | Yes | Current governance role |
| `voteCount` | `integer` | Yes | Votes cast |
| `eprintCount` | `integer` | Yes | Total eprints authored |
| `warningCount` | `integer` | Yes | Moderation warnings received |
| `proposalCount` | `integer` | Yes | Governance proposals submitted |
| `accountAgeDays` | `integer` | Yes | Account age in days |
| `violationCount` | `integer` | Yes | Policy violations recorded |
| `missingCriteria` | `array` | Yes | List of missing eligibility criteria |
| `reputationScore` | `integer` | Yes | Computed reputation score |
| `accountCreatedAt` | `integer` | Yes | Account creation timestamp |
| `totalEndorsements` | `integer` | Yes | Total endorsements received |
| `successfulProposals` | `integer` | Yes | Proposals that were approved |
| `wellEndorsedEprintCount` | `integer` | Yes | Eprints with substantial endorsements |
| `eligibleForTrustedEditor` | `boolean` | Yes | Whether user meets trusted editor criteria |

## Raw Schema

```json
{
  "id": "pub.chive.governance.listTrustedEditors",
  "defs": {
    "main": {
      "type": "query",
      "errors": [
        {
          "name": "AuthenticationRequired"
        },
        {
          "name": "Unauthorized"
        }
      ],
      "output": {
        "schema": {
          "type": "object",
          "required": [
            "editors",
            "total"
          ],
          "properties": {
            "total": {
              "type": "integer",
              "description": "Total number of editors"
            },
            "cursor": {
              "type": "string",
              "description": "Cursor for next page"
            },
            "editors": {
              "type": "array",
              "items": {
                "ref": "#trustedEditor",
                "type": "ref"
              },
              "description": "List of trusted editors"
            }
          }
        },
        "encoding": "application/json"
      },
      "parameters": {
        "type": "params",
        "properties": {
          "role": {
            "type": "string",
            "description": "Filter by role",
            "knownValues": [
              "community-member",
              "trusted-editor",
              "graph-editor",
              "domain-expert",
              "administrator"
            ]
          },
          "limit": {
            "type": "integer",
            "default": 50,
            "maximum": 100,
            "minimum": 1,
            "description": "Maximum number of results to return"
          },
          "cursor": {
            "type": "string",
            "description": "Pagination cursor for next page"
          }
        }
      },
      "description": "List all users with trusted editor or higher roles (admin only)"
    },
    "trustedEditor": {
      "type": "object",
      "required": [
        "did",
        "role",
        "roleGrantedAt",
        "hasDelegation",
        "metrics"
      ],
      "properties": {
        "did": {
          "type": "string",
          "format": "did",
          "description": "Editor DID"
        },
        "role": {
          "type": "string",
          "description": "Current governance role",
          "knownValues": [
            "community-member",
            "trusted-editor",
            "graph-editor",
            "domain-expert",
            "administrator"
          ]
        },
        "handle": {
          "type": "string",
          "description": "Editor handle"
        },
        "metrics": {
          "ref": "#reputationMetrics",
          "type": "ref"
        },
        "displayName": {
          "type": "string",
          "description": "Editor display name"
        },
        "hasDelegation": {
          "type": "boolean",
          "description": "Whether editor has an active PDS delegation"
        },
        "roleGrantedAt": {
          "type": "integer",
          "description": "Timestamp when role was granted"
        },
        "roleGrantedBy": {
          "type": "string",
          "format": "did",
          "description": "DID of admin who granted the role"
        },
        "dailyRateLimit": {
          "type": "integer",
          "minimum": 0,
          "description": "Daily rate limit for delegation"
        },
        "delegationExpiresAt": {
          "type": "integer",
          "description": "Delegation expiration timestamp"
        },
        "recordsCreatedToday": {
          "type": "integer",
          "minimum": 0,
          "description": "Records created today under delegation"
        }
      },
      "description": "Trusted editor record"
    },
    "reputationMetrics": {
      "type": "object",
      "required": [
        "did",
        "accountCreatedAt",
        "accountAgeDays",
        "eprintCount",
        "wellEndorsedEprintCount",
        "totalEndorsements",
        "proposalCount",
        "voteCount",
        "successfulProposals",
        "warningCount",
        "violationCount",
        "reputationScore",
        "role",
        "eligibleForTrustedEditor",
        "missingCriteria"
      ],
      "properties": {
        "did": {
          "type": "string",
          "format": "did",
          "description": "User DID"
        },
        "role": {
          "type": "string",
          "description": "Current governance role",
          "knownValues": [
            "community-member",
            "trusted-editor",
            "graph-editor",
            "domain-expert",
            "administrator"
          ]
        },
        "voteCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Votes cast"
        },
        "eprintCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Total eprints authored"
        },
        "warningCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Moderation warnings received"
        },
        "proposalCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Governance proposals submitted"
        },
        "accountAgeDays": {
          "type": "integer",
          "minimum": 0,
          "description": "Account age in days"
        },
        "violationCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Policy violations recorded"
        },
        "missingCriteria": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of missing eligibility criteria"
        },
        "reputationScore": {
          "type": "integer",
          "minimum": 0,
          "description": "Computed reputation score"
        },
        "accountCreatedAt": {
          "type": "integer",
          "description": "Account creation timestamp"
        },
        "totalEndorsements": {
          "type": "integer",
          "minimum": 0,
          "description": "Total endorsements received"
        },
        "successfulProposals": {
          "type": "integer",
          "minimum": 0,
          "description": "Proposals that were approved"
        },
        "wellEndorsedEprintCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Eprints with substantial endorsements"
        },
        "eligibleForTrustedEditor": {
          "type": "boolean",
          "description": "Whether user meets trusted editor criteria"
        }
      },
      "description": "User reputation metrics for governance"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "revision": 1
}
```
