postboost 1.7.0 → 1.14.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 (288) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.yml +26 -0
  2. package/.github/ISSUE_TEMPLATE/config.yml +11 -0
  3. package/.github/ISSUE_TEMPLATE/feature_request.yml +14 -0
  4. package/.github/pull_request_template.md +6 -0
  5. package/CODE_OF_CONDUCT.md +7 -0
  6. package/CONTRIBUTING.md +31 -0
  7. package/README.md +46 -2
  8. package/SECURITY.md +9 -0
  9. package/api/aIApi.ts +460 -2
  10. package/api/accountGroupsApi.ts +501 -0
  11. package/api/accountsApi.ts +266 -4
  12. package/api/activityApi.ts +188 -0
  13. package/api/agentsApi.ts +918 -0
  14. package/api/analyticsApi.ts +1102 -0
  15. package/api/apis.ts +23 -1
  16. package/api/competitorsApi.ts +412 -0
  17. package/api/hashtagGroupsApi.ts +501 -0
  18. package/api/inboxApi.ts +957 -0
  19. package/api/mediaApi.ts +474 -13
  20. package/api/mentionsApi.ts +509 -0
  21. package/api/postingScheduleApi.ts +497 -0
  22. package/api/postsApi.ts +1375 -65
  23. package/api/receiptsApi.ts +2 -2
  24. package/api/subscriptionsApi.ts +10 -5
  25. package/api/tagsApi.ts +5 -3
  26. package/api/templatesApi.ts +501 -0
  27. package/api/usersApi.ts +2 -2
  28. package/api/webhooksApi.ts +327 -0
  29. package/api/workspacesApi.ts +603 -3
  30. package/model/aICredits.ts +52 -0
  31. package/model/aIUsage.ts +39 -0
  32. package/model/aIUsageText.ts +52 -0
  33. package/model/account.ts +59 -4
  34. package/model/accountAnalytics.ts +73 -0
  35. package/model/accountAnalyticsInitialSync.ts +37 -0
  36. package/model/accountConnectionHealth.ts +124 -0
  37. package/model/accountErrorsInner.ts +50 -0
  38. package/model/accountErrorsInnerOneOf.ts +49 -0
  39. package/model/accountGroup.ts +49 -0
  40. package/model/accountGroupInput.ts +40 -0
  41. package/model/accountHealth.ts +90 -0
  42. package/model/accountHealthDailyCap.ts +43 -0
  43. package/model/accountSchedule.ts +49 -0
  44. package/model/addCompetitor202Response.ts +43 -0
  45. package/model/addCompetitor409Response.ts +37 -0
  46. package/model/addGenericSubscriptionRequest.ts +2 -2
  47. package/model/addPostToQueueRequest.ts +34 -0
  48. package/model/agentPageMeta.ts +49 -0
  49. package/model/agentProposal.ts +137 -0
  50. package/model/agentProposalDecision.ts +31 -0
  51. package/model/agentRun.ts +129 -0
  52. package/model/analyticsPeriod.ts +52 -0
  53. package/model/analyticsSummary.ts +39 -0
  54. package/model/analyticsSummaryData.ts +100 -0
  55. package/model/apiActivity.ts +94 -0
  56. package/model/apiActivityOutcome.ts +27 -0
  57. package/model/apiKey.ts +77 -0
  58. package/model/apiKeyAbility.ts +21 -0
  59. package/model/apiKeyInput.ts +56 -0
  60. package/model/approveAgentProposal200Response.ts +32 -0
  61. package/model/approveAgentProposal409Response.ts +38 -0
  62. package/model/approveInboxReplyDraft403Response.ts +43 -0
  63. package/model/approvePostRequest.ts +62 -0
  64. package/model/bestPostingTimes.ts +41 -0
  65. package/model/bestPostingTimesTimesInner.ts +49 -0
  66. package/model/blogToSocial200Response.ts +9 -2
  67. package/model/blogToSocial429Response.ts +2 -2
  68. package/model/blogToSocialCaption.ts +2 -2
  69. package/model/blogToSocialInput.ts +11 -2
  70. package/model/blogToSocialMedia.ts +2 -2
  71. package/model/blogToSocialResponse.ts +2 -2
  72. package/model/brandVoice.ts +136 -0
  73. package/model/brandVoiceInput.ts +142 -0
  74. package/model/brandVoiceMeta.ts +34 -0
  75. package/model/cancelSubscription422Response.ts +38 -0
  76. package/model/cancelSubscription422ResponseErrors.ts +31 -0
  77. package/model/cancelSubscriptionRequest.ts +34 -0
  78. package/model/changeSubscriptionPlanRequest.ts +2 -2
  79. package/model/channelAccount.ts +101 -0
  80. package/model/checkoutSubscription200Response.ts +2 -2
  81. package/model/checkoutSubscriptionRequest.ts +2 -2
  82. package/model/codedError.ts +46 -0
  83. package/model/competitor.ts +82 -0
  84. package/model/competitorDetail.ts +96 -0
  85. package/model/competitorInput.ts +43 -0
  86. package/model/competitorMedia.ts +61 -0
  87. package/model/competitorSnapshot.ts +43 -0
  88. package/model/completeChunkedUploadRequest.ts +40 -0
  89. package/model/connectChannelInput.ts +64 -0
  90. package/model/createAccountGroup201Response.ts +32 -0
  91. package/model/createAgent201Response.ts +32 -0
  92. package/model/createApiKey201Response.ts +32 -0
  93. package/model/createApiKey201ResponseData.ts +86 -0
  94. package/model/createHashtagGroup201Response.ts +32 -0
  95. package/model/createInboxReplyDraft201Response.ts +32 -0
  96. package/model/createMediaFolderRequest.ts +43 -0
  97. package/model/createMention201Response.ts +32 -0
  98. package/model/createRecyclingRule201Response.ts +32 -0
  99. package/model/createReportExport201Response.ts +32 -0
  100. package/model/createResellerClient201Response.ts +32 -0
  101. package/model/createRssFeed201Response.ts +32 -0
  102. package/model/createTemplate201Response.ts +32 -0
  103. package/model/createWebhookSubscription201Response.ts +32 -0
  104. package/model/createWebhookSubscription201ResponseData.ts +70 -0
  105. package/model/deleteAgent200Response.ts +31 -0
  106. package/model/deleteMediaBulkRequest.ts +6 -5
  107. package/model/deleteMediaBulkRequestItemsInner.ts +26 -0
  108. package/model/deleteMediaFolderRequest.ts +31 -0
  109. package/model/deleteMode.ts +2 -2
  110. package/model/deletePostRequest.ts +2 -2
  111. package/model/deletePostsBulkRequest.ts +2 -2
  112. package/model/deleteReceiptsBulkRequest.ts +2 -2
  113. package/model/deleteResult.ts +2 -2
  114. package/model/deleteUser400Response.ts +2 -2
  115. package/model/deleteUsersBulkRequest.ts +2 -2
  116. package/model/deleteWorkspacesBulkRequest.ts +2 -2
  117. package/model/getAccountHealth200Response.ts +32 -0
  118. package/model/getBrandVoice200Response.ts +32 -0
  119. package/model/getCompetitor200Response.ts +32 -0
  120. package/model/getInboxConversation200Response.ts +32 -0
  121. package/model/getPostingSchedule200Response.ts +32 -0
  122. package/model/getRemoteUploadStatus200Response.ts +2 -2
  123. package/model/getReportBranding200Response.ts +32 -0
  124. package/model/guardrailError.ts +82 -0
  125. package/model/hashtagGroup.ts +46 -0
  126. package/model/hashtagGroupInput.ts +37 -0
  127. package/model/imageAltText200Response.ts +2 -2
  128. package/model/imageAltTextInput.ts +2 -2
  129. package/model/imageAltTextResponse.ts +2 -2
  130. package/model/imageCreditBalance.ts +67 -0
  131. package/model/imageEditInput.ts +11 -2
  132. package/model/imageGenerate200Response.ts +9 -2
  133. package/model/imageGenerate429Response.ts +2 -2
  134. package/model/imageGenerateInput.ts +14 -2
  135. package/model/imageGenerationResponse.ts +2 -2
  136. package/model/imagePrompt200Response.ts +9 -2
  137. package/model/imagePrompt429Response.ts +2 -2
  138. package/model/imagePromptInput.ts +14 -2
  139. package/model/imagePromptResponse.ts +2 -2
  140. package/model/imageVariations200Response.ts +2 -2
  141. package/model/imageVariationsInput.ts +2 -2
  142. package/model/imageVariationsResponse.ts +2 -2
  143. package/model/inboxAuthor.ts +43 -0
  144. package/model/inboxConversation.ts +139 -0
  145. package/model/inboxConversationAccount.ts +49 -0
  146. package/model/inboxConversationUpdate.ts +43 -0
  147. package/model/inboxMessage.ts +95 -0
  148. package/model/inboxMessageAuthor.ts +43 -0
  149. package/model/inboxReplyDraft.ts +132 -0
  150. package/model/inboxReplyDraftApprove.ts +34 -0
  151. package/model/inboxReplyDraftEdit.ts +31 -0
  152. package/model/inboxReplyDraftInput.ts +43 -0
  153. package/model/initiateChunkedUpload201Response.ts +2 -2
  154. package/model/initiateChunkedUploadRequest.ts +2 -2
  155. package/model/initiateRemoteUpload201Response.ts +60 -2
  156. package/model/initiateRemoteUpload201ResponseOneOf.ts +2 -2
  157. package/model/initiateRemoteUploadRequest.ts +11 -2
  158. package/model/learnBrandVoiceInput.ts +61 -0
  159. package/model/learnBrandVoiceResponse.ts +39 -0
  160. package/model/learnBrandVoiceResponseMeta.ts +55 -0
  161. package/model/listAccountGroups200Response.ts +46 -0
  162. package/model/listAccounts200Response.ts +2 -2
  163. package/model/listAgentProposals200Response.ts +39 -0
  164. package/model/listAgentRuns200Response.ts +39 -0
  165. package/model/listAgents200Response.ts +32 -0
  166. package/model/listApiActivity200Response.ts +46 -0
  167. package/model/listApiKeys200Response.ts +32 -0
  168. package/model/listCompetitors200Response.ts +32 -0
  169. package/model/listHashtagGroups200Response.ts +46 -0
  170. package/model/listInboxConversations200Response.ts +46 -0
  171. package/model/listInboxReplyDrafts200Response.ts +46 -0
  172. package/model/listMedia200Response.ts +2 -2
  173. package/model/listMediaFolders200Response.ts +32 -0
  174. package/model/listMentions200Response.ts +46 -0
  175. package/model/listMyWorkspaces200Response.ts +32 -0
  176. package/model/listPosts200Response.ts +2 -2
  177. package/model/listReceipts200Response.ts +2 -2
  178. package/model/listRecyclingRules200Response.ts +32 -0
  179. package/model/listRecyclingRuns200Response.ts +32 -0
  180. package/model/listReportExports200Response.ts +32 -0
  181. package/model/listResellerClients200Response.ts +39 -0
  182. package/model/listRssFeeds200Response.ts +32 -0
  183. package/model/listTags200Response.ts +2 -2
  184. package/model/listTemplates200Response.ts +46 -0
  185. package/model/listUsers200Response.ts +2 -2
  186. package/model/listWebhookSubscriptions200Response.ts +32 -0
  187. package/model/listWorkspaces200Response.ts +2 -2
  188. package/model/media.ts +60 -2
  189. package/model/mediaBase64Input.ts +61 -0
  190. package/model/mediaFolder.ts +55 -0
  191. package/model/mediaFolderInput.ts +43 -0
  192. package/model/mediaFolderRef.ts +37 -0
  193. package/model/mention.ts +65 -0
  194. package/model/mentionIdentity.ts +55 -0
  195. package/model/mentionIdentityInput.ts +67 -0
  196. package/model/mentionInput.ts +44 -0
  197. package/model/messageOnly.ts +31 -0
  198. package/model/models.ts +600 -0
  199. package/model/paginationMeta.ts +2 -2
  200. package/model/paginationMetaLinks.ts +4 -4
  201. package/model/paginationMetaMeta.ts +4 -4
  202. package/model/pollRssFeed200Response.ts +50 -0
  203. package/model/post.ts +12 -2
  204. package/model/postAnalytics.ts +46 -0
  205. package/model/postContent.ts +6 -3
  206. package/model/postInput.ts +33 -2
  207. package/model/postOptionsInstagram.ts +59 -0
  208. package/model/postOptionsTikTok.ts +97 -0
  209. package/model/postOptionsYoutube.ts +62 -0
  210. package/model/postStatus.ts +9 -3
  211. package/model/postVersion.ts +16 -6
  212. package/model/postVersionOptions.ts +55 -0
  213. package/model/postingSchedule.ts +74 -0
  214. package/model/postingScheduleDay.ts +50 -0
  215. package/model/postingScheduleDayTimesInner.ts +34 -0
  216. package/model/postingScheduleInput.ts +53 -0
  217. package/model/postingTimeSlot.ts +51 -0
  218. package/model/postingTimes.ts +88 -0
  219. package/model/postingTimesBestInner.ts +49 -0
  220. package/model/postingTimesDayIntervalsInnerInner.ts +69 -0
  221. package/model/postingTimesDaysInner.ts +57 -0
  222. package/model/preflightResult.ts +69 -0
  223. package/model/publicWorkspace.ts +50 -0
  224. package/model/publicWorkspacePivot.ts +53 -0
  225. package/model/publishProgress.ts +46 -0
  226. package/model/queueSlots.ts +43 -0
  227. package/model/receipt.ts +2 -2
  228. package/model/receiptInput.ts +2 -2
  229. package/model/receiptUpdateInput.ts +2 -2
  230. package/model/recommendedPostingTimes.ts +61 -0
  231. package/model/reconnectLink.ts +46 -0
  232. package/model/recyclingRule.ts +117 -0
  233. package/model/recyclingRuleInput.ts +114 -0
  234. package/model/recyclingRuleSettings.ts +83 -0
  235. package/model/recyclingRuleUpdate.ts +71 -0
  236. package/model/recyclingRun.ts +71 -0
  237. package/model/removeGenericSubscription422Response.ts +31 -0
  238. package/model/removeUserFromWorkspaceRequest.ts +2 -2
  239. package/model/reportBranding.ts +61 -0
  240. package/model/reportBrandingInput.ts +55 -0
  241. package/model/reportExport.ts +121 -0
  242. package/model/reportExportInput.ts +91 -0
  243. package/model/repurposeContent200Response.ts +39 -0
  244. package/model/repurposeInput.ts +213 -0
  245. package/model/repurposeInputTheme.ts +46 -0
  246. package/model/repurposeResult.ts +89 -0
  247. package/model/repurposeResultMedia.ts +40 -0
  248. package/model/repurposeResultSource.ts +51 -0
  249. package/model/repurposeSlide.ts +43 -0
  250. package/model/resellerClient.ts +82 -0
  251. package/model/resellerClientInput.ts +31 -0
  252. package/model/resellerClientUsage.ts +43 -0
  253. package/model/retryPostAccountResult.ts +47 -0
  254. package/model/rssFeed.ts +100 -0
  255. package/model/rssFeedInput.ts +79 -0
  256. package/model/rssFeedUpdate.ts +73 -0
  257. package/model/runAgent202Response.ts +32 -0
  258. package/model/schedulePostRequest.ts +39 -2
  259. package/model/scheduleResult.ts +11 -2
  260. package/model/subscription.ts +2 -2
  261. package/model/subscriptionInput.ts +2 -2
  262. package/model/subscriptionStatus.ts +2 -2
  263. package/model/subscriptionUpdateInput.ts +2 -2
  264. package/model/tag.ts +2 -2
  265. package/model/tagInput.ts +2 -2
  266. package/model/template.ts +47 -0
  267. package/model/templateContentItem.ts +40 -0
  268. package/model/templateInput.ts +41 -0
  269. package/model/templateInputContentInner.ts +40 -0
  270. package/model/updateMediaRequest.ts +18 -3
  271. package/model/uploadChunk201Response.ts +2 -2
  272. package/model/user.ts +11 -2
  273. package/model/userInput.ts +2 -2
  274. package/model/userUpdateInput.ts +2 -2
  275. package/model/webhookEventName.ts +31 -0
  276. package/model/webhookEventPayload.ts +43 -0
  277. package/model/webhookSubscription.ts +61 -0
  278. package/model/webhookSubscriptionInput.ts +67 -0
  279. package/model/workspace.ts +17 -3
  280. package/model/workspaceAgent.ts +91 -0
  281. package/model/workspaceAgentInput.ts +67 -0
  282. package/model/workspaceAgentSettings.ts +70 -0
  283. package/model/workspaceAgentUpdate.ts +58 -0
  284. package/model/workspaceInput.ts +8 -3
  285. package/model/workspaceUserInput.ts +2 -2
  286. package/model/xUsage.ts +68 -0
  287. package/model/xUsageCounter.ts +40 -0
  288. package/package.json +1 -1
