# app.kalangitan.graph.accessGrant

> Published by [kalangitan-lexicon.spaces-alpha.bsky.network](https://lexicon.garden/identity/did:plc:c5jrjgenhqjjaoxbkrnqg2bh)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:c5jrjgenhqjjaoxbkrnqg2bh/app.kalangitan.graph.accessGrant)
- [Documentation](https://lexicon.garden/lexicon/did:plc:c5jrjgenhqjjaoxbkrnqg2bh/app.kalangitan.graph.accessGrant/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:c5jrjgenhqjjaoxbkrnqg2bh/app.kalangitan.graph.accessGrant/examples)

## Definitions

### `app.kalangitan.graph.accessGrant`

**Type**: `record`

Owner-authored acceptance of a follow-as-access-request on a gated persona. Written by the owner of the persona named in the referenced follow record. Effective access state = follow record exists AND matching grant record exists. NOTE: writing this record alone is not sufficient at the protocol level — the owner must also add the follower's DID to the Space's member list via the space host. Both actions are required; the AppView treats the grant as the app-layer signal and the member list as the enforcement layer.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `createdAt` | `string` (datetime) | Yes |  |
| `subject` | `string` (at-uri) | Yes | AT-URI of the app.kalangitan.graph.follow record being accepted. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Owner-authored acceptance of a follow-as-access-request on a gated persona. Written by the owner of the persona named in the referenced follow record. Effective access state = follow record exists AND matching grant record exists. NOTE: writing this record alone is not sufficient at the protocol level — the owner must also add the follower's DID to the Space's member list via the space host. Both actions are required; the AppView treats the grant as the app-layer signal and the member list as the enforcement layer.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "subject": {
            "description": "AT-URI of the app.kalangitan.graph.follow record being accepted.",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "subject",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "app.kalangitan.graph.accessGrant",
  "lexicon": 1
}
```
