Annual report pursuant to Section 13 and 15(d)

Revenue from Contracts with Customers - Disaggregation of Revenue (Details)

v3.22.0.1
Revenue from Contracts with Customers - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Disaggregation of Revenue [Line Items]      
Revenues $ 1,215,697 $ 1,032,275 $ 866,933
Percentage of revenue recognized over time 94.00% 94.00% 92.00%
Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues $ 903,960 $ 764,606 $ 611,064
O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 78,613 72,362 66,709
Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 151,251 118,197 98,042
Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 41,202 39,112 47,953
Other      
Disaggregation of Revenue [Line Items]      
Revenues 40,671 37,998 43,165
US Regions      
Disaggregation of Revenue [Line Items]      
Revenues 528,293 404,152 369,248
US Regions | Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues 463,173 347,137 321,973
US Regions | O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 21,117 18,209 15,753
US Regions | Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 39,533 34,403 25,719
US Regions | Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 0 0 0
US Regions | Other      
Disaggregation of Revenue [Line Items]      
Revenues 4,470 4,403 5,803
U.S. Federal      
Disaggregation of Revenue [Line Items]      
Revenues 392,948 377,882 287,426
U.S. Federal | Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues 340,686 327,626 240,656
U.S. Federal | O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 47,072 45,423 41,599
U.S. Federal | Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 4,913 4,358 3,652
U.S. Federal | Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 0 0 0
U.S. Federal | Other      
Disaggregation of Revenue [Line Items]      
Revenues 277 475 1,519
Canada      
Disaggregation of Revenue [Line Items]      
Revenues 49,457 47,797 37,919
Canada | Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues 36,755 36,708 27,995
Canada | O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 71 169 5
Canada | Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 4,529 4,075 3,306
Canada | Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 0 0 0
Canada | Other      
Disaggregation of Revenue [Line Items]      
Revenues 8,102 6,845 6,613
Non-Solar DG      
Disaggregation of Revenue [Line Items]      
Revenues 137,243 106,417 84,683
Non-Solar DG | Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues 25,377 21,883 9,221
Non-Solar DG | O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 9,724 8,261 9,183
Non-Solar DG | Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 101,804 75,150 65,365
Non-Solar DG | Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 0 0 0
Non-Solar DG | Other      
Disaggregation of Revenue [Line Items]      
Revenues 338 1,123 914
All Other      
Disaggregation of Revenue [Line Items]      
Revenues 107,756 96,027 87,657
All Other | Project revenue      
Disaggregation of Revenue [Line Items]      
Revenues 37,969 31,252 11,219
All Other | O&M revenue      
Disaggregation of Revenue [Line Items]      
Revenues 629 300 169
All Other | Energy assets      
Disaggregation of Revenue [Line Items]      
Revenues 472 211 0
All Other | Integrated-PV      
Disaggregation of Revenue [Line Items]      
Revenues 41,202 39,112 47,953
All Other | Other      
Disaggregation of Revenue [Line Items]      
Revenues $ 27,484 $ 25,152 $ 28,316