@defoai/ads-client 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/README.md +88 -0
  2. package/dist/generated/apis/AdAssetsApi.d.ts +140 -0
  3. package/dist/generated/apis/AdAssetsApi.js +173 -0
  4. package/dist/generated/apis/AdGroupsApi.d.ts +165 -0
  5. package/dist/generated/apis/AdGroupsApi.js +205 -0
  6. package/dist/generated/apis/AdsApi.d.ts +160 -0
  7. package/dist/generated/apis/AdsApi.js +200 -0
  8. package/dist/generated/apis/AssetsApi.d.ts +162 -0
  9. package/dist/generated/apis/AssetsApi.js +203 -0
  10. package/dist/generated/apis/CampaignAssetsApi.d.ts +136 -0
  11. package/dist/generated/apis/CampaignAssetsApi.js +167 -0
  12. package/dist/generated/apis/CampaignsApi.d.ts +169 -0
  13. package/dist/generated/apis/CampaignsApi.js +206 -0
  14. package/dist/generated/apis/KeywordsApi.d.ts +160 -0
  15. package/dist/generated/apis/KeywordsApi.js +200 -0
  16. package/dist/generated/apis/MediaApi.d.ts +50 -0
  17. package/dist/generated/apis/MediaApi.js +51 -0
  18. package/dist/generated/apis/MetaApi.d.ts +86 -0
  19. package/dist/generated/apis/MetaApi.js +104 -0
  20. package/dist/generated/apis/ReportsApi.d.ts +50 -0
  21. package/dist/generated/apis/ReportsApi.js +51 -0
  22. package/dist/generated/apis/SitesApi.d.ts +163 -0
  23. package/dist/generated/apis/SitesApi.js +202 -0
  24. package/dist/generated/apis/SyncApi.d.ts +199 -0
  25. package/dist/generated/apis/SyncApi.js +241 -0
  26. package/dist/generated/apis/index.d.ts +12 -0
  27. package/dist/generated/apis/index.js +14 -0
  28. package/dist/generated/index.d.ts +3 -0
  29. package/dist/generated/index.js +5 -0
  30. package/dist/generated/models/AdAssetCreate.d.ts +83 -0
  31. package/dist/generated/models/AdAssetCreate.js +76 -0
  32. package/dist/generated/models/AdCreate.d.ts +147 -0
  33. package/dist/generated/models/AdCreate.js +97 -0
  34. package/dist/generated/models/AdGroupAudience.d.ts +44 -0
  35. package/dist/generated/models/AdGroupAudience.js +49 -0
  36. package/dist/generated/models/AdGroupCreate.d.ts +104 -0
  37. package/dist/generated/models/AdGroupCreate.js +74 -0
  38. package/dist/generated/models/AdGroupUpdate.d.ts +104 -0
  39. package/dist/generated/models/AdGroupUpdate.js +70 -0
  40. package/dist/generated/models/AdUpdate.d.ts +147 -0
  41. package/dist/generated/models/AdUpdate.js +85 -0
  42. package/dist/generated/models/AssetCreate.d.ts +117 -0
  43. package/dist/generated/models/AssetCreate.js +80 -0
  44. package/dist/generated/models/AssetUpdate.d.ts +79 -0
  45. package/dist/generated/models/AssetUpdate.js +61 -0
  46. package/dist/generated/models/BiddingStrategy.d.ts +70 -0
  47. package/dist/generated/models/BiddingStrategy.js +62 -0
  48. package/dist/generated/models/CampaignAdScheduleField.d.ts +12 -0
  49. package/dist/generated/models/CampaignAdScheduleField.js +4 -0
  50. package/dist/generated/models/CampaignAssetCreate.d.ts +57 -0
  51. package/dist/generated/models/CampaignAssetCreate.js +63 -0
  52. package/dist/generated/models/CampaignCreate.d.ts +161 -0
  53. package/dist/generated/models/CampaignCreate.js +102 -0
  54. package/dist/generated/models/CampaignTargeting.d.ts +50 -0
  55. package/dist/generated/models/CampaignTargeting.js +47 -0
  56. package/dist/generated/models/CampaignUpdate.d.ts +161 -0
  57. package/dist/generated/models/CampaignUpdate.js +98 -0
  58. package/dist/generated/models/CampaignsListCursorParameter.d.ts +26 -0
  59. package/dist/generated/models/CampaignsListCursorParameter.js +31 -0
  60. package/dist/generated/models/ErrorEnvelope.d.ts +33 -0
  61. package/dist/generated/models/ErrorEnvelope.js +44 -0
  62. package/dist/generated/models/ErrorEnvelopeError.d.ts +44 -0
  63. package/dist/generated/models/ErrorEnvelopeError.js +49 -0
  64. package/dist/generated/models/KeywordCreate.d.ts +86 -0
  65. package/dist/generated/models/KeywordCreate.js +73 -0
  66. package/dist/generated/models/KeywordUpdate.d.ts +86 -0
  67. package/dist/generated/models/KeywordUpdate.js +69 -0
  68. package/dist/generated/models/Location.d.ts +61 -0
  69. package/dist/generated/models/Location.js +61 -0
  70. package/dist/generated/models/NegativeKeywordEntry.d.ts +47 -0
  71. package/dist/generated/models/NegativeKeywordEntry.js +55 -0
  72. package/dist/generated/models/ScheduleWindow.d.ts +95 -0
  73. package/dist/generated/models/ScheduleWindow.js +87 -0
  74. package/dist/generated/models/SiteCreate.d.ts +99 -0
  75. package/dist/generated/models/SiteCreate.js +78 -0
  76. package/dist/generated/models/SiteCreateSeoKeywords.d.ts +11 -0
  77. package/dist/generated/models/SiteCreateSeoKeywords.js +12 -0
  78. package/dist/generated/models/SiteCreateTargetGroups.d.ts +11 -0
  79. package/dist/generated/models/SiteCreateTargetGroups.js +12 -0
  80. package/dist/generated/models/SiteLinkEntry.d.ts +50 -0
  81. package/dist/generated/models/SiteLinkEntry.js +47 -0
  82. package/dist/generated/models/SiteUpdate.d.ts +99 -0
  83. package/dist/generated/models/SiteUpdate.js +74 -0
  84. package/dist/generated/models/Sitelink.d.ts +64 -0
  85. package/dist/generated/models/Sitelink.js +51 -0
  86. package/dist/generated/models/StructuredSchedule.d.ts +39 -0
  87. package/dist/generated/models/StructuredSchedule.js +46 -0
  88. package/dist/generated/models/StructuredSnippet.d.ts +38 -0
  89. package/dist/generated/models/StructuredSnippet.js +47 -0
  90. package/dist/generated/models/SuccessEnvelope.d.ts +39 -0
  91. package/dist/generated/models/SuccessEnvelope.js +46 -0
  92. package/dist/generated/models/SuccessEnvelopeMeta.d.ts +39 -0
  93. package/dist/generated/models/SuccessEnvelopeMeta.js +44 -0
  94. package/dist/generated/models/SuccessEnvelopeMetaNextCursor.d.ts +26 -0
  95. package/dist/generated/models/SuccessEnvelopeMetaNextCursor.js +31 -0
  96. package/dist/generated/models/SyncCampaignDetail.d.ts +88 -0
  97. package/dist/generated/models/SyncCampaignDetail.js +71 -0
  98. package/dist/generated/models/SyncPlan.d.ts +35 -0
  99. package/dist/generated/models/SyncPlan.js +43 -0
  100. package/dist/generated/models/SyncPlanPlatformsValue.d.ts +33 -0
  101. package/dist/generated/models/SyncPlanPlatformsValue.js +42 -0
  102. package/dist/generated/models/SyncPlanPlatformsValueTotals.d.ts +44 -0
  103. package/dist/generated/models/SyncPlanPlatformsValueTotals.js +45 -0
  104. package/dist/generated/models/SyncProgress.d.ts +57 -0
  105. package/dist/generated/models/SyncProgress.js +50 -0
  106. package/dist/generated/models/SyncRecord.d.ts +103 -0
  107. package/dist/generated/models/SyncRecord.js +73 -0
  108. package/dist/generated/models/SyncRecordErrorsInner.d.ts +38 -0
  109. package/dist/generated/models/SyncRecordErrorsInner.js +43 -0
  110. package/dist/generated/models/SyncTotals.d.ts +68 -0
  111. package/dist/generated/models/SyncTotals.js +53 -0
  112. package/dist/generated/models/SyncTriggerRequest.d.ts +39 -0
  113. package/dist/generated/models/SyncTriggerRequest.js +44 -0
  114. package/dist/generated/models/SyncTriggerRequestOptions.d.ts +56 -0
  115. package/dist/generated/models/SyncTriggerRequestOptions.js +49 -0
  116. package/dist/generated/models/SyncTriggerResponse.d.ts +59 -0
  117. package/dist/generated/models/SyncTriggerResponse.js +55 -0
  118. package/dist/generated/models/SyncUnlinkRequest.d.ts +44 -0
  119. package/dist/generated/models/SyncUnlinkRequest.js +47 -0
  120. package/dist/generated/models/index.d.ts +45 -0
  121. package/dist/generated/models/index.js +47 -0
  122. package/dist/generated/runtime.d.ts +182 -0
  123. package/dist/generated/runtime.js +318 -0
  124. package/dist/index.d.ts +177 -0
  125. package/dist/index.js +207 -0
  126. package/package.json +32 -0
  127. package/src/generated/apis/AdAssetsApi.ts +342 -0
  128. package/src/generated/apis/AdGroupsApi.ts +408 -0
  129. package/src/generated/apis/AdsApi.ts +399 -0
  130. package/src/generated/apis/AssetsApi.ts +405 -0
  131. package/src/generated/apis/CampaignAssetsApi.ts +330 -0
  132. package/src/generated/apis/CampaignsApi.ts +408 -0
  133. package/src/generated/apis/KeywordsApi.ts +399 -0
  134. package/src/generated/apis/MediaApi.ts +99 -0
  135. package/src/generated/apis/MetaApi.ts +186 -0
  136. package/src/generated/apis/ReportsApi.ts +99 -0
  137. package/src/generated/apis/SitesApi.ts +402 -0
  138. package/src/generated/apis/SyncApi.ts +468 -0
  139. package/src/generated/apis/index.ts +14 -0
  140. package/src/generated/index.ts +5 -0
  141. package/src/generated/models/AdAssetCreate.ts +133 -0
  142. package/src/generated/models/AdCreate.ts +234 -0
  143. package/src/generated/models/AdGroupAudience.ts +83 -0
  144. package/src/generated/models/AdGroupCreate.ts +167 -0
  145. package/src/generated/models/AdGroupUpdate.ts +165 -0
  146. package/src/generated/models/AdUpdate.ts +228 -0
  147. package/src/generated/models/AssetCreate.ts +175 -0
  148. package/src/generated/models/AssetUpdate.ts +125 -0
  149. package/src/generated/models/BiddingStrategy.ts +114 -0
  150. package/src/generated/models/CampaignAdScheduleField.ts +16 -0
  151. package/src/generated/models/CampaignAssetCreate.ts +100 -0
  152. package/src/generated/models/CampaignCreate.ts +263 -0
  153. package/src/generated/models/CampaignTargeting.ts +89 -0
  154. package/src/generated/models/CampaignUpdate.ts +261 -0
  155. package/src/generated/models/CampaignsListCursorParameter.ts +46 -0
  156. package/src/generated/models/ErrorEnvelope.ts +74 -0
  157. package/src/generated/models/ErrorEnvelopeError.ts +83 -0
  158. package/src/generated/models/KeywordCreate.ts +137 -0
  159. package/src/generated/models/KeywordUpdate.ts +135 -0
  160. package/src/generated/models/Location.ts +105 -0
  161. package/src/generated/models/NegativeKeywordEntry.ts +87 -0
  162. package/src/generated/models/ScheduleWindow.ts +146 -0
  163. package/src/generated/models/SiteCreate.ts +173 -0
  164. package/src/generated/models/SiteCreateSeoKeywords.ts +16 -0
  165. package/src/generated/models/SiteCreateTargetGroups.ts +16 -0
  166. package/src/generated/models/SiteLinkEntry.ts +89 -0
  167. package/src/generated/models/SiteUpdate.ts +171 -0
  168. package/src/generated/models/Sitelink.ts +105 -0
  169. package/src/generated/models/StructuredSchedule.ts +82 -0
  170. package/src/generated/models/StructuredSnippet.ts +75 -0
  171. package/src/generated/models/SuccessEnvelope.ts +82 -0
  172. package/src/generated/models/SuccessEnvelopeMeta.ts +81 -0
  173. package/src/generated/models/SuccessEnvelopeMetaNextCursor.ts +46 -0
  174. package/src/generated/models/SyncCampaignDetail.ts +137 -0
  175. package/src/generated/models/SyncPlan.ts +73 -0
  176. package/src/generated/models/SyncPlanPlatformsValue.ts +73 -0
  177. package/src/generated/models/SyncPlanPlatformsValueTotals.ts +81 -0
  178. package/src/generated/models/SyncProgress.ts +105 -0
  179. package/src/generated/models/SyncRecord.ts +174 -0
  180. package/src/generated/models/SyncRecordErrorsInner.ts +73 -0
  181. package/src/generated/models/SyncTotals.ts +113 -0
  182. package/src/generated/models/SyncTriggerRequest.ts +81 -0
  183. package/src/generated/models/SyncTriggerRequestOptions.ts +97 -0
  184. package/src/generated/models/SyncTriggerResponse.ts +108 -0
  185. package/src/generated/models/SyncUnlinkRequest.ts +82 -0
  186. package/src/generated/models/index.ts +47 -0
  187. package/src/generated/runtime.ts +431 -0
  188. package/src/index.ts +229 -0
