platform-api 3.3.0 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -83,7 +83,7 @@ module PlatformAPI
83
83
 
84
84
  # Get the default options.
85
85
  def self.default_options
86
- default_headers = {"Accept"=>"application/vnd.heroku+json; version=3", "User-Agent"=>"platform-api/3.3.0"}
86
+ default_headers = {"Accept"=>"application/vnd.heroku+json; version=3", "User-Agent"=>"platform-api/3.5.0"}
87
87
  {
88
88
  default_headers: default_headers,
89
89
  url: "https://api.heroku.com"
@@ -315,6 +315,13 @@ module PlatformAPI
315
315
  @dyno_resource ||= Dyno.new(@client)
316
316
  end
317
317
 
318
+ # Usage for an enterprise account at a daily resolution.
319
+ #
320
+ # @return [EnterpriseAccountDailyUsage]
321
+ def enterprise_account_daily_usage
322
+ @enterprise_account_daily_usage_resource ||= EnterpriseAccountDailyUsage.new(@client)
323
+ end
324
+
318
325
  # Enterprise account members are users with access to an enterprise account.
319
326
  #
320
327
  # @return [EnterpriseAccountMember]
@@ -322,18 +329,11 @@ module PlatformAPI
322
329
  @enterprise_account_member_resource ||= EnterpriseAccountMember.new(@client)
323
330
  end
324
331
 
325
- # Usage for an enterprise account at a daily resolution.
326
- #
327
- # @return [EnterpriseAccountUsageDaily]
328
- def enterprise_account_usage_daily
329
- @enterprise_account_usage_daily_resource ||= EnterpriseAccountUsageDaily.new(@client)
330
- end
331
-
332
332
  # Usage for an enterprise account at a monthly resolution.
333
333
  #
334
- # @return [EnterpriseAccountUsageMonthly]
335
- def enterprise_account_usage_monthly
336
- @enterprise_account_usage_monthly_resource ||= EnterpriseAccountUsageMonthly.new(@client)
334
+ # @return [EnterpriseAccountMonthlyUsage]
335
+ def enterprise_account_monthly_usage
336
+ @enterprise_account_monthly_usage_resource ||= EnterpriseAccountMonthlyUsage.new(@client)
337
337
  end
338
338
 
339
339
  # Enterprise accounts allow companies to manage their development teams and billing.
@@ -357,7 +357,7 @@ module PlatformAPI
357
357
  @formation_resource ||= Formation.new(@client)
358
358
  end
359
359
 
360
- # Identity Providers represent the SAML configuration of an Team.
360
+ # Identity Providers represent the SAML configuration of an Enterprise Account or Team.
361
361
  #
362
362
  # @return [IdentityProvider]
363
363
  def identity_provider
@@ -637,20 +637,13 @@ module PlatformAPI
637
637
  @space_transfer_resource ||= SpaceTransfer.new(@client)
638
638
  end
639
639
 
640
- # A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.
640
+ # A space is an isolated, highly available, secure app execution environment.
641
641
  #
642
642
  # @return [Space]
643
643
  def space
644
644
  @space_resource ||= Space.new(@client)
645
645
  end
646
646
 
647
- # [SSL Endpoint](https://devcenter.heroku.com/articles/ssl-endpoint) is a public address serving custom SSL cert for HTTPS traffic to a Heroku app. Note that an app must have the `ssl:endpoint` add-on installed before it can provision an SSL Endpoint using these APIs.
648
- #
649
- # @return [SSLEndpoint]
650
- def ssl_endpoint
651
- @ssl_endpoint_resource ||= SSLEndpoint.new(@client)
652
- end
653
-
654
647
  # Stacks are the different application execution environments available in the Heroku platform.
655
648
  #
656
649
  # @return [Stack]
@@ -686,6 +679,13 @@ module PlatformAPI
686
679
  @team_app_resource ||= TeamApp.new(@client)
687
680
  end
688
681
 
682
+ # Usage for an enterprise team at a daily resolution.
683
+ #
684
+ # @return [TeamDailyUsage]
685
+ def team_daily_usage
686
+ @team_daily_usage_resource ||= TeamDailyUsage.new(@client)
687
+ end
688
+
689
689
  # A team feature represents a feature enabled on a team account.
690
690
  #
691
691
  # @return [TeamFeature]
@@ -714,6 +714,13 @@ module PlatformAPI
714
714
  @team_member_resource ||= TeamMember.new(@client)
715
715
  end
716
716
 
717
+ # Usage for an enterprise team at a monthly resolution.
718
+ #
719
+ # @return [TeamMonthlyUsage]
720
+ def team_monthly_usage
721
+ @team_monthly_usage_resource ||= TeamMonthlyUsage.new(@client)
722
+ end
723
+
717
724
  # Tracks a Team's Preferences
718
725
  #
719
726
  # @return [TeamPreferences]
@@ -721,27 +728,13 @@ module PlatformAPI
721
728
  @team_preferences_resource ||= TeamPreferences.new(@client)
722
729
  end
723
730
 
724
- # A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.
731
+ # A space is an isolated, highly available, secure app execution environment.
725
732
  #
726
733
  # @return [TeamSpace]
727
734
  def team_space
728
735
  @team_space_resource ||= TeamSpace.new(@client)
729
736
  end
730
737
 
731
- # Usage for an enterprise team at a daily resolution.
732
- #
733
- # @return [TeamUsageDaily]
734
- def team_usage_daily
735
- @team_usage_daily_resource ||= TeamUsageDaily.new(@client)
736
- end
737
-
738
- # Usage for an enterprise team at a monthly resolution.
739
- #
740
- # @return [TeamUsageMonthly]
741
- def team_usage_monthly
742
- @team_usage_monthly_resource ||= TeamUsageMonthly.new(@client)
743
- end
744
-
745
738
  # Teams allow you to manage access to a shared group of applications and other resources.
746
739
  #
747
740
  # @return [Team]
@@ -783,13 +776,6 @@ module PlatformAPI
783
776
  def vpn_connection
784
777
  @vpn_connection_resource ||= VpnConnection.new(@client)
785
778
  end
786
-
787
- # Entities that have been whitelisted to be used by a Team. Deprecated in favor of [Allowed Add-on Service](#allowed-add-on-service) endpoints.
788
- #
789
- # @return [WhitelistedAddonService]
790
- def whitelisted_addon_service
791
- @whitelisted_addon_service_resource ||= WhitelistedAddonService.new(@client)
792
- end
793
779
  end
794
780
 
795
781
  private
@@ -839,7 +825,7 @@ module PlatformAPI
839
825
  @client.account.update(body)
840
826
  end
841
827
 
842
- # Delete account. Note that this action cannot be undone.
828
+ # Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.
843
829
  def delete()
844
830
  @client.account.delete()
845
831
  end
@@ -859,7 +845,7 @@ module PlatformAPI
859
845
  @client.account.update_by_user(account_email_or_account_id_or_account_self, body)
860
846
  end
861
847
 
862
- # Delete account. Note that this action cannot be undone.
848
+ # Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.
863
849
  #
864
850
  # @param account_email_or_account_id_or_account_self: unique email address of account or unique identifier of an account or Implicit reference to currently authorized user
865
851
  def delete_by_user(account_email_or_account_id_or_account_self)
@@ -1514,7 +1500,7 @@ module PlatformAPI
1514
1500
  @client = client
1515
1501
  end
1516
1502
 
1517
- # List existing events. Returns all events for one date, defaulting to current date. Order, actor, action, and type, and date query params can be specified as query parameters. For example, '/enterprise-accounts/:id/events?order=desc&actor=user@example.com&action=create&type=app&date=2020-09-30' would return events in descending order and only return app created events by the user with user@example.com email address.
1503
+ # List existing events. Returns all events for one day, defaulting to current day. Order, actor, action, and type, and day query params can be specified as query parameters. For example, '/enterprise-accounts/:id/events?order=desc&actor=user@example.com&action=create&type=app&day=2020-09-30' would return events in descending order and only return app created events by the user with user@example.com email address.
1518
1504
  #
1519
1505
  # @param enterprise_account_id: unique identifier of the enterprise account
1520
1506
  def list(enterprise_account_id)
@@ -1681,14 +1667,6 @@ module PlatformAPI
1681
1667
  @client = client
1682
1668
  end
1683
1669
 
1684
- # Create a new domain. Deprecated in favor of this same endpoint, but with a new required attribute of `sni_endpoint`. During the transitional phase sni_endpoint can be omitted entirely (current behavior), can be a valid id, or can be null which will skip auto-association.
1685
- #
1686
- # @param app_id_or_app_name: unique identifier of app or unique name of app
1687
- # @param body: the object to pass as the request payload
1688
- def create_deprecated(app_id_or_app_name, body = {})
1689
- @client.domain.create_deprecated(app_id_or_app_name, body)
1690
- end
1691
-
1692
1670
  # Create a new domain.
1693
1671
  #
1694
1672
  # @param app_id_or_app_name: unique identifier of app or unique name of app
@@ -1802,6 +1780,22 @@ module PlatformAPI
1802
1780
  end
1803
1781
  end
1804
1782
 
1783
+ # Usage for an enterprise account at a daily resolution.
1784
+ class EnterpriseAccountDailyUsage
1785
+ def initialize(client)
1786
+ @client = client
1787
+ end
1788
+
1789
+ # Retrieves usage for an enterprise account for a range of days. Start and end dates can be specified as query parameters using the date format YYYY-MM-DD. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#enterprise-account-list).
1790
+
1791
+ #
1792
+ # @param enterprise_account_id: unique identifier of the enterprise account
1793
+ # @param body: the object to pass as the request payload
1794
+ def info(enterprise_account_id, body = {})
1795
+ @client.enterprise_account_daily_usage.info(enterprise_account_id, body)
1796
+ end
1797
+ end
1798
+
1805
1799
  # Enterprise account members are users with access to an enterprise account.
1806
1800
  class EnterpriseAccountMember
1807
1801
  def initialize(client)
@@ -1841,31 +1835,19 @@ module PlatformAPI
1841
1835
  end
1842
1836
  end
1843
1837
 
1844
- # Usage for an enterprise account at a daily resolution.
1845
- class EnterpriseAccountUsageDaily
1846
- def initialize(client)
1847
- @client = client
1848
- end
1849
-
1850
- # Retrieves usage for an enterprise account for a range of days. Start and end dates can be specified as query parameters using the date format, YYYY-MM-DD format. For example, '/enterprise-accounts/example-account/usage/daily?start=2019-01-01&end=2019-01-31' specifies all days in January for 2019.
1851
- #
1852
- # @param enterprise_account_id: unique identifier of the enterprise account
1853
- def info(enterprise_account_id)
1854
- @client.enterprise_account_usage_daily.info(enterprise_account_id)
1855
- end
1856
- end
1857
-
1858
1838
  # Usage for an enterprise account at a monthly resolution.
1859
- class EnterpriseAccountUsageMonthly
1839
+ class EnterpriseAccountMonthlyUsage
1860
1840
  def initialize(client)
1861
1841
  @client = client
1862
1842
  end
1863
1843
 
1864
- # Retrieves usage for an enterprise account for a range of months. Start and end dates can be specified as query parameters using the date format, YYYY-MM format. For example, '/enterprise-accounts/example-account/usage/monthly?start=2019-01&end=2019-02' specifies usage in January and February for 2019. If no end date is specified, one month of usage is returned.
1844
+ # Retrieves usage for an enterprise account for a range of months. Start and end dates can be specified as query parameters using the date format YYYY-MM. If no end date is specified, one month of usage is returned. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#enterprise-account-list).
1845
+
1865
1846
  #
1866
1847
  # @param enterprise_account_id: unique identifier of the enterprise account
1867
- def info(enterprise_account_id)
1868
- @client.enterprise_account_usage_monthly.info(enterprise_account_id)
1848
+ # @param body: the object to pass as the request payload
1849
+ def info(enterprise_account_id, body = {})
1850
+ @client.enterprise_account_monthly_usage.info(enterprise_account_id, body)
1869
1851
  end
1870
1852
  end
1871
1853
 
@@ -1949,7 +1931,7 @@ module PlatformAPI
1949
1931
  end
1950
1932
  end
1951
1933
 
1952
- # Identity Providers represent the SAML configuration of an Team.
1934
+ # Identity Providers represent the SAML configuration of an Enterprise Account or Team.
1953
1935
  class IdentityProvider
1954
1936
  def initialize(client)
1955
1937
  @client = client
@@ -2400,9 +2382,9 @@ module PlatformAPI
2400
2382
 
2401
2383
  # List latest builds for each app in a pipeline
2402
2384
  #
2403
- # @param pipeline_id_or_pipeline_name: unique identifier of pipeline or name of pipeline
2404
- def list(pipeline_id_or_pipeline_name)
2405
- @client.pipeline_build.list(pipeline_id_or_pipeline_name)
2385
+ # @param pipeline_id: unique identifier of pipeline
2386
+ def list(pipeline_id)
2387
+ @client.pipeline_build.list(pipeline_id)
2406
2388
  end
2407
2389
  end
2408
2390
 
@@ -2505,9 +2487,9 @@ module PlatformAPI
2505
2487
 
2506
2488
  # List latest slug releases for each app in a pipeline
2507
2489
  #
2508
- # @param pipeline_id_or_pipeline_name: unique identifier of pipeline or name of pipeline
2509
- def list(pipeline_id_or_pipeline_name)
2510
- @client.pipeline_deployment.list(pipeline_id_or_pipeline_name)
2490
+ # @param pipeline_id: unique identifier of pipeline
2491
+ def list(pipeline_id)
2492
+ @client.pipeline_deployment.list(pipeline_id)
2511
2493
  end
2512
2494
  end
2513
2495
 
@@ -2554,9 +2536,9 @@ module PlatformAPI
2554
2536
 
2555
2537
  # List latest releases for each app in a pipeline
2556
2538
  #
2557
- # @param pipeline_id_or_pipeline_name: unique identifier of pipeline or name of pipeline
2558
- def list(pipeline_id_or_pipeline_name)
2559
- @client.pipeline_release.list(pipeline_id_or_pipeline_name)
2539
+ # @param pipeline_id: unique identifier of pipeline
2540
+ def list(pipeline_id)
2541
+ @client.pipeline_release.list(pipeline_id)
2560
2542
  end
2561
2543
  end
2562
2544
 
@@ -2568,9 +2550,9 @@ module PlatformAPI
2568
2550
 
2569
2551
  # The stack for a given pipeline, used for CI and Review Apps that have no stack defined in app.json.
2570
2552
  #
2571
- # @param pipeline_id_or_pipeline_name: unique identifier of pipeline or name of pipeline
2572
- def default_stack(pipeline_id_or_pipeline_name)
2573
- @client.pipeline_stack.default_stack(pipeline_id_or_pipeline_name)
2553
+ # @param pipeline_id: unique identifier of pipeline
2554
+ def default_stack(pipeline_id)
2555
+ @client.pipeline_stack.default_stack(pipeline_id)
2574
2556
  end
2575
2557
  end
2576
2558
 
@@ -2997,7 +2979,7 @@ module PlatformAPI
2997
2979
  end
2998
2980
  end
2999
2981
 
3000
- # A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.
2982
+ # A space is an isolated, highly available, secure app execution environment.
3001
2983
  class Space
3002
2984
  def initialize(client)
3003
2985
  @client = client
@@ -3038,53 +3020,6 @@ module PlatformAPI
3038
3020
  end
3039
3021
  end
3040
3022
 
3041
- # [SSL Endpoint](https://devcenter.heroku.com/articles/ssl-endpoint) is a public address serving custom SSL cert for HTTPS traffic to a Heroku app. Note that an app must have the `ssl:endpoint` add-on installed before it can provision an SSL Endpoint using these APIs.
3042
- class SSLEndpoint
3043
- def initialize(client)
3044
- @client = client
3045
- end
3046
-
3047
- # Create a new SSL endpoint.
3048
- #
3049
- # @param app_id_or_app_name: unique identifier of app or unique name of app
3050
- # @param body: the object to pass as the request payload
3051
- def create(app_id_or_app_name, body = {})
3052
- @client.ssl_endpoint.create(app_id_or_app_name, body)
3053
- end
3054
-
3055
- # Delete existing SSL endpoint.
3056
- #
3057
- # @param app_id_or_app_name: unique identifier of app or unique name of app
3058
- # @param ssl_endpoint_id_or_ssl_endpoint_name: unique identifier of this SSL endpoint or unique name for SSL endpoint
3059
- def delete(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name)
3060
- @client.ssl_endpoint.delete(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name)
3061
- end
3062
-
3063
- # Info for existing SSL endpoint.
3064
- #
3065
- # @param app_id_or_app_name: unique identifier of app or unique name of app
3066
- # @param ssl_endpoint_id_or_ssl_endpoint_name: unique identifier of this SSL endpoint or unique name for SSL endpoint
3067
- def info(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name)
3068
- @client.ssl_endpoint.info(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name)
3069
- end
3070
-
3071
- # List existing SSL endpoints.
3072
- #
3073
- # @param app_id_or_app_name: unique identifier of app or unique name of app
3074
- def list(app_id_or_app_name)
3075
- @client.ssl_endpoint.list(app_id_or_app_name)
3076
- end
3077
-
3078
- # Update an existing SSL endpoint.
3079
- #
3080
- # @param app_id_or_app_name: unique identifier of app or unique name of app
3081
- # @param ssl_endpoint_id_or_ssl_endpoint_name: unique identifier of this SSL endpoint or unique name for SSL endpoint
3082
- # @param body: the object to pass as the request payload
3083
- def update(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name, body = {})
3084
- @client.ssl_endpoint.update(app_id_or_app_name, ssl_endpoint_id_or_ssl_endpoint_name, body)
3085
- end
3086
- end
3087
-
3088
3023
  # Stacks are the different application execution environments available in the Heroku platform.
3089
3024
  class Stack
3090
3025
  def initialize(client)
@@ -3229,6 +3164,22 @@ module PlatformAPI
3229
3164
  end
3230
3165
  end
3231
3166
 
3167
+ # Usage for an enterprise team at a daily resolution.
3168
+ class TeamDailyUsage
3169
+ def initialize(client)
3170
+ @client = client
3171
+ end
3172
+
3173
+ # Retrieves usage for an enterprise team for a range of days. Start and end dates can be specified as query parameters using the date format YYYY-MM-DD. The team identifier can be found from the [team list endpoint](https://devcenter.heroku.com/articles/platform-api-reference#team-list).
3174
+
3175
+ #
3176
+ # @param team_id: unique identifier of team
3177
+ # @param body: the object to pass as the request payload
3178
+ def info(team_id, body = {})
3179
+ @client.team_daily_usage.info(team_id, body)
3180
+ end
3181
+ end
3182
+
3232
3183
  # A team feature represents a feature enabled on a team account.
3233
3184
  class TeamFeature
3234
3185
  def initialize(client)
@@ -3371,6 +3322,22 @@ module PlatformAPI
3371
3322
  end
3372
3323
  end
3373
3324
 
3325
+ # Usage for an enterprise team at a monthly resolution.
3326
+ class TeamMonthlyUsage
3327
+ def initialize(client)
3328
+ @client = client
3329
+ end
3330
+
3331
+ # Retrieves usage for an enterprise team for a range of months. Start and end dates can be specified as query parameters using the date, YYYY-MM. If no end date is specified, one month of usage is returned. The team identifier can be found from the [team list endpoint](https://devcenter.heroku.com/articles/platform-api-reference#team-list).
3332
+
3333
+ #
3334
+ # @param team_id: unique identifier of team
3335
+ # @param body: the object to pass as the request payload
3336
+ def info(team_id, body = {})
3337
+ @client.team_monthly_usage.info(team_id, body)
3338
+ end
3339
+ end
3340
+
3374
3341
  # Tracks a Team's Preferences
3375
3342
  class TeamPreferences
3376
3343
  def initialize(client)
@@ -3393,7 +3360,7 @@ module PlatformAPI
3393
3360
  end
3394
3361
  end
3395
3362
 
3396
- # A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.
3363
+ # A space is an isolated, highly available, secure app execution environment.
3397
3364
  class TeamSpace
3398
3365
  def initialize(client)
3399
3366
  @client = client
@@ -3407,34 +3374,6 @@ module PlatformAPI
3407
3374
  end
3408
3375
  end
3409
3376
 
3410
- # Usage for an enterprise team at a daily resolution.
3411
- class TeamUsageDaily
3412
- def initialize(client)
3413
- @client = client
3414
- end
3415
-
3416
- # Retrieves usage for an enterprise team for a range of days. Start and end dates can be specified as query parameters using the date format, YYYY-MM-DD format. For example, '/teams/example-team/usage/daily?start=2019-01-01&end=2019-01-31' specifies all days in January for 2019.
3417
- #
3418
- # @param team_id: unique identifier of team
3419
- def info(team_id)
3420
- @client.team_usage_daily.info(team_id)
3421
- end
3422
- end
3423
-
3424
- # Usage for an enterprise team at a monthly resolution.
3425
- class TeamUsageMonthly
3426
- def initialize(client)
3427
- @client = client
3428
- end
3429
-
3430
- # Retrieves usage for an enterprise team for a range of months. Start and end dates can be specified as query parameters using the date format, YYYY-MM format. For example, '/teams/example-team/usage/monthly?start=2019-01&end=2019-02' specifies usage in January and February for 2019. If no end date is specified, one month of usage is returned.
3431
- #
3432
- # @param team_id: unique identifier of team
3433
- def info(team_id)
3434
- @client.team_usage_monthly.info(team_id)
3435
- end
3436
- end
3437
-
3438
3377
  # Teams allow you to manage access to a shared group of applications and other resources.
3439
3378
  class Team
3440
3379
  def initialize(client)
@@ -3632,36 +3571,6 @@ module PlatformAPI
3632
3571
  end
3633
3572
  end
3634
3573
 
3635
- # Entities that have been whitelisted to be used by a Team. Deprecated in favor of [Allowed Add-on Service](#allowed-add-on-service) endpoints.
3636
- class WhitelistedAddonService
3637
- def initialize(client)
3638
- @client = client
3639
- end
3640
-
3641
- # List all whitelisted Add-on Services for a Team - Deprecated in favor of [`GET /teams/{team_name_or_id}/allowed-addon-services`](#allowed-add-on-service-list-by-team) endpoint.
3642
- #
3643
- # @param team_name_or_team_id: unique name of team or unique identifier of team
3644
- def list_by_team_deprecated(team_name_or_team_id)
3645
- @client.whitelisted_addon_service.list_by_team_deprecated(team_name_or_team_id)
3646
- end
3647
-
3648
- # Whitelist an Add-on Service - Deprecated in favor of [`POST /teams/{team_name_or_id}/allowed-addon-services`](#allowed-add-on-service-create-by-team) endpoint.
3649
- #
3650
- # @param team_name_or_team_id: unique name of team or unique identifier of team
3651
- # @param body: the object to pass as the request payload
3652
- def create_by_team_deprecated(team_name_or_team_id, body = {})
3653
- @client.whitelisted_addon_service.create_by_team_deprecated(team_name_or_team_id, body)
3654
- end
3655
-
3656
- # Remove a whitelisted entity - Deprecated in favor of [`DELETE /teams/{team_name_or_id}/allowed-addon-services/{allowed_add_on_service_id_or_name}`](#allowed-add-on-service-delete-by-team) endpoint.
3657
- #
3658
- # @param team_name_or_team_id: unique name of team or unique identifier of team
3659
- # @param whitelisted_addon_service_id_or_addon_service_name: unique identifier for this whitelisting entity or unique name of this add-on-service
3660
- def delete_by_team_deprecated(team_name_or_team_id, whitelisted_addon_service_id_or_addon_service_name)
3661
- @client.whitelisted_addon_service.delete_by_team_deprecated(team_name_or_team_id, whitelisted_addon_service_id_or_addon_service_name)
3662
- end
3663
- end
3664
-
3665
3574
  SCHEMA = Heroics::Schema.new(MultiJson.load(<<-'HEROICS_SCHEMA'))
3666
3575
  {
3667
3576
  "$schema": "http://interagent.github.io/interagent-hyper-schema",
@@ -4033,46 +3942,6 @@ module PlatformAPI
4033
3942
  "type": [
4034
3943
  "boolean"
4035
3944
  ]
4036
- },
4037
- "acknowledged_msa": {
4038
- "deprecated": true,
4039
- "description": "deprecated. whether account has acknowledged the MSA terms of service",
4040
- "example": false,
4041
- "readOnly": true,
4042
- "type": [
4043
- "boolean"
4044
- ]
4045
- },
4046
- "acknowledged_msa_at": {
4047
- "deprecated": true,
4048
- "description": "deprecated. when account has acknowledged the MSA terms of service",
4049
- "example": "2012-01-01T12:00:00Z",
4050
- "format": "date-time",
4051
- "readOnly": true,
4052
- "type": [
4053
- "string",
4054
- "null"
4055
- ]
4056
- },
4057
- "italian_customer_terms": {
4058
- "deprecated": true,
4059
- "description": "deprecated. whether account has acknowledged the Italian customer terms of service",
4060
- "example": "affirmatively_accepted",
4061
- "readOnly": true,
4062
- "type": [
4063
- "string",
4064
- "null"
4065
- ]
4066
- },
4067
- "italian_partner_terms": {
4068
- "deprecated": true,
4069
- "description": "deprecated. whether account has acknowledged the Italian provider terms of service",
4070
- "example": "affirmatively_accepted",
4071
- "readOnly": true,
4072
- "type": [
4073
- "string",
4074
- "null"
4075
- ]
4076
3945
  }
4077
3946
  },
