Someone asked about how I do this stuff, and I guess why... I replied privately but the answer can be public:
It's part manual, part-automated.
I manually add travel itinerary items, tickets (for sports, shows, concerts), etc... at the time of purchase, with enough information such that I could arrive somewhere and that calendar entry can tell me everything... i.e. I even attach PDF tickets to calendar entries. I don't trust the automated Gmail stuff for this as I want to be sure it really got every important detail right.
Then there's some IFTTT automation. These are things like "If I make a public Tweet" or "If I post to Instagram" or "If I bookmark something on Pinboard" or "If I make a dinner reservation via Open Table" (that recipe looks at my Gmail, the others directly connect to Twitter, Instagram, Pinboard, etc). All those kinds of things are automated.
Then I use an Android app called SMS Backup to insert a log of all phone calls I made... the person I called or received a call from. Those are automated too.
I don't actually put everything into Google Calendar though. I only put things that I regard as public. So messages I've sent via Signal, or watching a film at home with my wife or having friends over... those things are private and didn't end up in any calendar.
What I'm going for is: If the metadata is out in the world somewhere, then it should serve me more than it serves anyone else.
I copy that metadata back into Google Calendar and the way it serves me is that I can always view everything I've done publicly in a wider context: Tweeted that, bookmarked this, purchased that book on Wordy. I get to glue together information from several systems and that is the essence of the diary, I get to see stories of my life in my own metadata.
Final note: It's a delicate system. I've been doing it for years and it needs love to maintain all of the integrations. A few I've abandoned along the way (I used to record the audio of phonecalls, upload to Drive, and link from the Google Calendar event... but this was fragile, and the voice wasn't indexed or searchable so could never answer questions like "When did I call x about y?"... the metadata of who I called was enough, so I abandoned the sound).
Hope all that helps. And I'm afraid I don't have much code to show for this.
Things I'm missing: Google Fit and Google Maps Timeline integrations.
If any Google Calendar team member wants to hear more, I have a lot of views on what could be done with Calendar to make it a really awesome tool for a "plan this, log that" diary that helps create and tell stories of our lives. I'm in SF next month and can meet if you want. Contact details in my profile.