@graph8/sdk 0.251.0 → 0.262.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 (350) hide show
  1. package/README.md +9 -2
  2. package/dist/cli.js +216 -0
  3. package/dist/index.d.mts +105 -7
  4. package/dist/index.d.ts +105 -7
  5. package/dist/index.js +44 -3
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +44 -3
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/react.d.mts +103 -7
  10. package/dist/react.d.ts +103 -7
  11. package/dist/react.js +62 -11
  12. package/dist/react.js.map +1 -1
  13. package/dist/react.mjs +53 -12
  14. package/dist/react.mjs.map +1 -1
  15. package/dist/types/README.md +7 -0
  16. package/dist/types/agency.d.ts +20 -0
  17. package/dist/types/agentSetup.d.ts +57 -0
  18. package/dist/types/api.d.ts +127 -0
  19. package/dist/types/appClient.d.ts +99 -0
  20. package/dist/types/appPlatform.d.ts +269 -0
  21. package/dist/types/appTokens.d.ts +125 -0
  22. package/dist/types/apps.d.ts +130 -0
  23. package/dist/types/audiences.d.ts +88 -0
  24. package/dist/types/calendar.d.ts +55 -0
  25. package/dist/types/campaigns.d.ts +61 -0
  26. package/dist/types/chat.d.ts +35 -0
  27. package/dist/types/cli.d.ts +14 -0
  28. package/dist/types/companies.d.ts +123 -0
  29. package/dist/types/contacts.d.ts +200 -0
  30. package/dist/types/copilot.d.ts +31 -0
  31. package/dist/types/core.d.ts +1052 -0
  32. package/dist/types/deals.d.ts +215 -0
  33. package/dist/types/enrich.d.ts +51 -0
  34. package/dist/types/fields.d.ts +84 -0
  35. package/dist/types/forms.d.ts +16 -0
  36. package/dist/types/http.d.ts +141 -0
  37. package/dist/types/inbox.d.ts +123 -0
  38. package/dist/types/index.d.ts +63 -0
  39. package/dist/types/intent.d.ts +196 -0
  40. package/dist/types/lists.d.ts +44 -0
  41. package/dist/types/mailboxes.d.ts +240 -0
  42. package/dist/types/marketplace.d.ts +62 -0
  43. package/dist/types/meetings.d.ts +70 -0
  44. package/dist/types/newsletter.d.ts +212 -0
  45. package/dist/types/notes.d.ts +57 -0
  46. package/dist/types/objects.d.ts +281 -0
  47. package/dist/types/pipelines.d.ts +135 -0
  48. package/dist/types/quotes.d.ts +143 -0
  49. package/dist/types/react.d.ts +978 -0
  50. package/dist/types/search.d.ts +99 -0
  51. package/dist/types/sequences.d.ts +255 -0
  52. package/dist/types/signals.d.ts +28 -0
  53. package/dist/types/skills.d.ts +176 -0
  54. package/dist/types/snippet.d.ts +24 -0
  55. package/dist/types/studio.d.ts +161 -0
  56. package/dist/types/tasks.d.ts +101 -0
  57. package/dist/types/types.d.ts +45 -0
  58. package/dist/types/utils.d.ts +21 -0
  59. package/dist/types/version.d.ts +10 -0
  60. package/dist/types/visitors.d.ts +29 -0
  61. package/dist/types/voice.d.ts +304 -0
  62. package/dist/types/webhooks.d.ts +71 -0
  63. package/dist/types/workflows.d.ts +229 -0
  64. package/docs/agents.md +748 -0
  65. package/docs/api/README.md +165 -0
  66. package/docs/api/accounts.d.ts +396 -0
  67. package/docs/api/accounts.md +644 -0
  68. package/docs/api/adCampaigns.d.ts +707 -0
  69. package/docs/api/adCampaigns.md +1091 -0
  70. package/docs/api/adCreatives.d.ts +996 -0
  71. package/docs/api/adCreatives.md +1708 -0
  72. package/docs/api/agency.d.ts +556 -0
  73. package/docs/api/agency.md +845 -0
  74. package/docs/api/agent.d.ts +330 -0
  75. package/docs/api/agent.md +514 -0
  76. package/docs/api/agents.d.ts +1622 -0
  77. package/docs/api/agents.md +2860 -0
  78. package/docs/api/aiInbox.d.ts +1984 -0
  79. package/docs/api/aiInbox.md +3490 -0
  80. package/docs/api/analytics.d.ts +1273 -0
  81. package/docs/api/analytics.md +2095 -0
  82. package/docs/api/apiKeys.d.ts +252 -0
  83. package/docs/api/apiKeys.md +318 -0
  84. package/docs/api/appDeployments.d.ts +236 -0
  85. package/docs/api/appDeployments.md +471 -0
  86. package/docs/api/appDomains.d.ts +171 -0
  87. package/docs/api/appDomains.md +281 -0
  88. package/docs/api/appLogs.d.ts +120 -0
  89. package/docs/api/appLogs.md +159 -0
  90. package/docs/api/appObjects.d.ts +415 -0
  91. package/docs/api/appObjects.md +568 -0
  92. package/docs/api/appPages.d.ts +557 -0
  93. package/docs/api/appPages.md +796 -0
  94. package/docs/api/appPlatformTokens.d.ts +123 -0
  95. package/docs/api/appPlatformTokens.md +172 -0
  96. package/docs/api/appointments.d.ts +2361 -0
  97. package/docs/api/appointments.md +3917 -0
  98. package/docs/api/apps.d.ts +822 -0
  99. package/docs/api/apps.md +1342 -0
  100. package/docs/api/assertUpsert.d.ts +286 -0
  101. package/docs/api/assertUpsert.md +370 -0
  102. package/docs/api/audienceSyncs.d.ts +259 -0
  103. package/docs/api/audienceSyncs.md +395 -0
  104. package/docs/api/brandKit.d.ts +686 -0
  105. package/docs/api/brandKit.md +1133 -0
  106. package/docs/api/bugReports.d.ts +181 -0
  107. package/docs/api/bugReports.md +268 -0
  108. package/docs/api/by-path.md +3260 -0
  109. package/docs/api/calendarInvites.d.ts +117 -0
  110. package/docs/api/calendarInvites.md +148 -0
  111. package/docs/api/campaignWorkflows.d.ts +152 -0
  112. package/docs/api/campaignWorkflows.md +200 -0
  113. package/docs/api/campaigns.d.ts +721 -0
  114. package/docs/api/campaigns.md +1236 -0
  115. package/docs/api/channels.d.ts +171 -0
  116. package/docs/api/channels.md +235 -0
  117. package/docs/api/cliCampaigns.d.ts +205 -0
  118. package/docs/api/cliCampaigns.md +256 -0
  119. package/docs/api/cliPipelines.d.ts +324 -0
  120. package/docs/api/cliPipelines.md +562 -0
  121. package/docs/api/clickHouse.d.ts +115 -0
  122. package/docs/api/clickHouse.md +138 -0
  123. package/docs/api/companies.d.ts +1636 -0
  124. package/docs/api/companies.md +2211 -0
  125. package/docs/api/companyIntelligence.d.ts +299 -0
  126. package/docs/api/companyIntelligence.md +488 -0
  127. package/docs/api/contacts.d.ts +2173 -0
  128. package/docs/api/contacts.md +3143 -0
  129. package/docs/api/content.d.ts +968 -0
  130. package/docs/api/content.md +1667 -0
  131. package/docs/api/contentGridSkills.d.ts +177 -0
  132. package/docs/api/contentGridSkills.md +271 -0
  133. package/docs/api/copilot.d.ts +1017 -0
  134. package/docs/api/copilot.md +1765 -0
  135. package/docs/api/crmSyncs.d.ts +215 -0
  136. package/docs/api/crmSyncs.md +301 -0
  137. package/docs/api/customerSuccess.d.ts +491 -0
  138. package/docs/api/customerSuccess.md +776 -0
  139. package/docs/api/deals.d.ts +1697 -0
  140. package/docs/api/deals.md +2436 -0
  141. package/docs/api/deliverability.d.ts +418 -0
  142. package/docs/api/deliverability.md +677 -0
  143. package/docs/api/desk.d.ts +1765 -0
  144. package/docs/api/desk.md +3007 -0
  145. package/docs/api/dialer.d.ts +1185 -0
  146. package/docs/api/dialer.md +2166 -0
  147. package/docs/api/dialerAnalytics.d.ts +187 -0
  148. package/docs/api/dialerAnalytics.md +257 -0
  149. package/docs/api/documents.d.ts +895 -0
  150. package/docs/api/documents.md +1440 -0
  151. package/docs/api/duplicates.d.ts +195 -0
  152. package/docs/api/duplicates.md +315 -0
  153. package/docs/api/eSign.d.ts +38 -0
  154. package/docs/api/eSign.md +54 -0
  155. package/docs/api/eSignature.d.ts +242 -0
  156. package/docs/api/eSignature.md +341 -0
  157. package/docs/api/enrichment.d.ts +3207 -0
  158. package/docs/api/enrichment.md +5225 -0
  159. package/docs/api/events.d.ts +115 -0
  160. package/docs/api/events.md +105 -0
  161. package/docs/api/fields.d.ts +482 -0
  162. package/docs/api/fields.md +566 -0
  163. package/docs/api/forms.d.ts +1012 -0
  164. package/docs/api/forms.md +1542 -0
  165. package/docs/api/gtmCampaigns.d.ts +662 -0
  166. package/docs/api/gtmCampaigns.md +1044 -0
  167. package/docs/api/gtmContext.d.ts +1187 -0
  168. package/docs/api/gtmContext.md +2112 -0
  169. package/docs/api/gtmDeliverability.d.ts +60 -0
  170. package/docs/api/gtmDeliverability.md +63 -0
  171. package/docs/api/gtmKnowledgeBase.d.ts +76 -0
  172. package/docs/api/gtmKnowledgeBase.md +91 -0
  173. package/docs/api/gtmLaunchHelpers.d.ts +123 -0
  174. package/docs/api/gtmLaunchHelpers.md +148 -0
  175. package/docs/api/gtmLibrary.d.ts +448 -0
  176. package/docs/api/gtmLibrary.md +780 -0
  177. package/docs/api/health.d.ts +39 -0
  178. package/docs/api/health.md +58 -0
  179. package/docs/api/imageLibrary.d.ts +341 -0
  180. package/docs/api/imageLibrary.md +569 -0
  181. package/docs/api/imports.d.ts +157 -0
  182. package/docs/api/imports.md +174 -0
  183. package/docs/api/inbox.d.ts +709 -0
  184. package/docs/api/inbox.md +1067 -0
  185. package/docs/api/install.d.ts +213 -0
  186. package/docs/api/install.md +317 -0
  187. package/docs/api/installedApps.d.ts +131 -0
  188. package/docs/api/installedApps.md +241 -0
  189. package/docs/api/integrationStatus.d.ts +142 -0
  190. package/docs/api/integrationStatus.md +205 -0
  191. package/docs/api/integrations.d.ts +2327 -0
  192. package/docs/api/integrations.md +3791 -0
  193. package/docs/api/intent.d.ts +482 -0
  194. package/docs/api/intent.md +858 -0
  195. package/docs/api/knowledge.d.ts +501 -0
  196. package/docs/api/knowledge.md +843 -0
  197. package/docs/api/knowledgeBase.d.ts +84 -0
  198. package/docs/api/knowledgeBase.md +96 -0
  199. package/docs/api/landingPages.d.ts +1411 -0
  200. package/docs/api/landingPages.md +2488 -0
  201. package/docs/api/leads.d.ts +133 -0
  202. package/docs/api/leads.md +180 -0
  203. package/docs/api/library.d.ts +217 -0
  204. package/docs/api/library.md +338 -0
  205. package/docs/api/linkedIn.d.ts +227 -0
  206. package/docs/api/linkedIn.md +289 -0
  207. package/docs/api/linkedInOutreach.d.ts +727 -0
  208. package/docs/api/linkedInOutreach.md +990 -0
  209. package/docs/api/lists.d.ts +1106 -0
  210. package/docs/api/lists.md +1609 -0
  211. package/docs/api/logs.d.ts +71 -0
  212. package/docs/api/logs.md +70 -0
  213. package/docs/api/mailboxes.d.ts +1050 -0
  214. package/docs/api/mailboxes.md +1690 -0
  215. package/docs/api/marketingIntelligence.d.ts +256 -0
  216. package/docs/api/marketingIntelligence.md +454 -0
  217. package/docs/api/marketplace.d.ts +3173 -0
  218. package/docs/api/marketplace.md +5953 -0
  219. package/docs/api/mcp.d.ts +69 -0
  220. package/docs/api/mcp.md +69 -0
  221. package/docs/api/me.d.ts +54 -0
  222. package/docs/api/me.md +56 -0
  223. package/docs/api/meetings.d.ts +539 -0
  224. package/docs/api/meetings.md +747 -0
  225. package/docs/api/newsletter.d.ts +1613 -0
  226. package/docs/api/newsletter.md +2746 -0
  227. package/docs/api/notes.d.ts +517 -0
  228. package/docs/api/notes.md +888 -0
  229. package/docs/api/notifications.d.ts +94 -0
  230. package/docs/api/notifications.md +105 -0
  231. package/docs/api/objects.d.ts +621 -0
  232. package/docs/api/objects.md +1098 -0
  233. package/docs/api/openSearch.d.ts +234 -0
  234. package/docs/api/openSearch.md +297 -0
  235. package/docs/api/ops.d.ts +299 -0
  236. package/docs/api/ops.md +339 -0
  237. package/docs/api/orgGovernance.d.ts +393 -0
  238. package/docs/api/orgGovernance.md +623 -0
  239. package/docs/api/orgVideos.d.ts +184 -0
  240. package/docs/api/orgVideos.md +252 -0
  241. package/docs/api/organizationSettings.d.ts +626 -0
  242. package/docs/api/organizationSettings.md +911 -0
  243. package/docs/api/phoneNumbers.d.ts +484 -0
  244. package/docs/api/phoneNumbers.md +777 -0
  245. package/docs/api/profile.d.ts +329 -0
  246. package/docs/api/profile.md +540 -0
  247. package/docs/api/programmaticPages.d.ts +400 -0
  248. package/docs/api/programmaticPages.md +626 -0
  249. package/docs/api/providerDomains.d.ts +866 -0
  250. package/docs/api/providerDomains.md +1446 -0
  251. package/docs/api/providerUsage.d.ts +129 -0
  252. package/docs/api/providerUsage.md +186 -0
  253. package/docs/api/public.d.ts +69 -0
  254. package/docs/api/public.md +78 -0
  255. package/docs/api/publicCopilot.d.ts +67 -0
  256. package/docs/api/publicCopilot.md +80 -0
  257. package/docs/api/publicSignals.d.ts +66 -0
  258. package/docs/api/publicSignals.md +71 -0
  259. package/docs/api/publicVisitors.d.ts +97 -0
  260. package/docs/api/publicVisitors.md +118 -0
  261. package/docs/api/quotes.d.ts +1564 -0
  262. package/docs/api/quotes.md +2553 -0
  263. package/docs/api/radar.d.ts +808 -0
  264. package/docs/api/radar.md +1431 -0
  265. package/docs/api/radarReports.d.ts +208 -0
  266. package/docs/api/radarReports.md +306 -0
  267. package/docs/api/recordRoles.d.ts +143 -0
  268. package/docs/api/recordRoles.md +175 -0
  269. package/docs/api/repos.d.ts +146 -0
  270. package/docs/api/repos.md +211 -0
  271. package/docs/api/research.d.ts +295 -0
  272. package/docs/api/research.md +534 -0
  273. package/docs/api/revenue.d.ts +402 -0
  274. package/docs/api/revenue.md +608 -0
  275. package/docs/api/revenueAnalytics.d.ts +147 -0
  276. package/docs/api/revenueAnalytics.md +212 -0
  277. package/docs/api/revenueLifecycle.d.ts +207 -0
  278. package/docs/api/revenueLifecycle.md +274 -0
  279. package/docs/api/revenueRecords.d.ts +372 -0
  280. package/docs/api/revenueRecords.md +563 -0
  281. package/docs/api/roles.d.ts +431 -0
  282. package/docs/api/roles.md +812 -0
  283. package/docs/api/salesCoach.d.ts +877 -0
  284. package/docs/api/salesCoach.md +1540 -0
  285. package/docs/api/sandbox.d.ts +210 -0
  286. package/docs/api/sandbox.md +380 -0
  287. package/docs/api/scans.d.ts +104 -0
  288. package/docs/api/scans.md +136 -0
  289. package/docs/api/scheduleBuy.d.ts +293 -0
  290. package/docs/api/scheduleBuy.md +431 -0
  291. package/docs/api/scraping.d.ts +266 -0
  292. package/docs/api/scraping.md +383 -0
  293. package/docs/api/sdrAnalytics.d.ts +138 -0
  294. package/docs/api/sdrAnalytics.md +246 -0
  295. package/docs/api/search.d.ts +598 -0
  296. package/docs/api/search.md +866 -0
  297. package/docs/api/seo.d.ts +447 -0
  298. package/docs/api/seo.md +660 -0
  299. package/docs/api/sequenceLifecycle.d.ts +439 -0
  300. package/docs/api/sequenceLifecycle.md +513 -0
  301. package/docs/api/sequences.d.ts +1936 -0
  302. package/docs/api/sequences.md +3232 -0
  303. package/docs/api/settings.d.ts +448 -0
  304. package/docs/api/settings.md +731 -0
  305. package/docs/api/signals.d.ts +1441 -0
  306. package/docs/api/signals.md +2526 -0
  307. package/docs/api/signatures.d.ts +719 -0
  308. package/docs/api/signatures.md +1247 -0
  309. package/docs/api/skills.d.ts +230 -0
  310. package/docs/api/skills.md +466 -0
  311. package/docs/api/snippet.d.ts +85 -0
  312. package/docs/api/snippet.md +106 -0
  313. package/docs/api/socialPublishing.d.ts +824 -0
  314. package/docs/api/socialPublishing.md +1245 -0
  315. package/docs/api/studioDocuments.d.ts +244 -0
  316. package/docs/api/studioDocuments.md +348 -0
  317. package/docs/api/support.d.ts +90 -0
  318. package/docs/api/support.md +76 -0
  319. package/docs/api/suppressions.d.ts +241 -0
  320. package/docs/api/suppressions.md +343 -0
  321. package/docs/api/surveys.d.ts +847 -0
  322. package/docs/api/surveys.md +1223 -0
  323. package/docs/api/tasks.d.ts +813 -0
  324. package/docs/api/tasks.md +1344 -0
  325. package/docs/api/teamMembers.d.ts +668 -0
  326. package/docs/api/teamMembers.md +1040 -0
  327. package/docs/api/teams.d.ts +784 -0
  328. package/docs/api/teams.md +1395 -0
  329. package/docs/api/usage.d.ts +277 -0
  330. package/docs/api/usage.md +389 -0
  331. package/docs/api/visitors.d.ts +690 -0
  332. package/docs/api/visitors.md +1075 -0
  333. package/docs/api/voice.d.ts +4661 -0
  334. package/docs/api/voice.md +7905 -0
  335. package/docs/api/webAnalytics.d.ts +964 -0
  336. package/docs/api/webAnalytics.md +1452 -0
  337. package/docs/api/webChat.d.ts +1704 -0
  338. package/docs/api/webChat.md +2048 -0
  339. package/docs/api/webhooks.d.ts +251 -0
  340. package/docs/api/webhooks.md +386 -0
  341. package/docs/api/websiteEditor.d.ts +324 -0
  342. package/docs/api/websiteEditor.md +517 -0
  343. package/docs/api/work.d.ts +2298 -0
  344. package/docs/api/work.md +3096 -0
  345. package/docs/api/workbench.d.ts +2962 -0
  346. package/docs/api/workbench.md +4884 -0
  347. package/docs/api/workflows.d.ts +1218 -0
  348. package/docs/api/workflows.md +2302 -0
  349. package/docs/sdk-clients.md +4339 -0
  350. package/package.json +10 -3
