@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,73 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface SyncRecordErrorsInner
20
+ */
21
+ export interface SyncRecordErrorsInner {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof SyncRecordErrorsInner
26
+ */
27
+ message?: string;
28
+ /**
29
+ *
30
+ * @type {Date}
31
+ * @memberof SyncRecordErrorsInner
32
+ */
33
+ timestamp?: Date;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the SyncRecordErrorsInner interface.
38
+ */
39
+ export function instanceOfSyncRecordErrorsInner(value: object): value is SyncRecordErrorsInner {
40
+ return true;
41
+ }
42
+
43
+ export function SyncRecordErrorsInnerFromJSON(json: any): SyncRecordErrorsInner {
44
+ return SyncRecordErrorsInnerFromJSONTyped(json, false);
45
+ }
46
+
47
+ export function SyncRecordErrorsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncRecordErrorsInner {
48
+ if (json == null) {
49
+ return json;
50
+ }
51
+ return {
52
+
53
+ 'message': json['message'] == null ? undefined : json['message'],
54
+ 'timestamp': json['timestamp'] == null ? undefined : (new Date(json['timestamp'])),
55
+ };
56
+ }
57
+
58
+ export function SyncRecordErrorsInnerToJSON(json: any): SyncRecordErrorsInner {
59
+ return SyncRecordErrorsInnerToJSONTyped(json, false);
60
+ }
61
+
62
+ export function SyncRecordErrorsInnerToJSONTyped(value?: SyncRecordErrorsInner | null, ignoreDiscriminator: boolean = false): any {
63
+ if (value == null) {
64
+ return value;
65
+ }
66
+
67
+ return {
68
+
69
+ 'message': value['message'],
70
+ 'timestamp': value['timestamp'] == null ? undefined : ((value['timestamp']).toISOString()),
71
+ };
72
+ }
73
+
@@ -0,0 +1,113 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface SyncTotals
20
+ */
21
+ export interface SyncTotals {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof SyncTotals
26
+ */
27
+ campaigns?: number;
28
+ /**
29
+ *
30
+ * @type {number}
31
+ * @memberof SyncTotals
32
+ */
33
+ adGroups?: number;
34
+ /**
35
+ *
36
+ * @type {number}
37
+ * @memberof SyncTotals
38
+ */
39
+ keywords?: number;
40
+ /**
41
+ *
42
+ * @type {number}
43
+ * @memberof SyncTotals
44
+ */
45
+ ads?: number;
46
+ /**
47
+ *
48
+ * @type {number}
49
+ * @memberof SyncTotals
50
+ */
51
+ conversionActions?: number;
52
+ /**
53
+ *
54
+ * @type {number}
55
+ * @memberof SyncTotals
56
+ */
57
+ removals?: number;
58
+ /**
59
+ * Count of failed campaign operations. >0 ⇒ status `partial`.
60
+ * @type {number}
61
+ * @memberof SyncTotals
62
+ */
63
+ errors?: number;
64
+ }
65
+
66
+ /**
67
+ * Check if a given object implements the SyncTotals interface.
68
+ */
69
+ export function instanceOfSyncTotals(value: object): value is SyncTotals {
70
+ return true;
71
+ }
72
+
73
+ export function SyncTotalsFromJSON(json: any): SyncTotals {
74
+ return SyncTotalsFromJSONTyped(json, false);
75
+ }
76
+
77
+ export function SyncTotalsFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncTotals {
78
+ if (json == null) {
79
+ return json;
80
+ }
81
+ return {
82
+
83
+ 'campaigns': json['campaigns'] == null ? undefined : json['campaigns'],
84
+ 'adGroups': json['adGroups'] == null ? undefined : json['adGroups'],
85
+ 'keywords': json['keywords'] == null ? undefined : json['keywords'],
86
+ 'ads': json['ads'] == null ? undefined : json['ads'],
87
+ 'conversionActions': json['conversionActions'] == null ? undefined : json['conversionActions'],
88
+ 'removals': json['removals'] == null ? undefined : json['removals'],
89
+ 'errors': json['errors'] == null ? undefined : json['errors'],
90
+ };
91
+ }
92
+
93
+ export function SyncTotalsToJSON(json: any): SyncTotals {
94
+ return SyncTotalsToJSONTyped(json, false);
95
+ }
96
+
97
+ export function SyncTotalsToJSONTyped(value?: SyncTotals | null, ignoreDiscriminator: boolean = false): any {
98
+ if (value == null) {
99
+ return value;
100
+ }
101
+
102
+ return {
103
+
104
+ 'campaigns': value['campaigns'],
105
+ 'adGroups': value['adGroups'],
106
+ 'keywords': value['keywords'],
107
+ 'ads': value['ads'],
108
+ 'conversionActions': value['conversionActions'],
109
+ 'removals': value['removals'],
110
+ 'errors': value['errors'],
111
+ };
112
+ }
113
+
@@ -0,0 +1,81 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { SyncTriggerRequestOptions } from './SyncTriggerRequestOptions';
17
+ import {
18
+ SyncTriggerRequestOptionsFromJSON,
19
+ SyncTriggerRequestOptionsFromJSONTyped,
20
+ SyncTriggerRequestOptionsToJSON,
21
+ SyncTriggerRequestOptionsToJSONTyped,
22
+ } from './SyncTriggerRequestOptions';
23
+
24
+ /**
25
+ * All fields optional. Omit `platforms` to sync every connected platform.
26
+ * @export
27
+ * @interface SyncTriggerRequest
28
+ */
29
+ export interface SyncTriggerRequest {
30
+ /**
31
+ * Platform ids to sync (e.g. ["google-ads"]). Defaults to all connected.
32
+ * @type {Array<string>}
33
+ * @memberof SyncTriggerRequest
34
+ */
35
+ platforms?: Array<string>;
36
+ /**
37
+ *
38
+ * @type {SyncTriggerRequestOptions}
39
+ * @memberof SyncTriggerRequest
40
+ */
41
+ options?: SyncTriggerRequestOptions;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the SyncTriggerRequest interface.
46
+ */
47
+ export function instanceOfSyncTriggerRequest(value: object): value is SyncTriggerRequest {
48
+ return true;
49
+ }
50
+
51
+ export function SyncTriggerRequestFromJSON(json: any): SyncTriggerRequest {
52
+ return SyncTriggerRequestFromJSONTyped(json, false);
53
+ }
54
+
55
+ export function SyncTriggerRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncTriggerRequest {
56
+ if (json == null) {
57
+ return json;
58
+ }
59
+ return {
60
+
61
+ 'platforms': json['platforms'] == null ? undefined : json['platforms'],
62
+ 'options': json['options'] == null ? undefined : SyncTriggerRequestOptionsFromJSON(json['options']),
63
+ };
64
+ }
65
+
66
+ export function SyncTriggerRequestToJSON(json: any): SyncTriggerRequest {
67
+ return SyncTriggerRequestToJSONTyped(json, false);
68
+ }
69
+
70
+ export function SyncTriggerRequestToJSONTyped(value?: SyncTriggerRequest | null, ignoreDiscriminator: boolean = false): any {
71
+ if (value == null) {
72
+ return value;
73
+ }
74
+
75
+ return {
76
+
77
+ 'platforms': value['platforms'],
78
+ 'options': SyncTriggerRequestOptionsToJSON(value['options']),
79
+ };
80
+ }
81
+
@@ -0,0 +1,97 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * Per-entity-type toggles + force controls.
18
+ * @export
19
+ * @interface SyncTriggerRequestOptions
20
+ */
21
+ export interface SyncTriggerRequestOptions {
22
+ /**
23
+ *
24
+ * @type {boolean}
25
+ * @memberof SyncTriggerRequestOptions
26
+ */
27
+ includeAdGroups?: boolean;
28
+ /**
29
+ *
30
+ * @type {boolean}
31
+ * @memberof SyncTriggerRequestOptions
32
+ */
33
+ includeKeywords?: boolean;
34
+ /**
35
+ *
36
+ * @type {boolean}
37
+ * @memberof SyncTriggerRequestOptions
38
+ */
39
+ includeAds?: boolean;
40
+ /**
41
+ * Re-export linked campaigns even when change-detection sees no change — re-runs the full tree + targeting/extensions/labels. Use to repair campaigns synced before a fix. Applies to campaigns whose remote still exists; for campaigns deleted in the ad platform, unlink then sync to recreate.
42
+ * @type {boolean}
43
+ * @memberof SyncTriggerRequestOptions
44
+ */
45
+ force?: boolean;
46
+ /**
47
+ * Restrict `force` to these campaign ids. Omit to force the whole Space.
48
+ * @type {Array<string>}
49
+ * @memberof SyncTriggerRequestOptions
50
+ */
51
+ campaignIds?: Array<string>;
52
+ }
53
+
54
+ /**
55
+ * Check if a given object implements the SyncTriggerRequestOptions interface.
56
+ */
57
+ export function instanceOfSyncTriggerRequestOptions(value: object): value is SyncTriggerRequestOptions {
58
+ return true;
59
+ }
60
+
61
+ export function SyncTriggerRequestOptionsFromJSON(json: any): SyncTriggerRequestOptions {
62
+ return SyncTriggerRequestOptionsFromJSONTyped(json, false);
63
+ }
64
+
65
+ export function SyncTriggerRequestOptionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncTriggerRequestOptions {
66
+ if (json == null) {
67
+ return json;
68
+ }
69
+ return {
70
+
71
+ 'includeAdGroups': json['includeAdGroups'] == null ? undefined : json['includeAdGroups'],
72
+ 'includeKeywords': json['includeKeywords'] == null ? undefined : json['includeKeywords'],
73
+ 'includeAds': json['includeAds'] == null ? undefined : json['includeAds'],
74
+ 'force': json['force'] == null ? undefined : json['force'],
75
+ 'campaignIds': json['campaignIds'] == null ? undefined : json['campaignIds'],
76
+ };
77
+ }
78
+
79
+ export function SyncTriggerRequestOptionsToJSON(json: any): SyncTriggerRequestOptions {
80
+ return SyncTriggerRequestOptionsToJSONTyped(json, false);
81
+ }
82
+
83
+ export function SyncTriggerRequestOptionsToJSONTyped(value?: SyncTriggerRequestOptions | null, ignoreDiscriminator: boolean = false): any {
84
+ if (value == null) {
85
+ return value;
86
+ }
87
+
88
+ return {
89
+
90
+ 'includeAdGroups': value['includeAdGroups'],
91
+ 'includeKeywords': value['includeKeywords'],
92
+ 'includeAds': value['includeAds'],
93
+ 'force': value['force'],
94
+ 'campaignIds': value['campaignIds'],
95
+ };
96
+ }
97
+
@@ -0,0 +1,108 @@
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
+ import { mapValues } from '../runtime';
16
+ import type { SyncPlan } from './SyncPlan';
17
+ import {
18
+ SyncPlanFromJSON,
19
+ SyncPlanFromJSONTyped,
20
+ SyncPlanToJSON,
21
+ SyncPlanToJSONTyped,
22
+ } from './SyncPlan';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface SyncTriggerResponse
28
+ */
29
+ export interface SyncTriggerResponse {
30
+ /**
31
+ * Poll GET /api/v1/sync/{id} with this id. Null when nothing to sync.
32
+ * @type {string}
33
+ * @memberof SyncTriggerResponse
34
+ */
35
+ syncId?: string | null;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof SyncTriggerResponse
40
+ */
41
+ status?: SyncTriggerResponseStatusEnum;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof SyncTriggerResponse
46
+ */
47
+ spaceId?: string;
48
+ /**
49
+ *
50
+ * @type {SyncPlan}
51
+ * @memberof SyncTriggerResponse
52
+ */
53
+ plan?: SyncPlan;
54
+ }
55
+
56
+
57
+ /**
58
+ * @export
59
+ */
60
+ export const SyncTriggerResponseStatusEnum = {
61
+ started: 'started',
62
+ nothing_to_sync: 'nothing_to_sync'
63
+ } as const;
64
+ export type SyncTriggerResponseStatusEnum = typeof SyncTriggerResponseStatusEnum[keyof typeof SyncTriggerResponseStatusEnum];
65
+
66
+
67
+ /**
68
+ * Check if a given object implements the SyncTriggerResponse interface.
69
+ */
70
+ export function instanceOfSyncTriggerResponse(value: object): value is SyncTriggerResponse {
71
+ return true;
72
+ }
73
+
74
+ export function SyncTriggerResponseFromJSON(json: any): SyncTriggerResponse {
75
+ return SyncTriggerResponseFromJSONTyped(json, false);
76
+ }
77
+
78
+ export function SyncTriggerResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncTriggerResponse {
79
+ if (json == null) {
80
+ return json;
81
+ }
82
+ return {
83
+
84
+ 'syncId': json['syncId'] == null ? undefined : json['syncId'],
85
+ 'status': json['status'] == null ? undefined : json['status'],
86
+ 'spaceId': json['spaceId'] == null ? undefined : json['spaceId'],
87
+ 'plan': json['plan'] == null ? undefined : SyncPlanFromJSON(json['plan']),
88
+ };
89
+ }
90
+
91
+ export function SyncTriggerResponseToJSON(json: any): SyncTriggerResponse {
92
+ return SyncTriggerResponseToJSONTyped(json, false);
93
+ }
94
+
95
+ export function SyncTriggerResponseToJSONTyped(value?: SyncTriggerResponse | null, ignoreDiscriminator: boolean = false): any {
96
+ if (value == null) {
97
+ return value;
98
+ }
99
+
100
+ return {
101
+
102
+ 'syncId': value['syncId'],
103
+ 'status': value['status'],
104
+ 'spaceId': value['spaceId'],
105
+ 'plan': SyncPlanToJSON(value['plan']),
106
+ };
107
+ }
108
+
@@ -0,0 +1,82 @@
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
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * Clear a platform link from the active Space's campaigns, keeping the local campaigns. After unlinking, a subsequent sync re-creates them on the platform.
18
+ * @export
19
+ * @interface SyncUnlinkRequest
20
+ */
21
+ export interface SyncUnlinkRequest {
22
+ /**
23
+ * Platform id, e.g. "microsoft-ads".
24
+ * @type {string}
25
+ * @memberof SyncUnlinkRequest
26
+ */
27
+ platform: string;
28
+ /**
29
+ * Campaigns to unlink. Omit to unlink every campaign linked to the platform.
30
+ * @type {Array<string>}
31
+ * @memberof SyncUnlinkRequest
32
+ */
33
+ campaignIds?: Array<string>;
34
+ /**
35
+ * Also remove the campaign on the ad platform (already-removed counts as success). When false, only the local link is cleared and the remote is untouched.
36
+ * @type {boolean}
37
+ * @memberof SyncUnlinkRequest
38
+ */
39
+ deleteRemote?: boolean;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the SyncUnlinkRequest interface.
44
+ */
45
+ export function instanceOfSyncUnlinkRequest(value: object): value is SyncUnlinkRequest {
46
+ if (!('platform' in value) || value['platform'] === undefined) return false;
47
+ return true;
48
+ }
49
+
50
+ export function SyncUnlinkRequestFromJSON(json: any): SyncUnlinkRequest {
51
+ return SyncUnlinkRequestFromJSONTyped(json, false);
52
+ }
53
+
54
+ export function SyncUnlinkRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): SyncUnlinkRequest {
55
+ if (json == null) {
56
+ return json;
57
+ }
58
+ return {
59
+
60
+ 'platform': json['platform'],
61
+ 'campaignIds': json['campaignIds'] == null ? undefined : json['campaignIds'],
62
+ 'deleteRemote': json['deleteRemote'] == null ? undefined : json['deleteRemote'],
63
+ };
64
+ }
65
+
66
+ export function SyncUnlinkRequestToJSON(json: any): SyncUnlinkRequest {
67
+ return SyncUnlinkRequestToJSONTyped(json, false);
68
+ }
69
+
70
+ export function SyncUnlinkRequestToJSONTyped(value?: SyncUnlinkRequest | null, ignoreDiscriminator: boolean = false): any {
71
+ if (value == null) {
72
+ return value;
73
+ }
74
+
75
+ return {
76
+
77
+ 'platform': value['platform'],
78
+ 'campaignIds': value['campaignIds'],
79
+ 'deleteRemote': value['deleteRemote'],
80
+ };
81
+ }
82
+
@@ -0,0 +1,47 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ export * from './AdAssetCreate';
4
+ export * from './AdCreate';
5
+ export * from './AdGroupAudience';
6
+ export * from './AdGroupCreate';
7
+ export * from './AdGroupUpdate';
8
+ export * from './AdUpdate';
9
+ export * from './AssetCreate';
10
+ export * from './AssetUpdate';
11
+ export * from './BiddingStrategy';
12
+ export * from './CampaignAdScheduleField';
13
+ export * from './CampaignAssetCreate';
14
+ export * from './CampaignCreate';
15
+ export * from './CampaignTargeting';
16
+ export * from './CampaignUpdate';
17
+ export * from './CampaignsListCursorParameter';
18
+ export * from './ErrorEnvelope';
19
+ export * from './ErrorEnvelopeError';
20
+ export * from './KeywordCreate';
21
+ export * from './KeywordUpdate';
22
+ export * from './Location';
23
+ export * from './NegativeKeywordEntry';
24
+ export * from './ScheduleWindow';
25
+ export * from './SiteCreate';
26
+ export * from './SiteCreateSeoKeywords';
27
+ export * from './SiteCreateTargetGroups';
28
+ export * from './SiteLinkEntry';
29
+ export * from './SiteUpdate';
30
+ export * from './Sitelink';
31
+ export * from './StructuredSchedule';
32
+ export * from './StructuredSnippet';
33
+ export * from './SuccessEnvelope';
34
+ export * from './SuccessEnvelopeMeta';
35
+ export * from './SuccessEnvelopeMetaNextCursor';
36
+ export * from './SyncCampaignDetail';
37
+ export * from './SyncPlan';
38
+ export * from './SyncPlanPlatformsValue';
39
+ export * from './SyncPlanPlatformsValueTotals';
40
+ export * from './SyncProgress';
41
+ export * from './SyncRecord';
42
+ export * from './SyncRecordErrorsInner';
43
+ export * from './SyncTotals';
44
+ export * from './SyncTriggerRequest';
45
+ export * from './SyncTriggerRequestOptions';
46
+ export * from './SyncTriggerResponse';
47
+ export * from './SyncUnlinkRequest';