peal 0.1.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 (443) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +136 -0
  4. data/LICENSE +202 -0
  5. data/README.md +353 -0
  6. data/Rakefile +10 -0
  7. data/docs/AlreadyMemberEncoded.md +18 -0
  8. data/docs/AltTextTooLongEncoded.md +20 -0
  9. data/docs/AnalyticsApi.md +155 -0
  10. data/docs/AnalyticsSummary.md +30 -0
  11. data/docs/ApiKey.md +28 -0
  12. data/docs/ApiKeyNotFoundEncoded.md +18 -0
  13. data/docs/ApiKeysApi.md +220 -0
  14. data/docs/ApiKeysRevoke404Response.md +18 -0
  15. data/docs/AssistantAction.md +24 -0
  16. data/docs/AssistantActionAnyOf.md +20 -0
  17. data/docs/AssistantActionAnyOf1.md +20 -0
  18. data/docs/AssistantActionAnyOf2.md +20 -0
  19. data/docs/AssistantActionAnyOf3.md +18 -0
  20. data/docs/AssistantApi.md +149 -0
  21. data/docs/AssistantFailedEncoded.md +20 -0
  22. data/docs/AssistantInputRejectedEncoded.md +22 -0
  23. data/docs/AssistantQuotaExceededEncoded.md +22 -0
  24. data/docs/AssistantStatus.md +26 -0
  25. data/docs/AssistantTone.md +15 -0
  26. data/docs/AssistantUnavailableEncoded.md +18 -0
  27. data/docs/AttemptResult.md +15 -0
  28. data/docs/Authorization.md +18 -0
  29. data/docs/Billing.md +28 -0
  30. data/docs/BillingApi.md +77 -0
  31. data/docs/BillingSubscription.md +24 -0
  32. data/docs/Channel.md +30 -0
  33. data/docs/ChannelCannotPostEncoded.md +20 -0
  34. data/docs/ChannelMetrics.md +30 -0
  35. data/docs/ChannelNotFoundEncoded.md +18 -0
  36. data/docs/ChannelOptions.md +20 -0
  37. data/docs/ChannelStatus.md +20 -0
  38. data/docs/ChannelStatusAnyOf.md +18 -0
  39. data/docs/ChannelStatusAnyOf1.md +18 -0
  40. data/docs/ChannelStatusAnyOf2.md +20 -0
  41. data/docs/ChannelsApi.md +512 -0
  42. data/docs/ChannelsCompleteConnect404Response.md +18 -0
  43. data/docs/ChoosableAccount.md +26 -0
  44. data/docs/ChooseAccounts.md +20 -0
  45. data/docs/ConnectCallback.md +24 -0
  46. data/docs/ConnectChannel.md +20 -0
  47. data/docs/ConnectFailedEncoded.md +20 -0
  48. data/docs/ConnectFailureReason.md +15 -0
  49. data/docs/ConnectOutcome.md +26 -0
  50. data/docs/ConnectOutcomeAnyOf.md +20 -0
  51. data/docs/ConnectOutcomeAnyOf1.md +24 -0
  52. data/docs/ConnectablePlatforms.md +18 -0
  53. data/docs/ContentViolation.md +54 -0
  54. data/docs/ContentViolationAnyOf.md +18 -0
  55. data/docs/ContentViolationAnyOf1.md +20 -0
  56. data/docs/ContentViolationAnyOf10.md +26 -0
  57. data/docs/ContentViolationAnyOf11.md +22 -0
  58. data/docs/ContentViolationAnyOf12.md +26 -0
  59. data/docs/ContentViolationAnyOf13.md +26 -0
  60. data/docs/ContentViolationAnyOf14.md +26 -0
  61. data/docs/ContentViolationAnyOf15.md +26 -0
  62. data/docs/ContentViolationAnyOf16.md +22 -0
  63. data/docs/ContentViolationAnyOf17.md +26 -0
  64. data/docs/ContentViolationAnyOf18.md +28 -0
  65. data/docs/ContentViolationAnyOf19.md +28 -0
  66. data/docs/ContentViolationAnyOf2.md +20 -0
  67. data/docs/ContentViolationAnyOf20.md +28 -0
  68. data/docs/ContentViolationAnyOf21.md +28 -0
  69. data/docs/ContentViolationAnyOf22.md +30 -0
  70. data/docs/ContentViolationAnyOf23.md +32 -0
  71. data/docs/ContentViolationAnyOf24.md +32 -0
  72. data/docs/ContentViolationAnyOf24Maximum.md +15 -0
  73. data/docs/ContentViolationAnyOf25.md +28 -0
  74. data/docs/ContentViolationAnyOf3.md +24 -0
  75. data/docs/ContentViolationAnyOf4.md +24 -0
  76. data/docs/ContentViolationAnyOf5.md +28 -0
  77. data/docs/ContentViolationAnyOf6.md +24 -0
  78. data/docs/ContentViolationAnyOf7.md +22 -0
  79. data/docs/ContentViolationAnyOf8.md +28 -0
  80. data/docs/ContentViolationAnyOf9.md +24 -0
  81. data/docs/CreatedApiKey.md +20 -0
  82. data/docs/DatabaseUnavailableEncoded.md +18 -0
  83. data/docs/DraftPage.md +20 -0
  84. data/docs/EffectHttpApiErrorBadRequestEncoded.md +18 -0
  85. data/docs/EngagementDay.md +26 -0
  86. data/docs/FailureReason.md +15 -0
  87. data/docs/ForbiddenEncoded.md +18 -0
  88. data/docs/InvalidDateRangeEncoded.md +18 -0
  89. data/docs/InvalidTimeRangeEncoded.md +18 -0
  90. data/docs/InvalidTimeZoneEncoded.md +20 -0
  91. data/docs/Invitation.md +28 -0
  92. data/docs/InvitationNotFoundEncoded.md +18 -0
  93. data/docs/InvitationsApi.md +220 -0
  94. data/docs/InvitationsCreate409Response.md +18 -0
  95. data/docs/InvitationsRevoke404Response.md +18 -0
  96. data/docs/MarkNoticesRead.md +18 -0
  97. data/docs/Me.md +22 -0
  98. data/docs/MeUser.md +28 -0
  99. data/docs/Media.md +40 -0
  100. data/docs/MediaApi.md +516 -0
  101. data/docs/MediaAttachment.md +20 -0
  102. data/docs/MediaContentType.md +15 -0
  103. data/docs/MediaCreate422Response.md +28 -0
  104. data/docs/MediaDescription.md +18 -0
  105. data/docs/MediaDimensions.md +20 -0
  106. data/docs/MediaGet404Response.md +18 -0
  107. data/docs/MediaInUseEncoded.md +20 -0
  108. data/docs/MediaKind.md +15 -0
  109. data/docs/MediaNotFoundEncoded.md +18 -0
  110. data/docs/MediaPage.md +20 -0
  111. data/docs/MediaStatus.md +22 -0
  112. data/docs/MediaStatusAnyOf.md +18 -0
  113. data/docs/MediaStatusAnyOf1.md +20 -0
  114. data/docs/MediaStatusAnyOf2.md +18 -0
  115. data/docs/MediaStatusAnyOf3.md +20 -0
  116. data/docs/MediaStoreUnavailableEncoded.md +18 -0
  117. data/docs/MediaTooLargeEncoded.md +24 -0
  118. data/docs/MediaUsage.md +20 -0
  119. data/docs/MembersApi.md +77 -0
  120. data/docs/Membership.md +26 -0
  121. data/docs/MetricTotals.md +28 -0
  122. data/docs/MetricsSnapshot.md +20 -0
  123. data/docs/NewApiKey.md +22 -0
  124. data/docs/NewInvitation.md +20 -0
  125. data/docs/NewUpload.md +22 -0
  126. data/docs/NonFiniteNumber.md +15 -0
  127. data/docs/Notice.md +26 -0
  128. data/docs/NoticeChannel.md +20 -0
  129. data/docs/NoticeEvent.md +28 -0
  130. data/docs/NoticeEventAnyOf.md +24 -0
  131. data/docs/NoticeEventAnyOf1.md +24 -0
  132. data/docs/NoticeEventAnyOf2.md +22 -0
  133. data/docs/NoticeEventAnyOf3.md +20 -0
  134. data/docs/NoticeEventAnyOf4.md +22 -0
  135. data/docs/NoticePage.md +20 -0
  136. data/docs/NoticesApi.md +285 -0
  137. data/docs/NotificationPreferences.md +20 -0
  138. data/docs/NotificationPreferencesApi.md +144 -0
  139. data/docs/NotificationPreferencesChange.md +20 -0
  140. data/docs/NotificationPreferencesChangeEmail.md +24 -0
  141. data/docs/NotificationPreferencesEmail.md +24 -0
  142. data/docs/PaidPlan.md +15 -0
  143. data/docs/PeriodUsage.md +20 -0
  144. data/docs/Plan.md +15 -0
  145. data/docs/PlanAllowances.md +24 -0
  146. data/docs/PlanLimit.md +15 -0
  147. data/docs/PlanLimitReachedEncoded.md +22 -0
  148. data/docs/PlanOffer.md +20 -0
  149. data/docs/Platform.md +15 -0
  150. data/docs/PlatformUnreachableEncoded.md +18 -0
  151. data/docs/Post.md +30 -0
  152. data/docs/PostAnalytics.md +20 -0
  153. data/docs/PostContent.md +22 -0
  154. data/docs/PostContentInvalidEncoded.md +20 -0
  155. data/docs/PostDraft.md +22 -0
  156. data/docs/PostMetrics.md +26 -0
  157. data/docs/PostNotFoundEncoded.md +18 -0
  158. data/docs/PostOutcome.md +15 -0
  159. data/docs/PostSchedule.md +20 -0
  160. data/docs/PostStatus.md +15 -0
  161. data/docs/PostStatusConflictEncoded.md +20 -0
  162. data/docs/PostTarget.md +36 -0
  163. data/docs/PostTargetStatus.md +15 -0
  164. data/docs/PostsApi.md +960 -0
  165. data/docs/PostsCreate422Response.md +24 -0
  166. data/docs/PostsGet404Response.md +18 -0
  167. data/docs/PostsRepost409Response.md +20 -0
  168. data/docs/PostsSchedule422Response.md +26 -0
  169. data/docs/PreparedUpload.md +20 -0
  170. data/docs/ProbeState.md +15 -0
  171. data/docs/PublicationAttempt.md +30 -0
  172. data/docs/RejectionReason.md +15 -0
  173. data/docs/Role.md +15 -0
  174. data/docs/ScheduleInPastEncoded.md +18 -0
  175. data/docs/SchedulePost.md +22 -0
  176. data/docs/SessionApi.md +74 -0
  177. data/docs/SignedRequest.md +22 -0
  178. data/docs/SubscriptionStatus.md +15 -0
  179. data/docs/Suggestion.md +22 -0
  180. data/docs/SuggestionAnyOf.md +20 -0
  181. data/docs/SuggestionAnyOf1.md +20 -0
  182. data/docs/SuggestionRequest.md +20 -0
  183. data/docs/SystemApi.md +129 -0
  184. data/docs/TargetConfirmation.md +20 -0
  185. data/docs/TargetConfirmationAnyOf.md +20 -0
  186. data/docs/TargetConfirmationAnyOf1.md +18 -0
  187. data/docs/TargetMetrics.md +32 -0
  188. data/docs/TargetOptions.md +48 -0
  189. data/docs/TargetStatusConflictEncoded.md +20 -0
  190. data/docs/TextOverride.md +20 -0
  191. data/docs/TextUnit.md +15 -0
  192. data/docs/TikTokAccount.md +20 -0
  193. data/docs/TikTokAccountPosting.md +22 -0
  194. data/docs/TikTokAccountPostingAnyOf.md +20 -0
  195. data/docs/TikTokAccountPostingAnyOf1.md +20 -0
  196. data/docs/TikTokBlock.md +15 -0
  197. data/docs/TikTokCreator.md +32 -0
  198. data/docs/TikTokOptions.md +34 -0
  199. data/docs/TikTokPrivacyLevel.md +15 -0
  200. data/docs/TiktokApi.md +79 -0
  201. data/docs/TooManyInvitationsEncoded.md +18 -0
  202. data/docs/TopPost.md +30 -0
  203. data/docs/TranslationLanguage.md +15 -0
  204. data/docs/UnauthenticatedEncoded.md +18 -0
  205. data/docs/UnconfirmedReason.md +15 -0
  206. data/docs/UnknownChannelsEncoded.md +20 -0
  207. data/docs/UnknownMediaEncoded.md +20 -0
  208. data/docs/UnreadNotices.md +18 -0
  209. data/docs/UnsupportedMediaTypeEncoded.md +20 -0
  210. data/docs/UploadIncompleteEncoded.md +18 -0
  211. data/docs/UploadPart.md +22 -0
  212. data/docs/UploadRejectedEncoded.md +20 -0
  213. data/docs/UploadTarget.md +26 -0
  214. data/docs/UploadTargetAnyOf.md +22 -0
  215. data/docs/UploadTargetAnyOf1.md +24 -0
  216. data/docs/Usage.md +24 -0
  217. data/docs/WorkspaceMember.md +26 -0
  218. data/docs/WorkspaceNotFoundEncoded.md +18 -0
  219. data/docs/YouTubeOptions.md +32 -0
  220. data/docs/YouTubePrivacy.md +15 -0
  221. data/lib/peal/api/analytics_api.rb +185 -0
  222. data/lib/peal/api/api_keys_api.rb +228 -0
  223. data/lib/peal/api/assistant_api.rb +159 -0
  224. data/lib/peal/api/billing_api.rb +85 -0
  225. data/lib/peal/api/channels_api.rb +526 -0
  226. data/lib/peal/api/invitations_api.rb +228 -0
  227. data/lib/peal/api/media_api.rb +526 -0
  228. data/lib/peal/api/members_api.rb +85 -0
  229. data/lib/peal/api/notices_api.rb +272 -0
  230. data/lib/peal/api/notification_preferences_api.rb +147 -0
  231. data/lib/peal/api/posts_api.rb +993 -0
  232. data/lib/peal/api/session_api.rb +79 -0
  233. data/lib/peal/api/system_api.rb +134 -0
  234. data/lib/peal/api/tiktok_api.rb +91 -0
  235. data/lib/peal/api_client.rb +441 -0
  236. data/lib/peal/api_error.rb +58 -0
  237. data/lib/peal/api_model_base.rb +88 -0
  238. data/lib/peal/configuration.rb +392 -0
  239. data/lib/peal/models/already_member_encoded.rb +201 -0
  240. data/lib/peal/models/alt_text_too_long_encoded.rb +245 -0
  241. data/lib/peal/models/analytics_summary.rb +361 -0
  242. data/lib/peal/models/api_key.rb +293 -0
  243. data/lib/peal/models/api_key_not_found_encoded.rb +201 -0
  244. data/lib/peal/models/api_keys_revoke404_response.rb +103 -0
  245. data/lib/peal/models/assistant_action.rb +105 -0
  246. data/lib/peal/models/assistant_action_any_of.rb +227 -0
  247. data/lib/peal/models/assistant_action_any_of1.rb +227 -0
  248. data/lib/peal/models/assistant_action_any_of2.rb +227 -0
  249. data/lib/peal/models/assistant_action_any_of3.rb +201 -0
  250. data/lib/peal/models/assistant_failed_encoded.rb +229 -0
  251. data/lib/peal/models/assistant_input_rejected_encoded.rb +273 -0
  252. data/lib/peal/models/assistant_quota_exceeded_encoded.rb +271 -0
  253. data/lib/peal/models/assistant_status.rb +335 -0
  254. data/lib/peal/models/assistant_tone.rb +43 -0
  255. data/lib/peal/models/assistant_unavailable_encoded.rb +201 -0
  256. data/lib/peal/models/attempt_result.rb +50 -0
  257. data/lib/peal/models/authorization.rb +177 -0
  258. data/lib/peal/models/billing.rb +303 -0
  259. data/lib/peal/models/billing_subscription.rb +263 -0
  260. data/lib/peal/models/channel.rb +313 -0
  261. data/lib/peal/models/channel_cannot_post_encoded.rb +229 -0
  262. data/lib/peal/models/channel_metrics.rb +425 -0
  263. data/lib/peal/models/channel_not_found_encoded.rb +201 -0
  264. data/lib/peal/models/channel_options.rb +203 -0
  265. data/lib/peal/models/channel_status.rb +104 -0
  266. data/lib/peal/models/channel_status_any_of.rb +201 -0
  267. data/lib/peal/models/channel_status_any_of1.rb +201 -0
  268. data/lib/peal/models/channel_status_any_of2.rb +227 -0
  269. data/lib/peal/models/channels_complete_connect404_response.rb +103 -0
  270. data/lib/peal/models/choosable_account.rb +253 -0
  271. data/lib/peal/models/choose_accounts.rb +241 -0
  272. data/lib/peal/models/connect_callback.rb +279 -0
  273. data/lib/peal/models/connect_channel.rb +207 -0
  274. data/lib/peal/models/connect_failed_encoded.rb +227 -0
  275. data/lib/peal/models/connect_failure_reason.rb +48 -0
  276. data/lib/peal/models/connect_outcome.rb +103 -0
  277. data/lib/peal/models/connect_outcome_any_of.rb +227 -0
  278. data/lib/peal/models/connect_outcome_any_of1.rb +281 -0
  279. data/lib/peal/models/connectable_platforms.rb +179 -0
  280. data/lib/peal/models/content_violation.rb +127 -0
  281. data/lib/peal/models/content_violation_any_of.rb +201 -0
  282. data/lib/peal/models/content_violation_any_of1.rb +227 -0
  283. data/lib/peal/models/content_violation_any_of10.rb +341 -0
  284. data/lib/peal/models/content_violation_any_of11.rb +253 -0
  285. data/lib/peal/models/content_violation_any_of12.rb +341 -0
  286. data/lib/peal/models/content_violation_any_of13.rb +341 -0
  287. data/lib/peal/models/content_violation_any_of14.rb +341 -0
  288. data/lib/peal/models/content_violation_any_of15.rb +341 -0
  289. data/lib/peal/models/content_violation_any_of16.rb +253 -0
  290. data/lib/peal/models/content_violation_any_of17.rb +305 -0
  291. data/lib/peal/models/content_violation_any_of18.rb +367 -0
  292. data/lib/peal/models/content_violation_any_of19.rb +367 -0
  293. data/lib/peal/models/content_violation_any_of2.rb +227 -0
  294. data/lib/peal/models/content_violation_any_of20.rb +367 -0
  295. data/lib/peal/models/content_violation_any_of21.rb +367 -0
  296. data/lib/peal/models/content_violation_any_of22.rb +411 -0
  297. data/lib/peal/models/content_violation_any_of23.rb +455 -0
  298. data/lib/peal/models/content_violation_any_of24.rb +419 -0
  299. data/lib/peal/models/content_violation_any_of24_maximum.rb +103 -0
  300. data/lib/peal/models/content_violation_any_of25.rb +367 -0
  301. data/lib/peal/models/content_violation_any_of3.rb +279 -0
  302. data/lib/peal/models/content_violation_any_of4.rb +279 -0
  303. data/lib/peal/models/content_violation_any_of5.rb +367 -0
  304. data/lib/peal/models/content_violation_any_of6.rb +279 -0
  305. data/lib/peal/models/content_violation_any_of7.rb +253 -0
  306. data/lib/peal/models/content_violation_any_of8.rb +367 -0
  307. data/lib/peal/models/content_violation_any_of9.rb +281 -0
  308. data/lib/peal/models/created_api_key.rb +203 -0
  309. data/lib/peal/models/database_unavailable_encoded.rb +201 -0
  310. data/lib/peal/models/draft_page.rb +191 -0
  311. data/lib/peal/models/effect_http_api_error_bad_request_encoded.rb +201 -0
  312. data/lib/peal/models/engagement_day.rb +364 -0
  313. data/lib/peal/models/failure_reason.rb +50 -0
  314. data/lib/peal/models/forbidden_encoded.rb +201 -0
  315. data/lib/peal/models/invalid_date_range_encoded.rb +201 -0
  316. data/lib/peal/models/invalid_time_range_encoded.rb +201 -0
  317. data/lib/peal/models/invalid_time_zone_encoded.rb +227 -0
  318. data/lib/peal/models/invitation.rb +307 -0
  319. data/lib/peal/models/invitation_not_found_encoded.rb +201 -0
  320. data/lib/peal/models/invitations_create409_response.rb +103 -0
  321. data/lib/peal/models/invitations_revoke404_response.rb +103 -0
  322. data/lib/peal/models/mark_notices_read.rb +197 -0
  323. data/lib/peal/models/me.rb +217 -0
  324. data/lib/peal/models/me_user.rb +317 -0
  325. data/lib/peal/models/media.rb +457 -0
  326. data/lib/peal/models/media_attachment.rb +212 -0
  327. data/lib/peal/models/media_content_type.rb +44 -0
  328. data/lib/peal/models/media_create422_response.rb +104 -0
  329. data/lib/peal/models/media_description.rb +163 -0
  330. data/lib/peal/models/media_dimensions.rb +239 -0
  331. data/lib/peal/models/media_get404_response.rb +103 -0
  332. data/lib/peal/models/media_in_use_encoded.rb +229 -0
  333. data/lib/peal/models/media_kind.rb +40 -0
  334. data/lib/peal/models/media_not_found_encoded.rb +201 -0
  335. data/lib/peal/models/media_page.rb +191 -0
  336. data/lib/peal/models/media_status.rb +105 -0
  337. data/lib/peal/models/media_status_any_of.rb +201 -0
  338. data/lib/peal/models/media_status_any_of1.rb +227 -0
  339. data/lib/peal/models/media_status_any_of2.rb +201 -0
  340. data/lib/peal/models/media_status_any_of3.rb +227 -0
  341. data/lib/peal/models/media_store_unavailable_encoded.rb +201 -0
  342. data/lib/peal/models/media_too_large_encoded.rb +317 -0
  343. data/lib/peal/models/media_usage.rb +207 -0
  344. data/lib/peal/models/membership.rb +295 -0
  345. data/lib/peal/models/metric_totals.rb +399 -0
  346. data/lib/peal/models/metrics_snapshot.rb +203 -0
  347. data/lib/peal/models/new_api_key.rb +277 -0
  348. data/lib/peal/models/new_invitation.rb +245 -0
  349. data/lib/peal/models/new_upload.rb +231 -0
  350. data/lib/peal/models/non_finite_number.rb +41 -0
  351. data/lib/peal/models/notice.rb +267 -0
  352. data/lib/peal/models/notice_channel.rb +225 -0
  353. data/lib/peal/models/notice_event.rb +106 -0
  354. data/lib/peal/models/notice_event_any_of.rb +251 -0
  355. data/lib/peal/models/notice_event_any_of1.rb +265 -0
  356. data/lib/peal/models/notice_event_any_of2.rb +239 -0
  357. data/lib/peal/models/notice_event_any_of3.rb +227 -0
  358. data/lib/peal/models/notice_event_any_of4.rb +253 -0
  359. data/lib/peal/models/notice_page.rb +191 -0
  360. data/lib/peal/models/notification_preferences.rb +203 -0
  361. data/lib/peal/models/notification_preferences_change.rb +169 -0
  362. data/lib/peal/models/notification_preferences_change_email.rb +187 -0
  363. data/lib/peal/models/notification_preferences_email.rb +255 -0
  364. data/lib/peal/models/paid_plan.rb +40 -0
  365. data/lib/peal/models/period_usage.rb +221 -0
  366. data/lib/peal/models/plan.rb +41 -0
  367. data/lib/peal/models/plan_allowances.rb +295 -0
  368. data/lib/peal/models/plan_limit.rb +42 -0
  369. data/lib/peal/models/plan_limit_reached_encoded.rb +271 -0
  370. data/lib/peal/models/plan_offer.rb +225 -0
  371. data/lib/peal/models/platform.rb +48 -0
  372. data/lib/peal/models/platform_unreachable_encoded.rb +201 -0
  373. data/lib/peal/models/post.rb +315 -0
  374. data/lib/peal/models/post_analytics.rb +205 -0
  375. data/lib/peal/models/post_content.rb +251 -0
  376. data/lib/peal/models/post_content_invalid_encoded.rb +229 -0
  377. data/lib/peal/models/post_draft.rb +216 -0
  378. data/lib/peal/models/post_metrics.rb +355 -0
  379. data/lib/peal/models/post_not_found_encoded.rb +201 -0
  380. data/lib/peal/models/post_outcome.rb +43 -0
  381. data/lib/peal/models/post_schedule.rb +203 -0
  382. data/lib/peal/models/post_status.rb +43 -0
  383. data/lib/peal/models/post_status_conflict_encoded.rb +227 -0
  384. data/lib/peal/models/post_target.rb +364 -0
  385. data/lib/peal/models/post_target_status.rb +44 -0
  386. data/lib/peal/models/posts_create422_response.rb +104 -0
  387. data/lib/peal/models/posts_get404_response.rb +103 -0
  388. data/lib/peal/models/posts_repost409_response.rb +103 -0
  389. data/lib/peal/models/posts_schedule422_response.rb +106 -0
  390. data/lib/peal/models/prepared_upload.rb +203 -0
  391. data/lib/peal/models/probe_state.rb +44 -0
  392. data/lib/peal/models/publication_attempt.rb +377 -0
  393. data/lib/peal/models/rejection_reason.rb +40 -0
  394. data/lib/peal/models/role.rb +43 -0
  395. data/lib/peal/models/schedule_in_past_encoded.rb +201 -0
  396. data/lib/peal/models/schedule_post.rb +240 -0
  397. data/lib/peal/models/signed_request.rb +255 -0
  398. data/lib/peal/models/subscription_status.rb +46 -0
  399. data/lib/peal/models/suggestion.rb +103 -0
  400. data/lib/peal/models/suggestion_any_of.rb +227 -0
  401. data/lib/peal/models/suggestion_any_of1.rb +229 -0
  402. data/lib/peal/models/suggestion_request.rb +212 -0
  403. data/lib/peal/models/target_confirmation.rb +103 -0
  404. data/lib/peal/models/target_confirmation_any_of.rb +228 -0
  405. data/lib/peal/models/target_confirmation_any_of1.rb +201 -0
  406. data/lib/peal/models/target_metrics.rb +319 -0
  407. data/lib/peal/models/target_options.rb +104 -0
  408. data/lib/peal/models/target_status_conflict_encoded.rb +227 -0
  409. data/lib/peal/models/text_override.rb +221 -0
  410. data/lib/peal/models/text_unit.rb +44 -0
  411. data/lib/peal/models/tik_tok_account.rb +203 -0
  412. data/lib/peal/models/tik_tok_account_posting.rb +103 -0
  413. data/lib/peal/models/tik_tok_account_posting_any_of.rb +227 -0
  414. data/lib/peal/models/tik_tok_account_posting_any_of1.rb +227 -0
  415. data/lib/peal/models/tik_tok_block.rb +41 -0
  416. data/lib/peal/models/tik_tok_creator.rb +357 -0
  417. data/lib/peal/models/tik_tok_options.rb +274 -0
  418. data/lib/peal/models/tik_tok_privacy_level.rb +42 -0
  419. data/lib/peal/models/too_many_invitations_encoded.rb +201 -0
  420. data/lib/peal/models/top_post.rb +337 -0
  421. data/lib/peal/models/translation_language.rb +48 -0
  422. data/lib/peal/models/unauthenticated_encoded.rb +201 -0
  423. data/lib/peal/models/unconfirmed_reason.rb +42 -0
  424. data/lib/peal/models/unknown_channels_encoded.rb +229 -0
  425. data/lib/peal/models/unknown_media_encoded.rb +229 -0
  426. data/lib/peal/models/unread_notices.rb +195 -0
  427. data/lib/peal/models/unsupported_media_type_encoded.rb +227 -0
  428. data/lib/peal/models/upload_incomplete_encoded.rb +201 -0
  429. data/lib/peal/models/upload_part.rb +265 -0
  430. data/lib/peal/models/upload_rejected_encoded.rb +227 -0
  431. data/lib/peal/models/upload_target.rb +103 -0
  432. data/lib/peal/models/upload_target_any_of.rb +253 -0
  433. data/lib/peal/models/upload_target_any_of1.rb +299 -0
  434. data/lib/peal/models/usage.rb +291 -0
  435. data/lib/peal/models/workspace_member.rb +281 -0
  436. data/lib/peal/models/workspace_not_found_encoded.rb +201 -0
  437. data/lib/peal/models/you_tube_options.rb +324 -0
  438. data/lib/peal/models/you_tube_privacy.rb +41 -0
  439. data/lib/peal/version.rb +15 -0
  440. data/lib/peal.rb +254 -0
  441. data/peal.gemspec +41 -0
  442. data/project.json +17 -0
  443. metadata +549 -0
