# Introduction

## CustomComponent model

### Example

```json
{

  "id": 4,
  "customer_ids": [
    447
  ],
  "type": "links_list",
  "title": {
    "en": "Links List",
  },
  "schema_definition": {
    "properties": {
      "title": {
        "$ref": "#/$defs/$attributes/text"
      },
      "links": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "text": {
              "$ref": "#/$defs/$attributes/text"
            },
            "color": {
              "type": [
                "string",
                "null"
              ],
              "format": "rgb-hex-color"
            }
          },
          "required": [
            "text"
          ]
        }
      }
    },
    "required": [
      "title"
    ]
  }
}
```

### Definition

| Key               | Type      | Optional | Read-only | Description                               |
|-------------------|-----------|----------|-----------|-------------------------------------------|
| id                | integer   | no       | yes       |                                           |
| customer_ids      | integer[] | no       | no        | Customers the record is assigned to       |
| type              | string    | no       | no        | Name/identifier of the component          |
| title             | [LocalizedContent](doc-341959#localizedcontent-json-model)    | no       | no        | Displayed as name of the component in CMS |
| schema_definition | object    | no       | no        | Part of JSON schema                       |
| created_at        | datetime  | no       | yes       | Time of record creation                   |
| updated_at        | datetime  | no       | yes       | Time of record last update                |
| archived_at       | datetime  | no       | yes       | Time of record archivization              |