楚怀王二十九年(前300年)新城被秦国攻占后,楚国与齐国议和。期间,齐王应韩国请求,要求楚国驱逐几瑟,楚王熊槐不听。后楚国又与秦国议和,赎回新城。同年,韩太子伯婴去世后,楚王熊槐又听从韩国大臣公仲建议,决定联合秦国干涉,送几瑟回国与公子咎争夺太子之位。楚王让几瑟住在阳翟,并发兵十余万第三次攻打韩国的雍氏,想要以此送他回国当太子。同时,楚王熊槐派郑强使秦谋求秦国的支持,但秦国受韩国游说不再干涉此事。最后,楚军败退,无功而返。公子咎被立为太子,后为韩厘王。
楚国三番两次想扶立自己支持的几瑟皆已失败告终,吃力不讨好,还得罪死了公子咎。
楚怀王三十年(前299年),秦国攻打楚国,取八城及前一年归还楚国的新城。同年,秦军又攻取了新市。其后,秦王写信约怀王在武关会盟,信中承诺两国结盟后秦国会归还楚国失地,对怀王熊槐威逼利诱。
楚怀王熊槐见信后,心生畏惧,担心赴约将受骗,不赴约又会激怒秦国。此时屈原已被召回,与昭睢皆称“秦是虎狼之国、不可信”,劝怀王不要去。但怀王熊槐的幼子子兰以不应破坏和秦国的邦交为由,劝怀王熊槐赴约。熊槐最终还是前往了武关。结果熊槐前脚刚进武关,秦国便关闭了武关的大门,将熊槐劫持到了咸阳,要求熊槐用附属国的礼仪朝见秦王。怀王大怒,后悔没有听昭雎和屈原的话。
此后,秦王逼迫怀王熊槐割让巫郡和黔中郡,被怀王严词拒绝。于是秦国扣押了怀王熊槐。游腾劝秦王释放怀王熊槐,秦王不听。
怀王熊槐被扣留期间,在齐国为质的太子熊横却答应向齐国割让下东国五百里地,从而得以回国继承王位,是为楚顷襄王。回国后,顷襄王不愿兑现承诺,于是齐国攻打楚国。随后,顷襄王派大臣到秦国去求援,秦国担心齐国壮大便出兵击退了齐军。
楚顷襄王元年(前298年),因秦国未能从怀王熊槐手中索要到土地,秦王发怒,攻打楚国,斩首五万,取析地十五城而去。同年,孟尝君率齐魏韩三国联军攻秦,期间施压秦国释放楚怀王熊槐,但秦王还是不同意。
楚顷襄王二年(前297年),楚怀王熊槐逃走,秦国发觉后便关闭了通往楚国的道路。怀王熊槐逃到赵国,赵国不让他入境。熊槐企图逃往魏国,但被秦国追兵捉住。怀王熊槐只好再次回到了秦国。
楚顷襄王三年(前296年),楚怀王熊槐在咸阳病逝,梓棺返楚,“楚人皆怜之,如悲亲戚”。
怀王去世后,楚国人一直都很思念他。故范增说:“夫秦灭六国,楚最无罪。自怀王入秦不反,楚人怜之至今,故楚南公曰‘楚虽三户,亡秦必楚’也。”正因楚人对怀王熊槐的怀念,秦二世二年(前208年),项梁将楚怀王熊槐之孙熊心立为楚怀王,这也是顺从楚国人心之举。