So one way to go is just add the comment, but I feel like 8 lines of code needing a comparably large comment is code begging for some cleanup. 

It seems like the easiest thing to do would be to pull the "do we need to skip credentials because there are no scopes" bit out of this block. Here's an idea: if there are no scopes, how about we have `create_scoped` just return `None`. Then we get:

    if credentials.create_scoped_required():
      scopes = service.get('auth', {}).get('oauth2', {}).get('scopes', {}).keys()
      credentials = credentials.create_scoped(scopes)
    if credentials:
      http = credentials.authorize(http)

Now it's pretty clear: first, we settle the question of "do we need to do something with the default credentials", and then authorize if we have credentials in hand.

If you don't like the `return None` bit, we could also have clauses in the first `if` above.