洪武三十一年(1398年)朱元璋死,因其长子朱标已于洪武二十五年病死,就由皇太孙朱允炆即位,年号“建文”。朱允炆为皇太孙时,已感到“诸王以叔父之尊,多不逊”。一天在东角门和他的伴读黄子澄商量对策:“诸叔各拥重兵,何以制之?”黄子澄满有把握地答复说:“诸王护卫兵,才足自守,倘有变,临以六师,其谁能支!”并以汉景帝平定吴楚七国之乱为佐证,来说明地方藩王的势力是不足忧虑的。
朱允炆即皇帝位后,就和他的亲信大臣齐泰、黄子澄等密议削藩。决定先削周、齐、湘、代、岷诸王。认为“周王,燕之母弟,削周是剪燕手足也”,“遂命李景隆帅兵袭执之”。接着就废周王橚及岷王楩为庶人,“幽代王桂于大同,囚齐王榑于京师。湘王柏自焚死”。同时在北平周围部署兵力,准备袭燕。
朱允炆对齐泰说:“今欲图燕,燕王素善用兵,北卒又劲,奈何?”齐泰回答说:“今北边有寇警,以防边为名,遣将戍开平,悉调燕藩护卫兵出塞,去其羽翼,乃可图也。”于是以工部侍郎张昺为北平左布政使,以谢贵为都指挥使,在北平城内监视朱棣的动静。朱允炆又命都督宋忠率兵三万及燕府护卫精锐屯开平。命都督耿瓛练兵于山海关,徐凯练兵于临清。
燕王朱棣(朱元章第四子)在僧道衍(姚广孝)的策划下,“练兵后苑中”,“日夜铸军器”。朱棣则“佯狂称疾”,当张员、谢贵到王府去察看时,朱棣在盛夏时节还围着火炉,颤颤抖抖地说“寒甚”,在宫中行动时也扶杖而行,以欺骗朱允炆的耳目。
朱允炆认为部署停当以后,于建文元年(1399年)六月,密令张员、谢贵动手。同时又密敕原来为朱棣所信任的北平都指挥张信逮捕朱棣,但张信却把朱允炆的策划都密报朱棣。朱棣令其亲信护卫指挥张玉朱能“潜纳勇士八百人入府守卫”。
七月,朱允炆又下令逮王府官属,谢贵等统率北平在城七卫并屯田军士围王城,索所逮诸官属。当时北平满城都是谢贵所统率的军队,而朱棣王府护卫的精锐军士都被调到开平,形势对朱棣十分不利。朱棣和张玉、朱能商议,决定先擒杀张昺、谢贵,除掉了统兵将领,其他的士兵就好对付了。
朱棣说:“是当计取之。今奸臣遣使来逮官属,依所坐备收之。即令来使召昺、贵付所逮者。员、贵必来,来则擒之,一壮士力耳。贵、昺被骗前来王府,在酒席间被擒杀。围王城的将士听到张昺、谢贵被逮,皆溃散。朱棣即命张玉、朱能等率兵乘夜攻夺了九门,控制了北平,起兵反抗。
朱元璋在世时怕权臣擅政,规定地方藩王有移文中央索取奸臣和举兵清君侧的权利。至此,朱棣就援引这一规定,作为起兵反抗的借口。但朱元璋的《祖训》是:“新天子正位,如朝无正臣,内有奸恶,则亲王训兵待命,天子密诏诸王统领镇兵讨平之。”
朱棣没有也不可能得到天子的这种密诏。为了师出有名,所以朱棣又说:“予已上书陈情,请诛奸臣,今少主为奸臣所蔽,恐不见答,则惟应以尔等清君侧之恶扶国家之既坏。”这样,朱棣便使自己的举兵反抗“名正言顺”了。他称自己的举动为“靖难”,即靖祸难的意思。