title: google api (sheets) Request had insufficient authentication scopes
body: <p>i want to read an write data from a sheet, reading works fine but writing doesn't. i use all the scopes mentioned in the documentation: <a href="https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/append" rel="noreferrer">https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/append</a></p>
  
  <pre><code>data_writer(1,1,1)
  </code></pre>
  
  <p>code:</p>
  
  <pre><code>from __future__ import print_function
  from apiclient.discovery import build
  from httplib2 import Http
  from oauth2client import file, client, tools
  # Setup the Sheets API
  SCOPES = 'https://www.googleapis.com/auth/spreadsheets'+"https://www.googleapis.com/auth/drive.file"+"https://www.googleapis.com/auth/drive"
  store = file.Storage('credentials.json')
  creds = store.get()
  if not creds or creds.invalid:
      flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
      creds = tools.run_flow(flow, store)
  service = apiclient.discovery.build('sheets', 'v4', http=creds.authorize(Http()))
  
  # Call the Sheets API
  SPREADSHEET_ID = '1JwVOqtUCWBMm_O6esIb-9J4TgqAmMIdYm9sf5y-A7EM'
  RANGE_NAME = 'Jokes!A:C'
  # How the input data should be interpreted.
  value_input_option = 'USER_ENTERED'  
  # How the input data should be inserted.
  insert_data_option = 'INSERT_ROWS' 
  
  def data_reader():
      #reading data
      read = service.spreadsheets().values().get(spreadsheetId=SPREADSHEET_ID,range=RANGE_NAME).execute()
      #reading values
      values = read.get('values', [])
      if not values:
          print('No data found.')
      else:
  
          for row in values:
              print(row[2])
              continue
  def data_writer(score,num_comments,mystring):
      value_range_body = {
          "score":score,
          "num_comments":num_comments,
          "joke":mystring
      }
      request = service.spreadsheets().values().append(spreadsheetId=SPREADSHEET_ID, range=RANGE_NAME, valueInputOption=value_input_option, insertDataOption=insert_data_option, body=value_range_body)
      response = request.execute()
  </code></pre>