You didn’t specify so I’m guessing your using C# from the syntax?
The ReturnDocument option provides two options, Before and After (see also, properties). You’ve specified After, which means you’ll always get the document you inserted when performing an upsert. Using the value Before will return a null if the document did not previously exist. This does complicate getting the final document should an upsert occur, but I’m guessing you already have a Blog object hanging around somewhere and it should be fairly straight forward to check if blog == null and set the values for BlogId and VideoId.