🏷️ API version: 2025-10

You can now query a column's settings, revision data, and capabilities with the following new fields:

  • settings
  • revision
  • capabilities
query {
  boards (ids: 1234567890) {
    columns {
      settings
      revision
      capabilities {
        calculated {
          function
          calculated_type
        }
      }
    }
  }
}
🏷️ API version: 2025-10

Using the new validations endpoint, you can now query a board's required field columns. This query returns a JSON object containing metadata about a collection of required field columns.

query {
  validations(
    id: 1234567890
	) {
    required_column_ids
		rules
  }
}

You can also add and remove required field columns via the API using the following mutations:

🏷️ API version: 2025-10

You can now create up to 25 document blocks in bulk with the create_doc_blocks mutation.

mutation {
  create_doc_blocks(
    docId: 12345
    blocksInput: [
      {
        text_block: {
          text_block_type: QUOTE
          delta_format: [
            {
              insert: {
                text: "The best way to predict the future is to create it."
              }
              attributes: {
                italic: true
                color: "#666666"
              }
            }
            {
              insert: {
                text: "Peter Drucker"
              }
              attributes: {
                bold: true
                color: "#999999"
              }
            }
          ]
        }
      }
      {
        text_block: {
          text_block_type: LARGE_TITLE
          delta_format: [
            {
              insert: {
                text: "This quote highlights the power of action and ownership."
              }
            }
          ]
        }
      }
      {
        notice_box_block: {
          theme: TIPS
        }
      }
      {
        list_block: {
          list_block_type: BULLETED_LIST
          delta_format: [
            {
              insert: {
                text: "Set clear objectives"
              }
            }
          ]
        }
      }
      {
        list_block: {
          list_block_type: BULLETED_LIST
          delta_format: [
            {
              insert: {
                text: "Take small, consistent steps"
              }
            }
          ]
        }
      }
      {
        list_block: {
          list_block_type: BULLETED_LIST
          delta_format: [
            {
              insert: {
                text: "Review and adjust regularly"
              }
            }
          ]
        }
      }
      {
        page_break_block: {}
      }
    ]
  ) {
    doc_id
    id
    type
    position
    content {
      ... on TextBlockContent {
        delta_format {
          insert {
            text
          }
        }
      }
      ... on ListBlockContent {
        delta_format {
          insert {
            text
          }
        }
      }
    }
  }
}

{
  "data": {
    "create_doc_blocks": [
      {
        "doc_id": "12345",
        "id": "11111111-1111-1111-1111-111111111111",
        "type": "quote",
        "position": 100000,
        "content": [
          {
            "delta_format": [
              {
                "insert": {
                  "text": "The best way to predict the future is to create it."
                }
              },
              {
                "insert": {
                  "text": "Peter Drucker"
                }
              }
            ]
          }
        ]
      },
      {
        "doc_id": "12345",
        "id": "22222222-2222-2222-2222-222222222222",
        "type": "large title",
        "position": 141250,
        "content": [
          {
            "delta_format": [
              {
                "insert": {
                  "text": "This quote highlights the power of action and ownership."
                }
              }
            ]
          }
        ]
      },
      {
        "doc_id": "12345",
        "id": "33333333-3333-3333-3333-333333333333",
        "type": "notice box",
        "position": 189875,
        "content": [
          {}
        ]
      },
      {
        "doc_id": "12345",
        "id": "44444444-4444-4444-4444-444444444444",
        "type": "bulleted list",
        "position": 235420,
        "content": [
          {
            "delta_format": [
              {
                "insert": {
                  "text": "Set clear objectives"
                }
              }
            ]
          }
        ]
      },
      {
        "doc_id": "12345",
        "id": "55555555-5555-5555-5555-555555555555",
        "type": "bulleted list",
        "position": 287965,
        "content": [
          {
            "delta_format": [
              {
                "insert": {
                  "text": "Take small, consistent steps"
                }
              }
            ]
          }
        ]
      },
      {
        "doc_id": "12345",
        "id": "66666666-6666-6666-6666-666666666666",
        "type": "bulleted list",
        "position": 346780,
        "content": [
          {
            "delta_format": [
              {
                "insert": {
                  "text": "Review and adjust regularly"
                }
              }
            ]
          }
        ]
      },
      {
        "doc_id": "12345",
        "id": "77777777-7777-7777-7777-777777777777",
        "type": "page break",
        "position": 412555,
        "content": [
          {}
        ]
      }
    ]
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}

🏷️ API version: 2025-10

Using the new objects endpoint, you can now query monday.com objects. Objects are a core component of the platform API that represent a generic item within the monday.com platform.

This query returns a JSON object containing metadata about a collection of objects.

query {
  objects(
    limit: 4, 
    state: ACTIVE, 
    order_by: CREATED_AT
  ) {
    id
    name
    owners {
      id
      name
    }
  }
}

You can also create, update, and delete objects via the API using the following mutations:

🏷️ API version: 2025-10

You can now read a user's notification settings across all channels with the notifications_settings object.

query {
  notifications_settings(
    channels: [Email, Slack]
    scope_type: AccountNewUserDefaults
  ) {
    kind
    description
    is_for_admins_only
    is_for_non_guests_only
    channels {
      name
      enabled
      editable_status
    }
  }
}
{
  "data": {
    "notifications_settings": [
      {
        "kind": "invitation",
        "description": "Invitations to workspace, board, doc, item, or team",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "notify_auth_domain_signup",
        "description": "Signed up with an email address from my account domain",
        "is_for_admins_only": true,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "ask_for_permissions",
        "description": "Requests access to boards & dashboards",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "invitation_requests_admins_reminder_setting",
        "description": "Pending invite requests when invite requests have been pending for over 7 days",
        "is_for_admins_only": true,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "mention",
        "description": "Mentioned me in an update or reply",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": true,
            "editable_status": "Editable"
          }
        ]
      },
      {
        "kind": "notify_invitee_join",
        "description": "Signed up after I have invited them",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "dlp_file_deleted_setting",
        "description": "File has been deleted for breaching data policies",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "new_post_on_owned_item",
        "description": "Wrote an update on an item I own",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "like_your_post",
        "description": "Reactions to my update",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "daily_digest",
        "description": "My highlights",
        "is_for_admins_only": false,
        "is_for_non_guests_only": true,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "dlp_update_deleted_setting",
        "description": "Update has been deleted or redacted for breaching data policies",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "request_to_install_and_purchase_apps",
        "description": "Requests installation to install & purchase apps",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "notify_invitee_didnt_join",
        "description": "Didn’t sign up after I have invited them",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "assign",
        "description": "Assigned me to an item",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": true,
            "editable_status": "Editable"
          }
        ]
      },
      {
        "kind": "new_post_on_subscribed_item",
        "description": "Wrote an update on an item I’m subscribed to",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "automation",
        "description": "Automations via an automation",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "api",
        "description": "Platform API custom notifications using the GraphQL API",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "automation_product",
        "description": "Automations with a \"notify\" step this does not include \"send an email\" automations",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "reply_your_reply",
        "description": "Replied to a thread I commented on or reacted to",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "automation_system",
        "description": "Automation failures when automations don’t run as expected",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "reply_your_post",
        "description": "Replied to an update I wrote",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": true,
            "editable_status": "Editable"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      },
      {
        "kind": "template_update",
        "description": "Template changes by the template owner",
        "is_for_admins_only": false,
        "is_for_non_guests_only": false,
        "channels": [
          {
            "name": "Email",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          },
          {
            "name": "Slack",
            "enabled": false,
            "editable_status": "AllRelatedNotificationsDontHaveChannel"
          }
        ]
      }
    ]
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}
🏷️ API version: 2025-10

