class Attio::Task

def self.create(content: nil, format: "plaintext", **params)

Override create to handle required content parameter
def self.create(content: nil, format: "plaintext", **params)
  raise ArgumentError, "Content is required" if content.nil? || content.to_s.empty?
  request_params = {
    data: {
      content: content,  # API expects 'content'
      format: format,    # Format is required
      is_completed: params[:is_completed] || false,
      linked_records: params[:linked_records] || [],
      assignees: params[:assignees] || []
    }
  }
  # deadline_at must be present (null or valid date)
  request_params[:data][:deadline_at] = params[:deadline_at]
  # Remove the params that we've already included in request_params
  opts = params.except(:content, :format, :deadline_at, :is_completed, :linked_records, :assignees)
  response = execute_request(:POST, resource_path, request_params, opts)
  new(response["data"] || response, opts)
end