@@ -0,0 +1,996 @@
1
+ /* Generated by sdk/js/scripts/generate-agent-docs.ts from developer-contract/openapi.json. Regenerated on every build. */
2
+
3
+ /**
4
+ * Types for `g8.api.adCreatives` (Ad Creatives): 40 operations.
5
+ *
6
+ * For reading. In code, import from the package instead:
7
+ * import type { ApiInput, ApiOutput, G8Contract } from "@graph8/sdk";
8
+ * type In = ApiInput<"apply_ad_creative_review_findings_ad_creatives__creative_id__ai_review_apply_post">;
9
+ *
10
+ * Reference with examples: adCreatives.md
11
+ */
12
+ /* eslint-disable */
13
+
14
+ /** `g8.api.adCreatives.<member>` -> the operationId it calls. */
15
+ export interface AdCreativesMembers {
16
+ applyAdCreativeReviewFindings: "apply_ad_creative_review_findings_ad_creatives__creative_id__ai_review_apply_post";
17
+ chatEditAdCreative: "chat_edit_ad_creative_ad_creatives__creative_id__chat_edit_post";
18
+ continueVideoClip: "continue_video_clip_ad_creatives_video_clips__clip_id__continue_post";
19
+ createAdCreative: "create_ad_creative_ad_creatives_post";
20
+ createAdCreativeSet: "create_ad_creative_set_ad_creatives_batch_post";
21
+ createAdCreativeSizeSet: "create_ad_creative_size_set_ad_creatives__creative_id__size_set_post";
22
+ createVideoAdCreative: "create_video_ad_creative_ad_creatives_video_post";
23
+ deleteAdCreative: "delete_ad_creative_ad_creatives__creative_id__delete";
24
+ discardVideoClip: "discard_video_clip_ad_creatives_video_clips__clip_id__delete";
25
+ editAdCreativeImageAtPoint: "edit_ad_creative_image_at_point_ad_creatives__creative_id__image_edit_at_point_post";
26
+ editAdCreativeImageElement: "edit_ad_creative_image_element_ad_creatives__creative_id__image_element_post";
27
+ enhanceVideoClipPrompt: "enhance_video_clip_prompt_ad_creatives_video_clips_prompt_enhance_post";
28
+ extendVideoClip: "extend_video_clip_ad_creatives_video_clips__clip_id__extend_post";
29
+ generateAdConcepts: "generate_ad_concepts_ad_creatives_concepts_post";
30
+ generateVideoClip: "generate_video_clip_ad_creatives_video_clips_post";
31
+ getAdCreative: "get_ad_creative_ad_creatives__creative_id__get";
32
+ getAdCreativeConversation: "get_ad_creative_conversation_ad_creatives__creative_id__conversation_get";
33
+ getAdCreativeSpecs: "get_ad_creative_specs_ad_creatives_specs_get";
34
+ getAdCreativeStatus: "get_ad_creative_status_ad_creatives__creative_id__status_get";
35
+ getVideoClip: "get_video_clip_ad_creatives_video_clips__clip_id__get";
36
+ listAdCreativeImageElements: "list_ad_creative_image_elements_ad_creatives__creative_id__image_elements_get";
37
+ listAdCreativeRevisions: "list_ad_creative_revisions_ad_creatives__creative_id__revisions_get";
38
+ listAdCreatives: "list_ad_creatives_ad_creatives_get";
39
+ listVideoAdTemplates: "list_video_ad_templates_ad_creatives_video_templates_get";
40
+ listVideoClips: "list_video_clips_ad_creatives_video_clips_get";
41
+ moveAdCreativeToDraft: "move_ad_creative_to_draft_ad_creatives__creative_id__move_to_draft_post";
42
+ moveAdCreativeToGallery: "move_ad_creative_to_gallery_ad_creatives__creative_id__move_to_gallery_post";
43
+ readAdCreativeThroughPersona: "read_ad_creative_through_persona_ad_creatives__creative_id__persona_lens_post";
44
+ regenerateAdCreativeCopy: "regenerate_ad_creative_copy_ad_creatives__creative_id__regenerate_copy_post";
45
+ regenerateAdCreativeImage: "regenerate_ad_creative_image_ad_creatives__creative_id__regenerate_image_post";
46
+ regenerateVideoClip: "regenerate_video_clip_ad_creatives_video_clips__clip_id__regenerate_post";
47
+ reskinAdCreative: "reskin_ad_creative_ad_creatives__creative_id__reskin_post";
48
+ restoreAdCreativeRevision: "restore_ad_creative_revision_ad_creatives__creative_id__restore_revision_post";
49
+ retryAdCreativeGeneration: "retry_ad_creative_generation_ad_creatives__creative_id__retry_post";
50
+ reviewAdCreative: "review_ad_creative_ad_creatives__creative_id__ai_review_post";
51
+ rewriteAdCreativeField: "rewrite_ad_creative_field_ad_creatives__creative_id__rewrite_field_post";
52
+ saveAdCreativeAsTemplate: "save_ad_creative_as_template_ad_creatives__creative_id__save_as_template_post";
53
+ setAdCreativeImage: "set_ad_creative_image_ad_creatives__creative_id__set_image_post";
54
+ setAdCreativeImageFocus: "set_ad_creative_image_focus_ad_creatives__creative_id__set_image_focus_post";
55
+ updateAdCreative: "update_ad_creative_ad_creatives__creative_id__patch";
56
+ }
57
+
58
+ /** Input and output of every `g8.api.adCreatives` operation, keyed by operationId. */
59
+ export interface AdCreativesOperations {
60
+ /**
61
+ * POST /ad-creatives/{creative_id}/ai-review/apply
62
+ * Apply Ad Creative Review Findings
63
+ * tier: write · scope: campaigns:write
64
+ */
65
+ apply_ad_creative_review_findings_ad_creatives__creative_id__ai_review_apply_post: {
66
+ input: {
67
+ path: {
68
+ /** Ad creative id. */
69
+ creative_id: string;
70
+ };
71
+ headers?: {
72
+ "X-Target-Org-Id"?: string | null;
73
+ };
74
+ body: ApplyFindingsRequest;
75
+ };
76
+ output: ApiResponse_StudioContentPayload_;
77
+ };
78
+ /**
79
+ * POST /ad-creatives/{creative_id}/chat-edit
80
+ * Chat Edit Ad Creative
81
+ * tier: billable · scope: campaigns:run
82
+ */
83
+ chat_edit_ad_creative_ad_creatives__creative_id__chat_edit_post: {
84
+ input: {
85
+ path: {
86
+ /** Ad creative id. */
87
+ creative_id: string;
88
+ };
89
+ headers?: {
90
+ "X-Target-Org-Id"?: string | null;
91
+ };
92
+ body: AdCreativeChatEditRequest;
93
+ };
94
+ output: ApiResponse_StudioContentPayload_;
95
+ };
96
+ /**
97
+ * POST /ad-creatives/video/clips/{clip_id}/continue
98
+ * Continue Video Clip
99
+ * tier: billable · scope: campaigns:run
100
+ */
101
+ continue_video_clip_ad_creatives_video_clips__clip_id__continue_post: {
102
+ input: {
103
+ path: {
104
+ /** Video clip id. */
105
+ clip_id: string;
106
+ };
107
+ headers?: {
108
+ "X-Target-Org-Id"?: string | null;
109
+ };
110
+ body: ContinueVideoClipRequest;
111
+ };
112
+ output: ApiResponse_StudioContentPayload_;
113
+ };
114
+ /**
115
+ * POST /ad-creatives
116
+ * Create Ad Creative
117
+ * tier: billable · scope: campaigns:run
118
+ */
119
+ create_ad_creative_ad_creatives_post: {
120
+ input: {
121
+ headers?: {
122
+ "X-Target-Org-Id"?: string | null;
123
+ };
124
+ body: CreateAdCreativeRequest;
125
+ };
126
+ output: ApiResponse_StudioContentPayload_;
127
+ };
128
+ /**
129
+ * POST /ad-creatives/batch
130
+ * Create Ad Creative Set
131
+ * tier: billable · scope: campaigns:run
132
+ */
133
+ create_ad_creative_set_ad_creatives_batch_post: {
134
+ input: {
135
+ headers?: {
136
+ "X-Target-Org-Id"?: string | null;
137
+ };
138
+ body: CreateAdCreativeSetRequest;
139
+ };
140
+ output: ApiResponse_StudioContentPayload_;
141
+ };
142
+ /**
143
+ * POST /ad-creatives/{creative_id}/size-set
144
+ * Create Ad Creative Size Set
145
+ * tier: billable · scope: campaigns:run
146
+ */
147
+ create_ad_creative_size_set_ad_creatives__creative_id__size_set_post: {
148
+ input: {
149
+ path: {
150
+ /** Ad creative id. */
151
+ creative_id: string;
152
+ };
153
+ headers?: {
154
+ "X-Target-Org-Id"?: string | null;
155
+ };
156
+ body?: SizeSetRequest | null;
157
+ };
158
+ output: ApiResponse_StudioContentPayload_;
159
+ };
160
+ /**
161
+ * POST /ad-creatives/video
162
+ * Create Video Ad Creative
163
+ * tier: write · scope: campaigns:write
164
+ */
165
+ create_video_ad_creative_ad_creatives_video_post: {
166
+ input: {
167
+ headers?: {
168
+ "X-Target-Org-Id"?: string | null;
169
+ };
170
+ body: CreateVideoCreativeRequest;
171
+ };
172
+ output: ApiResponse_StudioContentPayload_;
173
+ };
174
+ /**
175
+ * DELETE /ad-creatives/{creative_id}
176
+ * Delete Ad Creative
177
+ * tier: destructive · scope: campaigns:delete
178
+ */
179
+ delete_ad_creative_ad_creatives__creative_id__delete: {
180
+ input: {
181
+ path: {
182
+ /** Ad creative id. */
183
+ creative_id: string;
184
+ };
185
+ headers?: {
186
+ "X-Target-Org-Id"?: string | null;
187
+ };
188
+ };
189
+ output: ApiResponse_StudioContentPayload_;
190
+ };
191
+ /**
192
+ * DELETE /ad-creatives/video/clips/{clip_id}
193
+ * Discard Video Clip
194
+ * tier: destructive · scope: campaigns:delete
195
+ */
196
+ discard_video_clip_ad_creatives_video_clips__clip_id__delete: {
197
+ input: {
198
+ path: {
199
+ /** Video clip id. */
200
+ clip_id: string;
201
+ };
202
+ headers?: {
203
+ "X-Target-Org-Id"?: string | null;
204
+ };
205
+ };
206
+ output: ApiResponse_StudioContentPayload_;
207
+ };
208
+ /**
209
+ * POST /ad-creatives/{creative_id}/image-edit-at-point
210
+ * Edit Ad Creative Image At Point
211
+ * tier: billable · scope: campaigns:run
212
+ */
213
+ edit_ad_creative_image_at_point_ad_creatives__creative_id__image_edit_at_point_post: {
214
+ input: {
215
+ path: {
216
+ /** Ad creative id. */
217
+ creative_id: string;
218
+ };
219
+ headers?: {
220
+ "X-Target-Org-Id"?: string | null;
221
+ };
222
+ body: ImagePointEditRequest;
223
+ };
224
+ output: ApiResponse_StudioContentPayload_;
225
+ };
226
+ /**
227
+ * POST /ad-creatives/{creative_id}/image-element
228
+ * Edit Ad Creative Image Element
229
+ * tier: write · scope: campaigns:write
230
+ */
231
+ edit_ad_creative_image_element_ad_creatives__creative_id__image_element_post: {
232
+ input: {
233
+ path: {
234
+ /** Ad creative id. */
235
+ creative_id: string;
236
+ };
237
+ headers?: {
238
+ "X-Target-Org-Id"?: string | null;
239
+ };
240
+ body: EditImageElementRequest;
241
+ };
242
+ output: ApiResponse_StudioContentPayload_;
243
+ };
244
+ /**
245
+ * POST /ad-creatives/video/clips/prompt-enhance
246
+ * Enhance Video Clip Prompt
247
+ * tier: billable · scope: campaigns:run
248
+ */
249
+ enhance_video_clip_prompt_ad_creatives_video_clips_prompt_enhance_post: {
250
+ input: {
251
+ headers?: {
252
+ "X-Target-Org-Id"?: string | null;
253
+ };
254
+ body: VideoPromptEnhanceRequest;
255
+ };
256
+ output: ApiResponse_StudioContentPayload_;
257
+ };
258
+ /**
259
+ * POST /ad-creatives/video/clips/{clip_id}/extend
260
+ * Extend Video Clip
261
+ * tier: billable · scope: campaigns:run
262
+ */
263
+ extend_video_clip_ad_creatives_video_clips__clip_id__extend_post: {
264
+ input: {
265
+ path: {
266
+ /** Video clip id. */
267
+ clip_id: string;
268
+ };
269
+ headers?: {
270
+ "X-Target-Org-Id"?: string | null;
271
+ };
272
+ };
273
+ output: ApiResponse_StudioContentPayload_;
274
+ };
275
+ /**
276
+ * POST /ad-creatives/concepts
277
+ * Generate Ad Concepts
278
+ * tier: billable · scope: campaigns:run
279
+ */
280
+ generate_ad_concepts_ad_creatives_concepts_post: {
281
+ input: {
282
+ headers?: {
283
+ "X-Target-Org-Id"?: string | null;
284
+ };
285
+ body: ConceptsRequest;
286
+ };
287
+ output: ApiResponse_StudioContentListPayload_;
288
+ };
289
+ /**
290
+ * POST /ad-creatives/video/clips
291
+ * Generate Video Clip
292
+ * tier: billable · scope: campaigns:run
293
+ */
294
+ generate_video_clip_ad_creatives_video_clips_post: {
295
+ input: {
296
+ headers?: {
297
+ "X-Target-Org-Id"?: string | null;
298
+ };
299
+ body: GenerateVideoClipRequest;
300
+ };
301
+ output: ApiResponse_StudioContentPayload_;
302
+ };
303
+ /**
304
+ * GET /ad-creatives/{creative_id}
305
+ * Get Ad Creative
306
+ * tier: read · scope: campaigns:read
307
+ */
308
+ get_ad_creative_ad_creatives__creative_id__get: {
309
+ input: {
310
+ path: {
311
+ /** Ad creative id. */
312
+ creative_id: string;
313
+ };
314
+ headers?: {
315
+ "X-Target-Org-Id"?: string | null;
316
+ };
317
+ };
318
+ output: ApiResponse_StudioContentPayload_;
319
+ };
320
+ /**
321
+ * GET /ad-creatives/{creative_id}/conversation
322
+ * Get Ad Creative Conversation
323
+ * tier: read · scope: campaigns:read
324
+ */
325
+ get_ad_creative_conversation_ad_creatives__creative_id__conversation_get: {
326
+ input: {
327
+ path: {
328
+ /** Ad creative id. */
329
+ creative_id: string;
330
+ };
331
+ headers?: {
332
+ "X-Target-Org-Id"?: string | null;
333
+ };
334
+ };
335
+ output: ApiResponse_StudioContentPayload_;
336
+ };
337
+ /**
338
+ * GET /ad-creatives/specs
339
+ * Get Ad Creative Specs
340
+ * tier: read · scope: campaigns:read
341
+ */
342
+ get_ad_creative_specs_ad_creatives_specs_get: {
343
+ input: {
344
+ headers?: {
345
+ "X-Target-Org-Id"?: string | null;
346
+ };
347
+ };
348
+ output: ApiResponse_StudioContentPayload_;
349
+ };
350
+ /**
351
+ * GET /ad-creatives/{creative_id}/status
352
+ * Get Ad Creative Status
353
+ * tier: read · scope: campaigns:read
354
+ */
355
+ get_ad_creative_status_ad_creatives__creative_id__status_get: {
356
+ input: {
357
+ path: {
358
+ /** Ad creative id. */
359
+ creative_id: string;
360
+ };
361
+ headers?: {
362
+ "X-Target-Org-Id"?: string | null;
363
+ };
364
+ };
365
+ output: ApiResponse_StudioContentPayload_;
366
+ };
367
+ /**
368
+ * GET /ad-creatives/video/clips/{clip_id}
369
+ * Get Video Clip
370
+ * tier: read · scope: campaigns:read
371
+ */
372
+ get_video_clip_ad_creatives_video_clips__clip_id__get: {
373
+ input: {
374
+ path: {
375
+ /** Video clip id. */
376
+ clip_id: string;
377
+ };
378
+ headers?: {
379
+ "X-Target-Org-Id"?: string | null;
380
+ };
381
+ };
382
+ output: ApiResponse_StudioContentPayload_;
383
+ };
384
+ /**
385
+ * GET /ad-creatives/{creative_id}/image-elements
386
+ * List Ad Creative Image Elements
387
+ * tier: read · scope: campaigns:read
388
+ */
389
+ list_ad_creative_image_elements_ad_creatives__creative_id__image_elements_get: {
390
+ input: {
391
+ path: {
392
+ /** Ad creative id. */
393
+ creative_id: string;
394
+ };
395
+ headers?: {
396
+ "X-Target-Org-Id"?: string | null;
397
+ };
398
+ };
399
+ output: ApiResponse_StudioContentListPayload_;
400
+ };
401
+ /**
402
+ * GET /ad-creatives/{creative_id}/revisions
403
+ * List Ad Creative Revisions
404
+ * tier: read · scope: campaigns:read
405
+ */
406
+ list_ad_creative_revisions_ad_creatives__creative_id__revisions_get: {
407
+ input: {
408
+ path: {
409
+ /** Ad creative id. */
410
+ creative_id: string;
411
+ };
412
+ headers?: {
413
+ "X-Target-Org-Id"?: string | null;
414
+ };
415
+ };
416
+ output: ApiResponse_StudioContentListPayload_;
417
+ };
418
+ /**
419
+ * GET /ad-creatives
420
+ * List Ad Creatives
421
+ * tier: read · scope: campaigns:read
422
+ */
423
+ list_ad_creatives_ad_creatives_get: {
424
+ input: {
425
+ query?: {
426
+ /** Filter by status. */
427
+ status?: string | null;
428
+ /** Filter to one platform. */
429
+ platform?: string | null;
430
+ /** Filter to one format - landscape, square, portrait, ... */
431
+ ad_format?: string | null;
432
+ /** List reusable TEMPLATES instead of working creatives. */
433
+ templates?: boolean;
434
+ limit?: number;
435
+ offset?: number;
436
+ };
437
+ headers?: {
438
+ "X-Target-Org-Id"?: string | null;
439
+ };
440
+ };
441
+ output: ApiResponse_StudioContentListPayload_;
442
+ };
443
+ /**
444
+ * GET /ad-creatives/video-templates
445
+ * List Video Ad Templates
446
+ * tier: read · scope: campaigns:read
447
+ */
448
+ list_video_ad_templates_ad_creatives_video_templates_get: {
449
+ input: {
450
+ headers?: {
451
+ "X-Target-Org-Id"?: string | null;
452
+ };
453
+ };
454
+ output: ApiResponse_StudioContentListPayload_;
455
+ };
456
+ /**
457
+ * GET /ad-creatives/video/clips
458
+ * List Video Clips
459
+ * tier: read · scope: campaigns:read
460
+ */
461
+ list_video_clips_ad_creatives_video_clips_get: {
462
+ input: {
463
+ query?: {
464
+ /** Only the clips attached to this creative. */
465
+ creative_id?: string | null;
466
+ /** Include clips you discarded. */
467
+ include_discarded?: boolean;
468
+ };
469
+ headers?: {
470
+ "X-Target-Org-Id"?: string | null;
471
+ };
472
+ };
473
+ output: ApiResponse_StudioContentListPayload_;
474
+ };
475
+ /**
476
+ * POST /ad-creatives/{creative_id}/move-to-draft
477
+ * Move Ad Creative To Draft
478
+ * tier: write · scope: campaigns:write
479
+ */
480
+ move_ad_creative_to_draft_ad_creatives__creative_id__move_to_draft_post: {
481
+ input: {
482
+ path: {
483
+ /** Ad creative id. */
484
+ creative_id: string;
485
+ };
486
+ headers?: {
487
+ "X-Target-Org-Id"?: string | null;
488
+ };
489
+ };
490
+ output: ApiResponse_StudioContentPayload_;
491
+ };
492
+ /**
493
+ * POST /ad-creatives/{creative_id}/move-to-gallery
494
+ * Move Ad Creative To Gallery
495
+ * tier: write · scope: campaigns:write
496
+ */
497
+ move_ad_creative_to_gallery_ad_creatives__creative_id__move_to_gallery_post: {
498
+ input: {
499
+ path: {
500
+ /** Ad creative id. */
501
+ creative_id: string;
502
+ };
503
+ headers?: {
504
+ "X-Target-Org-Id"?: string | null;
505
+ };
506
+ };
507
+ output: ApiResponse_StudioContentPayload_;
508
+ };
509
+ /**
510
+ * POST /ad-creatives/{creative_id}/persona-lens
511
+ * Read Ad Creative Through Persona
512
+ * tier: billable · scope: campaigns:run
513
+ */
514
+ read_ad_creative_through_persona_ad_creatives__creative_id__persona_lens_post: {
515
+ input: {
516
+ path: {
517
+ /** Ad creative id. */
518
+ creative_id: string;
519
+ };
520
+ headers?: {
521
+ "X-Target-Org-Id"?: string | null;
522
+ };
523
+ body: PersonaLensRequest;
524
+ };
525
+ output: ApiResponse_StudioContentPayload_;
526
+ };
527
+ /**
528
+ * POST /ad-creatives/{creative_id}/regenerate-copy
529
+ * Regenerate Ad Creative Copy
530
+ * tier: billable · scope: campaigns:run
531
+ */
532
+ regenerate_ad_creative_copy_ad_creatives__creative_id__regenerate_copy_post: {
533
+ input: {
534
+ path: {
535
+ /** Ad creative id. */
536
+ creative_id: string;
537
+ };
538
+ headers?: {
539
+ "X-Target-Org-Id"?: string | null;
540
+ };
541
+ };
542
+ output: ApiResponse_StudioContentPayload_;
543
+ };
544
+ /**
545
+ * POST /ad-creatives/{creative_id}/regenerate-image
546
+ * Regenerate Ad Creative Image
547
+ * tier: billable · scope: campaigns:run
548
+ */
549
+ regenerate_ad_creative_image_ad_creatives__creative_id__regenerate_image_post: {
550
+ input: {
551
+ path: {
552
+ /** Ad creative id. */
553
+ creative_id: string;
554
+ };
555
+ headers?: {
556
+ "X-Target-Org-Id"?: string | null;
557
+ };
558
+ };
559
+ output: ApiResponse_StudioContentPayload_;
560
+ };
561
+ /**
562
+ * POST /ad-creatives/video/clips/{clip_id}/regenerate
563
+ * Regenerate Video Clip
564
+ * tier: billable · scope: campaigns:run
565
+ */
566
+ regenerate_video_clip_ad_creatives_video_clips__clip_id__regenerate_post: {
567
+ input: {
568
+ path: {
569
+ /** Video clip id. */
570
+ clip_id: string;
571
+ };
572
+ headers?: {
573
+ "X-Target-Org-Id"?: string | null;
574
+ };
575
+ };
576
+ output: ApiResponse_StudioContentPayload_;
577
+ };
578
+ /**
579
+ * POST /ad-creatives/{creative_id}/reskin
580
+ * Reskin Ad Creative
581
+ * tier: write · scope: campaigns:write
582
+ */
583
+ reskin_ad_creative_ad_creatives__creative_id__reskin_post: {
584
+ input: {
585
+ path: {
586
+ /** Ad creative id. */
587
+ creative_id: string;
588
+ };
589
+ headers?: {
590
+ "X-Target-Org-Id"?: string | null;
591
+ };
592
+ body: ReskinRequest;
593
+ };
594
+ output: ApiResponse_StudioContentPayload_;
595
+ };
596
+ /**
597
+ * POST /ad-creatives/{creative_id}/restore-revision
598
+ * Restore Ad Creative Revision
599
+ * tier: write · scope: campaigns:write
600
+ */
601
+ restore_ad_creative_revision_ad_creatives__creative_id__restore_revision_post: {
602
+ input: {
603
+ path: {
604
+ /** Ad creative id. */
605
+ creative_id: string;
606
+ };
607
+ headers?: {
608
+ "X-Target-Org-Id"?: string | null;
609
+ };
610
+ body: RestoreRevisionRequest;
611
+ };
612
+ output: ApiResponse_StudioContentPayload_;
613
+ };
614
+ /**
615
+ * POST /ad-creatives/{creative_id}/retry
616
+ * Retry Ad Creative Generation
617
+ * tier: billable · scope: campaigns:run
618
+ */
619
+ retry_ad_creative_generation_ad_creatives__creative_id__retry_post: {
620
+ input: {
621
+ path: {
622
+ /** Ad creative id. */
623
+ creative_id: string;
624
+ };
625
+ headers?: {
626
+ "X-Target-Org-Id"?: string | null;
627
+ };
628
+ };
629
+ output: ApiResponse_StudioContentPayload_;
630
+ };
631
+ /**
632
+ * POST /ad-creatives/{creative_id}/ai-review
633
+ * Review Ad Creative
634
+ * tier: billable · scope: campaigns:run
635
+ */
636
+ review_ad_creative_ad_creatives__creative_id__ai_review_post: {
637
+ input: {
638
+ path: {
639
+ /** Ad creative id. */
640
+ creative_id: string;
641
+ };
642
+ headers?: {
643
+ "X-Target-Org-Id"?: string | null;
644
+ };
645
+ body?: AdAIReviewRequest | null;
646
+ };
647
+ output: ApiResponse_StudioContentPayload_;
648
+ };
649
+ /**
650
+ * POST /ad-creatives/{creative_id}/rewrite-field
651
+ * Rewrite Ad Creative Field
652
+ * tier: billable · scope: campaigns:run
653
+ */
654
+ rewrite_ad_creative_field_ad_creatives__creative_id__rewrite_field_post: {
655
+ input: {
656
+ path: {
657
+ /** Ad creative id. */
658
+ creative_id: string;
659
+ };
660
+ headers?: {
661
+ "X-Target-Org-Id"?: string | null;
662
+ };
663
+ body: RewriteFieldRequest;
664
+ };
665
+ output: ApiResponse_StudioContentPayload_;
666
+ };
667
+ /**
668
+ * POST /ad-creatives/{creative_id}/save-as-template
669
+ * Save Ad Creative As Template
670
+ * tier: write · scope: campaigns:write
671
+ */
672
+ save_ad_creative_as_template_ad_creatives__creative_id__save_as_template_post: {
673
+ input: {
674
+ path: {
675
+ /** Ad creative id. */
676
+ creative_id: string;
677
+ };
678
+ headers?: {
679
+ "X-Target-Org-Id"?: string | null;
680
+ };
681
+ };
682
+ output: ApiResponse_StudioContentPayload_;
683
+ };
684
+ /**
685
+ * POST /ad-creatives/{creative_id}/set-image
686
+ * Set Ad Creative Image
687
+ * tier: write · scope: campaigns:write
688
+ */
689
+ set_ad_creative_image_ad_creatives__creative_id__set_image_post: {
690
+ input: {
691
+ path: {
692
+ /** Ad creative id. */
693
+ creative_id: string;
694
+ };
695
+ headers?: {
696
+ "X-Target-Org-Id"?: string | null;
697
+ };
698
+ body: SetImageRequest;
699
+ };
700
+ output: ApiResponse_StudioContentPayload_;
701
+ };
702
+ /**
703
+ * POST /ad-creatives/{creative_id}/set-image-focus
704
+ * Set Ad Creative Image Focus
705
+ * tier: write · scope: campaigns:write
706
+ */
707
+ set_ad_creative_image_focus_ad_creatives__creative_id__set_image_focus_post: {
708
+ input: {
709
+ path: {
710
+ /** Ad creative id. */
711
+ creative_id: string;
712
+ };
713
+ headers?: {
714
+ "X-Target-Org-Id"?: string | null;
715
+ };
716
+ body: SetImageFocusRequest;
717
+ };
718
+ output: ApiResponse_StudioContentPayload_;
719
+ };
720
+ /**
721
+ * PATCH /ad-creatives/{creative_id}
722
+ * Update Ad Creative
723
+ * tier: write · scope: campaigns:write
724
+ */
725
+ update_ad_creative_ad_creatives__creative_id__patch: {
726
+ input: {
727
+ path: {
728
+ /** Ad creative id. */
729
+ creative_id: string;
730
+ };
731
+ headers?: {
732
+ "X-Target-Org-Id"?: string | null;
733
+ };
734
+ body: UpdateAdCreativeRequest;
735
+ };
736
+ output: ApiResponse_StudioContentPayload_;
737
+ };
738
+ }
739
+
740
+ // 30 schemas referenced above (the same as G8Contract.<Name>).
741
+
742
+ /**
743
+ * Run a review pass over the creative. SPENDS CREDIT.
744
+ *
745
+ * `deep` defaults FALSE here and TRUE on the landing-page review. That
746
+ * asymmetry is the app's and is preserved rather than smoothed over: the two
747
+ * passes cost differently.
748
+ */
749
+ export interface AdAIReviewRequest {
750
+ deep?: boolean;
751
+ }
752
+
753
+ /** A natural-language edit to one creative. SPENDS CREDIT - a model runs. */
754
+ export interface AdCreativeChatEditRequest {
755
+ instruction: string;
756
+ }
757
+
758
+ export interface ApiResponse_StudioContentListPayload_ {
759
+ data: StudioContentListPayload;
760
+ pagination?: PaginationMeta | null;
761
+ }
762
+
763
+ export interface ApiResponse_StudioContentPayload_ {
764
+ data: StudioContentPayload;
765
+ pagination?: PaginationMeta | null;
766
+ }
767
+
768
+ /** Apply review findings DETERMINISTICALLY. Spends nothing. */
769
+ export interface ApplyFindingsRequest {
770
+ finding_ids: Array<string>;
771
+ }
772
+
773
+ /** A buyer persona, as the lens pass needs to see it. */
774
+ export interface CampaignSetPersona {
775
+ id?: string | null;
776
+ summary?: string | null;
777
+ title: string;
778
+ }
779
+
780
+ /** One colour replaced by another, both as hex. */
781
+ export interface ColorSwap {
782
+ from_color: string;
783
+ to_color: string;
784
+ }
785
+
786
+ /**
787
+ * Cheap creative directions to react to BEFORE generating. SPENDS CREDIT.
788
+ *
789
+ * One LLM call for 3-6 directions, which is the point: it is far cheaper
790
+ * than generating that many creatives and throwing five away.
791
+ */
792
+ export interface ConceptsRequest {
793
+ brief?: string | null;
794
+ count?: number;
795
+ }
796
+
797
+ /** Generate the NEXT shot, starting from this clip's last frame. SPENDS CREDIT. */
798
+ export interface ContinueVideoClipRequest {
799
+ duration_seconds?: 4 | 6 | 8;
800
+ prompt_final?: string | null;
801
+ prompt_inputs: VideoClipPromptInputs;
802
+ }
803
+
804
+ /**
805
+ * Generate an ad creative. SPENDS CREDIT - copy and, by default, imagery.
806
+ *
807
+ * `image_source` 'ai' generates the image; 'library' takes
808
+ * `library_image_id` from the image library instead and is the cheaper of
809
+ * the two.
810
+ */
811
+ export interface CreateAdCreativeRequest {
812
+ ad_format: string;
813
+ campaign_id?: string | null;
814
+ /** 'ai' generates an image; 'library' reuses one. */
815
+ image_source?: string;
816
+ library_image_id?: string | null;
817
+ name?: string | null;
818
+ platform: string;
819
+ prompt?: string | null;
820
+ reference_image_ids?: Array<string> | null;
821
+ }
822
+
823
+ /**
824
+ * Generate a persona x platform (x variant) matrix of creatives. SPENDS CREDIT.
825
+ *
826
+ * One full creative per cell: `len(personas) * len(platforms) *
827
+ * variants_per_cell`, capped at 24 per batch (a larger matrix is a 422).
828
+ * AI imagery only - `image_source` is fixed to `ai`.
829
+ */
830
+ export interface CreateAdCreativeSetRequest {
831
+ brief?: string | null;
832
+ /** Platform -> ad_format override. Omit for each platform's default. */
833
+ formats?: Record<string, unknown> | null;
834
+ image_source?: "ai";
835
+ personas: Array<CampaignSetPersona>;
836
+ platforms: Array<string>;
837
+ variants_per_cell?: number;
838
+ }
839
+
840
+ /**
841
+ * Assemble clips into a video ad on a template. Spends nothing itself -
842
+ * the clips were paid for when they were generated.
843
+ */
844
+ export interface CreateVideoCreativeRequest {
845
+ campaign_id?: string | null;
846
+ name?: string | null;
847
+ storyboard: VideoStoryboard;
848
+ template_id: string;
849
+ }
850
+
851
+ /**
852
+ * Deterministic in-image edit. NO MODEL RUNS, nothing is spent.
853
+ *
854
+ * At least one of `text` / `fill` / `font_size` must be present; `index`
855
+ * identifies which element, from `GET /ad-creatives/{id}/image-elements`.
856
+ */
857
+ export interface EditImageElementRequest {
858
+ fill?: string | null;
859
+ font_size?: number | null;
860
+ index: number;
861
+ text?: string | null;
862
+ }
863
+
864
+ /** Generate one video clip. SPENDS CREDIT - priced per second of footage. */
865
+ export interface GenerateVideoClipRequest {
866
+ aspect_ratio?: "16:9" | "9:16";
867
+ creative_id?: string | null;
868
+ duration_seconds?: 4 | 6 | 8;
869
+ prompt_final?: string | null;
870
+ prompt_inputs: VideoClipPromptInputs;
871
+ reference_image_urls?: Array<string>;
872
+ start_image_url?: string | null;
873
+ }
874
+
875
+ /** Pin a point on the image and say what changes there. SPENDS CREDIT. */
876
+ export interface ImagePointEditRequest {
877
+ instruction: string;
878
+ x: number;
879
+ y: number;
880
+ }
881
+
882
+ export interface PaginationMeta {
883
+ /** Whether there are more pages */
884
+ has_next: boolean;
885
+ /** Items per page */
886
+ limit: number;
887
+ /** Opaque cursor for the next page; null when there are no more items. Pass it back as the `cursor` query param to fetch the following page without computing page numbers. */
888
+ next_cursor?: string | null;
889
+ /** Current page number (1-indexed) */
890
+ page: number;
891
+ /** Total number of items */
892
+ total: number;
893
+ }
894
+
895
+ /**
896
+ * Read the ad through a persona's eyes. SPENDS CREDIT.
897
+ *
898
+ * Read-only against the creative - it returns a critique and changes
899
+ * nothing - but a model still runs, so it still costs.
900
+ */
901
+ export interface PersonaLensRequest {
902
+ persona: CampaignSetPersona;
903
+ }
904
+
905
+ /** Swap the creative's palette. Deterministic, spends nothing. */
906
+ export interface ReskinRequest {
907
+ swaps: Array<ColorSwap>;
908
+ }
909
+
910
+ /** Roll back to a snapshot. The restore is itself snapshotted first. */
911
+ export interface RestoreRevisionRequest {
912
+ index: number;
913
+ }
914
+
915
+ /** Rewrite ONE copy field with AI. SPENDS CREDIT. */
916
+ export interface RewriteFieldRequest {
917
+ field: string;
918
+ instruction: string;
919
+ }
920
+
921
+ /** Move the crop focal point, 0-1 in each axis. Spends nothing. */
922
+ export interface SetImageFocusRequest {
923
+ focus_x?: number;
924
+ focus_y?: number;
925
+ }
926
+
927
+ /** Point the creative at an image already in the library. Spends nothing. */
928
+ export interface SetImageRequest {
929
+ library_image_id: string;
930
+ }
931
+
932
+ /**
933
+ * Fan one creative out into the platform's other formats. SPENDS CREDIT.
934
+ *
935
+ * Copy is locked verbatim; the imagery is re-laid-out per format, so the
936
+ * cost scales with how many formats you ask for. Omit `formats` for the
937
+ * platform's full set.
938
+ */
939
+ export interface SizeSetRequest {
940
+ formats?: Array<string> | null;
941
+ }
942
+
943
+ /**
944
+ * A LIST result, open-shaped, with `items` always present.
945
+ *
946
+ * The app returns a bare list from some routes and a named key from others
947
+ * (`pages`, `grids`, `images`, `creatives`, `reports`, `items`). Both are
948
+ * published: the original key is preserved AND mirrored onto `items`, so a
949
+ * client can page any Studio collection the same way without a per-route
950
+ * lookup table.
951
+ */
952
+ export interface StudioContentListPayload {
953
+ items?: Array<unknown>;
954
+ [key: string]: unknown;
955
+ }
956
+
957
+ /** One Studio object, open-shaped. See the module docstring. */
958
+ export type StudioContentPayload = Record<string, unknown>;
959
+
960
+ /** Edit the copy by hand. No model runs, nothing is spent. */
961
+ export interface UpdateAdCreativeRequest {
962
+ cta?: string | null;
963
+ description?: string | null;
964
+ headline?: string | null;
965
+ name?: string | null;
966
+ primary_text?: string | null;
967
+ }
968
+
969
+ /** The structured shot description. `subject` is the only required field. */
970
+ export interface VideoClipPromptInputs {
971
+ camera?: string | null;
972
+ lighting?: string | null;
973
+ negative?: string | null;
974
+ setting?: string | null;
975
+ style?: string | null;
976
+ subject: string;
977
+ }
978
+
979
+ /** Turn the structured shot form into one generation prompt. SPENDS CREDIT (small). */
980
+ export interface VideoPromptEnhanceRequest {
981
+ prompt_inputs: VideoClipPromptInputs;
982
+ }
983
+
984
+ /** One clip on the storyboard, optionally trimmed. */
985
+ export interface VideoShot {
986
+ clip_id: string;
987
+ in_s?: number | null;
988
+ out_s?: number | null;
989
+ }
990
+
991
+ /** The ordered shots (1-5) and the copy for the template's text slots. */
992
+ export interface VideoStoryboard {
993
+ /** Copy slot id (headline, subline, cta, ...) -> text. */
994
+ copy?: Record<string, string>;
995
+ shots?: Array<VideoShot>;
996
+ }