# pub.chive.actor.profileConfig

> Published by [lexicons.governance.chive.pub](https://lexicon.garden/identity/did:plc:egjghlwgts2hlcer2txilxeh)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:egjghlwgts2hlcer2txilxeh/pub.chive.actor.profileConfig)
- [Documentation](https://lexicon.garden/lexicon/did:plc:egjghlwgts2hlcer2txilxeh/pub.chive.actor.profileConfig/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:egjghlwgts2hlcer2txilxeh/pub.chive.actor.profileConfig/examples)

## Definitions

### `pub.chive.actor.profileConfig`

**Type**: `record`

How an author's profile page is arranged: which sections appear, in what order, and which collection is featured. Written by the account holder to their own repository.

**Key**: `literal:self`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `sections` | `array` | No | Ordered display sections. Order in this array is the display order. |
| `createdAt` | `string` (datetime) | Yes | When this configuration was first created. |
| `updatedAt` | `string` (datetime) | No | When this configuration was last changed. |
| `profileType` | `string` | No | Broad kind of profile, used to pick sensible default sections. Open-ended: an unknown value is preserved and falls back to the default layout. |
| `featuredCollectionUri` | `string` (at-uri) | No | Collection node pinned to the top of the profile. |

### `pub.chive.actor.profileConfig#section`

**Type**: `object`

One section of the profile layout.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `kind` | `string` | Yes | What the section shows. Open-ended so a section type can be added without invalidating existing records. |
| `label` | `string` | No | Heading shown for the section. Defaults to a label derived from `kind` when absent. |
| `limit` | `integer` | No | Maximum items to display in this section. |
| `visible` | `boolean` | No | Whether the section is rendered. A hidden section keeps its configuration. |
| `collectionUri` | `string` (at-uri) | No | Collection this section draws from, where the kind supports it. |

## Raw Schema

```json
{
  "id": "pub.chive.actor.profileConfig",
  "defs": {
    "main": {
      "key": "literal:self",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "createdAt"
        ],
        "properties": {
          "sections": {
            "type": "array",
            "items": {
              "ref": "#section",
              "type": "ref"
            },
            "maxLength": 32,
            "description": "Ordered display sections. Order in this array is the display order."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "When this configuration was first created."
          },
          "updatedAt": {
            "type": "string",
            "format": "datetime",
            "description": "When this configuration was last changed."
          },
          "profileType": {
            "type": "string",
            "maxLength": 64,
            "description": "Broad kind of profile, used to pick sensible default sections. Open-ended: an unknown value is preserved and falls back to the default layout.",
            "knownValues": [
              "researcher",
              "group",
              "institution",
              "project"
            ]
          },
          "featuredCollectionUri": {
            "type": "string",
            "format": "at-uri",
            "description": "Collection node pinned to the top of the profile."
          }
        }
      },
      "description": "How an author's profile page is arranged: which sections appear, in what order, and which collection is featured. Written by the account holder to their own repository."
    },
    "section": {
      "type": "object",
      "required": [
        "kind"
      ],
      "properties": {
        "kind": {
          "type": "string",
          "maxLength": 64,
          "description": "What the section shows. Open-ended so a section type can be added without invalidating existing records.",
          "knownValues": [
            "eprints",
            "collections",
            "reviews",
            "endorsements",
            "fields",
            "affiliations",
            "collaborators"
          ]
        },
        "label": {
          "type": "string",
          "maxLength": 128,
          "description": "Heading shown for the section. Defaults to a label derived from `kind` when absent."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Maximum items to display in this section."
        },
        "visible": {
          "type": "boolean",
          "default": true,
          "description": "Whether the section is rendered. A hidden section keeps its configuration."
        },
        "collectionUri": {
          "type": "string",
          "format": "at-uri",
          "description": "Collection this section draws from, where the kind supports it."
        }
      },
      "description": "One section of the profile layout."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "revision": 1
}
```
