pinterest_sdk 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (488) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +70 -0
  4. data/README.md +319 -0
  5. data/Rakefile +10 -0
  6. data/bin/bundle +114 -0
  7. data/bin/byebug +27 -0
  8. data/bin/coderay +27 -0
  9. data/bin/htmldiff +27 -0
  10. data/bin/ldiff +27 -0
  11. data/bin/pry +27 -0
  12. data/bin/rake +27 -0
  13. data/bin/rspec +27 -0
  14. data/bin/rubocop +27 -0
  15. data/bin/ruby-parse +27 -0
  16. data/bin/ruby-rewrite +27 -0
  17. data/docs/Account.md +24 -0
  18. data/docs/ActionType.md +15 -0
  19. data/docs/AdAccount.md +26 -0
  20. data/docs/AdAccountOwner.md +18 -0
  21. data/docs/AdAccountsApi.md +929 -0
  22. data/docs/AdGroupResponse.md +62 -0
  23. data/docs/AdGroupResponseAllOf.md +48 -0
  24. data/docs/AdGroupResponseAllOf1.md +30 -0
  25. data/docs/AdGroupSummaryStatus.md +15 -0
  26. data/docs/AdResponse.md +70 -0
  27. data/docs/AdResponseAllOf.md +48 -0
  28. data/docs/AdResponseAllOf1.md +38 -0
  29. data/docs/AdsAnalyticsCreateAsyncRequest.md +62 -0
  30. data/docs/AdsAnalyticsCreateAsyncRequestAllOf.md +32 -0
  31. data/docs/AdsAnalyticsCreateAsyncRequestAllOf1.md +22 -0
  32. data/docs/AdsAnalyticsCreateAsyncResponse.md +22 -0
  33. data/docs/AdsAnalyticsFilterColumn.md +15 -0
  34. data/docs/AdsAnalyticsFilterOperator.md +15 -0
  35. data/docs/AdsAnalyticsGetAsyncResponse.md +22 -0
  36. data/docs/AdsAnalyticsMetricsFilter.md +22 -0
  37. data/docs/AdsAnalyticsTargetingType.md +15 -0
  38. data/docs/AnalyticsMetricsResponse.md +20 -0
  39. data/docs/AnalyticsMetricsResponseDailyMetrics.md +22 -0
  40. data/docs/AvailabilityFilter.md +18 -0
  41. data/docs/BatchOperation.md +15 -0
  42. data/docs/BatchOperationStatus.md +15 -0
  43. data/docs/Board.md +26 -0
  44. data/docs/BoardOwner.md +18 -0
  45. data/docs/BoardSection.md +20 -0
  46. data/docs/BoardUpdate.md +22 -0
  47. data/docs/BoardsApi.md +811 -0
  48. data/docs/BrandFilter.md +18 -0
  49. data/docs/CampaignCommon.md +34 -0
  50. data/docs/CampaignResponse.md +44 -0
  51. data/docs/CampaignResponseAllOf.md +18 -0
  52. data/docs/CampaignResponseAllOf1.md +24 -0
  53. data/docs/CampaignSummaryStatus.md +15 -0
  54. data/docs/CatalogsApi.md +939 -0
  55. data/docs/CatalogsDbItem.md +22 -0
  56. data/docs/CatalogsFeed.md +42 -0
  57. data/docs/CatalogsFeedCredentials.md +20 -0
  58. data/docs/CatalogsFeedIngestionDetails.md +20 -0
  59. data/docs/CatalogsFeedIngestionErrors.md +26 -0
  60. data/docs/CatalogsFeedIngestionInfo.md +22 -0
  61. data/docs/CatalogsFeedProcessingResult.md +30 -0
  62. data/docs/CatalogsFeedProcessingResultFields.md +24 -0
  63. data/docs/CatalogsFeedProcessingSchedule.md +20 -0
  64. data/docs/CatalogsFeedProcessingStatus.md +15 -0
  65. data/docs/CatalogsFeedProductCounts.md +18 -0
  66. data/docs/CatalogsFeedValidationDetails.md +20 -0
  67. data/docs/CatalogsFeedValidationErrors.md +84 -0
  68. data/docs/CatalogsFeedValidationWarnings.md +106 -0
  69. data/docs/CatalogsFeedsCreateRequest.md +34 -0
  70. data/docs/CatalogsFeedsUpdateRequest.md +32 -0
  71. data/docs/CatalogsFormat.md +15 -0
  72. data/docs/CatalogsItems.md +18 -0
  73. data/docs/CatalogsItemsBatch.md +26 -0
  74. data/docs/CatalogsItemsBatchRequest.md +24 -0
  75. data/docs/CatalogsProductGroup.md +34 -0
  76. data/docs/CatalogsProductGroupCreateRequest.md +24 -0
  77. data/docs/CatalogsProductGroupCurrencyCriteria.md +20 -0
  78. data/docs/CatalogsProductGroupFilterKeys.md +68 -0
  79. data/docs/CatalogsProductGroupFilters.md +20 -0
  80. data/docs/CatalogsProductGroupFiltersAllOf.md +18 -0
  81. data/docs/CatalogsProductGroupFiltersAnyOf.md +18 -0
  82. data/docs/CatalogsProductGroupMultipleStringCriteria.md +20 -0
  83. data/docs/CatalogsProductGroupMultipleStringListCriteria.md +20 -0
  84. data/docs/CatalogsProductGroupPricingCriteria.md +22 -0
  85. data/docs/CatalogsProductGroupStatus.md +15 -0
  86. data/docs/CatalogsProductGroupType.md +15 -0
  87. data/docs/CatalogsProductGroupUpdateRequest.md +24 -0
  88. data/docs/CatalogsStatus.md +15 -0
  89. data/docs/ConditionFilter.md +18 -0
  90. data/docs/ConversionAttributionWindowDays.md +15 -0
  91. data/docs/ConversionReportAttributionType.md +15 -0
  92. data/docs/ConversionReportTimeType.md +15 -0
  93. data/docs/Country.md +15 -0
  94. data/docs/Currency.md +15 -0
  95. data/docs/CurrencyFilter.md +18 -0
  96. data/docs/CustomLabel0Filter.md +18 -0
  97. data/docs/CustomLabel1Filter.md +18 -0
  98. data/docs/CustomLabel2Filter.md +18 -0
  99. data/docs/CustomLabel3Filter.md +18 -0
  100. data/docs/CustomLabel4Filter.md +18 -0
  101. data/docs/DataOutputFormat.md +15 -0
  102. data/docs/EntityStatus.md +15 -0
  103. data/docs/Error.md +20 -0
  104. data/docs/FeedFields.md +36 -0
  105. data/docs/GenderFilter.md +18 -0
  106. data/docs/GoogleProductCategory0Filter.md +18 -0
  107. data/docs/GoogleProductCategory1Filter.md +18 -0
  108. data/docs/GoogleProductCategory2Filter.md +18 -0
  109. data/docs/GoogleProductCategory3Filter.md +18 -0
  110. data/docs/GoogleProductCategory4Filter.md +18 -0
  111. data/docs/GoogleProductCategory5Filter.md +18 -0
  112. data/docs/GoogleProductCategory6Filter.md +18 -0
  113. data/docs/Granularity.md +15 -0
  114. data/docs/ImageDetails.md +22 -0
  115. data/docs/ItemAttributes.md +104 -0
  116. data/docs/ItemBatchRecord.md +20 -0
  117. data/docs/ItemGroupIdFilter.md +18 -0
  118. data/docs/ItemIdFilter.md +18 -0
  119. data/docs/ItemProcessingRecord.md +24 -0
  120. data/docs/ItemProcessingStatus.md +15 -0
  121. data/docs/ItemValidationEvent.md +22 -0
  122. data/docs/Language.md +15 -0
  123. data/docs/MaxPriceFilter.md +18 -0
  124. data/docs/MediaApi.md +221 -0
  125. data/docs/MediaUpload.md +24 -0
  126. data/docs/MediaUploadAllOf.md +24 -0
  127. data/docs/MediaUploadAllOfUploadParameters.md +32 -0
  128. data/docs/MediaUploadDetails.md +22 -0
  129. data/docs/MediaUploadRequest.md +18 -0
  130. data/docs/MediaUploadStatus.md +15 -0
  131. data/docs/MediaUploadType.md +15 -0
  132. data/docs/MetricsReportingLevel.md +15 -0
  133. data/docs/MinPriceFilter.md +18 -0
  134. data/docs/NonNullableCatalogsCurrency.md +15 -0
  135. data/docs/NullableCurrency.md +15 -0
  136. data/docs/OauthAccessTokenRequest.md +18 -0
  137. data/docs/OauthAccessTokenRequestCode.md +20 -0
  138. data/docs/OauthAccessTokenRequestCodeAllOf.md +20 -0
  139. data/docs/OauthAccessTokenRequestRefresh.md +20 -0
  140. data/docs/OauthAccessTokenRequestRefreshAllOf.md +20 -0
  141. data/docs/OauthAccessTokenResponse.md +26 -0
  142. data/docs/OauthAccessTokenResponseCode.md +20 -0
  143. data/docs/OauthAccessTokenResponseCodeAllOf.md +20 -0
  144. data/docs/OauthAccessTokenResponseRefresh.md +15 -0
  145. data/docs/OauthApi.md +72 -0
  146. data/docs/ObjectiveType.md +15 -0
  147. data/docs/PacingDeliveryType.md +15 -0
  148. data/docs/Paginated.md +20 -0
  149. data/docs/Pin.md +38 -0
  150. data/docs/PinMedia.md +18 -0
  151. data/docs/PinMediaSource.md +81 -0
  152. data/docs/PinMediaSourceImageBase64.md +22 -0
  153. data/docs/PinMediaSourceImageURL.md +20 -0
  154. data/docs/PinMediaSourceVideoID.md +22 -0
  155. data/docs/PinMediaWithImage.md +18 -0
  156. data/docs/PinMediaWithImageAllOf.md +18 -0
  157. data/docs/PinPromotionSummaryStatus.md +15 -0
  158. data/docs/PinsApi.md +304 -0
  159. data/docs/PlacementGroupType.md +15 -0
  160. data/docs/ProductAvailabilityType.md +15 -0
  161. data/docs/ProductGroupSummaryStatus.md +15 -0
  162. data/docs/ProductType0Filter.md +18 -0
  163. data/docs/ProductType1Filter.md +18 -0
  164. data/docs/ProductType2Filter.md +18 -0
  165. data/docs/ProductType3Filter.md +18 -0
  166. data/docs/ProductType4Filter.md +18 -0
  167. data/docs/ReportingColumnAsync.md +15 -0
  168. data/docs/TargetingTypeFilter.md +18 -0
  169. data/docs/TrackingUrls.md +26 -0
  170. data/docs/UserAccountApi.md +165 -0
  171. data/git_push.sh +57 -0
  172. data/lib/pinterest_sdk/api/ad_accounts_api.rb +1287 -0
  173. data/lib/pinterest_sdk/api/boards_api.rb +888 -0
  174. data/lib/pinterest_sdk/api/catalogs_api.rb +965 -0
  175. data/lib/pinterest_sdk/api/media_api.rb +229 -0
  176. data/lib/pinterest_sdk/api/oauth_api.rb +96 -0
  177. data/lib/pinterest_sdk/api/pins_api.rb +330 -0
  178. data/lib/pinterest_sdk/api/user_account_api.rb +201 -0
  179. data/lib/pinterest_sdk/api_client.rb +390 -0
  180. data/lib/pinterest_sdk/api_error.rb +57 -0
  181. data/lib/pinterest_sdk/configuration.rb +285 -0
  182. data/lib/pinterest_sdk/models/account.rb +280 -0
  183. data/lib/pinterest_sdk/models/action_type.rb +39 -0
  184. data/lib/pinterest_sdk/models/ad_account.rb +254 -0
  185. data/lib/pinterest_sdk/models/ad_account_owner.rb +219 -0
  186. data/lib/pinterest_sdk/models/ad_group_response.rb +555 -0
  187. data/lib/pinterest_sdk/models/ad_group_response_all_of.rb +427 -0
  188. data/lib/pinterest_sdk/models/ad_group_response_all_of1.rb +329 -0
  189. data/lib/pinterest_sdk/models/ad_group_summary_status.rb +41 -0
  190. data/lib/pinterest_sdk/models/ad_response.rb +640 -0
  191. data/lib/pinterest_sdk/models/ad_response_all_of.rb +455 -0
  192. data/lib/pinterest_sdk/models/ad_response_all_of1.rb +409 -0
  193. data/lib/pinterest_sdk/models/ads_analytics_create_async_request.rb +831 -0
  194. data/lib/pinterest_sdk/models/ads_analytics_create_async_request_all_of.rb +356 -0
  195. data/lib/pinterest_sdk/models/ads_analytics_create_async_request_all_of1.rb +253 -0
  196. data/lib/pinterest_sdk/models/ads_analytics_create_async_response.rb +237 -0
  197. data/lib/pinterest_sdk/models/ads_analytics_filter_column.rb +37 -0
  198. data/lib/pinterest_sdk/models/ads_analytics_filter_operator.rb +37 -0
  199. data/lib/pinterest_sdk/models/ads_analytics_get_async_response.rb +238 -0
  200. data/lib/pinterest_sdk/models/ads_analytics_metrics_filter.rb +254 -0
  201. data/lib/pinterest_sdk/models/ads_analytics_targeting_type.rb +48 -0
  202. data/lib/pinterest_sdk/models/analytics_metrics_response.rb +233 -0
  203. data/lib/pinterest_sdk/models/analytics_metrics_response_daily_metrics.rb +275 -0
  204. data/lib/pinterest_sdk/models/availability_filter.rb +223 -0
  205. data/lib/pinterest_sdk/models/batch_operation.rb +38 -0
  206. data/lib/pinterest_sdk/models/batch_operation_status.rb +37 -0
  207. data/lib/pinterest_sdk/models/board.rb +301 -0
  208. data/lib/pinterest_sdk/models/board_owner.rb +218 -0
  209. data/lib/pinterest_sdk/models/board_section.rb +252 -0
  210. data/lib/pinterest_sdk/models/board_update.rb +272 -0
  211. data/lib/pinterest_sdk/models/brand_filter.rb +223 -0
  212. data/lib/pinterest_sdk/models/campaign_common.rb +352 -0
  213. data/lib/pinterest_sdk/models/campaign_response.rb +435 -0
  214. data/lib/pinterest_sdk/models/campaign_response_all_of.rb +245 -0
  215. data/lib/pinterest_sdk/models/campaign_response_all_of1.rb +248 -0
  216. data/lib/pinterest_sdk/models/campaign_summary_status.rb +41 -0
  217. data/lib/pinterest_sdk/models/catalogs_db_item.rb +236 -0
  218. data/lib/pinterest_sdk/models/catalogs_feed.rb +368 -0
  219. data/lib/pinterest_sdk/models/catalogs_feed_credentials.rb +240 -0
  220. data/lib/pinterest_sdk/models/catalogs_feed_ingestion_details.rb +237 -0
  221. data/lib/pinterest_sdk/models/catalogs_feed_ingestion_errors.rb +288 -0
  222. data/lib/pinterest_sdk/models/catalogs_feed_ingestion_info.rb +236 -0
  223. data/lib/pinterest_sdk/models/catalogs_feed_processing_result.rb +296 -0
  224. data/lib/pinterest_sdk/models/catalogs_feed_processing_result_fields.rb +261 -0
  225. data/lib/pinterest_sdk/models/catalogs_feed_processing_schedule.rb +291 -0
  226. data/lib/pinterest_sdk/models/catalogs_feed_processing_status.rb +43 -0
  227. data/lib/pinterest_sdk/models/catalogs_feed_product_counts.rb +220 -0
  228. data/lib/pinterest_sdk/models/catalogs_feed_validation_details.rb +237 -0
  229. data/lib/pinterest_sdk/models/catalogs_feed_validation_errors.rb +515 -0
  230. data/lib/pinterest_sdk/models/catalogs_feed_validation_warnings.rb +614 -0
  231. data/lib/pinterest_sdk/models/catalogs_feeds_create_request.rb +313 -0
  232. data/lib/pinterest_sdk/models/catalogs_feeds_update_request.rb +288 -0
  233. data/lib/pinterest_sdk/models/catalogs_format.rb +38 -0
  234. data/lib/pinterest_sdk/models/catalogs_items.rb +222 -0
  235. data/lib/pinterest_sdk/models/catalogs_items_batch.rb +262 -0
  236. data/lib/pinterest_sdk/models/catalogs_items_batch_request.rb +249 -0
  237. data/lib/pinterest_sdk/models/catalogs_product_group.rb +345 -0
  238. data/lib/pinterest_sdk/models/catalogs_product_group_create_request.rb +284 -0
  239. data/lib/pinterest_sdk/models/catalogs_product_group_currency_criteria.rb +237 -0
  240. data/lib/pinterest_sdk/models/catalogs_product_group_filter_keys.rb +617 -0
  241. data/lib/pinterest_sdk/models/catalogs_product_group_filters.rb +252 -0
  242. data/lib/pinterest_sdk/models/catalogs_product_group_filters_all_of.rb +220 -0
  243. data/lib/pinterest_sdk/models/catalogs_product_group_filters_any_of.rb +220 -0
  244. data/lib/pinterest_sdk/models/catalogs_product_group_multiple_string_criteria.rb +239 -0
  245. data/lib/pinterest_sdk/models/catalogs_product_group_multiple_string_list_criteria.rb +239 -0
  246. data/lib/pinterest_sdk/models/catalogs_product_group_pricing_criteria.rb +251 -0
  247. data/lib/pinterest_sdk/models/catalogs_product_group_status.rb +37 -0
  248. data/lib/pinterest_sdk/models/catalogs_product_group_type.rb +42 -0
  249. data/lib/pinterest_sdk/models/catalogs_product_group_update_request.rb +284 -0
  250. data/lib/pinterest_sdk/models/catalogs_status.rb +37 -0
  251. data/lib/pinterest_sdk/models/condition_filter.rb +223 -0
  252. data/lib/pinterest_sdk/models/conversion_attribution_window_days.rb +39 -0
  253. data/lib/pinterest_sdk/models/conversion_report_attribution_type.rb +37 -0
  254. data/lib/pinterest_sdk/models/conversion_report_time_type.rb +37 -0
  255. data/lib/pinterest_sdk/models/country.rb +282 -0
  256. data/lib/pinterest_sdk/models/currency.rb +60 -0
  257. data/lib/pinterest_sdk/models/currency_filter.rb +223 -0
  258. data/lib/pinterest_sdk/models/custom_label0_filter.rb +223 -0
  259. data/lib/pinterest_sdk/models/custom_label1_filter.rb +223 -0
  260. data/lib/pinterest_sdk/models/custom_label2_filter.rb +223 -0
  261. data/lib/pinterest_sdk/models/custom_label3_filter.rb +223 -0
  262. data/lib/pinterest_sdk/models/custom_label4_filter.rb +223 -0
  263. data/lib/pinterest_sdk/models/data_output_format.rb +37 -0
  264. data/lib/pinterest_sdk/models/entity_status.rb +38 -0
  265. data/lib/pinterest_sdk/models/error.rb +237 -0
  266. data/lib/pinterest_sdk/models/feed_fields.rb +332 -0
  267. data/lib/pinterest_sdk/models/gender_filter.rb +223 -0
  268. data/lib/pinterest_sdk/models/google_product_category0_filter.rb +223 -0
  269. data/lib/pinterest_sdk/models/google_product_category1_filter.rb +223 -0
  270. data/lib/pinterest_sdk/models/google_product_category2_filter.rb +223 -0
  271. data/lib/pinterest_sdk/models/google_product_category3_filter.rb +223 -0
  272. data/lib/pinterest_sdk/models/google_product_category4_filter.rb +223 -0
  273. data/lib/pinterest_sdk/models/google_product_category5_filter.rb +223 -0
  274. data/lib/pinterest_sdk/models/google_product_category6_filter.rb +223 -0
  275. data/lib/pinterest_sdk/models/granularity.rb +40 -0
  276. data/lib/pinterest_sdk/models/image_details.rb +281 -0
  277. data/lib/pinterest_sdk/models/item_attributes.rb +833 -0
  278. data/lib/pinterest_sdk/models/item_batch_record.rb +229 -0
  279. data/lib/pinterest_sdk/models/item_group_id_filter.rb +223 -0
  280. data/lib/pinterest_sdk/models/item_id_filter.rb +223 -0
  281. data/lib/pinterest_sdk/models/item_processing_record.rb +253 -0
  282. data/lib/pinterest_sdk/models/item_processing_status.rb +38 -0
  283. data/lib/pinterest_sdk/models/item_validation_event.rb +240 -0
  284. data/lib/pinterest_sdk/models/language.rb +96 -0
  285. data/lib/pinterest_sdk/models/max_price_filter.rb +223 -0
  286. data/lib/pinterest_sdk/models/media_upload.rb +255 -0
  287. data/lib/pinterest_sdk/models/media_upload_all_of.rb +247 -0
  288. data/lib/pinterest_sdk/models/media_upload_all_of_upload_parameters.rb +282 -0
  289. data/lib/pinterest_sdk/models/media_upload_details.rb +254 -0
  290. data/lib/pinterest_sdk/models/media_upload_request.rb +224 -0
  291. data/lib/pinterest_sdk/models/media_upload_status.rb +39 -0
  292. data/lib/pinterest_sdk/models/media_upload_type.rb +36 -0
  293. data/lib/pinterest_sdk/models/metrics_reporting_level.rb +47 -0
  294. data/lib/pinterest_sdk/models/min_price_filter.rb +223 -0
  295. data/lib/pinterest_sdk/models/non_nullable_catalogs_currency.rb +198 -0
  296. data/lib/pinterest_sdk/models/nullable_currency.rb +199 -0
  297. data/lib/pinterest_sdk/models/oauth_access_token_request_code.rb +272 -0
  298. data/lib/pinterest_sdk/models/oauth_access_token_request_code_all_of.rb +237 -0
  299. data/lib/pinterest_sdk/models/oauth_access_token_request_refresh.rb +267 -0
  300. data/lib/pinterest_sdk/models/oauth_access_token_request_refresh_all_of.rb +232 -0
  301. data/lib/pinterest_sdk/models/oauth_access_token_response.rb +316 -0
  302. data/lib/pinterest_sdk/models/oauth_access_token_response_code.rb +272 -0
  303. data/lib/pinterest_sdk/models/oauth_access_token_response_code_all_of.rb +237 -0
  304. data/lib/pinterest_sdk/models/oauth_access_token_response_refresh.rb +243 -0
  305. data/lib/pinterest_sdk/models/objective_type.rb +43 -0
  306. data/lib/pinterest_sdk/models/pacing_delivery_type.rb +37 -0
  307. data/lib/pinterest_sdk/models/paginated.rb +235 -0
  308. data/lib/pinterest_sdk/models/pin.rb +359 -0
  309. data/lib/pinterest_sdk/models/pin_media.rb +224 -0
  310. data/lib/pinterest_sdk/models/pin_media_source.rb +58 -0
  311. data/lib/pinterest_sdk/models/pin_media_source_image_base64.rb +319 -0
  312. data/lib/pinterest_sdk/models/pin_media_source_image_url.rb +272 -0
  313. data/lib/pinterest_sdk/models/pin_media_source_video_id.rb +307 -0
  314. data/lib/pinterest_sdk/models/pin_media_with_image.rb +233 -0
  315. data/lib/pinterest_sdk/models/pin_media_with_image_all_of.rb +220 -0
  316. data/lib/pinterest_sdk/models/pin_promotion_summary_status.rb +41 -0
  317. data/lib/pinterest_sdk/models/placement_group_type.rb +39 -0
  318. data/lib/pinterest_sdk/models/product_availability_type.rb +39 -0
  319. data/lib/pinterest_sdk/models/product_group_summary_status.rb +39 -0
  320. data/lib/pinterest_sdk/models/product_type0_filter.rb +223 -0
  321. data/lib/pinterest_sdk/models/product_type1_filter.rb +223 -0
  322. data/lib/pinterest_sdk/models/product_type2_filter.rb +223 -0
  323. data/lib/pinterest_sdk/models/product_type3_filter.rb +223 -0
  324. data/lib/pinterest_sdk/models/product_type4_filter.rb +223 -0
  325. data/lib/pinterest_sdk/models/reporting_column_async.rb +549 -0
  326. data/lib/pinterest_sdk/models/targeting_type_filter.rb +245 -0
  327. data/lib/pinterest_sdk/models/tracking_urls.rb +340 -0
  328. data/lib/pinterest_sdk/version.rb +15 -0
  329. data/lib/pinterest_sdk.rb +192 -0
  330. data/pinterest_sdk.gemspec +38 -0
  331. data/spec/api/ad_accounts_api_spec.rb +234 -0
  332. data/spec/api/boards_api_spec.rb +181 -0
  333. data/spec/api/catalogs_api_spec.rb +200 -0
  334. data/spec/api/media_api_spec.rb +72 -0
  335. data/spec/api/oauth_api_spec.rb +47 -0
  336. data/spec/api/pins_api_spec.rb +90 -0
  337. data/spec/api/user_account_api_spec.rb +66 -0
  338. data/spec/api_client_spec.rb +226 -0
  339. data/spec/configuration_spec.rb +42 -0
  340. data/spec/models/account_spec.rb +56 -0
  341. data/spec/models/action_type_spec.rb +28 -0
  342. data/spec/models/ad_account_owner_spec.rb +34 -0
  343. data/spec/models/ad_account_spec.rb +58 -0
  344. data/spec/models/ad_group_response_all_of1_spec.rb +70 -0
  345. data/spec/models/ad_group_response_all_of_spec.rb +132 -0
  346. data/spec/models/ad_group_response_spec.rb +174 -0
  347. data/spec/models/ad_group_summary_status_spec.rb +28 -0
  348. data/spec/models/ad_response_all_of1_spec.rb +102 -0
  349. data/spec/models/ad_response_all_of_spec.rb +128 -0
  350. data/spec/models/ad_response_spec.rb +202 -0
  351. data/spec/models/ads_analytics_create_async_request_all_of1_spec.rb +46 -0
  352. data/spec/models/ads_analytics_create_async_request_all_of_spec.rb +76 -0
  353. data/spec/models/ads_analytics_create_async_request_spec.rb +166 -0
  354. data/spec/models/ads_analytics_create_async_response_spec.rb +46 -0
  355. data/spec/models/ads_analytics_filter_column_spec.rb +28 -0
  356. data/spec/models/ads_analytics_filter_operator_spec.rb +28 -0
  357. data/spec/models/ads_analytics_get_async_response_spec.rb +46 -0
  358. data/spec/models/ads_analytics_metrics_filter_spec.rb +46 -0
  359. data/spec/models/ads_analytics_targeting_type_spec.rb +28 -0
  360. data/spec/models/analytics_metrics_response_daily_metrics_spec.rb +50 -0
  361. data/spec/models/analytics_metrics_response_spec.rb +40 -0
  362. data/spec/models/availability_filter_spec.rb +34 -0
  363. data/spec/models/batch_operation_spec.rb +28 -0
  364. data/spec/models/batch_operation_status_spec.rb +28 -0
  365. data/spec/models/board_owner_spec.rb +34 -0
  366. data/spec/models/board_section_spec.rb +40 -0
  367. data/spec/models/board_spec.rb +62 -0
  368. data/spec/models/board_update_spec.rb +50 -0
  369. data/spec/models/brand_filter_spec.rb +34 -0
  370. data/spec/models/campaign_common_spec.rb +82 -0
  371. data/spec/models/campaign_response_all_of1_spec.rb +52 -0
  372. data/spec/models/campaign_response_all_of_spec.rb +34 -0
  373. data/spec/models/campaign_response_spec.rb +112 -0
  374. data/spec/models/campaign_summary_status_spec.rb +28 -0
  375. data/spec/models/catalogs_db_item_spec.rb +46 -0
  376. data/spec/models/catalogs_feed_credentials_spec.rb +40 -0
  377. data/spec/models/catalogs_feed_ingestion_details_spec.rb +40 -0
  378. data/spec/models/catalogs_feed_ingestion_errors_spec.rb +62 -0
  379. data/spec/models/catalogs_feed_ingestion_info_spec.rb +46 -0
  380. data/spec/models/catalogs_feed_processing_result_fields_spec.rb +52 -0
  381. data/spec/models/catalogs_feed_processing_result_spec.rb +70 -0
  382. data/spec/models/catalogs_feed_processing_schedule_spec.rb +44 -0
  383. data/spec/models/catalogs_feed_processing_status_spec.rb +28 -0
  384. data/spec/models/catalogs_feed_product_counts_spec.rb +34 -0
  385. data/spec/models/catalogs_feed_spec.rb +106 -0
  386. data/spec/models/catalogs_feed_validation_details_spec.rb +40 -0
  387. data/spec/models/catalogs_feed_validation_errors_spec.rb +232 -0
  388. data/spec/models/catalogs_feed_validation_warnings_spec.rb +298 -0
  389. data/spec/models/catalogs_feeds_create_request_spec.rb +82 -0
  390. data/spec/models/catalogs_feeds_update_request_spec.rb +76 -0
  391. data/spec/models/catalogs_format_spec.rb +28 -0
  392. data/spec/models/catalogs_items_batch_request_spec.rb +52 -0
  393. data/spec/models/catalogs_items_batch_spec.rb +58 -0
  394. data/spec/models/catalogs_items_spec.rb +34 -0
  395. data/spec/models/catalogs_product_group_create_request_spec.rb +52 -0
  396. data/spec/models/catalogs_product_group_currency_criteria_spec.rb +40 -0
  397. data/spec/models/catalogs_product_group_filter_keys_spec.rb +184 -0
  398. data/spec/models/catalogs_product_group_filters_all_of_spec.rb +34 -0
  399. data/spec/models/catalogs_product_group_filters_any_of_spec.rb +34 -0
  400. data/spec/models/catalogs_product_group_filters_spec.rb +40 -0
  401. data/spec/models/catalogs_product_group_multiple_string_criteria_spec.rb +40 -0
  402. data/spec/models/catalogs_product_group_multiple_string_list_criteria_spec.rb +40 -0
  403. data/spec/models/catalogs_product_group_pricing_criteria_spec.rb +46 -0
  404. data/spec/models/catalogs_product_group_spec.rb +82 -0
  405. data/spec/models/catalogs_product_group_status_spec.rb +28 -0
  406. data/spec/models/catalogs_product_group_type_spec.rb +28 -0
  407. data/spec/models/catalogs_product_group_update_request_spec.rb +52 -0
  408. data/spec/models/catalogs_status_spec.rb +28 -0
  409. data/spec/models/condition_filter_spec.rb +34 -0
  410. data/spec/models/conversion_attribution_window_days_spec.rb +28 -0
  411. data/spec/models/conversion_report_attribution_type_spec.rb +28 -0
  412. data/spec/models/conversion_report_time_type_spec.rb +28 -0
  413. data/spec/models/country_spec.rb +28 -0
  414. data/spec/models/currency_filter_spec.rb +34 -0
  415. data/spec/models/currency_spec.rb +28 -0
  416. data/spec/models/custom_label0_filter_spec.rb +34 -0
  417. data/spec/models/custom_label1_filter_spec.rb +34 -0
  418. data/spec/models/custom_label2_filter_spec.rb +34 -0
  419. data/spec/models/custom_label3_filter_spec.rb +34 -0
  420. data/spec/models/custom_label4_filter_spec.rb +34 -0
  421. data/spec/models/data_output_format_spec.rb +28 -0
  422. data/spec/models/entity_status_spec.rb +28 -0
  423. data/spec/models/error_spec.rb +40 -0
  424. data/spec/models/feed_fields_spec.rb +88 -0
  425. data/spec/models/gender_filter_spec.rb +34 -0
  426. data/spec/models/google_product_category0_filter_spec.rb +34 -0
  427. data/spec/models/google_product_category1_filter_spec.rb +34 -0
  428. data/spec/models/google_product_category2_filter_spec.rb +34 -0
  429. data/spec/models/google_product_category3_filter_spec.rb +34 -0
  430. data/spec/models/google_product_category4_filter_spec.rb +34 -0
  431. data/spec/models/google_product_category5_filter_spec.rb +34 -0
  432. data/spec/models/google_product_category6_filter_spec.rb +34 -0
  433. data/spec/models/granularity_spec.rb +28 -0
  434. data/spec/models/image_details_spec.rb +46 -0
  435. data/spec/models/item_attributes_spec.rb +292 -0
  436. data/spec/models/item_batch_record_spec.rb +40 -0
  437. data/spec/models/item_group_id_filter_spec.rb +34 -0
  438. data/spec/models/item_id_filter_spec.rb +34 -0
  439. data/spec/models/item_processing_record_spec.rb +52 -0
  440. data/spec/models/item_processing_status_spec.rb +28 -0
  441. data/spec/models/item_validation_event_spec.rb +46 -0
  442. data/spec/models/language_spec.rb +28 -0
  443. data/spec/models/max_price_filter_spec.rb +34 -0
  444. data/spec/models/media_upload_all_of_spec.rb +52 -0
  445. data/spec/models/media_upload_all_of_upload_parameters_spec.rb +76 -0
  446. data/spec/models/media_upload_details_spec.rb +46 -0
  447. data/spec/models/media_upload_request_spec.rb +34 -0
  448. data/spec/models/media_upload_spec.rb +52 -0
  449. data/spec/models/media_upload_status_spec.rb +28 -0
  450. data/spec/models/media_upload_type_spec.rb +28 -0
  451. data/spec/models/metrics_reporting_level_spec.rb +28 -0
  452. data/spec/models/min_price_filter_spec.rb +34 -0
  453. data/spec/models/non_nullable_catalogs_currency_spec.rb +28 -0
  454. data/spec/models/nullable_currency_spec.rb +28 -0
  455. data/spec/models/oauth_access_token_request_code_all_of_spec.rb +40 -0
  456. data/spec/models/oauth_access_token_request_code_spec.rb +40 -0
  457. data/spec/models/oauth_access_token_request_refresh_all_of_spec.rb +40 -0
  458. data/spec/models/oauth_access_token_request_refresh_spec.rb +40 -0
  459. data/spec/models/oauth_access_token_request_spec.rb +38 -0
  460. data/spec/models/oauth_access_token_response_code_all_of_spec.rb +40 -0
  461. data/spec/models/oauth_access_token_response_code_spec.rb +40 -0
  462. data/spec/models/oauth_access_token_response_refresh_spec.rb +28 -0
  463. data/spec/models/oauth_access_token_response_spec.rb +62 -0
  464. data/spec/models/objective_type_spec.rb +28 -0
  465. data/spec/models/pacing_delivery_type_spec.rb +28 -0
  466. data/spec/models/paginated_spec.rb +40 -0
  467. data/spec/models/pin_media_source_image_base64_spec.rb +54 -0
  468. data/spec/models/pin_media_source_image_url_spec.rb +44 -0
  469. data/spec/models/pin_media_source_spec.rb +43 -0
  470. data/spec/models/pin_media_source_video_id_spec.rb +50 -0
  471. data/spec/models/pin_media_spec.rb +34 -0
  472. data/spec/models/pin_media_with_image_all_of_spec.rb +34 -0
  473. data/spec/models/pin_media_with_image_spec.rb +34 -0
  474. data/spec/models/pin_promotion_summary_status_spec.rb +28 -0
  475. data/spec/models/pin_spec.rb +94 -0
  476. data/spec/models/placement_group_type_spec.rb +28 -0
  477. data/spec/models/product_availability_type_spec.rb +28 -0
  478. data/spec/models/product_group_summary_status_spec.rb +28 -0
  479. data/spec/models/product_type0_filter_spec.rb +34 -0
  480. data/spec/models/product_type1_filter_spec.rb +34 -0
  481. data/spec/models/product_type2_filter_spec.rb +34 -0
  482. data/spec/models/product_type3_filter_spec.rb +34 -0
  483. data/spec/models/product_type4_filter_spec.rb +34 -0
  484. data/spec/models/reporting_column_async_spec.rb +28 -0
  485. data/spec/models/targeting_type_filter_spec.rb +34 -0
  486. data/spec/models/tracking_urls_spec.rb +58 -0
  487. data/spec/spec_helper.rb +111 -0
  488. metadata +726 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: aa6734d0afc333c724d98643487b68fd373fb65759ae5aec7a7d5eccb97c1133