@@ -0,0 +1,52 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class AICredits {
16
+ /**
17
+ * Whether the workspace can spend AI credits now. Always true when no balance is tracked.
18
+ */
19
+ 'available': boolean;
20
+ /**
21
+ * Remaining credit balance (2 decimals), or null when no balance is tracked.
22
+ */
23
+ 'balance': number;
24
+ /**
25
+ * True when the balance is above 0 and at most 10.
26
+ */
27
+ 'low': boolean;
28
+
29
+ static discriminator: string | undefined = undefined;
30
+
31
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
32
+ {
33
+ "name": "available",
34
+ "baseName": "available",
35
+ "type": "boolean"
36
+ },
37
+ {
38
+ "name": "balance",
39
+ "baseName": "balance",
40
+ "type": "number"
41
+ },
42
+ {
43
+ "name": "low",
44
+ "baseName": "low",
45
+ "type": "boolean"
46
+ } ];
47
+
48
+ static getAttributeTypeMap() {
49
+ return AICredits.attributeTypeMap;
50
+ }
51
+ }
52
+
@@ -0,0 +1,39 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+ import { AIUsageText } from './aIUsageText';
15
+ import { ImageCreditBalance } from './imageCreditBalance';
16
+
17
+ export class AIUsage {
18
+ 'text': AIUsageText;
19
+ 'image': ImageCreditBalance;
20
+
21
+ static discriminator: string | undefined = undefined;
22
+
23
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
24
+ {
25
+ "name": "text",
26
+ "baseName": "text",
27
+ "type": "AIUsageText"
28
+ },
29
+ {
30
+ "name": "image",
31
+ "baseName": "image",
32
+ "type": "ImageCreditBalance"
33
+ } ];
34
+
35
+ static getAttributeTypeMap() {
36
+ return AIUsage.attributeTypeMap;
37
+ }
38
+ }
39
+
@@ -0,0 +1,52 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class AIUsageText {
16
+ /**
17
+ * `null` when the workspace has no text credit limit.
18
+ */
19
+ 'used': number | null;
20
+ 'limit': number | null;
21
+ 'remaining': number | null;
22
+ 'cycleStartedAt'?: Date | null;
23
+
24
+ static discriminator: string | undefined = undefined;
25
+
26
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
27
+ {
28
+ "name": "used",
29
+ "baseName": "used",
30
+ "type": "number"
31
+ },
32
+ {
33
+ "name": "limit",
34
+ "baseName": "limit",
35
+ "type": "number"
36
+ },
37
+ {
38
+ "name": "remaining",
39
+ "baseName": "remaining",
40
+ "type": "number"
41
+ },
42
+ {
43
+ "name": "cycleStartedAt",
44
+ "baseName": "cycle_started_at",
45
+ "type": "Date"
46
+ } ];
47
+
48
+ static getAttributeTypeMap() {
49
+ return AIUsageText.attributeTypeMap;
50
+ }
51
+ }
52
+
package/model/account.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * PostBoost API
3
- * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
4
  *
