Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Gmail compose api: 500 backend error

Pagina: 1
Acties:

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 02:31
Ik probeer een concept email te maken met een service account. Ik heb een service gemaakt in de developer console and rechten gegeven op de gmail compose api. Ik heb dit voorbeeld https://google-developers...uth?hl=lv#service_account aangepast voor de gmail api:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var certificate = new X509Certificate2(_privateKey2, "notasecret",X509KeyStorageFlags.Exportable);

ServiceAccountCredential credential = new ServiceAccountCredential(
    new ServiceAccountCredential.Initializer(_emailAddressService)
        {
            Scopes = new[] {GmailService.Scope.GmailCompose}
        }.FromCertificate(certificate));

// Create the service.
var service = new GmailService(new BaseClientService.Initializer
{
    HttpClientInitializer = credential,
    ApplicationName = "Plus API Sample",
});

var draft = new Draft();
draft.Message = new Message();
draft.Message.Payload = new MessagePart();
draft.Message.Payload.Body = new MessagePartBody();
draft.Message.Payload.Body.Data = "";

draft = service.Users.Drafts.Create(draft, "user@domain.com").Execute();

Dit zou een lege concept email moeten opleveren. Ik heb het ook getest met de API explorer op https://developers.google...rence/users/drafts/create en dat werkt. Met mijn code krijg ik echter alleen de volgende foutmelding terug:
code:
1
2
3
4
5
Google.Apis.Requests.RequestError
Backend Error [500]
Errors [
    Message[Backend Error] Location[ - ] Reason[backendError] Domain[global]
]

Ik heb het request dat ik stuur gecheckt met Fiddler en dat ziet er als volgt uit:
code:
1
{"message":{"payload":{"body":{"data":""}}}}

Exact hetzelfde als het request dat ik met de API explorer gedaan heb.
Ook nog geprobeerd:
C#:
1
service.Users.Drafts.List("user@2domain.com").Execute();

end
C#:
1
messages = service.Users.Messages.List("user@doamin.com").Execute();

maar ik krijg elke keer dezelfde (nutteloze) foutmelding terug. Wat doe ik hier verkeerd? Met de gmail api docs kom ik er niet uit en google is ook weinig behulpzaam :(

Roomba E5 te koop


  • dev10
  • Registratie: April 2005
  • Laatst online: 21-11 13:56
Weet je zeker dat er niet iets aan de hand is op de servers van Google? Foutcode 500 duidt namelijk in HTTP op een interne fout en niet zozeer op iets aan jouw kant wat verkeerd gaat.

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 02:31
Tsja geen idee. Het kan natuurlijk ook zijn dat er iets niet goed is aan mijn request wat niet correct afgehandeld wordt en dat de api dan maar een 500 teruggeeft. Via de deze pagina kan je het testen: https://developers.google...rence/users/drafts/create, en dat werkt wel. Enige verschil is de manier van authenticeren (een service aacount vs een user account)

Roomba E5 te koop


  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

Ik kan je zeer waarschijnlijk niet helpen, maar dat er een Gmail API bestond wist ik niet eens :+. Bedankt! 8)

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 02:31
De restfull api bestaat pas sinds kort. Vandaar dat er ook niets over te vinden is misschien.

Roomba E5 te koop


  • dev10
  • Registratie: April 2005
  • Laatst online: 21-11 13:56
sig69 schreef op donderdag 03 juli 2014 @ 16:06:
Tsja geen idee. Het kan natuurlijk ook zijn dat er iets niet goed is aan mijn request wat niet correct afgehandeld wordt en dat de api dan maar een 500 teruggeeft.
De correcte response zou in dat geval 400 moeten zijn: Bad request.

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 02:31
Ik heb op stackoverflow een lotgenoot gevonden (nou ja, hij heeft mij gevonden). Het lijkt er op dat de Gmail compose (nog) niet beschikbaar is voor service accounts :(

[ Voor 10% gewijzigd door sig69 op 04-07-2014 12:35 ]

Roomba E5 te koop

Pagina: 1