Just sign up for the card to get the 34k miles.
For the complimentary night stay it's per year? So I can stay 1 night this year and another between Jan - April and cancel my card before annual fees is charged next year in April?
Edited: just read the t&c and it's 1 night per membership year. Sign up bonus for existing amex member is still good is enough + 1 night stay worth $200+ should be able to recoup the annual fees paid.