4078
3947
  "links": [
@@ -4113,7 +3982,7 @@ module PlatformAPI
4113
3982
  "title": "Update"
4114
3983
  },
4115
3984
  {
4116
- "description": "Delete account. Note that this action cannot be undone.",
3985
+ "description": "Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.",
4117
3986
  "href": "/account",
4118
3987
  "method": "DELETE",
4119
3988
  "rel": "destroy",
@@ -4159,7 +4028,7 @@ module PlatformAPI
4159
4028
  "title": "Update By User"
4160
4029
  },
4161
4030
  {
4162
- "description": "Delete account. Note that this action cannot be undone.",
4031
+ "description": "Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.",
4163
4032
  "href": "/users/{(%23%2Fdefinitions%2Faccount%2Fdefinitions%2Fidentity)}",
4164
4033
  "method": "DELETE",
4165
4034
  "rel": "destroy",
@@ -4190,10 +4059,14 @@ module PlatformAPI
4190
4059
  },
4191
4060
  "identity_provider": {
4192
4061
  "description": "Identity Provider details for federated users.",
4062
+ "strictProperties": true,
4193
4063
  "properties": {
4194
4064
  "id": {
4195
4065
  "$ref": "#/definitions/identity-provider/definitions/id"
4196
4066
  },
4067
+ "name": {
4068
+ "$ref": "#/definitions/identity-provider/definitions/name"
4069
+ },
4197
4070
  "team": {
4198
4071
  "type": [
4199
4072
  "object"
@@ -4215,46 +4088,7 @@ module PlatformAPI
4215
4088
  }
4216
4089
  },
4217
4090
  "owner": {
4218
- "description": "entity that owns this identity provider",
4219
- "properties": {
4220
- "id": {
4221
- "description": "unique identifier of the owner",
4222
- "example": "01234567-89ab-cdef-0123-456789abcdef",
4223
- "format": "uuid",
4224
- "readOnly": true,
4225
- "type": [
4226
- "string"
4227
- ]
4228
- },
4229
- "name": {
4230
- "description": "name of the owner",
4231
- "example": "acme",
4232
- "readOnly": true,
4233
- "type": [
4234
- "string"
4235
- ]
4236
- },
4237
- "type": {
4238
- "description": "type of the owner",
4239
- "enum": [
4240
- "team",
4241
- "enterprise-account"
4242
- ],
4243
- "example": "team",
4244
- "readOnly": true,
4245
- "type": [
4246
- "string"
4247
- ]
4248
- }
4249
- },
4250
- "readOnly": false,
4251
- "required": [
4252
- "id",
4253
- "type"
4254
- ],
4255
- "type": [
4256
- "object"
4257
- ]
4091
+ "$ref": "#/definitions/identity-provider/definitions/owner"
4258
4092
  }
4259
4093
  },
4260
4094
  "type": [
@@ -4286,18 +4120,6 @@ module PlatformAPI
4286
4120
  "verified": {
4287
4121
  "$ref": "#/definitions/account/definitions/verified"
4288
4122
  },
4289
- "acknowledged_msa": {
4290
- "$ref": "#/definitions/account/definitions/acknowledged_msa"
4291
- },
4292
- "acknowledged_msa_at": {
4293
- "$ref": "#/definitions/account/definitions/acknowledged_msa_at"
4294
- },
4295
- "italian_customer_terms": {
4296
- "$ref": "#/definitions/account/definitions/italian_customer_terms"
4297
- },
4298
- "italian_partner_terms": {
4299
- "$ref": "#/definitions/account/definitions/italian_partner_terms"
4300
- },
4301
4123
  "country_of_residence": {
4302
4124
  "$ref": "#/definitions/account/definitions/country_of_residence"
4303
4125
  },
@@ -7623,6 +7445,15 @@ module PlatformAPI
7623
7445
  },
7624
7446
  "stack": {
7625
7447
  "$ref": "#/definitions/stack/definitions/identity"
7448
+ },
7449
+ "feature_flags": {
7450
+ "description": "unique name of app feature",
7451
+ "type": [
7452
+ "array"
7453
+ ],
7454
+ "items": {
7455
+ "$ref": "#/definitions/app-feature/definitions/name"
7456
+ }
7626
7457
  }
7627
7458
  },
7628
7459
  "type": [
@@ -8189,7 +8020,7 @@ module PlatformAPI
8189
8020
  },
8190
8021
  "links": [
8191
8022
  {
8192
- "description": "List existing events. Returns all events for one date, defaulting to current date. Order, actor, action, and type, and date query params can be specified as query parameters. For example, '/enterprise-accounts/:id/events?order=desc&actor=user@example.com&action=create&type=app&date=2020-09-30' would return events in descending order and only return app created events by the user with user@example.com email address.",
8023
+ "description": "List existing events. Returns all events for one day, defaulting to current day. Order, actor, action, and type, and day query params can be specified as query parameters. For example, '/enterprise-accounts/:id/events?order=desc&actor=user@example.com&action=create&type=app&day=2020-09-30' would return events in descending order and only return app created events by the user with user@example.com email address.",
8193
8024
  "href": "/enterprise-accounts/{(%23%2Fdefinitions%2Fenterprise-account%2Fdefinitions%2Fidentity)}/events",
8194
8025
  "method": "GET",
8195
8026
  "rel": "instances",
@@ -9204,30 +9035,6 @@ module PlatformAPI
9204
9035
  }
9205
9036
  },
9206
9037
  "links": [
9207
- {
9208
- "deactivate_on": "2021-10-31",
9209
- "description": "Create a new domain. Deprecated in favor of this same endpoint, but with a new required attribute of `sni_endpoint`. During the transitional phase sni_endpoint can be omitted entirely (current behavior), can be a valid id, or can be null which will skip auto-association.",
9210
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/domains",
9211
- "method": "POST",
9212
- "rel": "create",
9213
- "schema": {
9214
- "properties": {
9215
- "hostname": {
9216
- "$ref": "#/definitions/domain/definitions/hostname"
9217
- }
9218
- },
9219
- "required": [
9220
- "hostname"
9221
- ],
9222
- "type": [
9223
- "object"
9224
- ]
9225
- },
9226
- "targetSchema": {
9227
- "$ref": "#/definitions/domain"
9228
- },
9229
- "title": "Create - Deprecated"
9230
- },
9231
9038
  {
9232
9039
  "description": "Create a new domain.",
9233
9040
  "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/domains",
@@ -9839,17 +9646,215 @@ module PlatformAPI
9839
9646
  }
9840
9647
  }
9841
9648
  },
