秦汉至隋唐时,县下设乡,乡下设里。
随后的几个朝代乡里数无详细资料考证。
明初,全县行政区划为12里,金川里辖今城关(县城“三关”及其附近村庄)及三角城、小康营部分村庄。
民国十六年(1927年),将里改区。
金川里为第一区,长乐里为第二区,泰康里为第三区,丰和里为第四区,广积里为第五区。
第一区辖19个村镇,现在的城关镇、小康营乡、三角城乡等乡驻地。
民国二十三年(1934年)12月,改区设乡(镇),划编保甲,将全县原有5个区划为10个乡,原第一区划为栖云镇和龛谷乡。
民国二十五年(1936年),改划为4镇8乡,乡以下社保,保以下设甲。
至民国三十八年(1949年),乡镇建置未作调整,保甲时有变化。
1949年8月16日,榆中解放后,废除保甲制度,设置栖云区,共辖城关、白堡、天堡、三堡、蒲桥、玉桥、峡口、清溪、卧牛9个乡。
9月,将榆中县改属定西专员公署。
10月,设立了栖云区城关乡人民政府,驻地城关村。
11月,设立城关乡、白堡乡、天堡乡、三堡乡、蒲桥乡、玉桥乡、峡口乡、清溪乡、卧牛乡人民政府,分别驻地城关村、白堡村、旧庄沟村、北关村、上蒲家村、南关村、峡口村、大营村。
1983年4月,县内进行了一次大规模并乡,将隆山乡与城关乡合并,称城关乡,仍为县直属乡。
9月,实行公社化时,城关为第二基层社,包括城关、蒲桥、三角城、双店子、王保营、小康营、上庄、马坡8个大队,同时成立城关人民公社管理委员会,驻地城关村。
城关大队辖杨家庄、南关、城关、北关4个村,蒲桥大队辖金家圈、大营、李家庄、上铺家、朱家湾、分豁岔6个村。
1983年成立北关村村委会,后一直使用此名至今。