# dev.knotless.getForge

> Published by [lexicons.knotless.dev](https://lexicon.garden/identity/did:plc:yqsg7znbbhfmj3a2nrpnaerk)

✓ This is the authoritative definition for this NSID.

## Description

Every pull, issue, comment and state change anyone has written about a public repository, as an appview has indexed them from the firehose.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:yqsg7znbbhfmj3a2nrpnaerk/dev.knotless.getForge)
- [Documentation](https://lexicon.garden/lexicon/did:plc:yqsg7znbbhfmj3a2nrpnaerk/dev.knotless.getForge/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:yqsg7znbbhfmj3a2nrpnaerk/dev.knotless.getForge/examples)

## Definitions

### `dev.knotless.getForge#entry`

**Type**: `object`

One record, as written.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `author` | `string` (did) | Yes | The account the record is in. |
| `uri` | `string` (at-uri) | Yes | The record's URI. |
| `value` | `unknown` | Yes | The record verbatim: a dev.knotless.pull, issue, comment, state, hide or block. |

### `dev.knotless.getForge`

**Type**: `query`

Every pull, issue, comment, state change, hide and block anyone has written about a public repository, as an appview has indexed them from the firehose, less what its owner and the appview keep out. A page at a time, ordered by URI: follow `cursor` until it is absent. No authentication; responses are not personalized. Private repositories are never indexed: their readers list the members' records in the space.

#### Parameters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `cursor` | `string` (at-uri) | No | The last URI of the page before. |
| `key` | `string` (tid) | Yes | The repository's `key`. Records naming it are returned whatever name their URI has, with those naming a repository it was moved from with its owner's agreement. |
| `limit` | `integer` | No |  |
| `repo` | `string` (at-uri) | Yes | The repository's dev.knotless.repo record; only its owner is matched. |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `cursor` | `string` (at-uri) | No | Absent on the last page. |
| `entries` | `array` | Yes |  |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "entry": {
      "description": "One record, as written.",
      "properties": {
        "author": {
          "description": "The account the record is in.",
          "format": "did",
          "type": "string"
        },
        "uri": {
          "description": "The record's URI.",
          "format": "at-uri",
          "type": "string"
        },
        "value": {
          "description": "The record verbatim: a dev.knotless.pull, issue, comment, state, hide or block.",
          "type": "unknown"
        }
      },
      "required": [
        "uri",
        "author",
        "value"
      ],
      "type": "object"
    },
    "main": {
      "description": "Every pull, issue, comment, state change, hide and block anyone has written about a public repository, as an appview has indexed them from the firehose, less what its owner and the appview keep out. A page at a time, ordered by URI: follow `cursor` until it is absent. No authentication; responses are not personalized. Private repositories are never indexed: their readers list the members' records in the space.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "cursor": {
              "description": "Absent on the last page.",
              "format": "at-uri",
              "type": "string"
            },
            "entries": {
              "items": {
                "ref": "#entry",
                "type": "ref"
              },
              "type": "array"
            }
          },
          "required": [
            "entries"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "cursor": {
            "description": "The last URI of the page before.",
            "format": "at-uri",
            "type": "string"
          },
          "key": {
            "description": "The repository's `key`. Records naming it are returned whatever name their URI has, with those naming a repository it was moved from with its owner's agreement.",
            "format": "tid",
            "type": "string"
          },
          "limit": {
            "default": 500,
            "maximum": 1000,
            "minimum": 1,
            "type": "integer"
          },
          "repo": {
            "description": "The repository's dev.knotless.repo record; only its owner is matched.",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "repo",
          "key"
        ],
        "type": "params"
      },
      "type": "query"
    }
  },
  "description": "Every pull, issue, comment and state change anyone has written about a public repository, as an appview has indexed them from the firehose.",
  "id": "dev.knotless.getForge",
  "lexicon": 1
}
```
