# pub.chive.sync.registerPDS

> 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.sync.registerPDS)
- [Documentation](https://lexicon.garden/lexicon/did:plc:7natp5xae72bddaqlkef2t4e/pub.chive.sync.registerPDS/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:7natp5xae72bddaqlkef2t4e/pub.chive.sync.registerPDS/examples)

## Definitions

### `pub.chive.sync.registerPDS`

**Type**: `procedure`

Register a PDS for scanning to ensure records from non-relay PDSes can be discovered and indexed

#### Input

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `pdsUrl` | `string` (uri) | Yes | PDS endpoint URL to register |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `pdsUrl` | `string` (uri) | Yes | The registered PDS URL |
| `status` | `string` | Yes | Registration status |
| `message` | `string` | No | Human-readable status message |
| `registered` | `boolean` | Yes | Whether the PDS was registered |

#### Errors

- **InvalidRequest**
- **ServiceUnavailable**

## Raw Schema

```json
{
  "id": "pub.chive.sync.registerPDS",
  "defs": {
    "main": {
      "type": "procedure",
      "input": {
        "schema": {
          "type": "object",
          "required": [
            "pdsUrl"
          ],
          "properties": {
            "pdsUrl": {
              "type": "string",
              "format": "uri",
              "description": "PDS endpoint URL to register"
            }
          }
        },
        "encoding": "application/json"
      },
      "errors": [
        {
          "name": "InvalidRequest"
        },
        {
          "name": "ServiceUnavailable"
        }
      ],
      "output": {
        "schema": {
          "type": "object",
          "required": [
            "pdsUrl",
            "registered",
            "status"
          ],
          "properties": {
            "pdsUrl": {
              "type": "string",
              "format": "uri",
              "description": "The registered PDS URL"
            },
            "status": {
              "type": "string",
              "description": "Registration status",
              "knownValues": [
                "pending",
                "already_exists",
                "scanned"
              ]
            },
            "message": {
              "type": "string",
              "description": "Human-readable status message"
            },
            "registered": {
              "type": "boolean",
              "description": "Whether the PDS was registered"
            }
          }
        },
        "encoding": "application/json"
      },
      "description": "Register a PDS for scanning to ensure records from non-relay PDSes can be discovered and indexed"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "revision": 1
}
```
