So I found out about getCampaignsForSource ... I used it to retrieve campaigns for the two sources SALES and MKTOWS but there are far fewer campaigns than I would expect to see.
I also see that this issue has been brought up before:
https://community.marketo.com/MarketoDiscussionDetail?id=90650000000PITbAAO
Is there actually any reliable way to retrieve all available campaigns? Or is the SOAP API just broken in this regard?