@@ -0,0 +1,425 @@
1
+ =begin
2
+ #Peal API
3
+
4
+ #Schedule posts across social platforms, follow how they did, and manage a Peal workspace's channels, media and members.
5
+
6
+ The version of the OpenAPI document: 0.0.1
7
+ Contact: hello@peal.social
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.27.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Peal
17
+ class ChannelMetrics < ApiModelBase
18
+ attr_accessor :impressions
19
+
20
+ attr_accessor :likes
21
+
22
+ attr_accessor :posts
23
+
24
+ attr_accessor :quotes
25
+
26
+ attr_accessor :replies
27
+
28
+ attr_accessor :reposts
29
+
30
+ attr_accessor :channel_id
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ def self.attribute_map
34
+ {
35
+ :'impressions' => :'impressions',
36
+ :'likes' => :'likes',
37
+ :'posts' => :'posts',
38
+ :'quotes' => :'quotes',
39
+ :'replies' => :'replies',
40
+ :'reposts' => :'reposts',
41
+ :'channel_id' => :'channelId'
42
+ }
43
+ end
44
+
45
+ # Returns attribute mapping this model knows about
46
+ def self.acceptable_attribute_map
47
+ attribute_map
48
+ end
49
+
50
+ # Returns all the JSON keys this model knows about
51
+ def self.acceptable_attributes
52
+ acceptable_attribute_map.values
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.openapi_types
57
+ {
58
+ :'impressions' => :'Integer',
59
+ :'likes' => :'Integer',
60
+ :'posts' => :'Integer',
61
+ :'quotes' => :'Integer',
62
+ :'replies' => :'Integer',
63
+ :'reposts' => :'Integer',
64
+ :'channel_id' => :'String'
65
+ }
66
+ end
67
+
68
+ # List of attributes with nullable: true
69
+ def self.openapi_nullable
70
+ Set.new([
71
+ :'impressions',
72
+ :'quotes',
73
+ ])
74
+ end
75
+
76
+ # Returns attribute type mapping
77
+ def self.acceptable_openapi_types
78
+ openapi_types
79
+ end
80
+
81
+ # Returns the nullable attributes
82
+ def self.acceptable_openapi_nullable
83
+ openapi_nullable
84
+ end
85
+
86
+ # Initializes the object
87
+ # @param [Hash] attributes Model attributes in the form of hash
88
+ def initialize(attributes = {})
89
+ if (!attributes.is_a?(Hash))
90
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Peal::ChannelMetrics` initialize method"
91
+ end
92
+
93
+ # check to see if the attribute exists and convert string to symbol for hash key
94
+ acceptable_attribute_map = self.class.acceptable_attribute_map
95
+ attributes = attributes.each_with_object({}) { |(k, v), h|
96
+ if (!acceptable_attribute_map.key?(k.to_sym))
97
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Peal::ChannelMetrics`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
98
+ end
99
+ h[k.to_sym] = v
100
+ }
101
+
102
+ if attributes.key?(:'impressions')
103
+ self.impressions = attributes[:'impressions']
104
+ else
105
+ self.impressions = nil
106
+ end
107
+
108
+ if attributes.key?(:'likes')
109
+ self.likes = attributes[:'likes']
110
+ else
111
+ self.likes = nil
112
+ end
113
+
114
+ if attributes.key?(:'posts')
115
+ self.posts = attributes[:'posts']
116
+ else
117
+ self.posts = nil
118
+ end
119
+
120
+ if attributes.key?(:'quotes')
121
+ self.quotes = attributes[:'quotes']
122
+ else
123
+ self.quotes = nil
124
+ end
125
+
126
+ if attributes.key?(:'replies')
127
+ self.replies = attributes[:'replies']
128
+ else
129
+ self.replies = nil
130
+ end
131
+
132
+ if attributes.key?(:'reposts')
133
+ self.reposts = attributes[:'reposts']
134
+ else
135
+ self.reposts = nil
136
+ end
137
+
138
+ if attributes.key?(:'channel_id')
139
+ self.channel_id = attributes[:'channel_id']
140
+ else
141
+ self.channel_id = nil
142
+ end
143
+ end
144
+
145
+ # Show invalid properties with the reasons. Usually used together with valid?
146
+ # @return Array for valid properties with the reasons
147
+ def list_invalid_properties
148
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
149
+ invalid_properties = Array.new
150
+ if @impressions > 9007199254740991
151
+ invalid_properties.push('invalid value for "impressions", must be smaller than or equal to 9007199254740991.')
152
+ end
153
+
154
+ if @impressions < 0
155
+ invalid_properties.push('invalid value for "impressions", must be greater than or equal to 0.')
156
+ end
157
+
158
+ if @likes.nil?
159
+ invalid_properties.push('invalid value for "likes", likes cannot be nil.')
160
+ end
161
+
162
+ if @likes > 9007199254740991
163
+ invalid_properties.push('invalid value for "likes", must be smaller than or equal to 9007199254740991.')
164
+ end
165
+
166
+ if @likes < 0
167
+ invalid_properties.push('invalid value for "likes", must be greater than or equal to 0.')
168
+ end
169
+
170
+ if @posts.nil?
171
+ invalid_properties.push('invalid value for "posts", posts cannot be nil.')
172
+ end
173
+
174
+ if @posts > 9007199254740991
175
+ invalid_properties.push('invalid value for "posts", must be smaller than or equal to 9007199254740991.')
176
+ end
177
+
178
+ if @posts < 0
179
+ invalid_properties.push('invalid value for "posts", must be greater than or equal to 0.')
180
+ end
181
+
182
+ if @quotes > 9007199254740991
183
+ invalid_properties.push('invalid value for "quotes", must be smaller than or equal to 9007199254740991.')
184
+ end
185
+
186
+ if @quotes < 0
187
+ invalid_properties.push('invalid value for "quotes", must be greater than or equal to 0.')
188
+ end
189
+
190
+ if @replies.nil?
191
+ invalid_properties.push('invalid value for "replies", replies cannot be nil.')
192
+ end
193
+
194
+ if @replies > 9007199254740991
195
+ invalid_properties.push('invalid value for "replies", must be smaller than or equal to 9007199254740991.')
196
+ end
197
+
198
+ if @replies < 0
199
+ invalid_properties.push('invalid value for "replies", must be greater than or equal to 0.')
200
+ end
201
+
202
+ if @reposts.nil?
203
+ invalid_properties.push('invalid value for "reposts", reposts cannot be nil.')
204
+ end
205
+
206
+ if @reposts > 9007199254740991
207
+ invalid_properties.push('invalid value for "reposts", must be smaller than or equal to 9007199254740991.')
208
+ end
209
+
210
+ if @reposts < 0
211
+ invalid_properties.push('invalid value for "reposts", must be greater than or equal to 0.')
212
+ end
213
+
214
+ if @channel_id.nil?
215
+ invalid_properties.push('invalid value for "channel_id", channel_id cannot be nil.')
216
+ end
217
+
218
+ invalid_properties
219
+ end
220
+
221
+ # Check to see if the all the properties in the model are valid
222
+ # @return true if the model is valid
223
+ def valid?
224
+ warn '[DEPRECATED] the `valid?` method is obsolete'
225
+ return false if @impressions > 9007199254740991
226
+ return false if @impressions < 0
227
+ return false if @likes.nil?
228
+ return false if @likes > 9007199254740991
229
+ return false if @likes < 0
230
+ return false if @posts.nil?
231
+ return false if @posts > 9007199254740991
232
+ return false if @posts < 0
233
+ return false if @quotes > 9007199254740991
234
+ return false if @quotes < 0
235
+ return false if @replies.nil?
236
+ return false if @replies > 9007199254740991
237
+ return false if @replies < 0
238
+ return false if @reposts.nil?
239
+ return false if @reposts > 9007199254740991
240
+ return false if @reposts < 0
241
+ return false if @channel_id.nil?
242
+ true
243
+ end
244
+
245
+ # Custom attribute writer method with validation
246
+ # @param [Object] impressions Value to be assigned
247
+ def impressions=(impressions)
248
+ if !impressions.nil? && impressions > 9007199254740991
249
+ fail ArgumentError, 'invalid value for "impressions", must be smaller than or equal to 9007199254740991.'
250
+ end
251
+
252
+ if !impressions.nil? && impressions < 0
253
+ fail ArgumentError, 'invalid value for "impressions", must be greater than or equal to 0.'
254
+ end
255
+
256
+ @impressions = impressions
257
+ end
258
+
259
+ # Custom attribute writer method with validation
260
+ # @param [Object] likes Value to be assigned
261
+ def likes=(likes)
262
+ if likes.nil?
263
+ fail ArgumentError, 'likes cannot be nil'
264
+ end
265
+
266
+ if likes > 9007199254740991
267
+ fail ArgumentError, 'invalid value for "likes", must be smaller than or equal to 9007199254740991.'
268
+ end
269
+
270
+ if likes < 0
271
+ fail ArgumentError, 'invalid value for "likes", must be greater than or equal to 0.'
272
+ end
273
+
274
+ @likes = likes
275
+ end
276
+
277
+ # Custom attribute writer method with validation
278
+ # @param [Object] posts Value to be assigned
279
+ def posts=(posts)
280
+ if posts.nil?
281
+ fail ArgumentError, 'posts cannot be nil'
282
+ end
283
+
284
+ if posts > 9007199254740991
285
+ fail ArgumentError, 'invalid value for "posts", must be smaller than or equal to 9007199254740991.'
286
+ end
287
+
288
+ if posts < 0
289
+ fail ArgumentError, 'invalid value for "posts", must be greater than or equal to 0.'
290
+ end
291
+
292
+ @posts = posts
293
+ end
294
+
295
+ # Custom attribute writer method with validation
296
+ # @param [Object] quotes Value to be assigned
297
+ def quotes=(quotes)
298
+ if !quotes.nil? && quotes > 9007199254740991
299
+ fail ArgumentError, 'invalid value for "quotes", must be smaller than or equal to 9007199254740991.'
300
+ end
301
+
302
+ if !quotes.nil? && quotes < 0
303
+ fail ArgumentError, 'invalid value for "quotes", must be greater than or equal to 0.'
304
+ end
305
+
306
+ @quotes = quotes
307
+ end
308
+
309
+ # Custom attribute writer method with validation
310
+ # @param [Object] replies Value to be assigned
311
+ def replies=(replies)
312
+ if replies.nil?
313
+ fail ArgumentError, 'replies cannot be nil'
314
+ end
315
+
316
+ if replies > 9007199254740991
317
+ fail ArgumentError, 'invalid value for "replies", must be smaller than or equal to 9007199254740991.'
318
+ end
319
+
320
+ if replies < 0
321
+ fail ArgumentError, 'invalid value for "replies", must be greater than or equal to 0.'
322
+ end
323
+
324
+ @replies = replies
325
+ end
326
+
327
+ # Custom attribute writer method with validation
328
+ # @param [Object] reposts Value to be assigned
329
+ def reposts=(reposts)
330
+ if reposts.nil?
331
+ fail ArgumentError, 'reposts cannot be nil'
332
+ end
333
+
334
+ if reposts > 9007199254740991
335
+ fail ArgumentError, 'invalid value for "reposts", must be smaller than or equal to 9007199254740991.'
336
+ end
337
+
338
+ if reposts < 0
339
+ fail ArgumentError, 'invalid value for "reposts", must be greater than or equal to 0.'
340
+ end
341
+
342
+ @reposts = reposts
343
+ end
344
+
345
+ # Custom attribute writer method with validation
346
+ # @param [Object] channel_id Value to be assigned
347
+ def channel_id=(channel_id)
348
+ if channel_id.nil?
349
+ fail ArgumentError, 'channel_id cannot be nil'
350
+ end
351
+
352
+ @channel_id = channel_id
353
+ end
354
+
355
+ # Checks equality by comparing each attribute.
356
+ # @param [Object] Object to be compared
357
+ def ==(o)
358
+ return true if self.equal?(o)
359
+ self.class == o.class &&
360
+ impressions == o.impressions &&
361
+ likes == o.likes &&
362
+ posts == o.posts &&
363
+ quotes == o.quotes &&
364
+ replies == o.replies &&
365
+ reposts == o.reposts &&
366
+ channel_id == o.channel_id
367
+ end
368
+
369
+ # @see the `==` method
370
+ # @param [Object] Object to be compared
371
+ def eql?(o)
372
+ self == o
373
+ end
374
+
375
+ # Calculates hash code according to all attributes.
376
+ # @return [Integer] Hash code
377
+ def hash
378
+ [impressions, likes, posts, quotes, replies, reposts, channel_id].hash
379
+ end
380
+
381
+ # Builds the object from hash
382
+ # @param [Hash] attributes Model attributes in the form of hash
383
+ # @return [Object] Returns the model itself
384
+ def self.build_from_hash(attributes)
385
+ return nil unless attributes.is_a?(Hash)
386
+ attributes = attributes.transform_keys(&:to_sym)
387
+ # include attributes inherited from allOf parents (the nearest declaration wins)
388
+ map = acceptable_attribute_map
389
+ transformed_hash = {}
390
+ acceptable_openapi_types.each_pair do |key, type|
391
+ if attributes.key?(map[key]) && attributes[map[key]].nil?
392
+ transformed_hash["#{key}"] = nil
393
+ elsif type =~ /\AArray<(.*)>/i
394
+ # check to ensure the input is an array given that the attribute
395
+ # is documented as an array but the input is not
396
+ if attributes[map[key]].is_a?(Array)
397
+ transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
398
+ end
399
+ elsif !attributes[map[key]].nil?
400
+ transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
401
+ end
402
+ end
403
+ new(transformed_hash)
404
+ end
405
+
406
+ # Returns the object in the form of hash
407
+ # @return [Hash] Returns the object in the form of hash
408
+ def to_hash
409
+ hash = {}
410
+ # include attributes inherited from allOf parents (the nearest declaration wins)
411
+ self.class.acceptable_attribute_map.each_pair do |attr, param|
412
+ value = self.send(attr)
413
+ if value.nil?
414
+ is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
415
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
416
+ end
417
+
418
+ hash[param] = _to_hash(value)
419
+ end
420
+ hash
421
+ end
422
+
423
+ end
424
+
425
+ end
@@ -0,0 +1,201 @@
1
+ =begin
2
+ #Peal API
3
+
4
+ #Schedule posts across social platforms, follow how they did, and manage a Peal workspace's channels, media and members.
5
+
6
+ The version of the OpenAPI document: 0.0.1
7
+ Contact: hello@peal.social
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.27.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Peal
17
+ class ChannelNotFoundEncoded < ApiModelBase
18
+ attr_accessor :_tag
19
+
20
+ class EnumAttributeValidator
21
+ attr_reader :datatype
22
+ attr_reader :allowable_values
23
+
24
+ def initialize(datatype, allowable_values)
25
+ @allowable_values = allowable_values.map do |value|
26
+ case datatype.to_s
27
+ when /Integer/i
28
+ value.to_i
29
+ when /Float/i
30
+ value.to_f
31
+ else
32
+ value
33
+ end
34
+ end
35
+ end
36
+
37
+ def valid?(value)
38
+ !value || allowable_values.include?(value)
39
+ end
40
+ end
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ def self.attribute_map
44
+ {
45
+ :'_tag' => :'_tag'
46
+ }
47
+ end
48
+
49
+ # Returns attribute mapping this model knows about
50
+ def self.acceptable_attribute_map
51
+ attribute_map
52
+ end
53
+
54
+ # Returns all the JSON keys this model knows about
55
+ def self.acceptable_attributes
56
+ acceptable_attribute_map.values
57
+ end
58
+
59
+ # Attribute type mapping.
60
+ def self.openapi_types
61
+ {
62
+ :'_tag' => :'String'
63
+ }
64
+ end
65
+
66
+ # List of attributes with nullable: true
67
+ def self.openapi_nullable
68
+ Set.new([
69
+ ])
70
+ end
71
+
72
+ # Returns attribute type mapping
73
+ def self.acceptable_openapi_types
74
+ openapi_types
75
+ end
76
+
77
+ # Returns the nullable attributes
78
+ def self.acceptable_openapi_nullable
79
+ openapi_nullable
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Peal::ChannelNotFoundEncoded` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ acceptable_attribute_map = self.class.acceptable_attribute_map
91
+ attributes = attributes.each_with_object({}) { |(k, v), h|
92
+ if (!acceptable_attribute_map.key?(k.to_sym))
93
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Peal::ChannelNotFoundEncoded`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
94
+ end
95
+ h[k.to_sym] = v
96
+ }
97
+
98
+ if attributes.key?(:'_tag')
99
+ self._tag = attributes[:'_tag']
100
+ else
101
+ self._tag = nil
102
+ end
103
+ end
104
+
105
+ # Show invalid properties with the reasons. Usually used together with valid?
106
+ # @return Array for valid properties with the reasons
107
+ def list_invalid_properties
108
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
109
+ invalid_properties = Array.new
110
+ if @_tag.nil?
111
+ invalid_properties.push('invalid value for "_tag", _tag cannot be nil.')
112
+ end
113
+
114
+ invalid_properties
115
+ end
116
+
117
+ # Check to see if the all the properties in the model are valid
118
+ # @return true if the model is valid
119
+ def valid?
120
+ warn '[DEPRECATED] the `valid?` method is obsolete'
121
+ return false if @_tag.nil?
122
+ _tag_validator = EnumAttributeValidator.new('String', ["ChannelNotFound"])
123
+ return false unless _tag_validator.valid?(@_tag)
124
+ true
125
+ end
126
+
127
+ # Custom attribute writer method checking allowed values (enum).
128
+ # @param [Object] _tag Object to be assigned
129
+ def _tag=(_tag)
130
+ validator = EnumAttributeValidator.new('String', ["ChannelNotFound"])
131
+ unless validator.valid?(_tag)
132
+ fail ArgumentError, "invalid value for \"_tag\", must be one of #{validator.allowable_values}."
133
+ end
134
+ @_tag = _tag
135
+ end
136
+
137
+ # Checks equality by comparing each attribute.
138
+ # @param [Object] Object to be compared
139
+ def ==(o)
140
+ return true if self.equal?(o)
141
+ self.class == o.class &&
142
+ _tag == o._tag
143
+ end
144
+
145
+ # @see the `==` method
146
+ # @param [Object] Object to be compared
147
+ def eql?(o)
148
+ self == o
149
+ end
150
+
151
+ # Calculates hash code according to all attributes.
152
+ # @return [Integer] Hash code
153
+ def hash
154
+ [_tag].hash
155
+ end
156
+
157
+ # Builds the object from hash
158
+ # @param [Hash] attributes Model attributes in the form of hash
159
+ # @return [Object] Returns the model itself
160
+ def self.build_from_hash(attributes)
161
+ return nil unless attributes.is_a?(Hash)
162
+ attributes = attributes.transform_keys(&:to_sym)
163
+ # include attributes inherited from allOf parents (the nearest declaration wins)
164
+ map = acceptable_attribute_map
165
+ transformed_hash = {}
166
+ acceptable_openapi_types.each_pair do |key, type|
167
+ if attributes.key?(map[key]) && attributes[map[key]].nil?
168
+ transformed_hash["#{key}"] = nil
169
+ elsif type =~ /\AArray<(.*)>/i
170
+ # check to ensure the input is an array given that the attribute
171
+ # is documented as an array but the input is not
172
+ if attributes[map[key]].is_a?(Array)
173
+ transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
174
+ end
175
+ elsif !attributes[map[key]].nil?
176
+ transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
177
+ end
178
+ end
179
+ new(transformed_hash)
180
+ end
181
+
182
+ # Returns the object in the form of hash
183
+ # @return [Hash] Returns the object in the form of hash
184
+ def to_hash
185
+ hash = {}
186
+ # include attributes inherited from allOf parents (the nearest declaration wins)
187
+ self.class.acceptable_attribute_map.each_pair do |attr, param|
188
+ value = self.send(attr)
189
+ if value.nil?
190
+ is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
191
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
192
+ end
193
+
194
+ hash[param] = _to_hash(value)
195
+ end
196
+ hash
197
+ end
198
+
199
+ end
200
+
201
+ end