9842
- "enterprise-account-member": {
9649
+ "enterprise-account-daily-usage": {
9843
9650
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
9844
- "description": "Enterprise account members are users with access to an enterprise account.",
9651
+ "description": "Usage for an enterprise account at a daily resolution.",
9845
9652
  "stability": "development",
9846
9653
  "strictProperties": true,
9847
- "title": "Heroku Platform API - Enterprise Account Member",
9654
+ "title": "Heroku Platform API - Enterprise Account Daily Usage",
9848
9655
  "type": [
9849
9656
  "object"
9850
9657
  ],
9851
9658
  "definitions": {
9852
- "id": {
9659
+ "addons": {
9660
+ "description": "total add-on credits used",
9661
+ "example": 250.0,
9662
+ "readOnly": true,
9663
+ "type": [
9664
+ "number"
9665
+ ]
9666
+ },
9667
+ "data": {
9668
+ "description": "total add-on credits used for first party add-ons",
9669
+ "example": 34.89,
9670
+ "readOnly": true,
9671
+ "type": [
9672
+ "number"
9673
+ ]
9674
+ },
9675
+ "date": {
9676
+ "description": "date of the usage",
9677
+ "example": "2019-01-01",
9678
+ "format": "date",
9679
+ "readOnly": true,
9680
+ "type": [
9681
+ "string"
9682
+ ]
9683
+ },
9684
+ "dynos": {
9685
+ "description": "dynos used",
9686
+ "example": 1.548,
9687
+ "readOnly": true,
9688
+ "type": [
9689
+ "number"
9690
+ ]
9691
+ },
9692
+ "id": {
9693
+ "description": "enterprise account identifier",
9694
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
9695
+ "format": "uuid",
9696
+ "readOnly": true,
9697
+ "type": [
9698
+ "string"
9699
+ ]
9700
+ },
9701
+ "name": {
9702
+ "description": "name of the enterprise account",
9703
+ "example": "example-co",
9704
+ "readOnly": true,
9705
+ "type": [
9706
+ "string"
9707
+ ]
9708
+ },
9709
+ "partner": {
9710
+ "description": "total add-on credits used for third party add-ons",
9711
+ "example": 12.34,
9712
+ "readOnly": true,
9713
+ "type": [
9714
+ "number"
9715
+ ]
9716
+ },
9717
+ "space": {
9718
+ "description": "space credits used",
9719
+ "example": 1.548,
9720
+ "readOnly": true,
9721
+ "type": [
9722
+ "number"
9723
+ ]
9724
+ },
9725
+ "start_date": {
9726
+ "description": "range start date",
9727
+ "example": "2019-01-25",
9728
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
9729
+ "readOnly": true,
9730
+ "type": [
9731
+ "string"
9732
+ ]
9733
+ },
9734
+ "end_date": {
9735
+ "description": "range end date",
9736
+ "example": "2019-02-25",
9737
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
9738
+ "readOnly": true,
9739
+ "type": [
9740
+ "string"
9741
+ ]
9742
+ }
9743
+ },
9744
+ "links": [
9745
+ {
9746
+ "description": "Retrieves usage for an enterprise account for a range of days. Start and end dates can be specified as query parameters using the date format YYYY-MM-DD. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#enterprise-account-list).\n",
9747
+ "href": "/enterprise-accounts/{(%23%2Fdefinitions%2Fenterprise-account%2Fdefinitions%2Fid)}/usage/daily",
9748
+ "method": "GET",
9749
+ "rel": "instances",
9750
+ "title": "Info",
9751
+ "schema": {
9752
+ "properties": {
9753
+ "start": {
9754
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/start_date"
9755
+ },
9756
+ "end": {
9757
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/end_date"
9758
+ }
9759
+ },
9760
+ "required": [
9761
+ "start"
9762
+ ],
9763
+ "type": [
9764
+ "object"
9765
+ ]
9766
+ },
9767
+ "targetSchema": {
9768
+ "items": {
9769
+ "$ref": "#/definitions/enterprise-account-daily-usage"
9770
+ },
9771
+ "type": [
9772
+ "array"
9773
+ ]
9774
+ }
9775
+ }
9776
+ ],
9777
+ "properties": {
9778
+ "addons": {
9779
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/addons"
9780
+ },
9781
+ "teams": {
9782
+ "description": "usage by team",
9783
+ "type": [
9784
+ "array"
9785
+ ],
9786
+ "items": {
9787
+ "type": [
9788
+ "object"
9789
+ ],
9790
+ "properties": {
9791
+ "addons": {
9792
+ "$ref": "#/definitions/team-daily-usage/definitions/addons"
9793
+ },
9794
+ "apps": {
9795
+ "description": "app usage in the team",
9796
+ "type": [
9797
+ "array"
9798
+ ],
9799
+ "items": {
9800
+ "$ref": "#/definitions/team-daily-usage/definitions/app_usage_daily"
9801
+ }
9802
+ },
9803
+ "data": {
9804
+ "$ref": "#/definitions/team-daily-usage/definitions/data"
9805
+ },
9806
+ "dynos": {
9807
+ "$ref": "#/definitions/team-daily-usage/definitions/dynos"
9808
+ },
9809
+ "id": {
9810
+ "$ref": "#/definitions/team-daily-usage/definitions/id"
9811
+ },
9812
+ "name": {
9813
+ "$ref": "#/definitions/team-daily-usage/definitions/name"
9814
+ },
9815
+ "partner": {
9816
+ "$ref": "#/definitions/team-daily-usage/definitions/partner"
9817
+ },
9818
+ "space": {
9819
+ "$ref": "#/definitions/team-daily-usage/definitions/space"
9820
+ }
9821
+ }
9822
+ }
9823
+ },
9824
+ "data": {
9825
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/data"
9826
+ },
9827
+ "date": {
9828
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/date"
9829
+ },
9830
+ "dynos": {
9831
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/dynos"
9832
+ },
9833
+ "id": {
9834
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/id"
9835
+ },
9836
+ "name": {
9837
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/name"
9838
+ },
9839
+ "partner": {
9840
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/partner"
9841
+ },
9842
+ "space": {
9843
+ "$ref": "#/definitions/enterprise-account-daily-usage/definitions/space"
9844
+ }
9845
+ }
9846
+ },
9847
+ "enterprise-account-member": {
9848
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
9849
+ "description": "Enterprise account members are users with access to an enterprise account.",
9850
+ "stability": "development",
9851
+ "strictProperties": true,
9852
+ "title": "Heroku Platform API - Enterprise Account Member",
9853
+ "type": [
9854
+ "object"
9855
+ ],
9856
+ "definitions": {
9857
+ "id": {
9853
9858
  "description": "unique identifier of the member",
9854
9859
  "example": "01234567-89ab-cdef-0123-456789abcdef",
9855
9860
  "format": "uuid",
@@ -10092,12 +10097,12 @@ module PlatformAPI
10092
10097
  }
10093
10098
  }
10094
10099
  },
10095
- "enterprise-account-usage-daily": {
10100
+ "enterprise-account-monthly-usage": {
10096
10101
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
10097
- "description": "Usage for an enterprise account at a daily resolution.",
10102
+ "description": "Usage for an enterprise account at a monthly resolution.",
10098
10103
  "stability": "development",
10099
10104
  "strictProperties": true,
10100
- "title": "Heroku Platform API - Enterprise Account Daily Usage",
10105
+ "title": "Heroku Platform API - Enterprise Account Monthly Usage",
10101
10106
  "type": [
10102
10107
  "object"
10103
10108
  ],
@@ -10110,21 +10115,20 @@ module PlatformAPI
10110
10115
  "number"
10111
10116
  ]
10112
10117
  },
10113
- "data": {
10114
- "description": "total add-on credits used for first party add-ons",
10115
- "example": 34.89,
10118
+ "connect": {
10119
+ "description": "average connect rows synced",
10120
+ "example": 15000,
10116
10121
  "readOnly": true,
10117
10122
  "type": [
10118
10123
  "number"
10119
10124
  ]
10120
10125
  },
10121
- "date": {
10122
- "description": "date of the usage",
10123
- "example": "2019-01-01",
10124
- "format": "date",
10126
+ "data": {
10127
+ "description": "total add-on credits used for first party add-ons",
10128
+ "example": 34.89,
10125
10129
  "readOnly": true,
10126
10130
  "type": [
10127
- "string"
10131
+ "number"
10128
10132
  ]
10129
10133
  },
10130
10134
  "dynos": {
@@ -10135,6 +10139,15 @@ module PlatformAPI
10135
10139
  "number"
10136
10140
  ]
10137
10141
  },
10142
+ "month": {
10143
+ "description": "year and month of the usage",
10144
+ "example": "2019-01",
10145
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
10146
+ "readOnly": true,
10147
+ "type": [
10148
+ "string"
10149
+ ]
10150
+ },
10138
10151
  "id": {
10139
10152
  "description": "enterprise account identifier",
10140
10153
  "example": "01234567-89ab-cdef-0123-456789abcdef",
@@ -10167,18 +10180,52 @@ module PlatformAPI
10167
10180
  "type": [
10168
10181
  "number"
10169
10182
  ]
10183
+ },
10184
+ "start_date": {
10185
+ "description": "range start date",
10186
+ "example": "2019-01",
10187
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
10188
+ "readOnly": true,
10189
+ "type": [
10190
+ "string"
10191
+ ]
10192
+ },
10193
+ "end_date": {
10194
+ "description": "range end date",
10195
+ "example": "2019-02",
10196
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
10197
+ "readOnly": true,
10198
+ "type": [
10199
+ "string"
10200
+ ]
10170
10201
  }
10171
10202
  },
10172
10203
  "links": [
10173
10204
  {
10174
- "description": "Retrieves usage for an enterprise account for a range of days. Start and end dates can be specified as query parameters using the date format, YYYY-MM-DD format. For example, '/enterprise-accounts/example-account/usage/daily?start=2019-01-01&end=2019-01-31' specifies all days in January for 2019.",
10175
- "href": "/enterprise-accounts/{(%23%2Fdefinitions%2Fenterprise-account%2Fdefinitions%2Fid)}/usage/daily",
10205
+ "description": "Retrieves usage for an enterprise account for a range of months. Start and end dates can be specified as query parameters using the date format YYYY-MM. If no end date is specified, one month of usage is returned. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#enterprise-account-list).\n",
10206
+ "href": "/enterprise-accounts/{(%23%2Fdefinitions%2Fenterprise-account%2Fdefinitions%2Fid)}/usage/monthly",
10176
10207
  "method": "GET",
10177
10208
  "rel": "instances",
10178
10209
  "title": "Info",
10210
+ "schema": {
10211
+ "properties": {
10212
+ "start": {
10213
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/start_date"
10214
+ },
10215
+ "end": {
10216
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/end_date"
10217
+ }
10218
+ },
10219
+ "required": [
10220
+ "start"
10221
+ ],
10222
+ "type": [
10223
+ "object"
10224
+ ]
10225
+ },
10179
10226
  "targetSchema": {
10180
10227
  "items": {
10181
- "$ref": "#/definitions/enterprise-account-usage-daily"
10228
+ "$ref": "#/definitions/enterprise-account-monthly-usage"
10182
10229
  },
10183
10230
  "type": [
10184
10231
  "array"
@@ -10188,7 +10235,7 @@ module PlatformAPI
10188
10235
  ],
10189
10236
  "properties": {
10190
10237
  "addons": {
10191
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/addons"
10238
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/addons"
10192
10239
  },
10193
10240
  "teams": {
10194
10241
  "description": "usage by team",
@@ -10201,7 +10248,7 @@ module PlatformAPI
10201
10248
  ],
10202
10249
  "properties": {
10203
10250
  "addons": {
10204
- "$ref": "#/definitions/team-usage-daily/definitions/addons"
10251
+ "$ref": "#/definitions/team-monthly-usage/definitions/addons"
10205
10252
  },
10206
10253
  "apps": {
10207
10254
  "description": "app usage in the team",
@@ -10209,257 +10256,85 @@ module PlatformAPI
10209
10256
  "array"
10210
10257
  ],
10211
10258
  "items": {
10212
- "$ref": "#/definitions/team-usage-daily/definitions/app_usage_daily"
10259
+ "$ref": "#/definitions/team-monthly-usage/definitions/app_usage_monthly"
10213
10260
  }
10214
10261
  },
10262
+ "connect": {
10263
+ "$ref": "#/definitions/team-monthly-usage/definitions/connect"
10264
+ },
10215
10265
  "data": {
10216
- "$ref": "#/definitions/team-usage-daily/definitions/data"
10266
+ "$ref": "#/definitions/team-monthly-usage/definitions/data"
10217
10267
  },
10218
10268
  "dynos": {
10219
- "$ref": "#/definitions/team-usage-daily/definitions/dynos"
10269
+ "$ref": "#/definitions/team-monthly-usage/definitions/dynos"
10220
10270
  },
10221
10271
  "id": {
10222
- "$ref": "#/definitions/team-usage-daily/definitions/id"
10272
+ "$ref": "#/definitions/team-monthly-usage/definitions/id"
10223
10273
  },
10224
10274
  "name": {
10225
- "$ref": "#/definitions/team-usage-daily/definitions/name"
10275
+ "$ref": "#/definitions/team-monthly-usage/definitions/name"
10226
10276
  },
10227
10277
  "partner": {
10228
- "$ref": "#/definitions/team-usage-daily/definitions/partner"
10278
+ "$ref": "#/definitions/team-monthly-usage/definitions/partner"
10229
10279
  },
10230
10280
  "space": {
10231
- "$ref": "#/definitions/team-usage-daily/definitions/space"
10281
+ "$ref": "#/definitions/team-monthly-usage/definitions/space"
10232
10282
  }
10233
10283
  }
10234
10284
  }
10235
10285
  },
10236
- "data": {
10237
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/data"
10286
+ "connect": {
10287
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/connect"
10238
10288
  },
10239
- "date": {
10240
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/date"
10289
+ "data": {
10290
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/data"
10241
10291
  },
10242
10292
  "dynos": {
10243
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/dynos"
10293
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/dynos"
10244
10294
  },
10245
10295
  "id": {
10246
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/id"
10296
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/id"
10297
+ },
10298
+ "month": {
10299
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/month"
10247
10300
  },
10248
10301
  "name": {
10249
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/name"
10302
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/name"
10250
10303
  },
10251
10304
  "partner": {
10252
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/partner"
10305
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/partner"
10253
10306
  },
10254
10307
  "space": {
10255
- "$ref": "#/definitions/enterprise-account-usage-daily/definitions/space"
10308
+ "$ref": "#/definitions/enterprise-account-monthly-usage/definitions/space"
10256
10309
  }
10257
10310
  }
10258
10311
  },
10259
- "enterprise-account-usage-monthly": {
10312
+ "enterprise-account": {
10260
10313
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
10261
- "description": "Usage for an enterprise account at a monthly resolution.",
10314
+ "description": "Enterprise accounts allow companies to manage their development teams and billing.",
10262
10315
  "stability": "development",
10263
10316
  "strictProperties": true,
10264
- "title": "Heroku Platform API - Enterprise Account Monthly Usage",
10317
+ "title": "Heroku Platform API - Enterprise Account",
10265
10318
  "type": [
10266
10319
  "object"
10267
10320
  ],
10268
10321
  "definitions": {
10269
- "addons": {
10270
- "description": "total add-on credits used",
10271
- "example": 250.0,
10322
+ "created_at": {
10323
+ "description": "when the enterprise account was created",
10324
+ "example": "2012-01-01T12:00:00Z",
10325
+ "format": "date-time",
10272
10326
  "readOnly": true,
10273
10327
  "type": [
10274
- "number"
10328
+ "string"
10275
10329
  ]
10276
10330
  },
10277
- "connect": {
10278
- "description": "average connect rows synced",
10279
- "example": 15000,
10331
+ "id": {
10332
+ "description": "unique identifier of the enterprise account",
10333
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
10334
+ "format": "uuid",
10280
10335
  "readOnly": true,
10281
10336
  "type": [
10282
- "number"
10283
- ]
10284
- },
10285
- "data": {
10286
- "description": "total add-on credits used for first party add-ons",
10287
- "example": 34.89,
10288
- "readOnly": true,
10289
- "type": [
10290
- "number"
10291
- ]
10292
- },
10293
- "dynos": {
10294
- "description": "dynos used",
10295
- "example": 1.548,
10296
- "readOnly": true,
10297
- "type": [
10298
- "number"
10299
- ]
10300
- },
10301
- "month": {
10302
- "description": "year and month of the usage",
10303
- "example": "2019-01",
10304
- "pattern": "^[0-9]{4}-[0-9]{2}$",
10305
- "readOnly": true,
10306
- "type": [
10307
- "string"
10308
- ]
10309
- },
10310
- "id": {
10311
- "description": "enterprise account identifier",
10312
- "example": "01234567-89ab-cdef-0123-456789abcdef",
10313
- "format": "uuid",
10314
- "readOnly": true,
10315
- "type": [
10316
- "string"
10317
- ]
10318
- },
10319
- "name": {
10320
- "description": "name of the enterprise account",
10321
- "example": "example-co",
10322
- "readOnly": true,
10323
- "type": [
10324
- "string"
10325
- ]
10326
- },
10327
- "partner": {
10328
- "description": "total add-on credits used for third party add-ons",
10329
- "example": 12.34,
10330
- "readOnly": true,
10331
- "type": [
10332
- "number"
10333
- ]
10334
- },
10335
- "space": {
10336
- "description": "space credits used",
10337
- "example": 1.548,
10338
- "readOnly": true,
10339
- "type": [
10340
- "number"
10341
- ]
10342
- }
10343
- },
10344
- "links": [
10345
- {
10346
- "description": "Retrieves usage for an enterprise account for a range of months. Start and end dates can be specified as query parameters using the date format, YYYY-MM format. For example, '/enterprise-accounts/example-account/usage/monthly?start=2019-01&end=2019-02' specifies usage in January and February for 2019. If no end date is specified, one month of usage is returned.",
10347
- "href": "/enterprise-accounts/{(%23%2Fdefinitions%2Fenterprise-account%2Fdefinitions%2Fid)}/usage/monthly",
10348
- "method": "GET",
10349
- "rel": "instances",
10350
- "title": "Info",
10351
- "targetSchema": {
10352
- "items": {
10353
- "$ref": "#/definitions/enterprise-account-usage-monthly"
10354
- },
10355
- "type": [
10356
- "array"
10357
- ]
10358
- }
10359
- }
10360
- ],
10361
- "properties": {
10362
- "addons": {
10363
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/addons"
10364
- },
10365
- "teams": {
10366
- "description": "usage by team",
10367
- "type": [
10368
- "array"
10369
- ],
10370
- "items": {
10371
- "type": [
10372
- "object"
10373
- ],
10374
- "properties": {
10375
- "addons": {
10376
- "$ref": "#/definitions/team-usage-monthly/definitions/addons"
10377
- },
10378
- "apps": {
10379
- "description": "app usage in the team",
10380
- "type": [
10381
- "array"
10382
- ],
10383
- "items": {
10384
- "$ref": "#/definitions/team-usage-monthly/definitions/app_usage_monthly"
10385
- }
10386
- },
10387
- "connect": {
10388
- "$ref": "#/definitions/team-usage-monthly/definitions/connect"
10389
- },
10390
- "data": {
10391
- "$ref": "#/definitions/team-usage-monthly/definitions/data"
10392
- },
10393
- "dynos": {
10394
- "$ref": "#/definitions/team-usage-monthly/definitions/dynos"
10395
- },
10396
- "id": {
10397
- "$ref": "#/definitions/team-usage-monthly/definitions/id"
10398
- },
10399
- "name": {
10400
- "$ref": "#/definitions/team-usage-monthly/definitions/name"
10401
- },
10402
- "partner": {
10403
- "$ref": "#/definitions/team-usage-monthly/definitions/partner"
10404
- },
10405
- "space": {
10406
- "$ref": "#/definitions/team-usage-monthly/definitions/space"
10407
- }
10408
- }
10409
- }
10410
- },
10411
- "connect": {
10412
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/connect"
10413
- },
10414
- "data": {
10415
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/data"
10416
- },
10417
- "dynos": {
10418
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/dynos"
10419
- },
10420
- "id": {
10421
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/id"
10422
- },
10423
- "month": {
10424
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/month"
10425
- },
10426
- "name": {
10427
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/name"
10428
- },
10429
- "partner": {
10430
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/partner"
10431
- },
10432
- "space": {
10433
- "$ref": "#/definitions/enterprise-account-usage-monthly/definitions/space"
10434
- }
10435
- }
10436
- },
10437
- "enterprise-account": {
10438
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
10439
- "description": "Enterprise accounts allow companies to manage their development teams and billing.",
10440
- "stability": "development",
10441
- "strictProperties": true,
10442
- "title": "Heroku Platform API - Enterprise Account",
10443
- "type": [
10444
- "object"
10445
- ],
10446
- "definitions": {
10447
- "created_at": {
10448
- "description": "when the enterprise account was created",
10449
- "example": "2012-01-01T12:00:00Z",
10450
- "format": "date-time",
10451
- "readOnly": true,
10452
- "type": [
10453
- "string"
10454
- ]
10455
- },
10456
- "id": {
10457
- "description": "unique identifier of the enterprise account",
10458
- "example": "01234567-89ab-cdef-0123-456789abcdef",
10459
- "format": "uuid",
10460
- "readOnly": true,
10461
- "type": [
10462
- "string"
10337
+ "string"
10463
10338
  ]
10464
10339
  },
10465
10340
  "identity": {
@@ -10469,6 +10344,25 @@ module PlatformAPI
10469
10344
  }
10470
10345
  ]
10471
10346
  },
10347
+ "identity_provider": {
10348
+ "description": "Identity Provider associated with the Enterprise Account",
10349
+ "strictProperties": true,
10350
+ "type": [
10351
+ "null",
10352
+ "object"
10353
+ ],
10354
+ "properties": {
10355
+ "id": {
10356
+ "$ref": "#/definitions/identity-provider/definitions/id"
10357
+ },
10358
+ "name": {
10359
+ "$ref": "#/definitions/identity-provider/definitions/name"
10360
+ },
10361
+ "owner": {
10362
+ "$ref": "#/definitions/identity-provider/definitions/owner"
10363
+ }
10364
+ }
10365
+ },
10472
10366
  "name": {
10473
10367
  "description": "unique name of the enterprise account",
10474
10368
  "example": "example",
@@ -10571,27 +10465,7 @@ module PlatformAPI
10571
10465
  "$ref": "#/definitions/enterprise-account/definitions/trial"
10572
10466
  },
10573
10467
  "identity_provider": {
10574
- "description": "Identity Provider associated with the Enterprise Account",
10575
- "strictProperties": true,
10576
- "type": [
10577
- "null",
10578
- "object"
10579
- ],
10580
- "properties": {
10581
- "id": {
10582
- "$ref": "#/definitions/identity-provider/definitions/id"
10583
- },
10584
- "name": {
10585
- "description": "user-friendly unique identifier for this identity provider",
10586
- "example": "acme-sso",
10587
- "type": [
10588
- "string"
10589
- ]
10590
- },
10591
- "owner": {
10592
- "$ref": "#/definitions/identity-provider/definitions/owner"
10593
- }
10594
- }
10468
+ "$ref": "#/definitions/enterprise-account/definitions/identity_provider"
10595
10469
  }
10596
10470
  }
10597
10471
  },
@@ -10888,7 +10762,7 @@ module PlatformAPI
10888
10762
  }
10889
10763
  },
10890
10764
  "identity-provider": {
10891
- "description": "Identity Providers represent the SAML configuration of an Team.",
10765
+ "description": "Identity Providers represent the SAML configuration of an Enterprise Account or Team.",
10892
10766
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
10893
10767
  "stability": "production",
10894
10768
  "strictProperties": true,
@@ -10931,6 +10805,13 @@ module PlatformAPI
10931
10805
  "string"
10932
10806
  ]
10933
10807
  },
10808
+ "name": {
10809
+ "description": "user-friendly unique identifier for this identity provider",
10810
+ "example": "acme-sso",
10811
+ "type": [
10812
+ "string"
10813
+ ]
10814
+ },
10934
10815
  "slo_target_url": {
10935
10816
  "description": "single log out URL for this identity provider",
10936
10817
  "example": "https://example.com/idp/logout",
@@ -13474,7 +13355,7 @@ module PlatformAPI
13474
13355
  "links": [
13475
13356
  {
13476
13357
  "description": "List latest builds for each app in a pipeline",
13477
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/latest-builds",
13358
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/latest-builds",
13478
13359
  "method": "GET",
13479
13360
  "rel": "instances",
13480
13361
  "targetSchema": {
@@ -13824,7 +13705,7 @@ module PlatformAPI
13824
13705
  "links": [
13825
13706
  {
13826
13707
  "description": "List latest slug releases for each app in a pipeline",
13827
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/latest-deployments",
13708
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/latest-deployments",
13828
13709
  "method": "GET",
13829
13710
  "rel": "instances",
13830
13711
  "targetSchema": {
@@ -14173,7 +14054,7 @@ module PlatformAPI
14173
14054
  "links": [
14174
14055
  {
14175
14056
  "description": "List latest releases for each app in a pipeline",
14176
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/latest-releases",
14057
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/latest-releases",
14177
14058
  "method": "GET",
14178
14059
  "rel": "instances",
14179
14060
  "targetSchema": {
@@ -14200,7 +14081,7 @@ module PlatformAPI
14200
14081
  "links": [
14201
14082
  {
14202
14083
  "description": "The stack for a given pipeline, used for CI and Review Apps that have no stack defined in app.json.",
14203
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/pipeline-stack",
14084
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/pipeline-stack",
14204
14085
  "method": "GET",
14205
14086
  "rel": "self",
14206
14087
  "targetSchema": {
@@ -14510,11 +14391,11 @@ module PlatformAPI
14510
14391
  "targetSchema": {
14511
14392
  "items": {
14512
14393
  "$ref": "#/definitions/pipeline"
14513
- }
14394
+ },
14395
+ "type": [
14396
+ "array"
14397
+ ]
14514
14398
  },
14515
- "type": [
14516
- "array"
14517
- ],
14518
14399
  "title": "List"
14519
14400
  }
14520
14401
  ],
@@ -16213,6 +16094,18 @@ module PlatformAPI
16213
16094
  "object"
16214
16095
  ],
16215
16096
  "definitions": {
16097
+ "ca_signed?": {
16098
+ "readOnly": true,
16099
+ "type": [
16100
+ "boolean"
16101
+ ]
16102
+ },
16103
+ "cert_domains": {
16104
+ "readOnly": true,
16105
+ "type": [
16106
+ "array"
16107
+ ]
16108
+ },
16216
16109
  "certificate_chain": {
16217
16110
  "description": "raw contents of the public certificate chain (eg: .crt or .pem file)",
16218
16111
  "example": "-----BEGIN CERTIFICATE----- ...",
@@ -16221,20 +16114,38 @@ module PlatformAPI
16221
16114
  "string"
16222
16115
  ]
16223
16116
  },
16224
- "cname": {
16225
- "description": "deprecated; refer to GET /apps/:id/domains for valid CNAMEs for this app",
16226
- "example": "example.herokussl.com",
16117
+ "created_at": {
16118
+ "description": "when endpoint was created",
16119
+ "example": "2012-01-01T12:00:00Z",
16120
+ "format": "date-time",
16121
+ "readOnly": true,
16122
+ "type": [
16123
+ "string"
16124
+ ]
16125
+ },
16126
+ "domains": {
16127
+ "description": "domains associated with this SSL certificate",
16128
+ "type": [
16129
+ "array"
16130
+ ],
16131
+ "readOnly": true,
16132
+ "items": {
16133
+ "$ref": "#/definitions/domain/definitions/id"
16134
+ }
16135
+ },
16136
+ "display_name": {
16137
+ "description": "unique name for SSL certificate",
16138
+ "example": "example",
16139
+ "pattern": "^[a-z][a-z0-9-]{2,29}$",
16227
16140
  "readOnly": false,
16228
16141
  "type": [
16229
16142
  "string",
16230
16143
  "null"
16231
16144
  ]
16232
16145
  },
16233
- "created_at": {
16234
- "description": "when endpoint was created",
16235
- "example": "2012-01-01T12:00:00Z",
16236
- "format": "date-time",
16146
+ "expires_at": {
16237
16147
  "readOnly": true,
16148
+ "format": "date-time",
16238
16149
  "type": [
16239
16150
  "string"
16240
16151
  ]
@@ -16258,6 +16169,12 @@ module PlatformAPI
16258
16169
  }
16259
16170
  ]
16260
16171
  },
16172
+ "issuer": {
16173
+ "readOnly": true,
16174
+ "type": [
16175
+ "string"
16176
+ ]
16177
+ },
16261
16178
  "name": {
16262
16179
  "description": "unique name for SNI endpoint",
16263
16180
  "example": "example",
@@ -16275,33 +16192,32 @@ module PlatformAPI
16275
16192
  "string"
16276
16193
  ]
16277
16194
  },
16278
- "updated_at": {
16279
- "description": "when SNI endpoint was updated",
16280
- "example": "2012-01-01T12:00:00Z",
16281
- "format": "date-time",
16195
+ "self_signed?": {
16282
16196
  "readOnly": true,
16283
16197
  "type": [
16284
- "string"
16198
+ "boolean"
16285
16199
  ]
16286
16200
  },
16287
- "domains": {
16288
- "description": "domains associated with this SSL certificate",
16201
+ "starts_at": {
16202
+ "readOnly": true,
16203
+ "format": "date-time",
16289
16204
  "type": [
16290
- "array"
16291
- ],
16205
+ "string"
16206
+ ]
16207
+ },
16208
+ "subject": {
16292
16209
  "readOnly": true,
16293
- "items": {
16294
- "$ref": "#/definitions/domain/definitions/id"
16295
- }
16210
+ "type": [
16211
+ "string"
16212
+ ]
16296
16213
  },
16297
- "display_name": {
16298
- "description": "unique name for SSL certificate",
16299
- "example": "example",
16300
- "pattern": "^[a-z][a-z0-9-]{2,29}$",
16301
- "readOnly": false,
16214
+ "updated_at": {
16215
+ "description": "when SNI endpoint was updated",
16216
+ "example": "2012-01-01T12:00:00Z",
16217
+ "format": "date-time",
16218
+ "readOnly": true,
16302
16219
  "type": [
16303
- "string",
16304
- "null"
16220
+ "string"
16305
16221
  ]
16306
16222
  }
16307
16223
  },
@@ -16400,9 +16316,6 @@ module PlatformAPI
16400
16316
  "certificate_chain": {
16401
16317
  "$ref": "#/definitions/sni-endpoint/definitions/certificate_chain"
16402
16318
  },
16403
- "cname": {
16404
- "$ref": "#/definitions/sni-endpoint/definitions/cname"
16405
- },
16406
16319
  "created_at": {
16407
16320
  "$ref": "#/definitions/sni-endpoint/definitions/created_at"
16408
16321
  },
@@ -16443,25 +16356,25 @@ module PlatformAPI
16443
16356
  ],
16444
16357
  "properties": {
16445
16358
  "ca_signed?": {
16446
- "$ref": "#/definitions/ssl-endpoint/definitions/ca_signed?"
16359
+ "$ref": "#/definitions/sni-endpoint/definitions/ca_signed?"
16447
16360
  },
16448
16361
  "cert_domains": {
16449
- "$ref": "#/definitions/ssl-endpoint/definitions/cert_domains"
16362
+ "$ref": "#/definitions/sni-endpoint/definitions/cert_domains"
16450
16363
  },
16451
16364
  "expires_at": {
16452
- "$ref": "#/definitions/ssl-endpoint/definitions/expires_at"
16365
+ "$ref": "#/definitions/sni-endpoint/definitions/expires_at"
16453
16366
  },
16454
16367
  "issuer": {
16455
- "$ref": "#/definitions/ssl-endpoint/definitions/issuer"
16368
+ "$ref": "#/definitions/sni-endpoint/definitions/issuer"
16456
16369
  },
16457
16370
  "self_signed?": {
16458
- "$ref": "#/definitions/ssl-endpoint/definitions/self_signed?"
16371
+ "$ref": "#/definitions/sni-endpoint/definitions/self_signed?"
16459
16372
  },
16460
16373
  "starts_at": {
16461
- "$ref": "#/definitions/ssl-endpoint/definitions/starts_at"
16374
+ "$ref": "#/definitions/sni-endpoint/definitions/starts_at"
16462
16375
  },
16463
16376
  "subject": {
16464
- "$ref": "#/definitions/ssl-endpoint/definitions/subject"
16377
+ "$ref": "#/definitions/sni-endpoint/definitions/subject"
16465
16378
  },
16466
16379
  "id": {
16467
16380
  "description": "unique identifier of this SSL certificate",
@@ -16956,7 +16869,7 @@ module PlatformAPI
16956
16869
  ]
16957
16870
  },
16958
16871
  "space": {
16959
- "description": "A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.",
16872
+ "description": "A space is an isolated, highly available, secure app execution environment.",
16960
16873
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
16961
16874
  "stability": "prototype",
16962
16875
  "strictProperties": true,
@@ -17032,6 +16945,13 @@ module PlatformAPI
17032
16945
  "string"
17033
16946
  ]
17034
16947
  },
16948
+ "log_drain_url": {
16949
+ "description": "URL to which all apps will drain logs. Only settable during space creation and enables direct logging. Must use HTTPS.",
16950
+ "example": "https://example.com/logs",
16951
+ "type": [
16952
+ "string"
16953
+ ]
16954
+ },
17035
16955
  "cidr": {
17036
16956
  "description": "The RFC-1918 CIDR the Private Space will use. It must be a /16 in 10.0.0.0/8, 172.16.0.0/12 or 192.168.0.0/16",
17037
16957
  "example": "172.20.20.30/16",
@@ -17131,6 +17051,9 @@ module PlatformAPI
17131
17051
  },
17132
17052
  "data_cidr": {
17133
17053
  "$ref": "#/definitions/space/definitions/data_cidr"
17054
+ },
17055
+ "log_drain_url": {
17056
+ "$ref": "#/definitions/space/definitions/log_drain_url"
17134
17057
  }
17135
17058
  },
17136
17059
  "required": [
@@ -17214,52 +17137,18 @@ module PlatformAPI
17214
17137
  }
17215
17138
  }
17216
17139
  },
17217
- "ssl-endpoint": {
17218
- "description": "[SSL Endpoint](https://devcenter.heroku.com/articles/ssl-endpoint) is a public address serving custom SSL cert for HTTPS traffic to a Heroku app. Note that an app must have the `ssl:endpoint` add-on installed before it can provision an SSL Endpoint using these APIs.",
17140
+ "stack": {
17141
+ "description": "Stacks are the different application execution environments available in the Heroku platform.",
17219
17142
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
17220
- "title": "Heroku Platform API - SSL Endpoint",
17221
17143
  "stability": "production",
17222
17144
  "strictProperties": true,
17145
+ "title": "Heroku Platform API - Stack",
17223
17146
  "type": [
17224
17147
  "object"
17225
17148
  ],
17226
17149
  "definitions": {
17227
- "acm": {
17228
- "readOnly": true,
17229
- "type": [
17230
- "boolean"
17231
- ]
17232
- },
17233
- "ca_signed?": {
17234
- "readOnly": true,
17235
- "type": [
17236
- "boolean"
17237
- ]
17238
- },
17239
- "cert_domains": {
17240
- "readOnly": true,
17241
- "type": [
17242
- "array"
17243
- ]
17244
- },
17245
- "certificate_chain": {
17246
- "description": "raw contents of the public certificate chain (eg: .crt or .pem file)",
17247
- "example": "-----BEGIN CERTIFICATE----- ...",
17248
- "readOnly": false,
17249
- "type": [
17250
- "string"
17251
- ]
17252
- },
17253
- "cname": {
17254
- "description": "canonical name record, the address to point a domain at",
17255
- "example": "example.herokussl.com",
17256
- "readOnly": false,
17257
- "type": [
17258
- "string"
17259
- ]
17260
- },
17261
17150
  "created_at": {
17262
- "description": "when endpoint was created",
17151
+ "description": "when stack was introduced",
17263
17152
  "example": "2012-01-01T12:00:00Z",
17264
17153
  "format": "date-time",
17265
17154
  "readOnly": true,
@@ -17267,25 +17156,16 @@ module PlatformAPI
17267
17156
  "string"
17268
17157
  ]
17269
17158
  },
17270
- "display_name": {
17271
- "description": "unique name for SSL endpoint",
17272
- "example": "example",
17273
- "pattern": "^[a-z][a-z0-9-]{2,29}$",
17274
- "readOnly": false,
17275
- "type": [
17276
- "string",
17277
- "null"
17278
- ]
17279
- },
17280
- "expires_at": {
17159
+ "default": {
17160
+ "description": "indicates this stack is the default for new apps",
17161
+ "example": true,
17281
17162
  "readOnly": true,
17282
- "format": "date-time",
17283
17163
  "type": [
17284
- "string"
17164
+ "boolean"
17285
17165
  ]
17286
17166
  },
17287
17167
  "id": {
17288
- "description": "unique identifier of this SSL endpoint",
17168
+ "description": "unique identifier of stack",
17289
17169
  "example": "01234567-89ab-cdef-0123-456789abcdef",
17290
17170
  "format": "uuid",
17291
17171
  "readOnly": true,
@@ -17296,464 +17176,178 @@ module PlatformAPI
17296
17176
  "identity": {
17297
17177
  "anyOf": [
17298
17178
  {
17299
- "$ref": "#/definitions/ssl-endpoint/definitions/id"
17179
+ "$ref": "#/definitions/stack/definitions/name"
17300
17180
  },
17301
17181
  {
17302
- "$ref": "#/definitions/ssl-endpoint/definitions/name"
17182
+ "$ref": "#/definitions/stack/definitions/id"
17303
17183
  }
17304
17184
  ]
17305
17185
  },
17306
- "issuer": {
17186
+ "name": {
17187
+ "description": "unique name of stack",
17188
+ "example": "heroku-18",
17307
17189
  "readOnly": true,
17308
17190
  "type": [
17309
17191
  "string"
17310
17192
  ]
17311
17193
  },
17312
- "name": {
17313
- "description": "unique name for SSL endpoint",
17314
- "example": "example",
17315
- "pattern": "^[a-z][a-z0-9-]{2,29}$",
17194
+ "state": {
17195
+ "description": "availability of this stack: beta, deprecated or public",
17196
+ "example": "public",
17316
17197
  "readOnly": true,
17317
17198
  "type": [
17318
17199
  "string"
17319
17200
  ]
17320
17201
  },
17321
- "preprocess": {
17322
- "default": true,
17323
- "description": "allow Heroku to modify an uploaded public certificate chain if deemed advantageous by adding missing intermediaries, stripping unnecessary ones, etc.",
17324
- "example": true,
17325
- "readOnly": false,
17326
- "type": [
17327
- "boolean"
17328
- ]
17329
- },
17330
- "private_key": {
17331
- "description": "contents of the private key (eg .key file)",
17332
- "example": "-----BEGIN RSA PRIVATE KEY----- ...",
17333
- "readOnly": false,
17202
+ "updated_at": {
17203
+ "description": "when stack was last modified",
17204
+ "example": "2012-01-01T12:00:00Z",
17205
+ "format": "date-time",
17206
+ "readOnly": true,
17334
17207
  "type": [
17335
17208
  "string"
17336
17209
  ]
17210
+ }
17211
+ },
17212
+ "links": [
17213
+ {
17214
+ "description": "Stack info.",
17215
+ "href": "/stacks/{(%23%2Fdefinitions%2Fstack%2Fdefinitions%2Fidentity)}",
17216
+ "method": "GET",
17217
+ "rel": "self",
17218
+ "targetSchema": {
17219
+ "$ref": "#/definitions/stack"
17220
+ },
17221
+ "title": "Info"
17337
17222
  },
17338
- "self_signed?": {
17339
- "readOnly": true,
17340
- "type": [
17341
- "boolean"
17342
- ]
17223
+ {
17224
+ "description": "List available stacks.",
17225
+ "href": "/stacks",
17226
+ "method": "GET",
17227
+ "rel": "instances",
17228
+ "targetSchema": {
17229
+ "items": {
17230
+ "$ref": "#/definitions/stack"
17231
+ },
17232
+ "type": [
17233
+ "array"
17234
+ ]
17235
+ },
17236
+ "title": "List"
17237
+ }
17238
+ ],
17239
+ "properties": {
17240
+ "default": {
17241
+ "$ref": "#/definitions/stack/definitions/default"
17343
17242
  },
17344
- "starts_at": {
17345
- "readOnly": true,
17346
- "format": "date-time",
17347
- "type": [
17348
- "string"
17349
- ]
17243
+ "created_at": {
17244
+ "$ref": "#/definitions/stack/definitions/created_at"
17350
17245
  },
17351
- "subject": {
17352
- "readOnly": true,
17353
- "type": [
17354
- "string"
17355
- ]
17246
+ "id": {
17247
+ "$ref": "#/definitions/stack/definitions/id"
17248
+ },
17249
+ "name": {
17250
+ "$ref": "#/definitions/stack/definitions/name"
17251
+ },
17252
+ "state": {
17253
+ "$ref": "#/definitions/stack/definitions/state"
17356
17254
  },
17357
17255
  "updated_at": {
17358
- "description": "when endpoint was updated",
17359
- "example": "2012-01-01T12:00:00Z",
17360
- "format": "date-time",
17361
- "readOnly": true,
17362
- "type": [
17363
- "string"
17256
+ "$ref": "#/definitions/stack/definitions/updated_at"
17257
+ }
17258
+ }
17259
+ },
17260
+ "team-add-on": {
17261
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
17262
+ "stability": "production",
17263
+ "title": "Heroku Platform API - Team Add-on",
17264
+ "type": [
17265
+ "object"
17266
+ ],
17267
+ "links": [
17268
+ {
17269
+ "description": "List add-ons used across all Team apps",
17270
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/addons",
17271
+ "method": "GET",
17272
+ "rel": "instances",
17273
+ "targetSchema": {
17274
+ "items": {
17275
+ "$ref": "#/definitions/add-on"
17276
+ },
17277
+ "type": [
17278
+ "array"
17279
+ ]
17280
+ },
17281
+ "title": "List For Team"
17282
+ }
17283
+ ]
17284
+ },
17285
+ "team-app-collaborator": {
17286
+ "description": "A team collaborator represents an account that has been given access to a team app on Heroku.",
17287
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
17288
+ "stability": "development",
17289
+ "title": "Heroku Platform API - Team App Collaborator",
17290
+ "type": [
17291
+ "object"
17292
+ ],
17293
+ "definitions": {
17294
+ "identity": {
17295
+ "anyOf": [
17296
+ {
17297
+ "$ref": "#/definitions/collaborator/definitions/email"
17298
+ }
17364
17299
  ]
17365
17300
  }
17366
17301
  },
17367
17302
  "links": [
17368
17303
  {
17369
- "description": "Create a new SSL endpoint.",
17370
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/ssl-endpoints",
17304
+ "description": "Create a new collaborator on a team app. Use this endpoint instead of the `/apps/{app_id_or_name}/collaborator` endpoint when you want the collaborator to be granted [permissions] (https://devcenter.heroku.com/articles/org-users-access#roles-and-permissions) according to their role in the team.",
17305
+ "href": "/teams/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/collaborators",
17371
17306
  "method": "POST",
17372
17307
  "rel": "create",
17373
17308
  "schema": {
17374
17309
  "properties": {
17375
- "certificate_chain": {
17376
- "$ref": "#/definitions/ssl-endpoint/definitions/certificate_chain"
17310
+ "permissions": {
17311
+ "type": [
17312
+ "array"
17313
+ ],
17314
+ "items": {
17315
+ "$ref": "#/definitions/team-app-permission/definitions/name"
17316
+ },
17317
+ "description": "An array of permissions to give to the collaborator."
17377
17318
  },
17378
- "preprocess": {
17379
- "$ref": "#/definitions/ssl-endpoint/definitions/preprocess"
17319
+ "silent": {
17320
+ "$ref": "#/definitions/collaborator/definitions/silent"
17380
17321
  },
17381
- "private_key": {
17382
- "$ref": "#/definitions/ssl-endpoint/definitions/private_key"
17322
+ "user": {
17323
+ "$ref": "#/definitions/account/definitions/identity"
17383
17324
  }
17384
17325
  },
17385
17326
  "required": [
17386
- "certificate_chain",
17387
- "private_key"
17327
+ "user"
17388
17328
  ],
17389
17329
  "type": [
17390
17330
  "object"
17391
17331
  ]
17392
17332
  },
17393
17333
  "targetSchema": {
17394
- "$ref": "#/definitions/ssl-endpoint"
17334
+ "$ref": "#/definitions/team-app-collaborator"
17395
17335
  },
17396
17336
  "title": "Create"
17397
17337
  },
17398
17338
  {
17399
- "description": "Delete existing SSL endpoint.",
17400
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/ssl-endpoints/{(%23%2Fdefinitions%2Fssl-endpoint%2Fdefinitions%2Fidentity)}",
17339
+ "description": "Delete an existing collaborator from a team app.",
17340
+ "href": "/teams/apps/{(%23%2Fdefinitions%2Fteam-app%2Fdefinitions%2Fidentity)}/collaborators/{(%23%2Fdefinitions%2Fteam-app-collaborator%2Fdefinitions%2Fidentity)}",
17401
17341
  "method": "DELETE",
17402
17342
  "rel": "destroy",
17403
17343
  "targetSchema": {
17404
- "$ref": "#/definitions/ssl-endpoint"
17344
+ "$ref": "#/definitions/team-app-collaborator"
17405
17345
  },
17406
17346
  "title": "Delete"
17407
17347
  },
17408
17348
  {
17409
- "description": "Info for existing SSL endpoint.",
17410
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/ssl-endpoints/{(%23%2Fdefinitions%2Fssl-endpoint%2Fdefinitions%2Fidentity)}",
17411
- "method": "GET",
17412
- "rel": "self",
17413
- "targetSchema": {
17414
- "$ref": "#/definitions/ssl-endpoint"
17415
- },
17416
- "title": "Info"
17417
- },
17418
- {
17419
- "description": "List existing SSL endpoints.",
17420
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/ssl-endpoints",
17421
- "method": "GET",
17422
- "rel": "instances",
17423
- "targetSchema": {
17424
- "items": {
17425
- "$ref": "#/definitions/ssl-endpoint"
17426
- },
17427
- "type": [
17428
- "array"
17429
- ]
17430
- },
17431
- "title": "List"
17432
- },
17433
- {
17434
- "description": "Update an existing SSL endpoint.",
17435
- "href": "/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/ssl-endpoints/{(%23%2Fdefinitions%2Fssl-endpoint%2Fdefinitions%2Fidentity)}",
17436
- "method": "PATCH",
17437
- "rel": "update",
17438
- "schema": {
17439
- "properties": {
17440
- "certificate_chain": {
17441
- "$ref": "#/definitions/ssl-endpoint/definitions/certificate_chain"
17442
- },
17443
- "preprocess": {
17444
- "$ref": "#/definitions/ssl-endpoint/definitions/preprocess"
17445
- },
17446
- "private_key": {
17447
- "$ref": "#/definitions/ssl-endpoint/definitions/private_key"
17448
- }
17449
- },
17450
- "type": [
17451
- "object"
17452
- ]
17453
- },
17454
- "targetSchema": {
17455
- "$ref": "#/definitions/ssl-endpoint"
17456
- },
17457
- "title": "Update"
17458
- }
17459
- ],
17460
- "properties": {
17461
- "app": {
17462
- "description": "application associated with this ssl-endpoint",
17463
- "type": [
17464
- "object"
17465
- ],
17466
- "properties": {
17467
- "id": {
17468
- "$ref": "#/definitions/app/definitions/id"
17469
- },
17470
- "name": {
17471
- "$ref": "#/definitions/app/definitions/name"
17472
- }
17473
- },
17474
- "strictProperties": true
17475
- },
17476
- "certificate_chain": {
17477
- "$ref": "#/definitions/ssl-endpoint/definitions/certificate_chain"
17478
- },
17479
- "cname": {
17480
- "$ref": "#/definitions/ssl-endpoint/definitions/cname"
17481
- },
17482
- "created_at": {
17483
- "$ref": "#/definitions/ssl-endpoint/definitions/created_at"
17484
- },
17485
- "display_name": {
17486
- "$ref": "#/definitions/ssl-endpoint/definitions/display_name"
17487
- },
17488
- "domains": {
17489
- "description": "domains associated with this endpoint",
17490
- "type": [
17491
- "array"
17492
- ],
17493
- "items": {
17494
- "$ref": "#/definitions/domain/definitions/id"
17495
- }
17496
- },
17497
- "id": {
17498
- "$ref": "#/definitions/ssl-endpoint/definitions/id"
17499
- },
17500
- "name": {
17501
- "$ref": "#/definitions/ssl-endpoint/definitions/name"
17502
- },
17503
- "ssl_cert": {
17504
- "description": "certificate provided by this endpoint",
17505
- "type": [
17506
- "object"
17507
- ],
17508
- "properties": {
17509
- "ca_signed?": {
17510
- "$ref": "#/definitions/ssl-endpoint/definitions/ca_signed?"
17511
- },
17512
- "cert_domains": {
17513
- "$ref": "#/definitions/ssl-endpoint/definitions/cert_domains"
17514
- },
17515
- "expires_at": {
17516
- "$ref": "#/definitions/ssl-endpoint/definitions/expires_at"
17517
- },
17518
- "issuer": {
17519
- "$ref": "#/definitions/ssl-endpoint/definitions/issuer"
17520
- },
17521
- "self_signed?": {
17522
- "$ref": "#/definitions/ssl-endpoint/definitions/self_signed?"
17523
- },
17524
- "starts_at": {
17525
- "$ref": "#/definitions/ssl-endpoint/definitions/starts_at"
17526
- },
17527
- "subject": {
17528
- "$ref": "#/definitions/ssl-endpoint/definitions/subject"
17529
- },
17530
- "id": {
17531
- "description": "unique identifier of this SSL certificate",
17532
- "example": "01234567-89ab-cdef-0123-456789abcdef",
17533
- "format": "uuid",
17534
- "readOnly": true,
17535
- "type": [
17536
- "string"
17537
- ]
17538
- }
17539
- }
17540
- },
17541
- "updated_at": {
17542
- "$ref": "#/definitions/ssl-endpoint/definitions/updated_at"
17543
- }
17544
- }
17545
- },
17546
- "stack": {
17547
- "description": "Stacks are the different application execution environments available in the Heroku platform.",
17548
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
17549
- "stability": "production",
17550
- "strictProperties": true,
17551
- "title": "Heroku Platform API - Stack",
17552
- "type": [
17553
- "object"
17554
- ],
17555
- "definitions": {
17556
- "created_at": {
17557
- "description": "when stack was introduced",
17558
- "example": "2012-01-01T12:00:00Z",
17559
- "format": "date-time",
17560
- "readOnly": true,
17561
- "type": [
17562
- "string"
17563
- ]
17564
- },
17565
- "default": {
17566
- "description": "indicates this stack is the default for new apps",
17567
- "example": true,
17568
- "readOnly": true,
17569
- "type": [
17570
- "boolean"
17571
- ]
17572
- },
17573
- "id": {
17574
- "description": "unique identifier of stack",
17575
- "example": "01234567-89ab-cdef-0123-456789abcdef",
17576
- "format": "uuid",
17577
- "readOnly": true,
17578
- "type": [
17579
- "string"
17580
- ]
17581
- },
17582
- "identity": {
17583
- "anyOf": [
17584
- {
17585
- "$ref": "#/definitions/stack/definitions/name"
17586
- },
17587
- {
17588
- "$ref": "#/definitions/stack/definitions/id"
17589
- }
17590
- ]
17591
- },
17592
- "name": {
17593
- "description": "unique name of stack",
17594
- "example": "heroku-18",
17595
- "readOnly": true,
17596
- "type": [
17597
- "string"
17598
- ]
17599
- },
17600
- "state": {
17601
- "description": "availability of this stack: beta, deprecated or public",
17602
- "example": "public",
17603
- "readOnly": true,
17604
- "type": [
17605
- "string"
17606
- ]
17607
- },
17608
- "updated_at": {
17609
- "description": "when stack was last modified",
17610
- "example": "2012-01-01T12:00:00Z",
17611
- "format": "date-time",
17612
- "readOnly": true,
17613
- "type": [
17614
- "string"
17615
- ]
17616
- }
17617
- },
17618
- "links": [
17619
- {
17620
- "description": "Stack info.",
17621
- "href": "/stacks/{(%23%2Fdefinitions%2Fstack%2Fdefinitions%2Fidentity)}",
17622
- "method": "GET",
17623
- "rel": "self",
17624
- "targetSchema": {
17625
- "$ref": "#/definitions/stack"
17626
- },
17627
- "title": "Info"
17628
- },
17629
- {
17630
- "description": "List available stacks.",
17631
- "href": "/stacks",
17632
- "method": "GET",
17633
- "rel": "instances",
17634
- "targetSchema": {
17635
- "items": {
17636
- "$ref": "#/definitions/stack"
17637
- },
17638
- "type": [
17639
- "array"
17640
- ]
17641
- },
17642
- "title": "List"
17643
- }
17644
- ],
17645
- "properties": {
17646
- "default": {
17647
- "$ref": "#/definitions/stack/definitions/default"
17648
- },
17649
- "created_at": {
17650
- "$ref": "#/definitions/stack/definitions/created_at"
17651
- },
17652
- "id": {
17653
- "$ref": "#/definitions/stack/definitions/id"
17654
- },
17655
- "name": {
17656
- "$ref": "#/definitions/stack/definitions/name"
17657
- },
17658
- "state": {
17659
- "$ref": "#/definitions/stack/definitions/state"
17660
- },
17661
- "updated_at": {
17662
- "$ref": "#/definitions/stack/definitions/updated_at"
17663
- }
17664
- }
17665
- },
17666
- "team-add-on": {
17667
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
17668
- "stability": "production",
17669
- "title": "Heroku Platform API - Team Add-on",
17670
- "type": [
17671
- "object"
17672
- ],
17673
- "links": [
17674
- {
17675
- "description": "List add-ons used across all Team apps",
17676
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/addons",
17677
- "method": "GET",
17678
- "rel": "instances",
17679
- "targetSchema": {
17680
- "items": {
17681
- "$ref": "#/definitions/add-on"
17682
- },
17683
- "type": [
17684
- "array"
17685
- ]
17686
- },
17687
- "title": "List For Team"
17688
- }
17689
- ]
17690
- },
17691
- "team-app-collaborator": {
17692
- "description": "A team collaborator represents an account that has been given access to a team app on Heroku.",
17693
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
17694
- "stability": "development",
17695
- "title": "Heroku Platform API - Team App Collaborator",
17696
- "type": [
17697
- "object"
17698
- ],
17699
- "definitions": {
17700
- "identity": {
17701
- "anyOf": [
17702
- {
17703
- "$ref": "#/definitions/collaborator/definitions/email"
17704
- }
17705
- ]
17706
- }
17707
- },
17708
- "links": [
17709
- {
17710
- "description": "Create a new collaborator on a team app. Use this endpoint instead of the `/apps/{app_id_or_name}/collaborator` endpoint when you want the collaborator to be granted [permissions] (https://devcenter.heroku.com/articles/org-users-access#roles-and-permissions) according to their role in the team.",
17711
- "href": "/teams/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/collaborators",
17712
- "method": "POST",
17713
- "rel": "create",
17714
- "schema": {
17715
- "properties": {
17716
- "permissions": {
17717
- "type": [
17718
- "array"
17719
- ],
17720
- "items": {
17721
- "$ref": "#/definitions/team-app-permission/definitions/name"
17722
- },
17723
- "description": "An array of permissions to give to the collaborator."
17724
- },
17725
- "silent": {
17726
- "$ref": "#/definitions/collaborator/definitions/silent"
17727
- },
17728
- "user": {
17729
- "$ref": "#/definitions/account/definitions/identity"
17730
- }
17731
- },
17732
- "required": [
17733
- "user"
17734
- ],
17735
- "type": [
17736
- "object"
17737
- ]
17738
- },
17739
- "targetSchema": {
17740
- "$ref": "#/definitions/team-app-collaborator"
17741
- },
17742
- "title": "Create"
17743
- },
17744
- {
17745
- "description": "Delete an existing collaborator from a team app.",
17746
- "href": "/teams/apps/{(%23%2Fdefinitions%2Fteam-app%2Fdefinitions%2Fidentity)}/collaborators/{(%23%2Fdefinitions%2Fteam-app-collaborator%2Fdefinitions%2Fidentity)}",
17747
- "method": "DELETE",
17748
- "rel": "destroy",
17749
- "targetSchema": {
17750
- "$ref": "#/definitions/team-app-collaborator"
17751
- },
17752
- "title": "Delete"
17753
- },
17754
- {
17755
- "description": "Info for a collaborator on a team app.",
17756
- "href": "/teams/apps/{(%23%2Fdefinitions%2Fteam-app%2Fdefinitions%2Fidentity)}/collaborators/{(%23%2Fdefinitions%2Fteam-app-collaborator%2Fdefinitions%2Fidentity)}",
17349
+ "description": "Info for a collaborator on a team app.",
17350
+ "href": "/teams/apps/{(%23%2Fdefinitions%2Fteam-app%2Fdefinitions%2Fidentity)}/collaborators/{(%23%2Fdefinitions%2Fteam-app-collaborator%2Fdefinitions%2Fidentity)}",
17757
17351
  "method": "GET",
17758
17352
  "rel": "self",
17759
17353
  "targetSchema": {
@@ -18184,52 +17778,239 @@ module PlatformAPI
18184
17778
  }
18185
17779
  },
18186
17780
  "type": [
18187
- "object"
18188
- ]
17781
+ "object"
17782
+ ]
17783
+ },
17784
+ "released_at": {
17785
+ "$ref": "#/definitions/app/definitions/released_at"
17786
+ },
17787
+ "repo_size": {
17788
+ "$ref": "#/definitions/app/definitions/repo_size"
17789
+ },
17790
+ "slug_size": {
17791
+ "$ref": "#/definitions/app/definitions/slug_size"
17792
+ },
17793
+ "space": {
17794
+ "description": "identity of space",
17795
+ "properties": {
17796
+ "id": {
17797
+ "$ref": "#/definitions/space/definitions/id"
17798
+ },
17799
+ "name": {
17800
+ "$ref": "#/definitions/space/definitions/name"
17801
+ }
17802
+ },
17803
+ "type": [
17804
+ "null",
17805
+ "object"
17806
+ ]
17807
+ },
17808
+ "stack": {
17809
+ "description": "identity of app stack",
17810
+ "properties": {
17811
+ "id": {
17812
+ "$ref": "#/definitions/stack/definitions/id"
17813
+ },
17814
+ "name": {
17815
+ "$ref": "#/definitions/stack/definitions/name"
17816
+ }
17817
+ },
17818
+ "type": [
17819
+ "object"
17820
+ ]
17821
+ },
17822
+ "updated_at": {
17823
+ "$ref": "#/definitions/app/definitions/updated_at"
17824
+ },
17825
+ "web_url": {
17826
+ "$ref": "#/definitions/app/definitions/web_url"
17827
+ }
17828
+ }
17829
+ },
17830
+ "team-daily-usage": {
17831
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
17832
+ "description": "Usage for an enterprise team at a daily resolution.",
17833
+ "stability": "development",
17834
+ "strictProperties": true,
17835
+ "title": "Heroku Platform API - Team Daily Usage",
17836
+ "type": [
17837
+ "object"
17838
+ ],
17839
+ "definitions": {
17840
+ "addons": {
17841
+ "description": "total add-on credits used",
17842
+ "example": 250.0,
17843
+ "readOnly": true,
17844
+ "type": [
17845
+ "number"
17846
+ ]
17847
+ },
17848
+ "app_usage_daily": {
17849
+ "description": "Usage for an app at a daily resolution.",
17850
+ "type": [
17851
+ "object"
17852
+ ],
17853
+ "properties": {
17854
+ "addons": {
17855
+ "$ref": "#/definitions/team-daily-usage/definitions/addons"
17856
+ },
17857
+ "app_name": {
17858
+ "$ref": "#/definitions/app/definitions/name"
17859
+ },
17860
+ "data": {
17861
+ "$ref": "#/definitions/team-daily-usage/definitions/data"
17862
+ },
17863
+ "dynos": {
17864
+ "$ref": "#/definitions/team-daily-usage/definitions/dynos"
17865
+ },
17866
+ "partner": {
17867
+ "$ref": "#/definitions/team-daily-usage/definitions/partner"
17868
+ }
17869
+ }
17870
+ },
17871
+ "data": {
17872
+ "description": "total add-on credits used for first party add-ons",
17873
+ "example": 34.89,
17874
+ "readOnly": true,
17875
+ "type": [
17876
+ "number"
17877
+ ]
17878
+ },
17879
+ "date": {
17880
+ "description": "date of the usage",
17881
+ "example": "2019-01-01",
17882
+ "format": "date",
17883
+ "readOnly": true,
17884
+ "type": [
17885
+ "string"
17886
+ ]
17887
+ },
17888
+ "dynos": {
17889
+ "description": "dynos used",
17890
+ "example": 1.548,
17891
+ "readOnly": true,
17892
+ "type": [
17893
+ "number"
17894
+ ]
17895
+ },
17896
+ "id": {
17897
+ "description": "team identifier",
17898
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
17899
+ "format": "uuid",
17900
+ "readOnly": true,
17901
+ "type": [
17902
+ "string"
17903
+ ]
17904
+ },
17905
+ "name": {
17906
+ "description": "name of the team",
17907
+ "example": "ops",
17908
+ "readOnly": true,
17909
+ "type": [
17910
+ "string"
17911
+ ]
17912
+ },
17913
+ "partner": {
17914
+ "description": "total add-on credits used for third party add-ons",
17915
+ "example": 12.34,
17916
+ "readOnly": true,
17917
+ "type": [
17918
+ "number"
17919
+ ]
17920
+ },
17921
+ "space": {
17922
+ "description": "space credits used",
17923
+ "example": 1.548,
17924
+ "readOnly": true,
17925
+ "type": [
17926
+ "number"
17927
+ ]
17928
+ },
17929
+ "start_date": {
17930
+ "description": "range start date",
17931
+ "example": "2019-01-25",
17932
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
17933
+ "readOnly": true,
17934
+ "type": [
17935
+ "string"
17936
+ ]
17937
+ },
17938
+ "end_date": {
17939
+ "description": "range end date",
17940
+ "example": "2019-02-25",
17941
+ "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
17942
+ "readOnly": true,
17943
+ "type": [
17944
+ "string"
17945
+ ]
17946
+ }
17947
+ },
17948
+ "links": [
17949
+ {
17950
+ "description": "Retrieves usage for an enterprise team for a range of days. Start and end dates can be specified as query parameters using the date format YYYY-MM-DD. The team identifier can be found from the [team list endpoint](https://devcenter.heroku.com/articles/platform-api-reference#team-list).\n",
17951
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fid)}/usage/daily",
17952
+ "method": "GET",
17953
+ "title": "Info",
17954
+ "schema": {
17955
+ "properties": {
17956
+ "start": {
17957
+ "$ref": "#/definitions/team-daily-usage/definitions/start_date"
17958
+ },
17959
+ "end": {
17960
+ "$ref": "#/definitions/team-daily-usage/definitions/end_date"
17961
+ }
17962
+ },
17963
+ "required": [
17964
+ "start"
17965
+ ],
17966
+ "type": [
17967
+ "object"
17968
+ ]
17969
+ },
17970
+ "rel": "instances",
17971
+ "targetSchema": {
17972
+ "items": {
17973
+ "$ref": "#/definitions/team-daily-usage"
17974
+ },
17975
+ "type": [
17976
+ "array"
17977
+ ]
17978
+ }
17979
+ }
17980
+ ],
17981
+ "properties": {
17982
+ "addons": {
17983
+ "$ref": "#/definitions/team-daily-usage/definitions/addons"
17984
+ },
17985
+ "apps": {
17986
+ "description": "app usage in the team",
17987
+ "type": [
17988
+ "array"
17989
+ ],
17990
+ "items": {
17991
+ "$ref": "#/definitions/team-daily-usage/definitions/app_usage_daily"
17992
+ }
18189
17993
  },
18190
- "released_at": {
18191
- "$ref": "#/definitions/app/definitions/released_at"
17994
+ "data": {
17995
+ "$ref": "#/definitions/team-daily-usage/definitions/data"
18192
17996
  },
18193
- "repo_size": {
18194
- "$ref": "#/definitions/app/definitions/repo_size"
17997
+ "date": {
17998
+ "$ref": "#/definitions/team-daily-usage/definitions/date"
18195
17999
  },
18196
- "slug_size": {
18197
- "$ref": "#/definitions/app/definitions/slug_size"
18000
+ "dynos": {
18001
+ "$ref": "#/definitions/team-daily-usage/definitions/dynos"
18198
18002
  },
18199
- "space": {
18200
- "description": "identity of space",
18201
- "properties": {
18202
- "id": {
18203
- "$ref": "#/definitions/space/definitions/id"
18204
- },
18205
- "name": {
18206
- "$ref": "#/definitions/space/definitions/name"
18207
- }
18208
- },
18209
- "type": [
18210
- "null",
18211
- "object"
18212
- ]
18003
+ "id": {
18004
+ "$ref": "#/definitions/team-daily-usage/definitions/id"
18213
18005
  },
18214
- "stack": {
18215
- "description": "identity of app stack",
18216
- "properties": {
18217
- "id": {
18218
- "$ref": "#/definitions/stack/definitions/id"
18219
- },
18220
- "name": {
18221
- "$ref": "#/definitions/stack/definitions/name"
18222
- }
18223
- },
18224
- "type": [
18225
- "object"
18226
- ]
18006
+ "name": {
18007
+ "$ref": "#/definitions/team-daily-usage/definitions/name"
18227
18008
  },
18228
- "updated_at": {
18229
- "$ref": "#/definitions/app/definitions/updated_at"
18009
+ "partner": {
18010
+ "$ref": "#/definitions/team-daily-usage/definitions/partner"
18230
18011
  },
18231
- "web_url": {
18232
- "$ref": "#/definitions/app/definitions/web_url"
18012
+ "space": {
18013
+ "$ref": "#/definitions/team-daily-usage/definitions/space"
18233
18014
  }
18234
18015
  }
18235
18016
  },
@@ -18970,427 +18751,152 @@ module PlatformAPI
18970
18751
  },
18971
18752
  {
18972
18753
  "description": "Update a team member.",
18973
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members",
18974
- "method": "PATCH",
18975
- "rel": "update",
18976
- "schema": {
18977
- "properties": {
18978
- "email": {
18979
- "$ref": "#/definitions/team-member/definitions/email"
18980
- },
18981
- "federated": {
18982
- "$ref": "#/definitions/team-member/definitions/federated"
18983
- },
18984
- "role": {
18985
- "$ref": "#/definitions/team-member/definitions/team_role"
18986
- }
18987
- },
18988
- "required": [
18989
- "email",
18990
- "role"
18991
- ],
18992
- "type": [
18993
- "object"
18994
- ]
18995
- },
18996
- "targetSchema": {
18997
- "$ref": "#/definitions/team-member"
18998
- },
18999
- "title": "Update"
19000
- },
19001
- {
19002
- "description": "Remove a member from the team.",
19003
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Fteam-member%2Fdefinitions%2Fidentity)}",
19004
- "method": "DELETE",
19005
- "rel": "destroy",
19006
- "targetSchema": {
19007
- "$ref": "#/definitions/team-member"
19008
- },
19009
- "title": "Delete"
19010
- },
19011
- {
19012
- "description": "List members of the team.",
19013
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members",
19014
- "method": "GET",
19015
- "ranges": [
19016
- "email"
19017
- ],
19018
- "rel": "instances",
19019
- "targetSchema": {
19020
- "items": {
19021
- "$ref": "#/definitions/team-member"
19022
- },
19023
- "type": [
19024
- "array"
19025
- ]
19026
- },
19027
- "title": "List"
19028
- },
19029
- {
19030
- "description": "List the apps of a team member.",
19031
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Fteam-member%2Fdefinitions%2Fidentity)}/apps",
19032
- "method": "GET",
19033
- "rel": "instances",
19034
- "targetSchema": {
19035
- "items": {
19036
- "$ref": "#/definitions/team-app"
19037
- },
19038
- "type": [
19039
- "array"
19040
- ]
19041
- },
19042
- "title": "List By Member"
19043
- }
19044
- ],
19045
- "properties": {
19046
- "created_at": {
19047
- "$ref": "#/definitions/team-member/definitions/created_at"
19048
- },
19049
- "email": {
19050
- "$ref": "#/definitions/team-member/definitions/email"
19051
- },
19052
- "federated": {
19053
- "$ref": "#/definitions/team-member/definitions/federated"
19054
- },
19055
- "id": {
19056
- "$ref": "#/definitions/team-member/definitions/id"
19057
- },
19058
- "identity_provider": {
19059
- "description": "Identity Provider information the member is federated with",
19060
- "properties": {
19061
- "id": {
19062
- "$ref": "#/definitions/identity-provider/definitions/id"
19063
- },
19064
- "name": {
19065
- "description": "name of the identity provider",
19066
- "example": "acme",
19067
- "readOnly": true,
19068
- "type": [
19069
- "string"
19070
- ]
19071
- },
19072
- "redacted": {
19073
- "description": "whether the identity_provider information is redacted or not",
19074
- "example": false,
19075
- "readOnly": true,
19076
- "type": [
19077
- "boolean"
19078
- ]
19079
- },
19080
- "owner": {
19081
- "$ref": "#/definitions/identity-provider/definitions/owner"
19082
- }
19083
- },
19084
- "type": [
19085
- "null",
19086
- "object"
19087
- ]
19088
- },
19089
- "role": {
19090
- "$ref": "#/definitions/team/definitions/role"
19091
- },
19092
- "two_factor_authentication": {
19093
- "$ref": "#/definitions/team-member/definitions/two_factor_authentication"
19094
- },
19095
- "updated_at": {
19096
- "$ref": "#/definitions/team-member/definitions/updated_at"
19097
- },
19098
- "user": {
19099
- "description": "user information for the membership",
19100
- "properties": {
19101
- "email": {
19102
- "$ref": "#/definitions/account/definitions/email"
19103
- },
19104
- "id": {
19105
- "$ref": "#/definitions/account/definitions/id"
19106
- },
19107
- "name": {
19108
- "$ref": "#/definitions/account/definitions/name"
19109
- }
19110
- },
19111
- "strictProperties": true,
19112
- "type": [
19113
- "object"
19114
- ]
19115
- }
19116
- }
19117
- },
19118
- "team-preferences": {
19119
- "description": "Tracks a Team's Preferences",
19120
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
19121
- "stability": "development",
19122
- "strictProperties": true,
19123
- "title": "Heroku Platform API - Team Preferences",
19124
- "type": [
19125
- "object"
19126
- ],
19127
- "definitions": {
19128
- "default-permission": {
19129
- "description": "The default permission used when adding new members to the team",
19130
- "example": "member",
19131
- "readOnly": false,
19132
- "enum": [
19133
- "admin",
19134
- "member",
19135
- "viewer",
19136
- null
19137
- ],
19138
- "type": [
19139
- "null",
19140
- "string"
19141
- ]
19142
- },
19143
- "identity": {
19144
- "$ref": "#/definitions/team/definitions/identity"
19145
- },
19146
- "whitelisting-enabled": {
19147
- "deactivate_on": "2021-02-05",
19148
- "description": "Whether whitelisting rules should be applied to add-on installations. Deprecated in favor of `addons-controls`",
19149
- "example": true,
19150
- "readOnly": false,
19151
- "type": [
19152
- "boolean",
19153
- "null"
19154
- ]
19155
- },
19156
- "addons-controls": {
19157
- "description": "Whether add-on service rules should be applied to add-on installations",
19158
- "example": true,
19159
- "readOnly": false,
19160
- "type": [
19161
- "boolean",
19162
- "null"
19163
- ]
19164
- }
19165
- },
19166
- "links": [
19167
- {
19168
- "description": "Retrieve Team Preferences",
19169
- "href": "/teams/{(%23%2Fdefinitions%2Fteam-preferences%2Fdefinitions%2Fidentity)}/preferences",
19170
- "method": "GET",
19171
- "rel": "self",
19172
- "targetSchema": {
19173
- "$ref": "#/definitions/team-preferences"
19174
- },
19175
- "title": "List"
19176
- },
19177
- {
19178
- "description": "Update Team Preferences",
19179
- "href": "/teams/{(%23%2Fdefinitions%2Fteam-preferences%2Fdefinitions%2Fidentity)}/preferences",
18754
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members",
19180
18755
  "method": "PATCH",
19181
18756
  "rel": "update",
19182
18757
  "schema": {
19183
- "type": [
19184
- "object"
19185
- ],
19186
18758
  "properties": {
19187
- "whitelisting-enabled": {
19188
- "$ref": "#/definitions/team-preferences/definitions/whitelisting-enabled"
18759
+ "email": {
18760
+ "$ref": "#/definitions/team-member/definitions/email"
19189
18761
  },
19190
- "addons-controls": {
19191
- "$ref": "#/definitions/team-preferences/definitions/addons-controls"
18762
+ "federated": {
18763
+ "$ref": "#/definitions/team-member/definitions/federated"
18764
+ },
18765
+ "role": {
18766
+ "$ref": "#/definitions/team-member/definitions/team_role"
19192
18767
  }
19193
- }
18768
+ },
18769
+ "required": [
18770
+ "email",
18771
+ "role"
18772
+ ],
18773
+ "type": [
18774
+ "object"
18775
+ ]
19194
18776
  },
19195
18777
  "targetSchema": {
19196
- "$ref": "#/definitions/team-preferences"
18778
+ "$ref": "#/definitions/team-member"
19197
18779
  },
19198
18780
  "title": "Update"
19199
- }
19200
- ],
19201
- "properties": {
19202
- "default-permission": {
19203
- "$ref": "#/definitions/team-preferences/definitions/default-permission"
19204
18781
  },
19205
- "whitelisting-enabled": {
19206
- "$ref": "#/definitions/team-preferences/definitions/whitelisting-enabled"
18782
+ {
18783
+ "description": "Remove a member from the team.",
18784
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Fteam-member%2Fdefinitions%2Fidentity)}",
18785
+ "method": "DELETE",
18786
+ "rel": "destroy",
18787
+ "targetSchema": {
18788
+ "$ref": "#/definitions/team-member"
18789
+ },
18790
+ "title": "Delete"
19207
18791
  },
19208
- "addons-controls": {
19209
- "$ref": "#/definitions/team-preferences/definitions/addons-controls"
19210
- }
19211
- }
19212
- },
19213
- "team-space": {
19214
- "description": "A space is an isolated, highly available, secure app execution environments, running in the modern VPC substrate.",
19215
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
19216
- "stability": "prototype",
19217
- "strictProperties": true,
19218
- "title": "Heroku Platform API - Space",
19219
- "type": [
19220
- "object"
19221
- ],
19222
- "links": [
19223
18792
  {
19224
- "description": "List spaces owned by the team",
19225
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/spaces",
18793
+ "description": "List members of the team.",
18794
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members",
19226
18795
  "method": "GET",
18796
+ "ranges": [
18797
+ "email"
18798
+ ],
19227
18799
  "rel": "instances",
19228
18800
  "targetSchema": {
19229
18801
  "items": {
19230
- "$ref": "#/definitions/space"
18802
+ "$ref": "#/definitions/team-member"
19231
18803
  },
19232
18804
  "type": [
19233
18805
  "array"
19234
18806
  ]
19235
18807
  },
19236
18808
  "title": "List"
19237
- }
19238
- ]
19239
- },
19240
- "team-usage-daily": {
19241
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
19242
- "description": "Usage for an enterprise team at a daily resolution.",
19243
- "stability": "development",
19244
- "strictProperties": true,
19245
- "title": "Heroku Platform API - Team Daily Usage",
19246
- "type": [
19247
- "object"
19248
- ],
19249
- "definitions": {
19250
- "addons": {
19251
- "description": "total add-on credits used",
19252
- "example": 250.0,
19253
- "readOnly": true,
19254
- "type": [
19255
- "number"
19256
- ]
19257
- },
19258
- "app_usage_daily": {
19259
- "description": "Usage for an app at a daily resolution.",
19260
- "type": [
19261
- "object"
19262
- ],
19263
- "properties": {
19264
- "addons": {
19265
- "$ref": "#/definitions/team-usage-daily/definitions/addons"
19266
- },
19267
- "app_name": {
19268
- "$ref": "#/definitions/app/definitions/name"
19269
- },
19270
- "data": {
19271
- "$ref": "#/definitions/team-usage-daily/definitions/data"
19272
- },
19273
- "dynos": {
19274
- "$ref": "#/definitions/team-usage-daily/definitions/dynos"
19275
- },
19276
- "partner": {
19277
- "$ref": "#/definitions/team-usage-daily/definitions/partner"
19278
- }
19279
- }
19280
- },
19281
- "data": {
19282
- "description": "total add-on credits used for first party add-ons",
19283
- "example": 34.89,
19284
- "readOnly": true,
19285
- "type": [
19286
- "number"
19287
- ]
19288
- },
19289
- "date": {
19290
- "description": "date of the usage",
19291
- "example": "2019-01-01",
19292
- "format": "date",
19293
- "readOnly": true,
19294
- "type": [
19295
- "string"
19296
- ]
19297
- },
19298
- "dynos": {
19299
- "description": "dynos used",
19300
- "example": 1.548,
19301
- "readOnly": true,
19302
- "type": [
19303
- "number"
19304
- ]
19305
- },
19306
- "id": {
19307
- "description": "team identifier",
19308
- "example": "01234567-89ab-cdef-0123-456789abcdef",
19309
- "format": "uuid",
19310
- "readOnly": true,
19311
- "type": [
19312
- "string"
19313
- ]
19314
- },
19315
- "name": {
19316
- "description": "name of the team",
19317
- "example": "ops",
19318
- "readOnly": true,
19319
- "type": [
19320
- "string"
19321
- ]
19322
- },
19323
- "partner": {
19324
- "description": "total add-on credits used for third party add-ons",
19325
- "example": 12.34,
19326
- "readOnly": true,
19327
- "type": [
19328
- "number"
19329
- ]
19330
18809
  },
19331
- "space": {
19332
- "description": "space credits used",
19333
- "example": 1.548,
19334
- "readOnly": true,
19335
- "type": [
19336
- "number"
19337
- ]
19338
- }
19339
- },
19340
- "links": [
19341
18810
  {
19342
- "description": "Retrieves usage for an enterprise team for a range of days. Start and end dates can be specified as query parameters using the date format, YYYY-MM-DD format. For example, '/teams/example-team/usage/daily?start=2019-01-01&end=2019-01-31' specifies all days in January for 2019.",
19343
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fid)}/usage/daily",
18811
+ "description": "List the apps of a team member.",
18812
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Fteam-member%2Fdefinitions%2Fidentity)}/apps",
19344
18813
  "method": "GET",
19345
- "title": "Info",
19346
18814
  "rel": "instances",
19347
18815
  "targetSchema": {
19348
18816
  "items": {
19349
- "$ref": "#/definitions/team-usage-daily"
18817
+ "$ref": "#/definitions/team-app"
19350
18818
  },
19351
18819
  "type": [
19352
18820
  "array"
19353
18821
  ]
19354
- }
18822
+ },
18823
+ "title": "List By Member"
19355
18824
  }
19356
18825
  ],
19357
18826
  "properties": {
19358
- "addons": {
19359
- "$ref": "#/definitions/team-usage-daily/definitions/addons"
18827
+ "created_at": {
18828
+ "$ref": "#/definitions/team-member/definitions/created_at"
19360
18829
  },
19361
- "apps": {
19362
- "description": "app usage in the team",
19363
- "type": [
19364
- "array"
19365
- ],
19366
- "items": {
19367
- "$ref": "#/definitions/team-usage-daily/definitions/app_usage_daily"
19368
- }
18830
+ "email": {
18831
+ "$ref": "#/definitions/team-member/definitions/email"
19369
18832
  },
19370
- "data": {
19371
- "$ref": "#/definitions/team-usage-daily/definitions/data"
18833
+ "federated": {
18834
+ "$ref": "#/definitions/team-member/definitions/federated"
19372
18835
  },
19373
- "date": {
19374
- "$ref": "#/definitions/team-usage-daily/definitions/date"
18836
+ "id": {
18837
+ "$ref": "#/definitions/team-member/definitions/id"
19375
18838
  },
19376
- "dynos": {
19377
- "$ref": "#/definitions/team-usage-daily/definitions/dynos"
18839
+ "identity_provider": {
18840
+ "description": "Identity Provider information the member is federated with",
18841
+ "properties": {
18842
+ "id": {
18843
+ "$ref": "#/definitions/identity-provider/definitions/id"
18844
+ },
18845
+ "name": {
18846
+ "description": "name of the identity provider",
18847
+ "example": "acme",
18848
+ "readOnly": true,
18849
+ "type": [
18850
+ "string"
18851
+ ]
18852
+ },
18853
+ "redacted": {
18854
+ "description": "whether the identity_provider information is redacted or not",
18855
+ "example": false,
18856
+ "readOnly": true,
18857
+ "type": [
18858
+ "boolean"
18859
+ ]
18860
+ },
18861
+ "owner": {
18862
+ "$ref": "#/definitions/identity-provider/definitions/owner"
18863
+ }
18864
+ },
18865
+ "type": [
18866
+ "null",
18867
+ "object"
18868
+ ]
19378
18869
  },
19379
- "id": {
19380
- "$ref": "#/definitions/team-usage-daily/definitions/id"
18870
+ "role": {
18871
+ "$ref": "#/definitions/team/definitions/role"
19381
18872
  },
19382
- "name": {
19383
- "$ref": "#/definitions/team-usage-daily/definitions/name"
18873
+ "two_factor_authentication": {
18874
+ "$ref": "#/definitions/team-member/definitions/two_factor_authentication"
19384
18875
  },
19385
- "partner": {
19386
- "$ref": "#/definitions/team-usage-daily/definitions/partner"
18876
+ "updated_at": {
18877
+ "$ref": "#/definitions/team-member/definitions/updated_at"
19387
18878
  },
19388
- "space": {
19389
- "$ref": "#/definitions/team-usage-daily/definitions/space"
18879
+ "user": {
18880
+ "description": "user information for the membership",
18881
+ "properties": {
18882
+ "email": {
18883
+ "$ref": "#/definitions/account/definitions/email"
18884
+ },
18885
+ "id": {
18886
+ "$ref": "#/definitions/account/definitions/id"
18887
+ },
18888
+ "name": {
18889
+ "$ref": "#/definitions/account/definitions/name"
18890
+ }
18891
+ },
18892
+ "strictProperties": true,
18893
+ "type": [
18894
+ "object"
18895
+ ]
19390
18896
  }
19391
18897
  }
19392
18898
  },
19393
- "team-usage-monthly": {
18899
+ "team-monthly-usage": {
19394
18900
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
19395
18901
  "description": "Usage for an enterprise team at a monthly resolution.",
19396
18902
  "stability": "development",
@@ -19415,19 +18921,19 @@ module PlatformAPI
19415
18921
  ],
19416
18922
  "properties": {
19417
18923
  "addons": {
19418
- "$ref": "#/definitions/team-usage-monthly/definitions/addons"
18924
+ "$ref": "#/definitions/team-monthly-usage/definitions/addons"
19419
18925
  },
19420
18926
  "app_name": {
19421
18927
  "$ref": "#/definitions/app/definitions/name"
19422
18928
  },
19423
18929
  "data": {
19424
- "$ref": "#/definitions/team-usage-monthly/definitions/data"
18930
+ "$ref": "#/definitions/team-monthly-usage/definitions/data"
19425
18931
  },
19426
18932
  "dynos": {
19427
- "$ref": "#/definitions/team-usage-monthly/definitions/dynos"
18933
+ "$ref": "#/definitions/team-monthly-usage/definitions/dynos"
19428
18934
  },
19429
18935
  "partner": {
19430
- "$ref": "#/definitions/team-usage-monthly/definitions/partner"
18936
+ "$ref": "#/definitions/team-monthly-usage/definitions/partner"
19431
18937
  }
19432
18938
  }
19433
18939
  },
@@ -19496,18 +19002,52 @@ module PlatformAPI
19496
19002
  "type": [
19497
19003
  "number"
19498
19004
  ]
19005
+ },
19006
+ "start_date": {
19007
+ "description": "range start date",
19008
+ "example": "2019-01",
19009
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
19010
+ "readOnly": true,
19011
+ "type": [
19012
+ "string"
19013
+ ]
19014
+ },
19015
+ "end_date": {
19016
+ "description": "range end date",
19017
+ "example": "2019-02",
19018
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
19019
+ "readOnly": true,
19020
+ "type": [
19021
+ "string"
19022
+ ]
19499
19023
  }
19500
19024
  },
19501
19025
  "links": [
19502
19026
  {
19503
- "description": "Retrieves usage for an enterprise team for a range of months. Start and end dates can be specified as query parameters using the date format, YYYY-MM format. For example, '/teams/example-team/usage/monthly?start=2019-01&end=2019-02' specifies usage in January and February for 2019. If no end date is specified, one month of usage is returned.",
19027
+ "description": "Retrieves usage for an enterprise team for a range of months. Start and end dates can be specified as query parameters using the date, YYYY-MM. If no end date is specified, one month of usage is returned. The team identifier can be found from the [team list endpoint](https://devcenter.heroku.com/articles/platform-api-reference#team-list).\n",
19504
19028
  "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fid)}/usage/monthly",
19505
19029
  "method": "GET",
19506
19030
  "title": "Info",
19031
+ "schema": {
19032
+ "properties": {
19033
+ "start": {
19034
+ "$ref": "#/definitions/team-monthly-usage/definitions/start_date"
19035
+ },
19036
+ "end": {
19037
+ "$ref": "#/definitions/team-monthly-usage/definitions/end_date"
19038
+ }
19039
+ },
19040
+ "required": [
19041
+ "start"
19042
+ ],
19043
+ "type": [
19044
+ "object"
19045
+ ]
19046
+ },
19507
19047
  "rel": "instances",
19508
19048
  "targetSchema": {
19509
19049
  "items": {
19510
- "$ref": "#/definitions/team-usage-monthly"
19050
+ "$ref": "#/definitions/team-monthly-usage"
19511
19051
  },
19512
19052
  "type": [
19513
19053
  "array"
@@ -19517,7 +19057,7 @@ module PlatformAPI
19517
19057
  ],
19518
19058
  "properties": {
19519
19059
  "addons": {
19520
- "$ref": "#/definitions/team-usage-monthly/definitions/addons"
19060
+ "$ref": "#/definitions/team-monthly-usage/definitions/addons"
19521
19061
  },
19522
19062
  "apps": {
19523
19063
  "description": "app usage in the team",
@@ -19525,35 +19065,141 @@ module PlatformAPI
19525
19065
  "array"
19526
19066
  ],
19527
19067
  "items": {
19528
- "$ref": "#/definitions/team-usage-monthly/definitions/app_usage_monthly"
19068
+ "$ref": "#/definitions/team-monthly-usage/definitions/app_usage_monthly"
19529
19069
  }
19530
19070
  },
19531
19071
  "connect": {
19532
- "$ref": "#/definitions/team-usage-monthly/definitions/connect"
19072
+ "$ref": "#/definitions/team-monthly-usage/definitions/connect"
19533
19073
  },
19534
19074
  "data": {
19535
- "$ref": "#/definitions/team-usage-monthly/definitions/data"
19075
+ "$ref": "#/definitions/team-monthly-usage/definitions/data"
19536
19076
  },
19537
19077
  "dynos": {
19538
- "$ref": "#/definitions/team-usage-monthly/definitions/dynos"
19078
+ "$ref": "#/definitions/team-monthly-usage/definitions/dynos"
19539
19079
  },
19540
19080
  "id": {
19541
- "$ref": "#/definitions/team-usage-monthly/definitions/id"
19081
+ "$ref": "#/definitions/team-monthly-usage/definitions/id"
19542
19082
  },
19543
19083
  "month": {
19544
- "$ref": "#/definitions/team-usage-monthly/definitions/month"
19084
+ "$ref": "#/definitions/team-monthly-usage/definitions/month"
19545
19085
  },
19546
19086
  "name": {
19547
- "$ref": "#/definitions/team-usage-monthly/definitions/name"
19087
+ "$ref": "#/definitions/team-monthly-usage/definitions/name"
19548
19088
  },
19549
19089
  "partner": {
19550
- "$ref": "#/definitions/team-usage-monthly/definitions/partner"
19090
+ "$ref": "#/definitions/team-monthly-usage/definitions/partner"
19551
19091
  },
19552
19092
  "space": {
19553
- "$ref": "#/definitions/team-usage-monthly/definitions/space"
19093
+ "$ref": "#/definitions/team-monthly-usage/definitions/space"
19094
+ }
19095
+ }
19096
+ },
19097
+ "team-preferences": {
19098
+ "description": "Tracks a Team's Preferences",
19099
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
19100
+ "stability": "development",
19101
+ "strictProperties": true,
19102
+ "title": "Heroku Platform API - Team Preferences",
19103
+ "type": [
19104
+ "object"
19105
+ ],
19106
+ "definitions": {
19107
+ "default-permission": {
19108
+ "description": "The default permission used when adding new members to the team",
19109
+ "example": "member",
19110
+ "readOnly": false,
19111
+ "enum": [
19112
+ "admin",
19113
+ "member",
19114
+ "viewer",
19115
+ null
19116
+ ],
19117
+ "type": [
19118
+ "null",
19119
+ "string"
19120
+ ]
19121
+ },
19122
+ "identity": {
19123
+ "$ref": "#/definitions/team/definitions/identity"
19124
+ },
19125
+ "addons-controls": {
19126
+ "description": "Whether add-on service rules should be applied to add-on installations",
19127
+ "example": true,
19128
+ "readOnly": false,
19129
+ "type": [
19130
+ "boolean",
19131
+ "null"
19132
+ ]
19133
+ }
19134
+ },
19135
+ "links": [
19136
+ {
19137
+ "description": "Retrieve Team Preferences",
19138
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam-preferences%2Fdefinitions%2Fidentity)}/preferences",
19139
+ "method": "GET",
19140
+ "rel": "self",
19141
+ "targetSchema": {
19142
+ "$ref": "#/definitions/team-preferences"
19143
+ },
19144
+ "title": "List"
19145
+ },
19146
+ {
19147
+ "description": "Update Team Preferences",
19148
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam-preferences%2Fdefinitions%2Fidentity)}/preferences",
19149
+ "method": "PATCH",
19150
+ "rel": "update",
19151
+ "schema": {
19152
+ "type": [
19153
+ "object"
19154
+ ],
19155
+ "properties": {
19156
+ "addons-controls": {
19157
+ "$ref": "#/definitions/team-preferences/definitions/addons-controls"
19158
+ }
19159
+ }
19160
+ },
19161
+ "targetSchema": {
19162
+ "$ref": "#/definitions/team-preferences"
19163
+ },
19164
+ "title": "Update"
19165
+ }
19166
+ ],
19167
+ "properties": {
19168
+ "default-permission": {
19169
+ "$ref": "#/definitions/team-preferences/definitions/default-permission"
19170
+ },
19171
+ "addons-controls": {
19172
+ "$ref": "#/definitions/team-preferences/definitions/addons-controls"
19554
19173
  }
19555
19174
  }
19556
19175
  },
19176
+ "team-space": {
19177
+ "description": "A space is an isolated, highly available, secure app execution environment.",
19178
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
19179
+ "stability": "prototype",
19180
+ "strictProperties": true,
19181
+ "title": "Heroku Platform API - Team Space",
19182
+ "type": [
19183
+ "object"
19184
+ ],
19185
+ "links": [
19186
+ {
19187
+ "description": "List spaces owned by the team",
19188
+ "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/spaces",
19189
+ "method": "GET",
19190
+ "rel": "instances",
19191
+ "targetSchema": {
19192
+ "items": {
19193
+ "$ref": "#/definitions/space"
19194
+ },
19195
+ "type": [
19196
+ "array"
19197
+ ]
19198
+ },
19199
+ "title": "List"
19200
+ }
19201
+ ]
19202
+ },
19557
19203
  "team": {
19558
19204
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
19559
19205
  "description": "Teams allow you to manage access to a shared group of applications and other resources.",
@@ -19633,12 +19279,11 @@ module PlatformAPI
19633
19279
  "id": {
19634
19280
  "$ref": "#/definitions/identity-provider/definitions/id"
19635
19281
  },
19636
- "slug": {
19637
- "description": "user-friendly unique identifier for this identity provider",
19638
- "example": "acme-sso",
19639
- "type": [
19640
- "string"
19641
- ]
19282
+ "name": {
19283
+ "$ref": "#/definitions/identity-provider/definitions/name"
19284
+ },
19285
+ "owner": {
19286
+ "$ref": "#/definitions/identity-provider/definitions/owner"
19642
19287
  }
19643
19288
  }
19644
19289
  },
@@ -21157,160 +20802,6 @@ module PlatformAPI
21157
20802
  "title": "Update"
21158
20803
  }
21159
20804
  ]
21160
- },
21161
- "whitelisted-add-on-service": {
21162
- "description": "Entities that have been whitelisted to be used by a Team. Deprecated in favor of [Allowed Add-on Service](#allowed-add-on-service) endpoints.",
21163
- "$schema": "http://json-schema.org/draft-04/hyper-schema",
21164
- "stability": "prototype",
21165
- "strictProperties": true,
21166
- "title": "Heroku Platform API - Whitelisted Entity",
21167
- "type": [
21168
- "object"
21169
- ],
21170
- "definitions": {
21171
- "added_at": {
21172
- "description": "when the add-on service was whitelisted",
21173
- "example": "2012-01-01T12:00:00Z",
21174
- "format": "date-time",
21175
- "readOnly": true,
21176
- "type": [
21177
- "string"
21178
- ]
21179
- },
21180
- "added_by": {
21181
- "description": "the user which whitelisted the Add-on Service",
21182
- "properties": {
21183
- "email": {
21184
- "$ref": "#/definitions/account/definitions/email",
21185
- "type": [
21186
- "string",
21187
- "null"
21188
- ]
21189
- },
21190
- "id": {
21191
- "$ref": "#/definitions/account/definitions/id",
21192
- "type": [
21193
- "string",
21194
- "null"
21195
- ]
21196
- }
21197
- },
21198
- "readOnly": true,
21199
- "type": [
21200
- "object"
21201
- ]
21202
- },
21203
- "addon_service": {
21204
- "description": "the Add-on Service whitelisted for use",
21205
- "properties": {
21206
- "id": {
21207
- "$ref": "#/definitions/add-on-service/definitions/id"
21208
- },
21209
- "name": {
21210
- "$ref": "#/definitions/add-on-service/definitions/name"
21211
- },
21212
- "human_name": {
21213
- "$ref": "#/definitions/add-on-service/definitions/human_name"
21214
- }
21215
- },
21216
- "readOnly": true,
21217
- "type": [
21218
- "object"
21219
- ]
21220
- },
21221
- "id": {
21222
- "description": "unique identifier for this whitelisting entity",
21223
- "example": "01234567-89ab-cdef-0123-456789abcdef",
21224
- "format": "uuid",
21225
- "readOnly": true,
21226
- "type": [
21227
- "string"
21228
- ]
21229
- },
21230
- "identity": {
21231
- "anyOf": [
21232
- {
21233
- "$ref": "#/definitions/whitelisted-add-on-service/definitions/id"
21234
- },
21235
- {
21236
- "$ref": "#/definitions/add-on-service/definitions/name"
21237
- }
21238
- ]
21239
- }
21240
- },
21241
- "links": [
21242
- {
21243
- "deactivate_on": "2021-02-05",
21244
- "description": "List all whitelisted Add-on Services for a Team - Deprecated in favor of [`GET /teams/{team_name_or_id}/allowed-addon-services`](#allowed-add-on-service-list-by-team) endpoint.",
21245
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/whitelisted-addon-services",
21246
- "method": "GET",
21247
- "rel": "instances",
21248
- "targetSchema": {
21249
- "items": {
21250
- "$ref": "#/definitions/whitelisted-add-on-service"
21251
- },
21252
- "type": [
21253
- "array"
21254
- ]
21255
- },
21256
- "title": "List By Team - Deprecated"
21257
- },
21258
- {
21259
- "deactivate_on": "2021-02-05",
21260
- "description": "Whitelist an Add-on Service - Deprecated in favor of [`POST /teams/{team_name_or_id}/allowed-addon-services`](#allowed-add-on-service-create-by-team) endpoint.",
21261
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/whitelisted-addon-services",
21262
- "method": "POST",
21263
- "rel": "create",
21264
- "schema": {
21265
- "type": [
21266
- "object"
21267
- ],
21268
- "properties": {
21269
- "addon_service": {
21270
- "description": "name of the Add-on to whitelist",
21271
- "example": "heroku-postgresql",
21272
- "type": [
21273
- "string"
21274
- ]
21275
- }
21276
- }
21277
- },
21278
- "targetSchema": {
21279
- "items": {
21280
- "$ref": "#/definitions/whitelisted-add-on-service"
21281
- },
21282
- "type": [
21283
- "array"
21284
- ]
21285
- },
21286
- "title": "Create By Team - Deprecated"
21287
- },
21288
- {
21289
- "deactivate_on": "2021-02-05",
21290
- "description": "Remove a whitelisted entity - Deprecated in favor of [`DELETE /teams/{team_name_or_id}/allowed-addon-services/{allowed_add_on_service_id_or_name}`](#allowed-add-on-service-delete-by-team) endpoint.",
21291
- "href": "/teams/{(%23%2Fdefinitions%2Fteam%2Fdefinitions%2Fidentity)}/whitelisted-addon-services/{(%23%2Fdefinitions%2Fwhitelisted-add-on-service%2Fdefinitions%2Fidentity)}",
21292
- "method": "DELETE",
21293
- "rel": "destroy",
21294
- "targetSchema": {
21295
- "$ref": "#/definitions/whitelisted-add-on-service"
21296
- },
21297
- "title": "Delete By Team - Deprecated"
21298
- }
21299
- ],
21300
- "properties": {
21301
- "added_at": {
21302
- "$ref": "#/definitions/whitelisted-add-on-service/definitions/added_at"
21303
- },
21304
- "added_by": {
21305
- "$ref": "#/definitions/whitelisted-add-on-service/definitions/added_by"
21306
- },
21307
- "addon_service": {
21308
- "$ref": "#/definitions/whitelisted-add-on-service/definitions/addon_service"
21309
- },
21310
- "id": {
21311
- "$ref": "#/definitions/whitelisted-add-on-service/definitions/id"
21312
- }
21313
- }
21314
20805
  }
21315
20806
  },
21316
20807
  "properties": {
@@ -21407,14 +20898,14 @@ module PlatformAPI
21407
20898
  "dyno": {
21408
20899
  "$ref": "#/definitions/dyno"
21409
20900
  },
20901
+ "enterprise-account-daily-usage": {
20902
+ "$ref": "#/definitions/enterprise-account-daily-usage"
20903
+ },
21410
20904
  "enterprise-account-member": {
21411
20905
  "$ref": "#/definitions/enterprise-account-member"
21412
20906
  },
21413
- "enterprise-account-usage-daily": {
21414
- "$ref": "#/definitions/enterprise-account-usage-daily"
21415
- },
21416
- "enterprise-account-usage-monthly": {
21417
- "$ref": "#/definitions/enterprise-account-usage-monthly"
20907
+ "enterprise-account-monthly-usage": {
20908
+ "$ref": "#/definitions/enterprise-account-monthly-usage"
21418
20909
  },
21419
20910
  "enterprise-account": {
21420
20911
  "$ref": "#/definitions/enterprise-account"
@@ -21548,9 +21039,6 @@ module PlatformAPI
21548
21039
  "space": {
21549
21040
  "$ref": "#/definitions/space"
21550
21041
  },
21551
- "ssl-endpoint": {
21552
- "$ref": "#/definitions/ssl-endpoint"
21553
- },
21554
21042
  "stack": {
21555
21043
  "$ref": "#/definitions/stack"
21556
21044
  },
@@ -21566,6 +21054,9 @@ module PlatformAPI
21566
21054
  "team-app": {
21567
21055
  "$ref": "#/definitions/team-app"
21568
21056
  },
21057
+ "team-daily-usage": {
21058
+ "$ref": "#/definitions/team-daily-usage"
21059
+ },
21569
21060
  "team-feature": {
21570
21061
  "$ref": "#/definitions/team-feature"
21571
21062
  },
@@ -21578,18 +21069,15 @@ module PlatformAPI
21578
21069
  "team-member": {
21579
21070
  "$ref": "#/definitions/team-member"
21580
21071
  },
21072
+ "team-monthly-usage": {
21073
+ "$ref": "#/definitions/team-monthly-usage"
21074
+ },
21581
21075
  "team-preferences": {
21582
21076
  "$ref": "#/definitions/team-preferences"
21583
21077
  },
21584
21078
  "team-space": {
21585
21079
  "$ref": "#/definitions/team-space"
21586
21080
  },
21587
- "team-usage-daily": {
21588
- "$ref": "#/definitions/team-usage-daily"
21589
- },
21590
- "team-usage-monthly": {
21591
- "$ref": "#/definitions/team-usage-monthly"
21592
- },
21593
21081
  "team": {
21594
21082
  "$ref": "#/definitions/team"
21595
21083
  },
@@ -21607,9 +21095,6 @@ module PlatformAPI
21607
21095
  },
21608
21096
  "vpn-connection": {
21609
21097
  "$ref": "#/definitions/vpn-connection"
21610
- },
21611
- "whitelisted-add-on-service": {
21612
- "$ref": "#/definitions/whitelisted-add-on-service"
21613
21098
  }
21614
21099
  },
21615
21100
  "description": "The platform API empowers developers to automate, extend and combine Heroku with other services.",