@@ -0,0 +1,399 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Defo Ads Public API
5
+ * Stable public API for managing campaigns, ads, keywords, and sites.
6
+ *
7
+ * The version of the OpenAPI document: 1.4.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import * as runtime from '../runtime';
17
+ import type {
18
+ CampaignsListCursorParameter,
19
+ ErrorEnvelope,
20
+ KeywordCreate,
21
+ KeywordUpdate,
22
+ SuccessEnvelope,
23
+ } from '../models/index';
24
+ import {
25
+ CampaignsListCursorParameterFromJSON,
26
+ CampaignsListCursorParameterToJSON,
27
+ ErrorEnvelopeFromJSON,
28
+ ErrorEnvelopeToJSON,
29
+ KeywordCreateFromJSON,
30
+ KeywordCreateToJSON,
31
+ KeywordUpdateFromJSON,
32
+ KeywordUpdateToJSON,
33
+ SuccessEnvelopeFromJSON,
34
+ SuccessEnvelopeToJSON,
35
+ } from '../models/index';
36
+
37
+ export interface KeywordsCreateRequest {
38
+ keywordCreate: KeywordCreate;
39
+ xSpaceId?: string;
40
+ }
41
+
42
+ export interface KeywordsDeleteRequest {
43
+ id: string;
44
+ xSpaceId?: string;
45
+ }
46
+
47
+ export interface KeywordsGetRequest {
48
+ id: string;
49
+ xSpaceId?: string;
50
+ }
51
+
52
+ export interface KeywordsListRequest {
53
+ limit?: number;
54
+ cursor?: CampaignsListCursorParameter;
55
+ xSpaceId?: string;
56
+ }
57
+
58
+ export interface KeywordsUpdateRequest {
59
+ id: string;
60
+ keywordUpdate: KeywordUpdate;
61
+ xSpaceId?: string;
62
+ }
63
+
64
+ /**
65
+ * KeywordsApi - interface
66
+ *
67
+ * @export
68
+ * @interface KeywordsApiInterface
69
+ */
70
+ export interface KeywordsApiInterface {
71
+ /**
72
+ *
73
+ * @summary Create keyword
74
+ * @param {KeywordCreate} keywordCreate
75
+ * @param {string} [xSpaceId] Target Space ID (e.g. `spc_…`). Omit to use the caller\'s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
76
+ * @param {*} [options] Override http request option.
77
+ * @throws {RequiredError}
78
+ * @memberof KeywordsApiInterface
79
+ */
80
+ keywordsCreateRaw(requestParameters: KeywordsCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
81
+
82
+ /**
83
+ * Create keyword
84
+ */
85
+ keywordsCreate(requestParameters: KeywordsCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
86
+
87
+ /**
88
+ *
89
+ * @summary Delete keyword
90
+ * @param {string} id
91
+ * @param {string} [xSpaceId] Target Space ID (e.g. &#x60;spc_…&#x60;). Omit to use the caller\&#39;s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
92
+ * @param {*} [options] Override http request option.
93
+ * @throws {RequiredError}
94
+ * @memberof KeywordsApiInterface
95
+ */
96
+ keywordsDeleteRaw(requestParameters: KeywordsDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
97
+
98
+ /**
99
+ * Delete keyword
100
+ */
101
+ keywordsDelete(requestParameters: KeywordsDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
102
+
103
+ /**
104
+ *
105
+ * @summary Get keyword
106
+ * @param {string} id
107
+ * @param {string} [xSpaceId] Target Space ID (e.g. &#x60;spc_…&#x60;). Omit to use the caller\&#39;s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
108
+ * @param {*} [options] Override http request option.
109
+ * @throws {RequiredError}
110
+ * @memberof KeywordsApiInterface
111
+ */
112
+ keywordsGetRaw(requestParameters: KeywordsGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
113
+
114
+ /**
115
+ * Get keyword
116
+ */
117
+ keywordsGet(requestParameters: KeywordsGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
118
+
119
+ /**
120
+ *
121
+ * @summary List keywords
122
+ * @param {number} [limit] Maximum items to return. Default 50, max 200.
123
+ * @param {CampaignsListCursorParameter} [cursor] Opaque pagination cursor returned by the previous page in &#x60;meta.nextCursor&#x60;.
124
+ * @param {string} [xSpaceId] Target Space ID (e.g. &#x60;spc_…&#x60;). Omit to use the caller\&#39;s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
125
+ * @param {*} [options] Override http request option.
126
+ * @throws {RequiredError}
127
+ * @memberof KeywordsApiInterface
128
+ */
129
+ keywordsListRaw(requestParameters: KeywordsListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
130
+
131
+ /**
132
+ * List keywords
133
+ */
134
+ keywordsList(requestParameters: KeywordsListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
135
+
136
+ /**
137
+ *
138
+ * @summary Update keyword
139
+ * @param {string} id
140
+ * @param {KeywordUpdate} keywordUpdate
141
+ * @param {string} [xSpaceId] Target Space ID (e.g. &#x60;spc_…&#x60;). Omit to use the caller\&#39;s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
142
+ * @param {*} [options] Override http request option.
143
+ * @throws {RequiredError}
144
+ * @memberof KeywordsApiInterface
145
+ */
146
+ keywordsUpdateRaw(requestParameters: KeywordsUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
147
+
148
+ /**
149
+ * Update keyword
150
+ */
151
+ keywordsUpdate(requestParameters: KeywordsUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
152
+
153
+ }
154
+
155
+ /**
156
+ *
157
+ */
158
+ export class KeywordsApi extends runtime.BaseAPI implements KeywordsApiInterface {
159
+
160
+ /**
161
+ * Create keyword
162
+ */
163
+ async keywordsCreateRaw(requestParameters: KeywordsCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
164
+ if (requestParameters['keywordCreate'] == null) {
165
+ throw new runtime.RequiredError(
166
+ 'keywordCreate',
167
+ 'Required parameter "keywordCreate" was null or undefined when calling keywordsCreate().'
168
+ );
169
+ }
170
+
171
+ const queryParameters: any = {};
172
+
173
+ const headerParameters: runtime.HTTPHeaders = {};
174
+
175
+ headerParameters['Content-Type'] = 'application/json';
176
+
177
+ if (requestParameters['xSpaceId'] != null) {
178
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
179
+ }
180
+
181
+ if (this.configuration && this.configuration.accessToken) {
182
+ const token = this.configuration.accessToken;
183
+ const tokenString = await token("ApiToken", ["keywords:write"]);
184
+
185
+ if (tokenString) {
186
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
187
+ }
188
+ }
189
+ const response = await this.request({
190
+ path: `/api/v1/keywords`,
191
+ method: 'POST',
192
+ headers: headerParameters,
193
+ query: queryParameters,
194
+ body: KeywordCreateToJSON(requestParameters['keywordCreate']),
195
+ }, initOverrides);
196
+
197
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
198
+ }
199
+
200
+ /**
201
+ * Create keyword
202
+ */
203
+ async keywordsCreate(requestParameters: KeywordsCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
204
+ const response = await this.keywordsCreateRaw(requestParameters, initOverrides);
205
+ return await response.value();
206
+ }
207
+
208
+ /**
209
+ * Delete keyword
210
+ */
211
+ async keywordsDeleteRaw(requestParameters: KeywordsDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
212
+ if (requestParameters['id'] == null) {
213
+ throw new runtime.RequiredError(
214
+ 'id',
215
+ 'Required parameter "id" was null or undefined when calling keywordsDelete().'
216
+ );
217
+ }
218
+
219
+ const queryParameters: any = {};
220
+
221
+ const headerParameters: runtime.HTTPHeaders = {};
222
+
223
+ if (requestParameters['xSpaceId'] != null) {
224
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
225
+ }
226
+
227
+ if (this.configuration && this.configuration.accessToken) {
228
+ const token = this.configuration.accessToken;
229
+ const tokenString = await token("ApiToken", ["keywords:write"]);
230
+
231
+ if (tokenString) {
232
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
233
+ }
234
+ }
235
+ const response = await this.request({
236
+ path: `/api/v1/keywords/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
237
+ method: 'DELETE',
238
+ headers: headerParameters,
239
+ query: queryParameters,
240
+ }, initOverrides);
241
+
242
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
243
+ }
244
+
245
+ /**
246
+ * Delete keyword
247
+ */
248
+ async keywordsDelete(requestParameters: KeywordsDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
249
+ const response = await this.keywordsDeleteRaw(requestParameters, initOverrides);
250
+ return await response.value();
251
+ }
252
+
253
+ /**
254
+ * Get keyword
255
+ */
256
+ async keywordsGetRaw(requestParameters: KeywordsGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
257
+ if (requestParameters['id'] == null) {
258
+ throw new runtime.RequiredError(
259
+ 'id',
260
+ 'Required parameter "id" was null or undefined when calling keywordsGet().'
261
+ );
262
+ }
263
+
264
+ const queryParameters: any = {};
265
+
266
+ const headerParameters: runtime.HTTPHeaders = {};
267
+
268
+ if (requestParameters['xSpaceId'] != null) {
269
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
270
+ }
271
+
272
+ if (this.configuration && this.configuration.accessToken) {
273
+ const token = this.configuration.accessToken;
274
+ const tokenString = await token("ApiToken", ["keywords:read"]);
275
+
276
+ if (tokenString) {
277
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
278
+ }
279
+ }
280
+ const response = await this.request({
281
+ path: `/api/v1/keywords/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
282
+ method: 'GET',
283
+ headers: headerParameters,
284
+ query: queryParameters,
285
+ }, initOverrides);
286
+
287
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
288
+ }
289
+
290
+ /**
291
+ * Get keyword
292
+ */
293
+ async keywordsGet(requestParameters: KeywordsGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
294
+ const response = await this.keywordsGetRaw(requestParameters, initOverrides);
295
+ return await response.value();
296
+ }
297
+
298
+ /**
299
+ * List keywords
300
+ */
301
+ async keywordsListRaw(requestParameters: KeywordsListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
302
+ const queryParameters: any = {};
303
+
304
+ if (requestParameters['limit'] != null) {
305
+ queryParameters['limit'] = requestParameters['limit'];
306
+ }
307
+
308
+ if (requestParameters['cursor'] != null) {
309
+ queryParameters['cursor'] = requestParameters['cursor'];
310
+ }
311
+
312
+ const headerParameters: runtime.HTTPHeaders = {};
313
+
314
+ if (requestParameters['xSpaceId'] != null) {
315
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
316
+ }
317
+
318
+ if (this.configuration && this.configuration.accessToken) {
319
+ const token = this.configuration.accessToken;
320
+ const tokenString = await token("ApiToken", ["keywords:read"]);
321
+
322
+ if (tokenString) {
323
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
324
+ }
325
+ }
326
+ const response = await this.request({
327
+ path: `/api/v1/keywords`,
328
+ method: 'GET',
329
+ headers: headerParameters,
330
+ query: queryParameters,
331
+ }, initOverrides);
332
+
333
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
334
+ }
335
+
336
+ /**
337
+ * List keywords
338
+ */
339
+ async keywordsList(requestParameters: KeywordsListRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
340
+ const response = await this.keywordsListRaw(requestParameters, initOverrides);
341
+ return await response.value();
342
+ }
343
+
344
+ /**
345
+ * Update keyword
346
+ */
347
+ async keywordsUpdateRaw(requestParameters: KeywordsUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
348
+ if (requestParameters['id'] == null) {
349
+ throw new runtime.RequiredError(
350
+ 'id',
351
+ 'Required parameter "id" was null or undefined when calling keywordsUpdate().'
352
+ );
353
+ }
354
+
355
+ if (requestParameters['keywordUpdate'] == null) {
356
+ throw new runtime.RequiredError(
357
+ 'keywordUpdate',
358
+ 'Required parameter "keywordUpdate" was null or undefined when calling keywordsUpdate().'
359
+ );
360
+ }
361
+
362
+ const queryParameters: any = {};
363
+
364
+ const headerParameters: runtime.HTTPHeaders = {};
365
+
366
+ headerParameters['Content-Type'] = 'application/json';
367
+
368
+ if (requestParameters['xSpaceId'] != null) {
369
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
370
+ }
371
+
372
+ if (this.configuration && this.configuration.accessToken) {
373
+ const token = this.configuration.accessToken;
374
+ const tokenString = await token("ApiToken", ["keywords:write"]);
375
+
376
+ if (tokenString) {
377
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
378
+ }
379
+ }
380
+ const response = await this.request({
381
+ path: `/api/v1/keywords/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
382
+ method: 'PUT',
383
+ headers: headerParameters,
384
+ query: queryParameters,
385
+ body: KeywordUpdateToJSON(requestParameters['keywordUpdate']),
386
+ }, initOverrides);
387
+
388
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
389
+ }
390
+
391
+ /**
392
+ * Update keyword
393
+ */
394
+ async keywordsUpdate(requestParameters: KeywordsUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
395
+ const response = await this.keywordsUpdateRaw(requestParameters, initOverrides);
396
+ return await response.value();
397
+ }
398
+
399
+ }
@@ -0,0 +1,99 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Defo Ads Public API
5
+ * Stable public API for managing campaigns, ads, keywords, and sites.
6
+ *
7
+ * The version of the OpenAPI document: 1.4.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import * as runtime from '../runtime';
17
+ import type {
18
+ ErrorEnvelope,
19
+ SuccessEnvelope,
20
+ } from '../models/index';
21
+ import {
22
+ ErrorEnvelopeFromJSON,
23
+ ErrorEnvelopeToJSON,
24
+ SuccessEnvelopeFromJSON,
25
+ SuccessEnvelopeToJSON,
26
+ } from '../models/index';
27
+
28
+ export interface MediaMatrixRequest {
29
+ xSpaceId?: string;
30
+ }
31
+
32
+ /**
33
+ * MediaApi - interface
34
+ *
35
+ * @export
36
+ * @interface MediaApiInterface
37
+ */
38
+ export interface MediaApiInterface {
39
+ /**
40
+ *
41
+ * @summary Media requirements matrix (per platform/campaign type: required & optional roles, scope, ad format). Versioned so consumers can detect drift.
42
+ * @param {string} [xSpaceId] Target Space ID (e.g. &#x60;spc_…&#x60;). Omit to use the caller\&#39;s Personal Space. Invalid Space → 404 SPACE_NOT_FOUND; non-member → 403 NOT_A_MEMBER.
43
+ * @param {*} [options] Override http request option.
44
+ * @throws {RequiredError}
45
+ * @memberof MediaApiInterface
46
+ */
47
+ mediaMatrixRaw(requestParameters: MediaMatrixRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
48
+
49
+ /**
50
+ * Media requirements matrix (per platform/campaign type: required & optional roles, scope, ad format). Versioned so consumers can detect drift.
51
+ */
52
+ mediaMatrix(requestParameters: MediaMatrixRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
53
+
54
+ }
55
+
56
+ /**
57
+ *
58
+ */
59
+ export class MediaApi extends runtime.BaseAPI implements MediaApiInterface {
60
+
61
+ /**
62
+ * Media requirements matrix (per platform/campaign type: required & optional roles, scope, ad format). Versioned so consumers can detect drift.
63
+ */
64
+ async mediaMatrixRaw(requestParameters: MediaMatrixRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
65
+ const queryParameters: any = {};
66
+
67
+ const headerParameters: runtime.HTTPHeaders = {};
68
+
69
+ if (requestParameters['xSpaceId'] != null) {
70
+ headerParameters['X-Space-Id'] = String(requestParameters['xSpaceId']);
71
+ }
72
+
73
+ if (this.configuration && this.configuration.accessToken) {
74
+ const token = this.configuration.accessToken;
75
+ const tokenString = await token("ApiToken", []);
76
+
77
+ if (tokenString) {
78
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
79
+ }
80
+ }
81
+ const response = await this.request({
82
+ path: `/api/v1/media/matrix`,
83
+ method: 'GET',
84
+ headers: headerParameters,
85
+ query: queryParameters,
86
+ }, initOverrides);
87
+
88
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
89
+ }
90
+
91
+ /**
92
+ * Media requirements matrix (per platform/campaign type: required & optional roles, scope, ad format). Versioned so consumers can detect drift.
93
+ */
94
+ async mediaMatrix(requestParameters: MediaMatrixRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
95
+ const response = await this.mediaMatrixRaw(requestParameters, initOverrides);
96
+ return await response.value();
97
+ }
98
+
99
+ }
@@ -0,0 +1,186 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Defo Ads Public API
5
+ * Stable public API for managing campaigns, ads, keywords, and sites.
6
+ *
7
+ * The version of the OpenAPI document: 1.4.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ import * as runtime from '../runtime';
17
+ import type {
18
+ ErrorEnvelope,
19
+ SuccessEnvelope,
20
+ } from '../models/index';
21
+ import {
22
+ ErrorEnvelopeFromJSON,
23
+ ErrorEnvelopeToJSON,
24
+ SuccessEnvelopeFromJSON,
25
+ SuccessEnvelopeToJSON,
26
+ } from '../models/index';
27
+
28
+ /**
29
+ * MetaApi - interface
30
+ *
31
+ * @export
32
+ * @interface MetaApiInterface
33
+ */
34
+ export interface MetaApiInterface {
35
+ /**
36
+ *
37
+ * @summary Introspect the authenticated API token
38
+ * @param {*} [options] Override http request option.
39
+ * @throws {RequiredError}
40
+ * @memberof MetaApiInterface
41
+ */
42
+ meGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
43
+
44
+ /**
45
+ * Introspect the authenticated API token
46
+ */
47
+ meGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
48
+
49
+ /**
50
+ *
51
+ * @summary OpenAPI specification for this API
52
+ * @param {*} [options] Override http request option.
53
+ * @throws {RequiredError}
54
+ * @memberof MetaApiInterface
55
+ */
56
+ openapiGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
57
+
58
+ /**
59
+ * OpenAPI specification for this API
60
+ */
61
+ openapiGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
62
+
63
+ /**
64
+ *
65
+ * @summary List Spaces the token owner is a member of
66
+ * @param {*} [options] Override http request option.
67
+ * @throws {RequiredError}
68
+ * @memberof MetaApiInterface
69
+ */
70
+ spacesListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>>;
71
+
72
+ /**
73
+ * List Spaces the token owner is a member of
74
+ */
75
+ spacesList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope>;
76
+
77
+ }
78
+
79
+ /**
80
+ *
81
+ */
82
+ export class MetaApi extends runtime.BaseAPI implements MetaApiInterface {
83
+
84
+ /**
85
+ * Introspect the authenticated API token
86
+ */
87
+ async meGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
88
+ const queryParameters: any = {};
89
+
90
+ const headerParameters: runtime.HTTPHeaders = {};
91
+
92
+ if (this.configuration && this.configuration.accessToken) {
93
+ const token = this.configuration.accessToken;
94
+ const tokenString = await token("ApiToken", []);
95
+
96
+ if (tokenString) {
97
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
98
+ }
99
+ }
100
+ const response = await this.request({
101
+ path: `/api/v1/me`,
102
+ method: 'GET',
103
+ headers: headerParameters,
104
+ query: queryParameters,
105
+ }, initOverrides);
106
+
107
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
108
+ }
109
+
110
+ /**
111
+ * Introspect the authenticated API token
112
+ */
113
+ async meGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
114
+ const response = await this.meGetRaw(initOverrides);
115
+ return await response.value();
116
+ }
117
+
118
+ /**
119
+ * OpenAPI specification for this API
120
+ */
121
+ async openapiGetRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
122
+ const queryParameters: any = {};
123
+
124
+ const headerParameters: runtime.HTTPHeaders = {};
125
+
126
+ if (this.configuration && this.configuration.accessToken) {
127
+ const token = this.configuration.accessToken;
128
+ const tokenString = await token("ApiToken", []);
129
+
130
+ if (tokenString) {
131
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
132
+ }
133
+ }
134
+ const response = await this.request({
135
+ path: `/api/v1/openapi.json`,
136
+ method: 'GET',
137
+ headers: headerParameters,
138
+ query: queryParameters,
139
+ }, initOverrides);
140
+
141
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
142
+ }
143
+
144
+ /**
145
+ * OpenAPI specification for this API
146
+ */
147
+ async openapiGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
148
+ const response = await this.openapiGetRaw(initOverrides);
149
+ return await response.value();
150
+ }
151
+
152
+ /**
153
+ * List Spaces the token owner is a member of
154
+ */
155
+ async spacesListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SuccessEnvelope>> {
156
+ const queryParameters: any = {};
157
+
158
+ const headerParameters: runtime.HTTPHeaders = {};
159
+
160
+ if (this.configuration && this.configuration.accessToken) {
161
+ const token = this.configuration.accessToken;
162
+ const tokenString = await token("ApiToken", []);
163
+
164
+ if (tokenString) {
165
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
166
+ }
167
+ }
168
+ const response = await this.request({
169
+ path: `/api/v1/spaces`,
170
+ method: 'GET',
171
+ headers: headerParameters,
172
+ query: queryParameters,
173
+ }, initOverrides);
174
+
175
+ return new runtime.JSONApiResponse(response, (jsonValue) => SuccessEnvelopeFromJSON(jsonValue));
176
+ }
177
+
178
+ /**
179
+ * List Spaces the token owner is a member of
180
+ */
181
+ async spacesList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SuccessEnvelope> {
182
+ const response = await this.spacesListRaw(initOverrides);
183
+ return await response.value();
184
+ }
185
+
186
+ }