-
Notifications
You must be signed in to change notification settings - Fork 4
/
returnaddress.clj
160 lines (139 loc) · 4.36 KB
/
returnaddress.clj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
(ns happygapi.content.returnaddress
"Content API for Shopping: returnaddress.
Manages product items, inventory, and Merchant Center accounts for Google Shopping.
See: https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress"
(:require [cheshire.core :as json]
[clj-http.client :as http]
[happy.util :as util]))
(defn custombatch$
"https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress/custombatch
Required parameters: none
Optional parameters: none
Body:
{:entries [{:batchId integer,
:merchantId string,
:method string,
:returnAddress ReturnAddress,
:returnAddressId string}]}
Batches multiple return address related calls in a single request."
{:scopes ["https://www.googleapis.com/auth/content"]}
[auth args body]
{:pre [(util/has-keys? args #{})]}
(util/get-response
(http/post
(util/get-url
"https://www.googleapis.com/content/v2.1/"
"returnaddress/batch"
#{}
args)
(merge-with
merge
{:content-type :json,
:body (json/generate-string body),
:throw-exceptions false,
:query-params args,
:accept :json,
:as :json}
auth))))
(defn delete$
"https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress/delete
Required parameters: merchantId, returnAddressId
Optional parameters: none
Deletes a return address for the given Merchant Center account."
{:scopes ["https://www.googleapis.com/auth/content"]}
[auth args]
{:pre [(util/has-keys? args #{:returnAddressId :merchantId})]}
(util/get-response
(http/delete
(util/get-url
"https://www.googleapis.com/content/v2.1/"
"{merchantId}/returnaddress/{returnAddressId}"
#{:returnAddressId :merchantId}
args)
(merge-with
merge
{:throw-exceptions false,
:query-params args,
:accept :json,
:as :json}
auth))))
(defn get$
"https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress/get
Required parameters: merchantId, returnAddressId
Optional parameters: none
Gets a return address of the Merchant Center account."
{:scopes ["https://www.googleapis.com/auth/content"]}
[auth args]
{:pre [(util/has-keys? args #{:returnAddressId :merchantId})]}
(util/get-response
(http/get
(util/get-url
"https://www.googleapis.com/content/v2.1/"
"{merchantId}/returnaddress/{returnAddressId}"
#{:returnAddressId :merchantId}
args)
(merge-with
merge
{:throw-exceptions false,
:query-params args,
:accept :json,
:as :json}
auth))))
(defn insert$
"https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress/insert
Required parameters: merchantId
Optional parameters: none
Body:
{:address {:country string,
:locality string,
:postalCode string,
:recipientName string,
:region string,
:streetAddress [string]},
:country string,
:kind string,
:label string,
:phoneNumber string,
:returnAddressId string}
Inserts a return address for the Merchant Center account."
{:scopes ["https://www.googleapis.com/auth/content"]}
[auth args body]
{:pre [(util/has-keys? args #{:merchantId})]}
(util/get-response
(http/post
(util/get-url
"https://www.googleapis.com/content/v2.1/"
"{merchantId}/returnaddress"
#{:merchantId}
args)
(merge-with
merge
{:content-type :json,
:body (json/generate-string body),
:throw-exceptions false,
:query-params args,
:accept :json,
:as :json}
auth))))
(defn list$
"https://developers.google.com/shopping-contentapi/reference/rest/v2.1/returnaddress/list
Required parameters: merchantId
Optional parameters: country, maxResults, pageToken
Lists the return addresses of the Merchant Center account."
{:scopes ["https://www.googleapis.com/auth/content"]}
[auth args]
{:pre [(util/has-keys? args #{:merchantId})]}
(util/get-response
(http/get
(util/get-url
"https://www.googleapis.com/content/v2.1/"
"{merchantId}/returnaddress"
#{:merchantId}
args)
(merge-with
merge
{:throw-exceptions false,
:query-params args,
:accept :json,
:as :json}
auth))))