equal
deleted
inserted
replaced
1 package gondole |
1 package gondole |
2 |
2 |
3 import ( |
3 import ( |
4 "encoding/json" |
|
5 "log" |
|
6 "net/url" |
4 "net/url" |
7 "strings" |
5 "strings" |
8 |
6 |
9 "github.com/sendgrid/rest" |
7 "github.com/sendgrid/rest" |
10 ) |
8 ) |
35 Name: name, |
33 Name: name, |
36 APIBase: apiPath, |
34 APIBase: apiPath, |
37 InstanceURL: instanceURL, |
35 InstanceURL: instanceURL, |
38 } |
36 } |
39 |
37 |
40 req := g.prepareRequest("apps") |
38 params := make(apiCallParams) |
|
39 params["client_name"] = name |
|
40 params["scopes"] = strings.Join(scopes, " ") |
41 if redirectURI != "" { |
41 if redirectURI != "" { |
42 req.QueryParams["redirect_uris"] = redirectURI |
42 params["redirect_uris"] = redirectURI |
43 } else { |
43 } else { |
44 req.QueryParams["redirect_uris"] = NoRedirect |
44 params["redirect_uris"] = NoRedirect |
45 } |
|
46 req.QueryParams["client_name"] = name |
|
47 req.QueryParams["scopes"] = strings.Join(scopes, " ") |
|
48 req.Method = rest.Post |
|
49 |
|
50 r, err := rest.API(req) |
|
51 if err != nil { |
|
52 log.Fatalf("error can not register app: %v", err) |
|
53 } |
45 } |
54 |
46 |
55 var resp registerApp |
47 var app registerApp |
56 |
48 if err := g.apiCall("apps", rest.Post, params, &app); err != nil { |
57 err = json.Unmarshal([]byte(r.Body), &resp) |
49 return nil, err |
58 if err != nil { |
|
59 log.Fatalf("error can not register app: %v", err) |
|
60 } |
50 } |
61 |
51 |
62 g.ID = resp.ClientID |
52 g.ID = app.ClientID |
63 g.Secret = resp.ClientSecret |
53 g.Secret = app.ClientSecret |
64 |
54 |
65 return |
55 return |
66 } |
56 } |