4
+ data.tar.gz: 26d4aed09492b49aaf3f9be37fcd8b0621fd2050c7b14df48a37a7849e2a1fc9
5
+ SHA512:
6
+ metadata.gz: fb2715576da9f7f0e20007275907434fa81eeca7f2a6d93744e898211866f2621dc64b1eee859d9a70d5efd22eb865d0f99a20a4c84292dfd3193ff3bb03f307
7
+ data.tar.gz: f83253461b2a1b6df16f39dc55043f932cac8325ff3fef4835cadc6c5484e6d18a66ad6a2d49dcdcc5f4897f0c10f776cd3c0edaf2db7f27f44d870693af7f21
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 13.0.1'
7
+ gem 'pry-byebug'
8
+ gem 'rubocop', '~> 0.66.0'
9
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,70 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ pinterest_sdk (1.0.0)
5
+ typhoeus (~> 1.0, >= 1.0.1)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ ast (2.4.2)
11
+ byebug (11.1.3)
12
+ coderay (1.1.3)
13
+ diff-lcs (1.5.0)
14
+ ethon (0.15.0)
15
+ ffi (>= 1.15.0)
16
+ ffi (1.15.5)
17
+ jaro_winkler (1.5.4)
18
+ method_source (1.0.0)
19
+ parallel (1.22.1)
20
+ parser (3.1.2.0)
21
+ ast (~> 2.4.1)
22
+ pry (0.13.1)
23
+ coderay (~> 1.1)
24
+ method_source (~> 1.0)
25
+ pry-byebug (3.9.0)
26
+ byebug (~> 11.0)
27
+ pry (~> 0.13.0)
28
+ psych (4.0.3)
29
+ stringio
30
+ rainbow (3.1.1)
31
+ rake (13.0.6)
32
+ rspec (3.11.0)
33
+ rspec-core (~> 3.11.0)
34
+ rspec-expectations (~> 3.11.0)
35
+ rspec-mocks (~> 3.11.0)
36
+ rspec-core (3.11.0)
37
+ rspec-support (~> 3.11.0)
38
+ rspec-expectations (3.11.0)
39
+ diff-lcs (>= 1.2.0, < 2.0)
40
+ rspec-support (~> 3.11.0)
41
+ rspec-mocks (3.11.1)
42
+ diff-lcs (>= 1.2.0, < 2.0)
43
+ rspec-support (~> 3.11.0)
44
+ rspec-support (3.11.0)
45
+ rubocop (0.66.0)
46
+ jaro_winkler (~> 1.5.1)
47
+ parallel (~> 1.10)
48
+ parser (>= 2.5, != 2.5.1.1)
49
+ psych (>= 3.1.0)
50
+ rainbow (>= 2.2.2, < 4.0)
51
+ ruby-progressbar (~> 1.7)
52
+ unicode-display_width (>= 1.4.0, < 1.6)
53
+ ruby-progressbar (1.11.0)
54
+ stringio (3.0.1)
55
+ typhoeus (1.4.0)
56
+ ethon (>= 0.9.0)
57
+ unicode-display_width (1.5.0)
58
+
59
+ PLATFORMS
60
+ x86_64-linux
61
+
62
+ DEPENDENCIES
63
+ pinterest_sdk!
64
+ pry-byebug
65
+ rake (~> 13.0.1)
66
+ rspec (~> 3.6, >= 3.6.0)
67
+ rubocop (~> 0.66.0)
68
+
69
+ BUNDLED WITH
70
+ 2.3.11
data/README.md ADDED
@@ -0,0 +1,319 @@
1
+ # pinterest_sdk
2
+
3
+ PinterestSdkClient - the Ruby gem for the Pinterest REST API
4
+
5
+ Pinterest's REST API
6
+
7
+ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
+
9
+ - API version: 5.3.0
10
+ - Package version: 1.0.0
11
+ - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
+ For more information, please visit [https://developers.pinterest.com/](https://developers.pinterest.com/)
13
+
14
+ ## Installation
15
+
16
+ ### Build a gem
17
+
18
+ To build the Ruby code into a gem:
19
+
20
+ ```shell
21
+ gem build pinterest_sdk.gemspec
22
+ ```
23
+
24
+ Then either install the gem locally:
25
+
26
+ ```shell
27
+ gem install ./pinterest_sdk-1.0.0.gem
28
+ ```
29
+
30
+ (for development, run `gem install --dev ./pinterest_sdk-1.0.0.gem` to install the development dependencies)
31
+
32
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
33
+
34
+ Finally add this to the Gemfile:
35
+
36
+ gem 'pinterest_sdk', '~> 1.0.0'
37
+
38
+ ### Install from Git
39
+
40
+ If the Ruby gem is hosted at a git repository: https://github.com/GIT_USER_ID/GIT_REPO_ID, then add the following in the Gemfile:
41
+
42
+ gem 'pinterest_sdk', :git => 'https://github.com/GIT_USER_ID/GIT_REPO_ID.git'
43
+
44
+ ### Include the Ruby code directly
45
+
46
+ Include the Ruby code directly using `-I` as follows:
47
+
48
+ ```shell
49
+ ruby -Ilib script.rb
50
+ ```
51
+
52
+ ## Getting Started
53
+
54
+ Please follow the [installation](#installation) procedure and then run the following code:
55
+
56
+ ```ruby
57
+ # Load the gem
58
+ require 'pinterest_sdk'
59
+
60
+ # Setup authorization
61
+ PinterestSdkClient.configure do |config|
62
+ # Configure OAuth2 access token for authorization: pinterest_oauth2
63
+ config.access_token = 'YOUR ACCESS TOKEN'
64
+ end
65
+
66
+ api_instance = PinterestSdkClient::AdAccountsApi.new
67
+ ad_account_id = 'ad_account_id_example' # String | Unique identifier of an ad account.
68
+ start_date = Date.parse('2013-10-20') # Date | Metric report start date (UTC). Format: YYYY-MM-DD
69
+ end_date = Date.parse('2013-10-20') # Date | Metric report end date (UTC). Format: YYYY-MM-DD
70
+ columns = ['AD_ACCOUNT_ID'] # Array<String> | Columns to retrieve. **NOTE**: Any metrics defined as MICRO_DOLLARS returns a value based on the advertiser profile's currency field. For USD,($1/1,000,000, or $0.000001 - one one-ten-thousandth of a cent). it's microdollars. Otherwise, it's in microunits of the advertiser's currency.<br/>For example, if the advertiser's currency is GBP (British pound sterling), all MICRO_DOLLARS fields will be in GBP microunits (1/1,000,000 British pound).<br/>If a column has no value, it may not be returned
71
+ granularity = PinterestSdkClient::Granularity::TOTAL # Granularity | Granularity
72
+ opts = {
73
+ click_window_days: 1, # Integer | Number of days to use as the conversion attribution window for a pin click action. Applies to Pinterest Tag conversion metrics. Prior conversion tags use their defined attribution windows. If not specified, defaults to `30` days.
74
+ engagement_window_days: 1, # Integer | Number of days to use as the conversion attribution window for an engagement action. Engagements include saves, closeups, link clicks, and carousel card swipes. Applies to Pinterest Tag conversion metrics. Prior conversion tags use their defined attribution windows. If not specified, defaults to `30` days.
75
+ view_window_days: 1, # Integer | Number of days to use as the conversion attribution window for a view action. Applies to Pinterest Tag conversion metrics. Prior conversion tags use their defined attribution windows. If not specified, defaults to `1` day.
76
+ conversion_report_time: 'TIME_OF_AD_ACTION' # String | The date by which the conversion metrics returned from this endpoint will be reported. There are two dates associated with a conversion event: the date that the user interacted with the ad, and the date that the user completed a conversion event.
77
+ }
78
+
79
+ begin
80
+ #Get ad account analytics
81
+ result = api_instance.ad_account_analytics(ad_account_id, start_date, end_date, columns, granularity, opts)
82
+ p result
83
+ rescue PinterestSdkClient::ApiError => e
84
+ puts "Exception when calling AdAccountsApi->ad_account_analytics: #{e}"
85
+ end
86
+
87
+ ```
88
+
89
+ ## Documentation for API Endpoints
90
+
91
+ All URIs are relative to *https://api.pinterest.com/v5*
92
+
93
+ Class | Method | HTTP request | Description
94
+ ------------ | ------------- | ------------- | -------------
95
+ *PinterestSdkClient::AdAccountsApi* | [**ad_account_analytics**](docs/AdAccountsApi.md#ad_account_analytics) | **GET** /ad_accounts/{ad_account_id}/analytics | Get ad account analytics
96
+ *PinterestSdkClient::AdAccountsApi* | [**ad_accounts_list**](docs/AdAccountsApi.md#ad_accounts_list) | **GET** /ad_accounts | List ad accounts
97
+ *PinterestSdkClient::AdAccountsApi* | [**ad_groups_analytics**](docs/AdAccountsApi.md#ad_groups_analytics) | **GET** /ad_accounts/{ad_account_id}/ad_groups/analytics | Get ad group analytics
98
+ *PinterestSdkClient::AdAccountsApi* | [**ad_groups_list**](docs/AdAccountsApi.md#ad_groups_list) | **GET** /ad_accounts/{ad_account_id}/ad_groups | List ad groups
99
+ *PinterestSdkClient::AdAccountsApi* | [**ads_analytics**](docs/AdAccountsApi.md#ads_analytics) | **GET** /ad_accounts/{ad_account_id}/ads/analytics | Get ad analytics
100
+ *PinterestSdkClient::AdAccountsApi* | [**ads_list**](docs/AdAccountsApi.md#ads_list) | **GET** /ad_accounts/{ad_account_id}/ads | List ads
101
+ *PinterestSdkClient::AdAccountsApi* | [**analytics_create_report**](docs/AdAccountsApi.md#analytics_create_report) | **POST** /ad_accounts/{ad_account_id}/reports | Create async request for an account analytics report
102
+ *PinterestSdkClient::AdAccountsApi* | [**analytics_get_report**](docs/AdAccountsApi.md#analytics_get_report) | **GET** /ad_accounts/{ad_account_id}/reports | Get the account analytics report created by the async call
103
+ *PinterestSdkClient::AdAccountsApi* | [**campaigns_analytics**](docs/AdAccountsApi.md#campaigns_analytics) | **GET** /ad_accounts/{ad_account_id}/campaigns/analytics | Get campaign analytics
104
+ *PinterestSdkClient::AdAccountsApi* | [**campaigns_list**](docs/AdAccountsApi.md#campaigns_list) | **GET** /ad_accounts/{ad_account_id}/campaigns | List campaigns
105
+ *PinterestSdkClient::AdAccountsApi* | [**product_groups_analytics**](docs/AdAccountsApi.md#product_groups_analytics) | **GET** /ad_accounts/{ad_account_id}/product_groups/analytics | Get product group analytics
106
+ *PinterestSdkClient::BoardsApi* | [**board_sections_create**](docs/BoardsApi.md#board_sections_create) | **POST** /boards/{board_id}/sections | Create board section
107
+ *PinterestSdkClient::BoardsApi* | [**board_sections_delete**](docs/BoardsApi.md#board_sections_delete) | **DELETE** /boards/{board_id}/sections/{section_id} | Delete board section
108
+ *PinterestSdkClient::BoardsApi* | [**board_sections_list**](docs/BoardsApi.md#board_sections_list) | **GET** /boards/{board_id}/sections | List board sections
109
+ *PinterestSdkClient::BoardsApi* | [**board_sections_list_pins**](docs/BoardsApi.md#board_sections_list_pins) | **GET** /boards/{board_id}/sections/{section_id}/pins | List Pins on board section
110
+ *PinterestSdkClient::BoardsApi* | [**board_sections_update**](docs/BoardsApi.md#board_sections_update) | **PATCH** /boards/{board_id}/sections/{section_id} | Update board section
111
+ *PinterestSdkClient::BoardsApi* | [**boards_create**](docs/BoardsApi.md#boards_create) | **POST** /boards | Create board
112
+ *PinterestSdkClient::BoardsApi* | [**boards_delete**](docs/BoardsApi.md#boards_delete) | **DELETE** /boards/{board_id} | Delete board
113
+ *PinterestSdkClient::BoardsApi* | [**boards_get**](docs/BoardsApi.md#boards_get) | **GET** /boards/{board_id} | Get board
114
+ *PinterestSdkClient::BoardsApi* | [**boards_list**](docs/BoardsApi.md#boards_list) | **GET** /boards | List boards
115
+ *PinterestSdkClient::BoardsApi* | [**boards_list_pins**](docs/BoardsApi.md#boards_list_pins) | **GET** /boards/{board_id}/pins | List Pins on board
116
+ *PinterestSdkClient::BoardsApi* | [**boards_update**](docs/BoardsApi.md#boards_update) | **PATCH** /boards/{board_id} | Update board
117
+ *PinterestSdkClient::CatalogsApi* | [**catalogs_product_groups_create**](docs/CatalogsApi.md#catalogs_product_groups_create) | **POST** /catalogs/product_groups | Create product group
118
+ *PinterestSdkClient::CatalogsApi* | [**catalogs_product_groups_delete**](docs/CatalogsApi.md#catalogs_product_groups_delete) | **DELETE** /catalogs/product_groups/{product_group_id} | Delete product group
119
+ *PinterestSdkClient::CatalogsApi* | [**catalogs_product_groups_list**](docs/CatalogsApi.md#catalogs_product_groups_list) | **GET** /catalogs/product_groups | Get product groups list
120
+ *PinterestSdkClient::CatalogsApi* | [**catalogs_product_groups_update**](docs/CatalogsApi.md#catalogs_product_groups_update) | **PATCH** /catalogs/product_groups/{product_group_id} | Update product group
121
+ *PinterestSdkClient::CatalogsApi* | [**feed_processing_results_list**](docs/CatalogsApi.md#feed_processing_results_list) | **GET** /catalogs/feeds/{feed_id}/processing_results | List processing results for a given feed
122
+ *PinterestSdkClient::CatalogsApi* | [**feeds_create**](docs/CatalogsApi.md#feeds_create) | **POST** /catalogs/feeds | Create feed
123
+ *PinterestSdkClient::CatalogsApi* | [**feeds_delete**](docs/CatalogsApi.md#feeds_delete) | **DELETE** /catalogs/feeds/{feed_id} | Delete feed
124
+ *PinterestSdkClient::CatalogsApi* | [**feeds_get**](docs/CatalogsApi.md#feeds_get) | **GET** /catalogs/feeds/{feed_id} | Get feed
125
+ *PinterestSdkClient::CatalogsApi* | [**feeds_list**](docs/CatalogsApi.md#feeds_list) | **GET** /catalogs/feeds | List feeds
126
+ *PinterestSdkClient::CatalogsApi* | [**feeds_update**](docs/CatalogsApi.md#feeds_update) | **PATCH** /catalogs/feeds/{feed_id} | Update feed
127
+ *PinterestSdkClient::CatalogsApi* | [**items_batch_get**](docs/CatalogsApi.md#items_batch_get) | **GET** /catalogs/items/batch/{batch_id} | Get catalogs items batch
128
+ *PinterestSdkClient::CatalogsApi* | [**items_batch_post**](docs/CatalogsApi.md#items_batch_post) | **POST** /catalogs/items/batch | Perform an operation on an item batch
129
+ *PinterestSdkClient::CatalogsApi* | [**items_get**](docs/CatalogsApi.md#items_get) | **GET** /catalogs/items | Get catalogs items
130
+ *PinterestSdkClient::MediaApi* | [**media_create**](docs/MediaApi.md#media_create) | **POST** /media | Register media upload
131
+ *PinterestSdkClient::MediaApi* | [**media_get**](docs/MediaApi.md#media_get) | **GET** /media/{media_id} | Get media upload details
132
+ *PinterestSdkClient::MediaApi* | [**media_list**](docs/MediaApi.md#media_list) | **GET** /media | List media uploads
133
+ *PinterestSdkClient::OauthApi* | [**oauth_token**](docs/OauthApi.md#oauth_token) | **POST** /oauth/token | Generate OAuth access token
134
+ *PinterestSdkClient::PinsApi* | [**pins_analytics**](docs/PinsApi.md#pins_analytics) | **GET** /pins/{pin_id}/analytics | Get Pin analytics
135
+ *PinterestSdkClient::PinsApi* | [**pins_create**](docs/PinsApi.md#pins_create) | **POST** /pins | Create Pin
136
+ *PinterestSdkClient::PinsApi* | [**pins_delete**](docs/PinsApi.md#pins_delete) | **DELETE** /pins/{pin_id} | Delete Pin
137
+ *PinterestSdkClient::PinsApi* | [**pins_get**](docs/PinsApi.md#pins_get) | **GET** /pins/{pin_id} | Get Pin
138
+ *PinterestSdkClient::UserAccountApi* | [**user_account_analytics**](docs/UserAccountApi.md#user_account_analytics) | **GET** /user_account/analytics | Get user account analytics
139
+ *PinterestSdkClient::UserAccountApi* | [**user_account_get**](docs/UserAccountApi.md#user_account_get) | **GET** /user_account | Get user account
140
+
141
+
142
+ ## Documentation for Models
143
+
144
+ - [PinterestSdkClient::Account](docs/Account.md)
145
+ - [PinterestSdkClient::ActionType](docs/ActionType.md)
146
+ - [PinterestSdkClient::AdAccount](docs/AdAccount.md)
147
+ - [PinterestSdkClient::AdAccountOwner](docs/AdAccountOwner.md)
148
+ - [PinterestSdkClient::AdGroupResponse](docs/AdGroupResponse.md)
149
+ - [PinterestSdkClient::AdGroupResponseAllOf](docs/AdGroupResponseAllOf.md)
150
+ - [PinterestSdkClient::AdGroupResponseAllOf1](docs/AdGroupResponseAllOf1.md)
151
+ - [PinterestSdkClient::AdGroupSummaryStatus](docs/AdGroupSummaryStatus.md)
152
+ - [PinterestSdkClient::AdResponse](docs/AdResponse.md)
153
+ - [PinterestSdkClient::AdResponseAllOf](docs/AdResponseAllOf.md)
154
+ - [PinterestSdkClient::AdResponseAllOf1](docs/AdResponseAllOf1.md)
155
+ - [PinterestSdkClient::AdsAnalyticsCreateAsyncRequest](docs/AdsAnalyticsCreateAsyncRequest.md)
156
+ - [PinterestSdkClient::AdsAnalyticsCreateAsyncRequestAllOf](docs/AdsAnalyticsCreateAsyncRequestAllOf.md)
157
+ - [PinterestSdkClient::AdsAnalyticsCreateAsyncRequestAllOf1](docs/AdsAnalyticsCreateAsyncRequestAllOf1.md)
158
+ - [PinterestSdkClient::AdsAnalyticsCreateAsyncResponse](docs/AdsAnalyticsCreateAsyncResponse.md)
159
+ - [PinterestSdkClient::AdsAnalyticsFilterColumn](docs/AdsAnalyticsFilterColumn.md)
160
+ - [PinterestSdkClient::AdsAnalyticsFilterOperator](docs/AdsAnalyticsFilterOperator.md)
161
+ - [PinterestSdkClient::AdsAnalyticsGetAsyncResponse](docs/AdsAnalyticsGetAsyncResponse.md)
162
+ - [PinterestSdkClient::AdsAnalyticsMetricsFilter](docs/AdsAnalyticsMetricsFilter.md)
163
+ - [PinterestSdkClient::AdsAnalyticsTargetingType](docs/AdsAnalyticsTargetingType.md)
164
+ - [PinterestSdkClient::AnalyticsMetricsResponse](docs/AnalyticsMetricsResponse.md)
165
+ - [PinterestSdkClient::AnalyticsMetricsResponseDailyMetrics](docs/AnalyticsMetricsResponseDailyMetrics.md)
166
+ - [PinterestSdkClient::AvailabilityFilter](docs/AvailabilityFilter.md)
167
+ - [PinterestSdkClient::BatchOperation](docs/BatchOperation.md)
168
+ - [PinterestSdkClient::BatchOperationStatus](docs/BatchOperationStatus.md)
169
+ - [PinterestSdkClient::Board](docs/Board.md)
170
+ - [PinterestSdkClient::BoardOwner](docs/BoardOwner.md)
171
+ - [PinterestSdkClient::BoardSection](docs/BoardSection.md)
172
+ - [PinterestSdkClient::BoardUpdate](docs/BoardUpdate.md)
173
+ - [PinterestSdkClient::BrandFilter](docs/BrandFilter.md)
174
+ - [PinterestSdkClient::CampaignCommon](docs/CampaignCommon.md)
175
+ - [PinterestSdkClient::CampaignResponse](docs/CampaignResponse.md)
176
+ - [PinterestSdkClient::CampaignResponseAllOf](docs/CampaignResponseAllOf.md)
177
+ - [PinterestSdkClient::CampaignResponseAllOf1](docs/CampaignResponseAllOf1.md)
178
+ - [PinterestSdkClient::CampaignSummaryStatus](docs/CampaignSummaryStatus.md)
179
+ - [PinterestSdkClient::CatalogsDbItem](docs/CatalogsDbItem.md)
180
+ - [PinterestSdkClient::CatalogsFeed](docs/CatalogsFeed.md)
181
+ - [PinterestSdkClient::CatalogsFeedCredentials](docs/CatalogsFeedCredentials.md)
182
+ - [PinterestSdkClient::CatalogsFeedIngestionDetails](docs/CatalogsFeedIngestionDetails.md)
183
+ - [PinterestSdkClient::CatalogsFeedIngestionErrors](docs/CatalogsFeedIngestionErrors.md)
184
+ - [PinterestSdkClient::CatalogsFeedIngestionInfo](docs/CatalogsFeedIngestionInfo.md)
185
+ - [PinterestSdkClient::CatalogsFeedProcessingResult](docs/CatalogsFeedProcessingResult.md)
186
+ - [PinterestSdkClient::CatalogsFeedProcessingResultFields](docs/CatalogsFeedProcessingResultFields.md)
187
+ - [PinterestSdkClient::CatalogsFeedProcessingSchedule](docs/CatalogsFeedProcessingSchedule.md)
188
+ - [PinterestSdkClient::CatalogsFeedProcessingStatus](docs/CatalogsFeedProcessingStatus.md)
189
+ - [PinterestSdkClient::CatalogsFeedProductCounts](docs/CatalogsFeedProductCounts.md)
190
+ - [PinterestSdkClient::CatalogsFeedValidationDetails](docs/CatalogsFeedValidationDetails.md)
191
+ - [PinterestSdkClient::CatalogsFeedValidationErrors](docs/CatalogsFeedValidationErrors.md)
192
+ - [PinterestSdkClient::CatalogsFeedValidationWarnings](docs/CatalogsFeedValidationWarnings.md)
193
+ - [PinterestSdkClient::CatalogsFeedsCreateRequest](docs/CatalogsFeedsCreateRequest.md)
194
+ - [PinterestSdkClient::CatalogsFeedsUpdateRequest](docs/CatalogsFeedsUpdateRequest.md)
195
+ - [PinterestSdkClient::CatalogsFormat](docs/CatalogsFormat.md)
196
+ - [PinterestSdkClient::CatalogsItems](docs/CatalogsItems.md)
197
+ - [PinterestSdkClient::CatalogsItemsBatch](docs/CatalogsItemsBatch.md)
198
+ - [PinterestSdkClient::CatalogsItemsBatchRequest](docs/CatalogsItemsBatchRequest.md)
199
+ - [PinterestSdkClient::CatalogsProductGroup](docs/CatalogsProductGroup.md)
200
+ - [PinterestSdkClient::CatalogsProductGroupCreateRequest](docs/CatalogsProductGroupCreateRequest.md)
201
+ - [PinterestSdkClient::CatalogsProductGroupCurrencyCriteria](docs/CatalogsProductGroupCurrencyCriteria.md)
202
+ - [PinterestSdkClient::CatalogsProductGroupFilterKeys](docs/CatalogsProductGroupFilterKeys.md)
203
+ - [PinterestSdkClient::CatalogsProductGroupFilters](docs/CatalogsProductGroupFilters.md)
204
+ - [PinterestSdkClient::CatalogsProductGroupFiltersAllOf](docs/CatalogsProductGroupFiltersAllOf.md)
205
+ - [PinterestSdkClient::CatalogsProductGroupFiltersAnyOf](docs/CatalogsProductGroupFiltersAnyOf.md)
206
+ - [PinterestSdkClient::CatalogsProductGroupMultipleStringCriteria](docs/CatalogsProductGroupMultipleStringCriteria.md)
207
+ - [PinterestSdkClient::CatalogsProductGroupMultipleStringListCriteria](docs/CatalogsProductGroupMultipleStringListCriteria.md)
208
+ - [PinterestSdkClient::CatalogsProductGroupPricingCriteria](docs/CatalogsProductGroupPricingCriteria.md)
209
+ - [PinterestSdkClient::CatalogsProductGroupStatus](docs/CatalogsProductGroupStatus.md)
210
+ - [PinterestSdkClient::CatalogsProductGroupType](docs/CatalogsProductGroupType.md)
211
+ - [PinterestSdkClient::CatalogsProductGroupUpdateRequest](docs/CatalogsProductGroupUpdateRequest.md)
212
+ - [PinterestSdkClient::CatalogsStatus](docs/CatalogsStatus.md)
213
+ - [PinterestSdkClient::ConditionFilter](docs/ConditionFilter.md)
214
+ - [PinterestSdkClient::ConversionAttributionWindowDays](docs/ConversionAttributionWindowDays.md)
215
+ - [PinterestSdkClient::ConversionReportAttributionType](docs/ConversionReportAttributionType.md)
216
+ - [PinterestSdkClient::ConversionReportTimeType](docs/ConversionReportTimeType.md)
217
+ - [PinterestSdkClient::Country](docs/Country.md)
218
+ - [PinterestSdkClient::Currency](docs/Currency.md)
219
+ - [PinterestSdkClient::CurrencyFilter](docs/CurrencyFilter.md)
220
+ - [PinterestSdkClient::CustomLabel0Filter](docs/CustomLabel0Filter.md)
221
+ - [PinterestSdkClient::CustomLabel1Filter](docs/CustomLabel1Filter.md)
222
+ - [PinterestSdkClient::CustomLabel2Filter](docs/CustomLabel2Filter.md)
223
+ - [PinterestSdkClient::CustomLabel3Filter](docs/CustomLabel3Filter.md)
224
+ - [PinterestSdkClient::CustomLabel4Filter](docs/CustomLabel4Filter.md)
225
+ - [PinterestSdkClient::DataOutputFormat](docs/DataOutputFormat.md)
226
+ - [PinterestSdkClient::EntityStatus](docs/EntityStatus.md)
227
+ - [PinterestSdkClient::Error](docs/Error.md)
228
+ - [PinterestSdkClient::FeedFields](docs/FeedFields.md)
229
+ - [PinterestSdkClient::GenderFilter](docs/GenderFilter.md)
230
+ - [PinterestSdkClient::GoogleProductCategory0Filter](docs/GoogleProductCategory0Filter.md)
231
+ - [PinterestSdkClient::GoogleProductCategory1Filter](docs/GoogleProductCategory1Filter.md)
232
+ - [PinterestSdkClient::GoogleProductCategory2Filter](docs/GoogleProductCategory2Filter.md)
233
+ - [PinterestSdkClient::GoogleProductCategory3Filter](docs/GoogleProductCategory3Filter.md)
234
+ - [PinterestSdkClient::GoogleProductCategory4Filter](docs/GoogleProductCategory4Filter.md)
235
+ - [PinterestSdkClient::GoogleProductCategory5Filter](docs/GoogleProductCategory5Filter.md)
236
+ - [PinterestSdkClient::GoogleProductCategory6Filter](docs/GoogleProductCategory6Filter.md)
237
+ - [PinterestSdkClient::Granularity](docs/Granularity.md)
238
+ - [PinterestSdkClient::ImageDetails](docs/ImageDetails.md)
239
+ - [PinterestSdkClient::ItemAttributes](docs/ItemAttributes.md)
240
+ - [PinterestSdkClient::ItemBatchRecord](docs/ItemBatchRecord.md)
241
+ - [PinterestSdkClient::ItemGroupIdFilter](docs/ItemGroupIdFilter.md)
242
+ - [PinterestSdkClient::ItemIdFilter](docs/ItemIdFilter.md)
243
+ - [PinterestSdkClient::ItemProcessingRecord](docs/ItemProcessingRecord.md)
244
+ - [PinterestSdkClient::ItemProcessingStatus](docs/ItemProcessingStatus.md)
245
+ - [PinterestSdkClient::ItemValidationEvent](docs/ItemValidationEvent.md)
246
+ - [PinterestSdkClient::Language](docs/Language.md)
247
+ - [PinterestSdkClient::MaxPriceFilter](docs/MaxPriceFilter.md)
248
+ - [PinterestSdkClient::MediaUpload](docs/MediaUpload.md)
249
+ - [PinterestSdkClient::MediaUploadAllOf](docs/MediaUploadAllOf.md)
250
+ - [PinterestSdkClient::MediaUploadAllOfUploadParameters](docs/MediaUploadAllOfUploadParameters.md)
251
+ - [PinterestSdkClient::MediaUploadDetails](docs/MediaUploadDetails.md)
252
+ - [PinterestSdkClient::MediaUploadRequest](docs/MediaUploadRequest.md)
253
+ - [PinterestSdkClient::MediaUploadStatus](docs/MediaUploadStatus.md)
254
+ - [PinterestSdkClient::MediaUploadType](docs/MediaUploadType.md)
255
+ - [PinterestSdkClient::MetricsReportingLevel](docs/MetricsReportingLevel.md)
256
+ - [PinterestSdkClient::MinPriceFilter](docs/MinPriceFilter.md)
257
+ - [PinterestSdkClient::NonNullableCatalogsCurrency](docs/NonNullableCatalogsCurrency.md)
258
+ - [PinterestSdkClient::NullableCurrency](docs/NullableCurrency.md)
259
+ - [PinterestSdkClient::OauthAccessTokenRequestCode](docs/OauthAccessTokenRequestCode.md)
260
+ - [PinterestSdkClient::OauthAccessTokenRequestCodeAllOf](docs/OauthAccessTokenRequestCodeAllOf.md)
261
+ - [PinterestSdkClient::OauthAccessTokenRequestRefresh](docs/OauthAccessTokenRequestRefresh.md)
262
+ - [PinterestSdkClient::OauthAccessTokenRequestRefreshAllOf](docs/OauthAccessTokenRequestRefreshAllOf.md)
263
+ - [PinterestSdkClient::OauthAccessTokenResponse](docs/OauthAccessTokenResponse.md)
264
+ - [PinterestSdkClient::OauthAccessTokenResponseCode](docs/OauthAccessTokenResponseCode.md)
265
+ - [PinterestSdkClient::OauthAccessTokenResponseCodeAllOf](docs/OauthAccessTokenResponseCodeAllOf.md)
266
+ - [PinterestSdkClient::OauthAccessTokenResponseRefresh](docs/OauthAccessTokenResponseRefresh.md)
267
+ - [PinterestSdkClient::ObjectiveType](docs/ObjectiveType.md)
268
+ - [PinterestSdkClient::PacingDeliveryType](docs/PacingDeliveryType.md)
269
+ - [PinterestSdkClient::Paginated](docs/Paginated.md)
270
+ - [PinterestSdkClient::Pin](docs/Pin.md)
271
+ - [PinterestSdkClient::PinMedia](docs/PinMedia.md)
272
+ - [PinterestSdkClient::PinMediaSource](docs/PinMediaSource.md)
273
+ - [PinterestSdkClient::PinMediaSourceImageBase64](docs/PinMediaSourceImageBase64.md)
274
+ - [PinterestSdkClient::PinMediaSourceImageURL](docs/PinMediaSourceImageURL.md)
275
+ - [PinterestSdkClient::PinMediaSourceVideoID](docs/PinMediaSourceVideoID.md)
276
+ - [PinterestSdkClient::PinMediaWithImage](docs/PinMediaWithImage.md)
277
+ - [PinterestSdkClient::PinMediaWithImageAllOf](docs/PinMediaWithImageAllOf.md)
278
+ - [PinterestSdkClient::PinPromotionSummaryStatus](docs/PinPromotionSummaryStatus.md)
279
+ - [PinterestSdkClient::PlacementGroupType](docs/PlacementGroupType.md)
280
+ - [PinterestSdkClient::ProductAvailabilityType](docs/ProductAvailabilityType.md)
281
+ - [PinterestSdkClient::ProductGroupSummaryStatus](docs/ProductGroupSummaryStatus.md)
282
+ - [PinterestSdkClient::ProductType0Filter](docs/ProductType0Filter.md)
283
+ - [PinterestSdkClient::ProductType1Filter](docs/ProductType1Filter.md)
284
+ - [PinterestSdkClient::ProductType2Filter](docs/ProductType2Filter.md)
285
+ - [PinterestSdkClient::ProductType3Filter](docs/ProductType3Filter.md)
286
+ - [PinterestSdkClient::ProductType4Filter](docs/ProductType4Filter.md)
287
+ - [PinterestSdkClient::ReportingColumnAsync](docs/ReportingColumnAsync.md)
288
+ - [PinterestSdkClient::TargetingTypeFilter](docs/TargetingTypeFilter.md)
289
+ - [PinterestSdkClient::TrackingUrls](docs/TrackingUrls.md)
290
+
291
+
292
+ ## Documentation for Authorization
293
+
294
+
295
+ ### basic
296
+
297
+ - **Type**: HTTP basic authentication
298
+
299
+ ### pinterest_oauth2
300
+
301
+
302
+ - **Type**: OAuth
303
+ - **Flow**: accessCode
304
+ - **Authorization URL**: https://www.pinterest.com/oauth/
305
+ - **Scopes**:
306
+ - ads:read: See all of your advertising data, including ads, ad groups, campaigns etc.
307
+ - ads:write: Create, update, or delete ads, ad groups, campaigns etc.
308
+ - boards:read: See your public boards, including group boards you join
309
+ - boards:read_secret: See your secret boards
310
+ - boards:write: Create, update, or delete your public boards
311
+ - boards:write_secret: Create, update, or delete your secret boards
312
+ - catalogs:read: See all of your catalogs data
313
+ - catalogs:write: Create, update, or delete your catalogs data
314
+ - pins:read: See your public Pins
315
+ - pins:read_secret: See your secret Pins
316
+ - pins:write: Create, update, or delete your public Pins
317
+ - pins:write_secret: Create, update, or delete your secret Pins
318
+ - user_accounts:read: See your user accounts
319
+
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task default: :spec
8
+ rescue LoadError
9
+ # no rspec available
10
+ end
data/bin/bundle ADDED
@@ -0,0 +1,114 @@
1
+ #!/usr/bin/env ruby2.7
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'bundle' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "rubygems"
12
+
13
+ m = Module.new do
14
+ module_function
15
+
16
+ def invoked_as_script?
17
+ File.expand_path($0) == File.expand_path(__FILE__)
18
+ end
19
+
20
+ def env_var_version
21
+ ENV["BUNDLER_VERSION"]
22
+ end
23
+
24
+ def cli_arg_version
25
+ return unless invoked_as_script? # don't want to hijack other binstubs
26
+ return unless "update".start_with?(ARGV.first || " ") # must be running `bundle update`
27
+ bundler_version = nil
28
+ update_index = nil
29
+ ARGV.each_with_index do |a, i|
30
+ if update_index && update_index.succ == i && a =~ Gem::Version::ANCHORED_VERSION_PATTERN
31
+ bundler_version = a
32
+ end
33
+ next unless a =~ /\A--bundler(?:[= ](#{Gem::Version::VERSION_PATTERN}))?\z/
34
+ bundler_version = $1
35
+ update_index = i
36
+ end
37
+ bundler_version
38
+ end
39
+
40
+ def gemfile
41
+ gemfile = ENV["BUNDLE_GEMFILE"]
42
+ return gemfile if gemfile && !gemfile.empty?
43
+
44
+ File.expand_path("../Gemfile", __dir__)
45
+ end
46
+
47
+ def lockfile
48
+ lockfile =
49
+ case File.basename(gemfile)
50
+ when "gems.rb" then gemfile.sub(/\.rb$/, gemfile)
51
+ else "#{gemfile}.lock"
52
+ end
53
+ File.expand_path(lockfile)
54
+ end
55
+
56
+ def lockfile_version
57
+ return unless File.file?(lockfile)
58
+ lockfile_contents = File.read(lockfile)
59
+ return unless lockfile_contents =~ /\n\nBUNDLED WITH\n\s{2,}(#{Gem::Version::VERSION_PATTERN})\n/
60
+ Regexp.last_match(1)
61
+ end
62
+
63
+ def bundler_requirement
64
+ @bundler_requirement ||=
65
+ env_var_version || cli_arg_version ||
66
+ bundler_requirement_for(lockfile_version)
67
+ end
68
+
69
+ def bundler_requirement_for(version)
70
+ return "#{Gem::Requirement.default}.a" unless version
71
+
72
+ bundler_gem_version = Gem::Version.new(version)
73
+
74
+ requirement = bundler_gem_version.approximate_recommendation
75
+
76
+ return requirement unless Gem.rubygems_version < Gem::Version.new("2.7.0")
77
+
78
+ requirement += ".a" if bundler_gem_version.prerelease?
79
+
80
+ requirement
81
+ end
82
+
83
+ def load_bundler!
84
+ ENV["BUNDLE_GEMFILE"] ||= gemfile
85
+
86
+ activate_bundler
87
+ end
88
+
89
+ def activate_bundler
90
+ gem_error = activation_error_handling do
91
+ gem "bundler", bundler_requirement
92
+ end
93
+ return if gem_error.nil?
94
+ require_error = activation_error_handling do
95
+ require "bundler/version"
96
+ end
97
+ return if require_error.nil? && Gem::Requirement.new(bundler_requirement).satisfied_by?(Gem::Version.new(Bundler::VERSION))
98
+ warn "Activating bundler (#{bundler_requirement}) failed:\n#{gem_error.message}\n\nTo install the version of bundler this project requires, run `gem install bundler -v '#{bundler_requirement}'`"
99
+ exit 42
100
+ end
101
+
102
+ def activation_error_handling
103
+ yield
104
+ nil
105
+ rescue StandardError, LoadError => e
106
+ e
107
+ end
108
+ end
109
+
110
+ m.load_bundler!
111
+
112
+ if m.invoked_as_script?
113
+ load Gem.bin_path("bundler", "bundle")
114
+ end
data/bin/byebug ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby2.7
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'byebug' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("byebug", "byebug")
data/bin/coderay ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby2.7
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'coderay' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("coderay", "coderay")
data/bin/htmldiff ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby2.7
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'htmldiff' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("diff-lcs", "htmldiff")
data/bin/ldiff ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby2.7
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'ldiff' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("diff-lcs", "ldiff")