# Block API Reference

OpenAPI source: https://api.are.na/v3/openapi.json

## GET /v3/blocks/{id}

- Label: Get a block
- Docs: https://www.are.na/developers/explore/block
- Markdown: https://www.are.na/developers/explore/block.md
- Requires resource id: yes
- Response content type: application/json

Returns detailed information about a specific block by its ID. Respects visibility rules and user permissions.

Path parameters:
- id: number (required) — Resource ID

Response schema:
```json
{
  "type": "oneOf",
  "description": "A block is a piece of content on Are.na. Blocks come in different types,\neach with its own set of fields. Use the `type` field to determine which\nfields are available.\n",
  "variants": [
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"Text\" for TextBlock)",
          "enum": [
            "Text"
          ]
        },
        "content": {
          "type": "object",
          "description": "Markdown content with multiple renderings",
          "required": [
            "markdown",
            "html",
            "plain"
          ],
          "properties": {
            "markdown": {
              "type": "string",
              "nullable": false,
              "description": "Original markdown value",
              "example": "This is **only** a [test](https://example.com)."
            },
            "html": {
              "type": "string",
              "nullable": false,
              "description": "HTML rendering of the markdown",
              "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
            },
            "plain": {
              "type": "string",
              "nullable": false,
              "description": "Plain text rendering of the markdown",
              "example": "This is only a test (https://example.com)."
            }
          },
          "refName": "MarkdownContent"
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type",
        "content"
      ],
      "description": "A text block containing markdown content",
      "refName": "TextBlock"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"Image\" for ImageBlock)",
          "enum": [
            "Image"
          ]
        },
        "image": {
          "type": "object",
          "required": [
            "small",
            "medium",
            "large",
            "square"
          ],
          "properties": {
            "alt_text": {
              "type": "string",
              "nullable": true,
              "description": "Alternative text associated with the image",
              "example": "Scanned collage of magazine cutouts"
            },
            "blurhash": {
              "type": "string",
              "nullable": true,
              "description": "BlurHash representation of the image for progressive loading",
              "example": "LEHV6nWB2yk8pyo0adR*.7kCMdnj"
            },
            "width": {
              "type": "integer",
              "nullable": true,
              "description": "Original image width in pixels",
              "example": 1920
            },
            "height": {
              "type": "integer",
              "nullable": true,
              "description": "Original image height in pixels",
              "example": 1080
            },
            "src": {
              "type": "string",
              "nullable": false,
              "description": "URL to the original image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/original_image.jpg"
            },
            "aspect_ratio": {
              "type": "number",
              "nullable": true,
              "description": "Image aspect ratio (width / height)",
              "format": "float",
              "example": 1.7778
            },
            "content_type": {
              "type": "string",
              "nullable": false,
              "description": "Image content type",
              "example": "image/jpeg"
            },
            "filename": {
              "type": "string",
              "nullable": false,
              "description": "Image filename",
              "example": "image.jpg"
            },
            "file_size": {
              "type": "integer",
              "nullable": true,
              "description": "File size in bytes",
              "example": 1024000
            },
            "updated_at": {
              "type": "string",
              "nullable": false,
              "description": "When the image was last updated",
              "format": "date-time",
              "example": "2023-01-15T14:45:00Z"
            },
            "small": {
              "type": "object",
              "description": "A resized/processed version of an image with multiple resolution URLs",
              "required": [
                "src",
                "src_2x"
              ],
              "properties": {
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "Default image URL (1x resolution)",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image.jpg"
                },
                "src_2x": {
                  "type": "string",
                  "nullable": false,
                  "description": "2x resolution image URL for high DPI displays",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image@2x.jpg"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Width of the resized image in pixels",
                  "example": 640
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Height of the resized image in pixels",
                  "example": 480
                }
              },
              "refName": "ImageVersion"
            },
            "medium": {
              "type": "object",
              "description": "A resized/processed version of an image with multiple resolution URLs",
              "required": [
                "src",
                "src_2x"
              ],
              "properties": {
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "Default image URL (1x resolution)",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image.jpg"
                },
                "src_2x": {
                  "type": "string",
                  "nullable": false,
                  "description": "2x resolution image URL for high DPI displays",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image@2x.jpg"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Width of the resized image in pixels",
                  "example": 640
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Height of the resized image in pixels",
                  "example": 480
                }
              },
              "refName": "ImageVersion"
            },
            "large": {
              "type": "object",
              "description": "A resized/processed version of an image with multiple resolution URLs",
              "required": [
                "src",
                "src_2x"
              ],
              "properties": {
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "Default image URL (1x resolution)",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image.jpg"
                },
                "src_2x": {
                  "type": "string",
                  "nullable": false,
                  "description": "2x resolution image URL for high DPI displays",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image@2x.jpg"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Width of the resized image in pixels",
                  "example": 640
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Height of the resized image in pixels",
                  "example": 480
                }
              },
              "refName": "ImageVersion"
            },
            "square": {
              "type": "object",
              "description": "A resized/processed version of an image with multiple resolution URLs",
              "required": [
                "src",
                "src_2x"
              ],
              "properties": {
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "Default image URL (1x resolution)",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image.jpg"
                },
                "src_2x": {
                  "type": "string",
                  "nullable": false,
                  "description": "2x resolution image URL for high DPI displays",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/display_image@2x.jpg"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Width of the resized image in pixels",
                  "example": 640
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Height of the resized image in pixels",
                  "example": 480
                }
              },
              "refName": "ImageVersion"
            }
          },
          "refName": "BlockImage"
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type",
        "image"
      ],
      "description": "An image block containing an uploaded or scraped image",
      "refName": "ImageBlock"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"Link\" for LinkBlock)",
          "enum": [
            "Link"
          ]
        },
        "image": {
          "type": "oneOf",
          "description": "Preview image (if available)",
          "variants": [
            {
              "type": "object",
              "required": [
                "small",
                "medium",
                "large",
                "square"
              ],
              "properties": {
                "alt_text": {
                  "type": "string",
                  "nullable": true,
                  "description": "Alternative text associated with the image",
                  "example": "Scanned collage of magazine cutouts"
                },
                "blurhash": {
                  "type": "string",
                  "nullable": true,
                  "description": "BlurHash representation of the image for progressive loading",
                  "example": "LEHV6nWB2yk8pyo0adR*.7kCMdnj"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image width in pixels",
                  "example": 1920
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image height in pixels",
                  "example": 1080
                },
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "URL to the original image",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/original_image.jpg"
                },
                "aspect_ratio": {
                  "type": "number",
                  "nullable": true,
                  "description": "Image aspect ratio (width / height)",
                  "format": "float",
                  "example": 1.7778
                },
                "content_type": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image content type",
                  "example": "image/jpeg"
                },
                "filename": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image filename",
                  "example": "image.jpg"
                },
                "file_size": {
                  "type": "integer",
                  "nullable": true,
                  "description": "File size in bytes",
                  "example": 1024000
                },
                "updated_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the image was last updated",
                  "format": "date-time",
                  "example": "2023-01-15T14:45:00Z"
                },
                "small": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "medium": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "large": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "square": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockImage"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "content": {
          "type": "oneOf",
          "description": "Extracted text content from the link",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type"
      ],
      "description": "A link block representing a URL with optional preview",
      "refName": "LinkBlock"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"Attachment\" for AttachmentBlock)",
          "enum": [
            "Attachment"
          ]
        },
        "attachment": {
          "type": "object",
          "required": [
            "url"
          ],
          "properties": {
            "filename": {
              "type": "string",
              "nullable": true,
              "description": "Attachment filename",
              "example": "document.pdf"
            },
            "content_type": {
              "type": "string",
              "nullable": true,
              "description": "Attachment content type",
              "example": "application/pdf"
            },
            "file_size": {
              "type": "integer",
              "nullable": true,
              "description": "File size in bytes",
              "example": 2048000
            },
            "file_extension": {
              "type": "string",
              "nullable": true,
              "description": "File extension",
              "example": "pdf"
            },
            "updated_at": {
              "type": "string",
              "nullable": true,
              "description": "When the attachment was last updated",
              "format": "date-time"
            },
            "url": {
              "type": "string",
              "nullable": false,
              "description": "Attachment download URL",
              "format": "uri",
              "example": "https://attachments.are.na/12345/document.pdf"
            }
          },
          "refName": "BlockAttachment"
        },
        "image": {
          "type": "oneOf",
          "description": "Preview image (for PDFs and other previewable files)",
          "variants": [
            {
              "type": "object",
              "required": [
                "small",
                "medium",
                "large",
                "square"
              ],
              "properties": {
                "alt_text": {
                  "type": "string",
                  "nullable": true,
                  "description": "Alternative text associated with the image",
                  "example": "Scanned collage of magazine cutouts"
                },
                "blurhash": {
                  "type": "string",
                  "nullable": true,
                  "description": "BlurHash representation of the image for progressive loading",
                  "example": "LEHV6nWB2yk8pyo0adR*.7kCMdnj"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image width in pixels",
                  "example": 1920
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image height in pixels",
                  "example": 1080
                },
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "URL to the original image",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/original_image.jpg"
                },
                "aspect_ratio": {
                  "type": "number",
                  "nullable": true,
                  "description": "Image aspect ratio (width / height)",
                  "format": "float",
                  "example": 1.7778
                },
                "content_type": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image content type",
                  "example": "image/jpeg"
                },
                "filename": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image filename",
                  "example": "image.jpg"
                },
                "file_size": {
                  "type": "integer",
                  "nullable": true,
                  "description": "File size in bytes",
                  "example": 1024000
                },
                "updated_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the image was last updated",
                  "format": "date-time",
                  "example": "2023-01-15T14:45:00Z"
                },
                "small": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "medium": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "large": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "square": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockImage"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type",
        "attachment"
      ],
      "description": "An attachment block containing an uploaded file",
      "refName": "AttachmentBlock"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"Embed\" for EmbedBlock)",
          "enum": [
            "Embed"
          ]
        },
        "embed": {
          "type": "object",
          "required": [],
          "properties": {
            "url": {
              "type": "string",
              "nullable": true,
              "description": "Embed URL",
              "format": "uri",
              "example": "https://www.youtube.com/embed/abc123"
            },
            "type": {
              "type": "string",
              "nullable": true,
              "description": "Embed type",
              "example": "youtube"
            },
            "title": {
              "type": "string",
              "nullable": true,
              "description": "Embed title",
              "example": "Video Title"
            },
            "author_name": {
              "type": "string",
              "nullable": true,
              "description": "Author name",
              "example": "Author Name"
            },
            "author_url": {
              "type": "string",
              "nullable": true,
              "description": "Author URL",
              "format": "uri",
              "example": "https://example.com/author"
            },
            "source_url": {
              "type": "string",
              "nullable": true,
              "description": "Embed source URL",
              "format": "uri",
              "example": "https://www.youtube.com/watch?v=abc123"
            },
            "width": {
              "type": "integer",
              "nullable": true,
              "description": "Embed width",
              "example": 640
            },
            "height": {
              "type": "integer",
              "nullable": true,
              "description": "Embed height",
              "example": 480
            },
            "html": {
              "type": "string",
              "nullable": true,
              "description": "Embed HTML",
              "example": "<iframe src='...'></iframe>"
            },
            "thumbnail_url": {
              "type": "string",
              "nullable": true,
              "description": "Thumbnail URL",
              "format": "uri",
              "example": "https://example.com/thumbnail.jpg"
            }
          },
          "refName": "BlockEmbed"
        },
        "image": {
          "type": "oneOf",
          "description": "Thumbnail image (if available)",
          "variants": [
            {
              "type": "object",
              "required": [
                "small",
                "medium",
                "large",
                "square"
              ],
              "properties": {
                "alt_text": {
                  "type": "string",
                  "nullable": true,
                  "description": "Alternative text associated with the image",
                  "example": "Scanned collage of magazine cutouts"
                },
                "blurhash": {
                  "type": "string",
                  "nullable": true,
                  "description": "BlurHash representation of the image for progressive loading",
                  "example": "LEHV6nWB2yk8pyo0adR*.7kCMdnj"
                },
                "width": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image width in pixels",
                  "example": 1920
                },
                "height": {
                  "type": "integer",
                  "nullable": true,
                  "description": "Original image height in pixels",
                  "example": 1080
                },
                "src": {
                  "type": "string",
                  "nullable": false,
                  "description": "URL to the original image",
                  "format": "uri",
                  "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/original_image.jpg"
                },
                "aspect_ratio": {
                  "type": "number",
                  "nullable": true,
                  "description": "Image aspect ratio (width / height)",
                  "format": "float",
                  "example": 1.7778
                },
                "content_type": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image content type",
                  "example": "image/jpeg"
                },
                "filename": {
                  "type": "string",
                  "nullable": false,
                  "description": "Image filename",
                  "example": "image.jpg"
                },
                "file_size": {
                  "type": "integer",
                  "nullable": true,
                  "description": "File size in bytes",
                  "example": 1024000
                },
                "updated_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the image was last updated",
                  "format": "date-time",
                  "example": "2023-01-15T14:45:00Z"
                },
                "small": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "medium": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "large": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                },
                "square": {
                  "type": "object",
                  "description": "A resized/processed version of an image with multiple resolution URLs",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockImage"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type",
        "embed"
      ],
      "description": "An embed block containing embedded media (video, audio, etc.)",
      "refName": "EmbedBlock"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "nullable": false,
          "description": "Unique identifier for the block",
          "example": 12345
        },
        "base_type": {
          "type": "string",
          "nullable": false,
          "description": "Base type of the block (always \"Block\")",
          "enum": [
            "Block"
          ],
          "example": "Block"
        },
        "title": {
          "type": "string",
          "nullable": true,
          "description": "Block title",
          "example": "Interesting Article"
        },
        "description": {
          "type": "oneOf",
          "description": "Block description with multiple renderings",
          "variants": [
            {
              "type": "object",
              "description": "Markdown content with multiple renderings",
              "required": [
                "markdown",
                "html",
                "plain"
              ],
              "properties": {
                "markdown": {
                  "type": "string",
                  "nullable": false,
                  "description": "Original markdown value",
                  "example": "This is **only** a [test](https://example.com)."
                },
                "html": {
                  "type": "string",
                  "nullable": false,
                  "description": "HTML rendering of the markdown",
                  "example": "<p>This is <strong>only</strong> a <a href=\"https://example.com\" target=\"_blank\" rel=\"nofollow noopener\">test</a>.</p>"
                },
                "plain": {
                  "type": "string",
                  "nullable": false,
                  "description": "Plain text rendering of the markdown",
                  "example": "This is only a test (https://example.com)."
                }
              },
              "refName": "MarkdownContent"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "state": {
          "type": "string",
          "nullable": false,
          "description": "Processing state of a block.\n- `processing`: Being processed (e.g., image resizing)\n- `available`: Ready for display\n- `failed`: Processing failed\n",
          "enum": [
            "processing",
            "available",
            "failed"
          ],
          "refName": "BlockState"
        },
        "visibility": {
          "type": "string",
          "nullable": false,
          "description": "Visibility of a block.\n- `public`: Visible to everyone\n- `private`: Only visible to owner\n- `orphan`: Not connected to any channel\n",
          "enum": [
            "public",
            "private",
            "orphan"
          ],
          "refName": "BlockVisibility"
        },
        "comment_count": {
          "type": "integer",
          "nullable": false,
          "description": "Number of comments on the block",
          "example": 5
        },
        "created_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was created",
          "format": "date-time",
          "example": "2023-01-15T10:30:00Z"
        },
        "updated_at": {
          "type": "string",
          "nullable": false,
          "description": "When the block was last updated",
          "format": "date-time",
          "example": "2023-01-15T14:45:00Z"
        },
        "user": {
          "type": "object",
          "description": "Embedded user representation (used when user is nested in other resources)",
          "required": [
            "id",
            "type",
            "name",
            "slug",
            "avatar",
            "initials"
          ],
          "properties": {
            "id": {
              "type": "integer",
              "nullable": false,
              "description": "Unique identifier for the user",
              "example": 12345
            },
            "type": {
              "type": "string",
              "nullable": false,
              "description": "User type",
              "enum": [
                "User"
              ],
              "example": "User"
            },
            "name": {
              "type": "string",
              "nullable": false,
              "description": "User's display name",
              "example": "John Doe"
            },
            "slug": {
              "type": "string",
              "nullable": false,
              "description": "URL-safe identifier (use this in API paths)",
              "example": "john-doe"
            },
            "avatar": {
              "type": "string",
              "nullable": true,
              "description": "URL to user's avatar image",
              "format": "uri",
              "example": "https://d2w9rnfcy7mm78.cloudfront.net/12345/avatar.jpg"
            },
            "initials": {
              "type": "string",
              "nullable": false,
              "description": "User's initials",
              "example": "JD"
            }
          },
          "refName": "EmbeddedUser"
        },
        "metadata": {
          "type": "oneOf",
          "description": "Custom key-value metadata",
          "variants": [
            {
              "type": "object",
              "description": "Arbitrary key-value pairs stored on an entity.\nKeys are alphanumeric/underscore, max 40 characters.\nValues are scalars (string, number, boolean). Max 50 keys, 32KB total.\n",
              "required": [],
              "properties": {},
              "additionalProperties": {
                "type": "oneOf",
                "variants": [
                  {
                    "type": "string",
                    "nullable": false
                  },
                  {
                    "type": "number",
                    "nullable": false
                  },
                  {
                    "type": "boolean",
                    "nullable": false
                  }
                ]
              },
              "refName": "Metadata"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "source": {
          "type": "oneOf",
          "description": "Source URL and metadata (if block was created from a URL)",
          "variants": [
            {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "nullable": false,
                  "description": "Source URL",
                  "format": "uri",
                  "example": "https://example.com/article"
                },
                "title": {
                  "type": "string",
                  "nullable": true,
                  "description": "Source title",
                  "example": "Original Article Title"
                },
                "provider": {
                  "type": "oneOf",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "BlockSource"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "_links": {
          "type": "object",
          "description": "HATEOAS links for navigation and discovery.\nFollows HAL (Hypertext Application Language) format where link relationships \nare expressed as object keys (e.g., \"self\", \"user\", \"channels\").\n",
          "required": [
            "self"
          ],
          "properties": {
            "self": {
              "type": "object",
              "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
              "required": [
                "href"
              ],
              "properties": {
                "href": {
                  "type": "string",
                  "nullable": false,
                  "description": "The URL of the linked resource",
                  "format": "uri",
                  "example": "https://api.are.na/v3/blocks/12345"
                }
              },
              "refName": "Link"
            }
          },
          "additionalProperties": {
            "type": "object",
            "description": "A hypermedia link containing the URL of a linked resource.\nThe relationship type is expressed by the key in the parent _links object.\n",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "type": "string",
                "nullable": false,
                "description": "The URL of the linked resource",
                "format": "uri",
                "example": "https://api.are.na/v3/blocks/12345"
              }
            },
            "refName": "Link"
          },
          "refName": "Links"
        },
        "connection": {
          "type": "oneOf",
          "description": "Connection context (only present when block is returned as part of channel contents).\nContains position, pinned status, and information about who connected the block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Embedded connection representation used when connection is nested in other resources",
              "required": [
                "id",
                "position",
                "pinned",
                "connected_at",
                "connected_by"
              ],
              "properties": {
                "id": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Unique identifier for the connection",
                  "example": 98765
                },
                "position": {
                  "type": "integer",
                  "nullable": false,
                  "description": "Position of the item within the channel (1-indexed)",
                  "example": 1
                },
                "pinned": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the item is pinned",
                  "example": false
                },
                "metadata": {
                  "type": "oneOf",
                  "description": "Custom key-value metadata",
                  "…": "see OpenAPI spec for full schema"
                },
                "connected_at": {
                  "type": "string",
                  "nullable": false,
                  "description": "When the item was connected",
                  "format": "date-time",
                  "example": "2023-01-15T10:30:00Z"
                },
                "connected_by": {
                  "type": "oneOf",
                  "description": "User who created this connection",
                  "…": "see OpenAPI spec for full schema"
                }
              },
              "refName": "EmbeddedConnection"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "can": {
          "type": "oneOf",
          "description": "Abilities object (only present for full block responses, not in channel contents).\nIndicates what actions the current user can perform on this block.\n",
          "variants": [
            {
              "type": "object",
              "description": "Actions the current user can perform on the block",
              "required": [
                "manage",
                "comment",
                "connect"
              ],
              "properties": {
                "manage": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can manage (update/delete) this block",
                  "example": true
                },
                "comment": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can comment on this block",
                  "example": true
                },
                "connect": {
                  "type": "boolean",
                  "nullable": false,
                  "description": "Whether the user can connect this block to channels",
                  "example": true
                }
              },
              "refName": "BlockAbilities"
            },
            {
              "type": "unknown",
              "nullable": true
            }
          ]
        },
        "type": {
          "type": "string",
          "nullable": false,
          "description": "Block type (always \"PendingBlock\" for blocks being processed)",
          "enum": [
            "PendingBlock"
          ]
        }
      },
      "required": [
        "id",
        "base_type",
        "state",
        "visibility",
        "comment_count",
        "created_at",
        "updated_at",
        "user",
        "_links",
        "type"
      ],
      "description": "A block that is currently being processed. The final type (Text, Image, Link, etc.)\nwill be determined once processing completes. Check the `state` field for processing status.\n",
      "refName": "PendingBlock"
    }
  ],
  "refName": "Block"
}
```