5
- * The version of the OpenAPI document: 1.0.0
5
+ * The version of the OpenAPI document: 1.14.0
6
6
  * Contact: hi@postboost.co
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -11,6 +11,7 @@
11
11
  */
12
12
 
13
13
  import { RequestFile } from './models';
14
+ import { AccountErrorsInner } from './accountErrorsInner';
14
15
 
15
16
  export class Account {
16
17
  'id': number;
@@ -24,7 +25,30 @@ export class Account {
24
25
  */
25
26
  'data': object;
26
27
  'authorized': boolean;
27
- 'createdAt': Date;
28
+ /**
29
+ * Public URL of the account\'s profile on the network, when known.
30
+ */
31
+ 'profileUrl'?: string;
32
+ /**
33
+ * Only present when the account is embedded in a post. Publishing state of this account for the post.
34
+ */
35
+ 'publishStatus'?: Account.PublishStatusEnum;
36
+ /**
37
+ * Only present when the account is embedded in a post. How many parts (for example thread items or a first comment) are live on the network.
38
+ */
39
+ 'publishedParts'?: number;
40
+ /**
41
+ * Only present when the account is embedded in a post. URL of the published post on the network, null until it is live.
42
+ */
43
+ 'externalUrl'?: string | null;
44
+ /**
45
+ * Only present when the account is embedded in a post. Why publishing to this account failed. A raw network error is stored as two entries: a readable line (`\"<Network>: <message> (code <code>)\"`) and an object `{platform, code, message, raw}` with the network\'s original response in `raw`. Other failures are a single readable string.
46
+ */
47
+ 'errors'?: Array<AccountErrorsInner>;
48
+ /**
49
+ * UTC, formatted `Y-m-d H:i:s`.
50
+ */
51
+ 'createdAt': string;
28
52
 
29
53
  static discriminator: string | undefined = undefined;
30
54
 
@@ -69,10 +93,35 @@ export class Account {
69
93
  "baseName": "authorized",
70
94
  "type": "boolean"
71
95
  },
96
+ {
97
+ "name": "profileUrl",
98
+ "baseName": "profile_url",
99
+ "type": "string"
100
+ },
101
+ {
102
+ "name": "publishStatus",
103
+ "baseName": "publish_status",
104
+ "type": "Account.PublishStatusEnum"
105
+ },
106
+ {
107
+ "name": "publishedParts",
108
+ "baseName": "published_parts",
109
+ "type": "number"
110
+ },
111
+ {
112
+ "name": "externalUrl",
113
+ "baseName": "external_url",
114
+ "type": "string"
115
+ },
116
+ {
117
+ "name": "errors",
118
+ "baseName": "errors",
119
+ "type": "Array<AccountErrorsInner>"
120
+ },
72
121
  {
73
122
  "name": "createdAt",
74
123
  "baseName": "created_at",
75
- "type": "Date"
124
+ "type": "string"
76
125
  } ];
77
126
 
78
127
  static getAttributeTypeMap() {
@@ -91,4 +140,10 @@ export namespace Account {
91
140
  Youtube = <any> 'youtube',
92
141
  Mastodon = <any> 'mastodon'
93
142
  }
143
+ export enum PublishStatusEnum {
144
+ Pending = <any> 'pending',
145
+ Publishing = <any> 'publishing',
146
+ Published = <any> 'published',
147
+ Failed = <any> 'failed'
148
+ }
94
149
  }
@@ -0,0 +1,73 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+ import { Account } from './account';
15
+ import { AccountAnalyticsInitialSync } from './accountAnalyticsInitialSync';
16
+ import { AnalyticsPeriod } from './analyticsPeriod';
17
+
18
+ export class AccountAnalytics {
19
+ 'account': Account;
20
+ /**
21
+ * The analytics tab returned.
22
+ */
23
+ 'type': string;
24
+ /**
25
+ * Tabs this account supports; any of them can be passed as `type`.
26
+ */
27
+ 'tabs': Array<string>;
28
+ 'period': AnalyticsPeriod;
29
+ 'initialSync': AccountAnalyticsInitialSync;
30
+ /**
31
+ * Provider- and tab-specific metrics. Chart series are lists of `{date, value}` points.
32
+ */
33
+ 'data': { [key: string]: any; };
34
+
35
+ static discriminator: string | undefined = undefined;
36
+
37
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
38
+ {
39
+ "name": "account",
40
+ "baseName": "account",
41
+ "type": "Account"
42
+ },
43
+ {
44
+ "name": "type",
45
+ "baseName": "type",
46
+ "type": "string"
47
+ },
48
+ {
49
+ "name": "tabs",
50
+ "baseName": "tabs",
51
+ "type": "Array<string>"
52
+ },
53
+ {
54
+ "name": "period",
55
+ "baseName": "period",
56
+ "type": "AnalyticsPeriod"
57
+ },
58
+ {
59
+ "name": "initialSync",
60
+ "baseName": "initial_sync",
61
+ "type": "AccountAnalyticsInitialSync"
62
+ },
63
+ {
64
+ "name": "data",
65
+ "baseName": "data",
66
+ "type": "{ [key: string]: any; }"
67
+ } ];
68
+
69
+ static getAttributeTypeMap() {
70
+ return AccountAnalytics.attributeTypeMap;
71
+ }
72
+ }
73
+
@@ -0,0 +1,37 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class AccountAnalyticsInitialSync {
16
+ 'inProgress': boolean;
17
+ 'progress'?: any | null;
18
+
19
+ static discriminator: string | undefined = undefined;
20
+
21
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
22
+ {
23
+ "name": "inProgress",
24
+ "baseName": "in_progress",
25
+ "type": "boolean"
26
+ },
27
+ {
28
+ "name": "progress",
29
+ "baseName": "progress",
30
+ "type": "any"
31
+ } ];
32
+
33
+ static getAttributeTypeMap() {
34
+ return AccountAnalyticsInitialSync.attributeTypeMap;
35
+ }
36
+ }
37
+
@@ -0,0 +1,124 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ /**
16
+ * Connection health of an account (todo 27). Never contains token values.
17
+ */
18
+ export class AccountConnectionHealth {
19
+ /**
20
+ * `expired`: must be reconnected now. `expiring`: the connection hits its hard expiry within 7 days. `failing`: the latest publish attempt failed. `healthy`: none of these.
21
+ */
22
+ 'status': AccountConnectionHealth.StatusEnum;
23
+ /**
24
+ * What limits the connection: `access` (the access token), `refresh` (the refresh token), `expired`, `unknown` (refreshed automatically, no known hard limit) or `none` (the network\'s connections do not expire on a schedule).
25
+ */
26
+ 'expiryKind': AccountConnectionHealth.ExpiryKindEnum;
27
+ /**
28
+ * When the connection stops working unless reconnected; null without a hard expiry.
29
+ */
30
+ 'expiresAt': Date | null;
31
+ /**
32
+ * Whole days until `expires_at` (0 = less than a day).
33
+ */
34
+ 'daysLeft': number | null;
35
+ /**
36
+ * PostBoost refreshes the token automatically until the hard expiry.
37
+ */
38
+ 'refreshable': boolean;
39
+ /**
40
+ * Plain-language explanation of the prediction.
41
+ */
42
+ 'note': string;
43
+ /**
44
+ * When the account last published successfully.
45
+ */
46
+ 'lastSuccessAt': Date | null;
47
+ /**
48
+ * The error of the account\'s latest failed publish, shortened to 300 characters.
49
+ */
50
+ 'lastError': string | null;
51
+ /**
52
+ * Where a workspace member reconnects the account.
53
+ */
54
+ 'reconnectUrl': string;
55
+
56
+ static discriminator: string | undefined = undefined;
57
+
58
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
59
+ {
60
+ "name": "status",
61
+ "baseName": "status",
62
+ "type": "AccountConnectionHealth.StatusEnum"
63
+ },
64
+ {
65
+ "name": "expiryKind",
66
+ "baseName": "expiry_kind",
67
+ "type": "AccountConnectionHealth.ExpiryKindEnum"
68
+ },
69
+ {
70
+ "name": "expiresAt",
71
+ "baseName": "expires_at",
72
+ "type": "Date"
73
+ },
74
+ {
75
+ "name": "daysLeft",
76
+ "baseName": "days_left",
77
+ "type": "number"
78
+ },
79
+ {
80
+ "name": "refreshable",
81
+ "baseName": "refreshable",
82
+ "type": "boolean"
83
+ },
84
+ {
85
+ "name": "note",
86
+ "baseName": "note",
87
+ "type": "string"
88
+ },
89
+ {
90
+ "name": "lastSuccessAt",
91
+ "baseName": "last_success_at",
92
+ "type": "Date"
93
+ },
94
+ {
95
+ "name": "lastError",
96
+ "baseName": "last_error",
97
+ "type": "string"
98
+ },
99
+ {
100
+ "name": "reconnectUrl",
101
+ "baseName": "reconnect_url",
102
+ "type": "string"
103
+ } ];
104
+
105
+ static getAttributeTypeMap() {
106
+ return AccountConnectionHealth.attributeTypeMap;
107
+ }
108
+ }
109
+
110
+ export namespace AccountConnectionHealth {
111
+ export enum StatusEnum {
112
+ Healthy = <any> 'healthy',
113
+ Failing = <any> 'failing',
114
+ Expiring = <any> 'expiring',
115
+ Expired = <any> 'expired'
116
+ }
117
+ export enum ExpiryKindEnum {
118
+ Access = <any> 'access',
119
+ Refresh = <any> 'refresh',
120
+ Expired = <any> 'expired',
121
+ Unknown = <any> 'unknown',
122
+ None = <any> 'none'
123
+ }
124
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+ import { AccountErrorsInnerOneOf } from './accountErrorsInnerOneOf';
15
+
16
+ export class AccountErrorsInner {
17
+ 'platform'?: string;
18
+ 'code'?: string;
19
+ 'message'?: string;
20
+ 'raw'?: any | null;
21
+
22
+ static discriminator: string | undefined = undefined;
23
+
24
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
25
+ {
26
+ "name": "platform",
27
+ "baseName": "platform",
28
+ "type": "string"
29
+ },
30
+ {
31
+ "name": "code",
32
+ "baseName": "code",
33
+ "type": "string"
34
+ },
35
+ {
36
+ "name": "message",
37
+ "baseName": "message",
38
+ "type": "string"
39
+ },
40
+ {
41
+ "name": "raw",
42
+ "baseName": "raw",
43
+ "type": "any"
44
+ } ];
45
+
46
+ static getAttributeTypeMap() {
47
+ return AccountErrorsInner.attributeTypeMap;
48
+ }
49
+ }
50
+
@@ -0,0 +1,49 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class AccountErrorsInnerOneOf {
16
+ 'platform'?: string;
17
+ 'code'?: string | null;
18
+ 'message'?: string;
19
+ 'raw'?: any | null;
20
+
21
+ static discriminator: string | undefined = undefined;
22
+
23
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
24
+ {
25
+ "name": "platform",
26
+ "baseName": "platform",
27
+ "type": "string"
28
+ },
29
+ {
30
+ "name": "code",
31
+ "baseName": "code",
32
+ "type": "string"
33
+ },
34
+ {
35
+ "name": "message",
36
+ "baseName": "message",
37
+ "type": "string"
38
+ },
39
+ {
40
+ "name": "raw",
41
+ "baseName": "raw",
42
+ "type": "any"
43
+ } ];
44
+
45
+ static getAttributeTypeMap() {
46
+ return AccountErrorsInnerOneOf.attributeTypeMap;
47
+ }
48
+ }
49
+
@@ -0,0 +1,49 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace\'s plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request\'s `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account\'s daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.14.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class AccountGroup {
16
+ 'id': number;
17
+ 'uuid': string;
18
+ 'name': string;
19
+ 'accountIds': Array<number>;
20
+
21
+ static discriminator: string | undefined = undefined;
22
+
23
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
24
+ {
25
+ "name": "id",
26
+ "baseName": "id",
27
+ "type": "number"
28
+ },
29
+ {
30
+ "name": "uuid",
31
+ "baseName": "uuid",
32
+ "type": "string"
33
+ },
34
+ {
35
+ "name": "name",
36
+ "baseName": "name",
37
+ "type": "string"
38
+ },
39
+ {
40
+ "name": "accountIds",
41
+ "baseName": "account_ids",
42
+ "type": "Array<number>"
43
+ } ];
44
+
45
+ static getAttributeTypeMap() {
46
+ return AccountGroup.attributeTypeMap;
47
+ }
48
+ }
49
+