# pet.trezy.getFeatures

> Published by [trezy.pet](https://lexicon.garden/identity/did:plc:ollch4g7tes2reb5eceiwuol)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:ollch4g7tes2reb5eceiwuol/pet.trezy.getFeatures)
- [Documentation](https://lexicon.garden/lexicon/did:plc:ollch4g7tes2reb5eceiwuol/pet.trezy.getFeatures/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:ollch4g7tes2reb5eceiwuol/pet.trezy.getFeatures/examples)

## Definitions

### `pet.trezy.getFeatures#entry`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `consenting` | `boolean` | Yes |  |
| `keeper` | `string` (did) | No |  |
| `passedOver` | `array` | Yes |  |
| `pet` | `ref` → `#pet` | No |  |
| `pickedAt` | `string` (datetime) | Yes |  |
| `post` | `string` (at-uri) | No |  |
| `postedAt` | `string` (datetime) | No |  |
| `reply` | `ref` → `#reply` | No |  |
| `status` | `string` | Yes |  |
| `week` | `string` | Yes |  |

### `pet.trezy.getFeatures`

**Type**: `query`

Feature records, newest week first, with what a reader needs to show them: the pet's facts, the keeper's reply and consent. Public: every field here is already public in somebody's repo.

#### Parameters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `cursor` | `string` | No | A week. Returns weeks strictly before it. |
| `limit` | `integer` | No |  |
| `pet` | `string` (at-uri) | No |  |
| `status` | `string` | No |  |
| `week` | `string` | No |  |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `cursor` | `string` | No |  |
| `features` | `array` | Yes |  |

### `pet.trezy.getFeatures#pet`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `createdAt` | `string` (datetime) | Yes |  |
| `interactions` | `integer` | Yes |  |
| `name` | `string` | Yes |  |
| `retired` | `boolean` | Yes |  |
| `species` | `string` | Yes |  |
| `uri` | `string` (at-uri) | Yes |  |

### `pet.trezy.getFeatures#reply`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `createdAt` | `string` (datetime) | Yes |  |
| `decline` | `boolean` | Yes |  |
| `text` | `string` | Yes |  |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "entry": {
      "properties": {
        "consenting": {
          "type": "boolean"
        },
        "keeper": {
          "format": "did",
          "type": "string"
        },
        "passedOver": {
          "items": {
            "format": "did",
            "type": "string"
          },
          "type": "array"
        },
        "pet": {
          "ref": "#pet",
          "type": "ref"
        },
        "pickedAt": {
          "format": "datetime",
          "type": "string"
        },
        "post": {
          "format": "at-uri",
          "type": "string"
        },
        "postedAt": {
          "format": "datetime",
          "type": "string"
        },
        "reply": {
          "ref": "#reply",
          "type": "ref"
        },
        "status": {
          "knownValues": [
            "picked",
            "posted",
            "skipped"
          ],
          "type": "string"
        },
        "week": {
          "maxLength": 8,
          "type": "string"
        }
      },
      "required": [
        "week",
        "status",
        "passedOver",
        "pickedAt",
        "consenting"
      ],
      "type": "object"
    },
    "main": {
      "description": "Feature records, newest week first, with what a reader needs to show them: the pet's facts, the keeper's reply and consent. Public: every field here is already public in somebody's repo.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "cursor": {
              "type": "string"
            },
            "features": {
              "items": {
                "ref": "#entry",
                "type": "ref"
              },
              "type": "array"
            }
          },
          "required": [
            "features"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "cursor": {
            "description": "A week. Returns weeks strictly before it.",
            "type": "string"
          },
          "limit": {
            "default": 25,
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          },
          "pet": {
            "format": "at-uri",
            "type": "string"
          },
          "status": {
            "knownValues": [
              "picked",
              "posted",
              "skipped"
            ],
            "type": "string"
          },
          "week": {
            "maxLength": 8,
            "type": "string"
          }
        },
        "type": "params"
      },
      "type": "query"
    },
    "pet": {
      "properties": {
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "interactions": {
          "minimum": 0,
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "retired": {
          "type": "boolean"
        },
        "species": {
          "type": "string"
        },
        "uri": {
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "name",
        "species",
        "createdAt",
        "interactions",
        "retired"
      ],
      "type": "object"
    },
    "reply": {
      "properties": {
        "createdAt": {
          "format": "datetime",
          "type": "string"
        },
        "decline": {
          "type": "boolean"
        },
        "text": {
          "maxGraphemes": 140,
          "maxLength": 1400,
          "type": "string"
        }
      },
      "required": [
        "decline",
        "text",
        "createdAt"
      ],
      "type": "object"
    }
  },
  "id": "pet.trezy.getFeatures",
  "lexicon": 1
}
```
