The Democratic-controlled House has voted to override President Donald Trump's veto of a defence policy bill.
House members voted 322-87 to override the veto, well above the two-thirds needed to override.
If approved by two-thirds of the Senate, the override would be the first of Trump's presidency.
Trump rejected the defence bill last week, saying it failed to limit social media companies he claims were biased against him during his failed reelection campaign.
Trump also opposes language that allows for the renaming of military bases that honour Confederate leaders.
The defence bill, known as the National Defence Authorization Act, or NDAA, affirms 3 per cent pay raises for US troops and authorises more than USD 740 billion in military programs and construction.
Trump's veto of the bill provoked swift condemnation, with House Speaker Nancy Pelosi calling it “an act of staggering recklessness that harms our troops, endangers our security and undermines the will of the bipartisan Congress".
Sen. Jim Inhofe, R-Okla., chairman of the Senate Armed Services Committee, called the bill “absolutely vital to our national security and our troops,'' adding, "Our men and women who volunteer to wear the uniform shouldn't be denied what they need — ever".
Trump has offered a series of rationales for rejecting the bill.
He urged lawmakers to impose limits on Twitter and other social media companies he claimed are biased against him, as well as to strip out language that allows for the renaming of military bases such as Fort Benning and Fort Hood that honour Confederate leaders.
Trump also claimed without evidence that the biggest winner from the defence bill would be China.
In his veto message, Trump also said the bill restricts his ability to conduct foreign policy, "particularly my efforts to bring our troops home".
Trump was referring to provisions in the bill that impose conditions on his plan to withdraw thousands of troops from Afghanistan and Germany.
The measures require the Pentagon to submit reports certifying that the proposed withdrawals would not jeopardise US national security.
Both the House and Senate passed the measure by margins large enough to override a presidential veto.
Trump has vetoed eight other bills, but those were all sustained because supporters did not gain the two-thirds vote needed in each chamber for the bills to become law without Trump's signature.
Rhode Island Sen. Jack Reed, the top Democrat on the Senate Armed Services Committee, said Trump's declaration that China gained from the defence bill was false.
He also noted the shifting explanations Trump had given for the veto.
"From Confederate base names to social media liability provisions ... to imaginary and easily refutable charges about China, it's hard to keep track of President Trump's unprincipled, irrational excuses for vetoing this bipartisan bill," Reed said.
Reed called the December 23 veto “Trump's parting gift to (Russian President Vladimir) Putin and a lump of coal for our troops. Donald Trump is showing more devotion to Confederate base names than to the men and women who defend our nation".
Rep. Adam Smith, D-Wash., chairman of the House Armed Services Committee, said Trump's veto "made it clear that he does not care about the needs of our military personnel and their families".
The measure guides Pentagon policy and cement decisions about troop levels, new weapons systems and military readiness, personnel policy and other military goals.
Many programs, including military construction, can only go into effect if the bill is approved.
Senate Majority Leader Mitch McConnell, in a rare break with Trump, had urged passage of the defence bill despite Trump's veto threat.
McConnell said it was important for Congress to continue its nearly six-decade-long streak of passing the defence policy bill.