Using the existing create_column mutation, you can now create connect board and mirror columns via the API. You can query the new get_column_type_schema object to retrieve the available properties for each column type.

mutation {
  create_column(
    board_id: 1234567890
    title: "Related items (Board 9876543210)"
    column_type: board_relation
    defaults: {
      boardIds: [9876543210]
      allowMultipleItems: true
      allowCreateReflectionColumn: true
    }
  ) {
    id
    title
    type
  }
}
mutation {
  create_column(
    board_id: 1234567890
    title: "Test Column"
    column_type: mirror
    defaults: {
      relation_column: {
        board_relation: true
      }
      displayed_linked_columns: [
        { 
          board_id: "9876543210"
          column_ids: ["status"]
        }
      ]
    }
  ) {
    id
    title
    type
  }
}
🏷️ API version: 2025-10

You can now retrieve a column’s type-specific schema using the get_column_type_schema object. The response is a JSON object that defines the schema used for creating and updating columns.

query {
  get_column_type_schema (type: board_relation)
}
{
  "data": {
    "get_column_type_schema": {
      "schema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "object",
        "properties": {
          "settings": {
            "type": "object",
            "description": "Column specific settings",
            "properties": {
              "allowCreateReflectionColumn": {
                "type": "boolean",
                "description": "Whether to allow creation of reflection columns"
              },
              "allowMultipleItems": {
                "type": "boolean",
                "description": "Whether to allow selection of multiple items"
              },
              "boardIds": {
                "type": "array",
                "description": "Array of related board IDs",
                "items": {
                  "type": "integer"
                }
              },
              "boardId": {
                "type": "integer",
                "description": "Default board ID for the relation"
              },
              "item_ids": {
                "type": "array",
                "description": "Array of related item IDs",
                "items": {
                  "type": "integer"
                }
              }
            },
            "additionalProperties": false
          }
        }
      }
    }
  },
  "extensions": {
    "request_id": "YOUR_REQUEST_ID"
  }
}
🏷️ API version: 2025-10

You can now use the import_doc_from_html mutation to convert HTML content to a new monday doc. The content is then parsed and converted to the corresponding document block type.

mutation {
  import_doc_from_html(
    html: """
<!DOCTYPE html>
<html>
  <head>
    <title>Test Doc</title>
  </head>
  <body>
    <h1>Hello World</h1>
    <p>This is a <strong>fake HTML</strong> doc for testing.</p>
    <ul>
      <li>One</li>
      <li>Two</li>
      <li>Three</li>
    </ul>
  </body>
</html>
    """,
    workspaceId: 1234567890,
    title: "New Doc from HTML",
    folderId: 9876543210
  ) {
    error
    success
    doc_id
  }
}