platform-api 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f2bb6104d482a464bd8056fe449e041fb885e6c4
4
- data.tar.gz: 228a991f2d05779faa4b217b75345b023ba75813
3
+ metadata.gz: 7a78e13c36bd7bf365dd1c6b6823d55a4a85a6c7
4
+ data.tar.gz: 966c898d38642740cef7bf868911a7e482b9529b
5
5
  SHA512:
6
- metadata.gz: 4bcdaf5153ba48366abf2616300446d29421456afe9f91981cf33a6e4ef8ae1c99fb8df2850bdf4e072919dbcf588cf3bfdc90d9b17f4d7ec2617bee8a7780e7
7
- data.tar.gz: 6942f1ace542435471165b06be9e8ab2d01623050882506a7d975c08207012a750035cdc5cff68597d281505f3b486a9ff01d623f6166dfadb62a50346c7c5d2
6
+ metadata.gz: 5b8fddb05489640e17f52ada11ae82843900a2c23f8920ccfd336c386dd9dd6b01ec1f5595b9046192d351ca460b9aa9daee69d02d487db4058f39bc33957b83
7
+ data.tar.gz: b8437b8519459f7d9b394a7b3fb03c1c43d64d27a42626366c6cf980c88230d52acba00f353825c386c1aa4ea80a2d34d6d9672b3b0c0ddedc435c1e92cf6181
@@ -1,14 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- platform-api (0.6.0)
4
+ platform-api (0.7.0)
5
5
  heroics
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
10
  erubis (2.7.0)
11
- excon (0.48.0)
11
+ excon (0.49.0)
12
12
  heroics (0.0.16)
13
13
  erubis (~> 2.0)
14
14
  excon
@@ -103,6 +103,13 @@ module PlatformAPI
103
103
  @account_resource ||= Account.new(@client)
104
104
  end
105
105
 
106
+ # Add-on Actions are Provider functionality for specific add-on installations
107
+ #
108
+ # @return [AddonAction]
109
+ def addon_action
110
+ @addon_action_resource ||= AddonAction.new(@client)
111
+ end
112
+
106
113
  # An add-on attachment represents a connection between an app and an add-on that it has been given access to.
107
114
  #
108
115
  # @return [AddonAttachment]
@@ -110,6 +117,13 @@ module PlatformAPI
110
117
  @addon_attachment_resource ||= AddonAttachment.new(@client)
111
118
  end
112
119
 
120
+ # Add-on region capabilities represent the relationship between an Add-on Service and a specific Region
121
+ #
122
+ # @return [AddonRegionCapability]
123
+ def addon_region_capability
124
+ @addon_region_capability_resource ||= AddonRegionCapability.new(@client)
125
+ end
126
+
113
127
  # Add-on services represent add-ons that may be provisioned for apps. Endpoints under add-on services can be accessed without authentication.
114
128
  #
115
129
  # @return [AddonService]
@@ -201,7 +215,7 @@ module PlatformAPI
201
215
  @domain_resource ||= Domain.new(@client)
202
216
  end
203
217
 
204
- # Dynos encapsulate running processes of an app on Heroku.
218
+ # Dynos encapsulate running processes of an app on Heroku. Detailed information about dyno sizes can be found at: [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.heroku.com/articles/dyno-types).
205
219
  #
206
220
  # @return [Dyno]
207
221
  def dyno
@@ -222,6 +236,13 @@ module PlatformAPI
222
236
  @failed_event_resource ||= FailedEvent.new(@client)
223
237
  end
224
238
 
239
+ # Filters are special endpoints to allow for API consumers to specify a subset of resources to consume in order to reduce the number of requests that are performed. Each filter endpoint endpoint is responsible for determining its supported request format. The endpoints are over POST in order to handle large request bodies without hitting request uri query length limitations, but the requests themselves are idempotent and will not have side effects.
240
+ #
241
+ # @return [FilterApps]
242
+ def filter_apps
243
+ @filter_apps_resource ||= FilterApps.new(@client)
244
+ end
245
+
225
246
  # The formation of processes that should be maintained for an app. Update the formation to scale processes or change dyno sizes. Available process type names and commands are defined by the `process_types` attribute for the [slug](#slug) currently released on an app.
226
247
  #
227
248
  # @return [Formation]
@@ -474,7 +495,7 @@ module PlatformAPI
474
495
  @source_resource ||= Source.new(@client)
475
496
  end
476
497
 
477
- # Space access represents the privileges a particular user has on a particular space.
498
+ # Space access represents the permissions a particular user has on a particular space.
478
499
  #
479
500
  # @return [SpaceAppAccess]
480
501
  def space_app_access
@@ -598,6 +619,13 @@ module PlatformAPI
598
619
  end
599
620
  end
600
621
 
622
+ # Add-on Actions are Provider functionality for specific add-on installations
623
+ class AddonAction
624
+ def initialize(client)
625
+ @client = client
626
+ end
627
+ end
628
+
601
629
  # An add-on attachment represents a connection between an app and an add-on that it has been given access to.
602
630
  class AddonAttachment
603
631
  def initialize(client)
@@ -653,6 +681,27 @@ module PlatformAPI
653
681
  end
654
682
  end
655
683
 
684
+ # Add-on region capabilities represent the relationship between an Add-on Service and a specific Region
685
+ class AddonRegionCapability
686
+ def initialize(client)
687
+ @client = client
688
+ end
689
+
690
+ # List existing add-on region capabilities for a region.
691
+ #
692
+ # @param region_id_or_region_name: unique identifier of region or unique name of region
693
+ def list(region_id_or_region_name)
694
+ @client.addon_region_capability.list(region_id_or_region_name)
695
+ end
696
+
697
+ # List existing add-on region capabilities for an addon-service
698
+ #
699
+ # @param addon_service_id_or_addon_service_name: unique identifier of this addon-service or unique name of this addon-service
700
+ def list_by_add_on_service(addon_service_id_or_addon_service_name)
701
+ @client.addon_region_capability.list_by_add_on_service(addon_service_id_or_addon_service_name)
702
+ end
703
+ end
704
+
656
705
  # Add-on services represent add-ons that may be provisioned for apps. Endpoints under add-on services can be accessed without authentication.
657
706
  class AddonService
658
707
  def initialize(client)
@@ -1055,7 +1104,7 @@ module PlatformAPI
1055
1104
  end
1056
1105
  end
1057
1106
 
1058
- # Dynos encapsulate running processes of an app on Heroku.
1107
+ # Dynos encapsulate running processes of an app on Heroku. Detailed information about dyno sizes can be found at: [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.heroku.com/articles/dyno-types).
1059
1108
  class Dyno
1060
1109
  def initialize(client)
1061
1110
  @client = client
@@ -1114,6 +1163,20 @@ module PlatformAPI
1114
1163
  end
1115
1164
  end
1116
1165
 
1166
+ # Filters are special endpoints to allow for API consumers to specify a subset of resources to consume in order to reduce the number of requests that are performed. Each filter endpoint endpoint is responsible for determining its supported request format. The endpoints are over POST in order to handle large request bodies without hitting request uri query length limitations, but the requests themselves are idempotent and will not have side effects.
1167
+ class FilterApps
1168
+ def initialize(client)
1169
+ @client = client
1170
+ end
1171
+
1172
+ # Request an apps list filtered by app id.
1173
+ #
1174
+ # @param body: the object to pass as the request payload
1175
+ def apps(body)
1176
+ @client.filter_apps.apps(body)
1177
+ end
1178
+ end
1179
+
1117
1180
  # The formation of processes that should be maintained for an app. Update the formation to scale processes or change dyno sizes. Available process type names and commands are defined by the `process_types` attribute for the [slug](#slug) currently released on an app.
1118
1181
  class Formation
1119
1182
  def initialize(client)
@@ -1415,6 +1478,13 @@ module PlatformAPI
1415
1478
  def update(oauth_client_id, body)
1416
1479
  @client.oauth_client.update(oauth_client_id, body)
1417
1480
  end
1481
+
1482
+ # Rotate credentials for an OAuth client
1483
+ #
1484
+ # @param oauth_client_id: unique identifier of this OAuth client
1485
+ def rotate_credentials(oauth_client_id)
1486
+ @client.oauth_client.rotate_credentials(oauth_client_id)
1487
+ end
1418
1488
  end
1419
1489
 
1420
1490
  # OAuth grants are used to obtain authorizations on behalf of a user. For more information please refer to the [Heroku OAuth documentation](https://devcenter.heroku.com/articles/oauth)
@@ -1465,7 +1535,7 @@ module PlatformAPI
1465
1535
  @client = client
1466
1536
  end
1467
1537
 
1468
- # Create a new collaborator on an organization app. Use this endpoint instead of the `/apps/{app_id_or_name}/collaborator` endpoint when you want the collaborator to be granted [privileges] (https://devcenter.heroku.com/articles/org-users-access#roles-and-app-privileges) according to their role in the organization.
1538
+ # Create a new collaborator on an organization 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-app-permissions) according to their role in the organization.
1469
1539
  #
1470
1540
  # @param app_id_or_app_name: unique identifier of app or unique name of app
1471
1541
  # @param body: the object to pass as the request payload
@@ -2037,13 +2107,13 @@ module PlatformAPI
2037
2107
  end
2038
2108
  end
2039
2109
 
2040
- # Space access represents the privileges a particular user has on a particular space.
2110
+ # Space access represents the permissions a particular user has on a particular space.
2041
2111
  class SpaceAppAccess
2042
2112
  def initialize(client)
2043
2113
  @client = client
2044
2114
  end
2045
2115
 
2046
- # List privileges for a given user on a given space.
2116
+ # List permissions for a given user on a given space.
2047
2117
  #
2048
2118
  # @param space_id_or_space_name: unique identifier of space or unique name of space
2049
2119
  # @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
@@ -2051,7 +2121,7 @@ module PlatformAPI
2051
2121
  @client.space_app_access.info(space_id_or_space_name, account_email_or_account_id_or_account_self)
2052
2122
  end
2053
2123
 
2054
- # Update an existing user's set of privileges on a space.
2124
+ # Update an existing user's set of permissions on a space.
2055
2125
  #
2056
2126
  # @param space_id_or_space_name: unique identifier of space or unique name of space
2057
2127
  # @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
@@ -2060,7 +2130,7 @@ module PlatformAPI
2060
2130
  @client.space_app_access.update(space_id_or_space_name, account_email_or_account_id_or_account_self, body)
2061
2131
  end
2062
2132
 
2063
- # List all users and their privileges on a space.
2133
+ # List all users and their permissions on a space.
2064
2134
  #
2065
2135
  # @param space_id_or_space_name: unique identifier of space or unique name of space
2066
2136
  def list(space_id_or_space_name)
@@ -2843,6 +2913,79 @@ module PlatformAPI
2843
2913
  }
2844
2914
  }
2845
2915
  },
2916
+ "addon-action": {
2917
+ "description": "Add-on Actions are Provider functionality for specific add-on installations",
2918
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
2919
+ "stability": "development",
2920
+ "strictProperties": true,
2921
+ "title": "Heroku Platform API - Add-on Action",
2922
+ "type": [
2923
+ "object"
2924
+ ],
2925
+ "definitions": {
2926
+ "id": {
2927
+ "description": "a unique identifier",
2928
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
2929
+ "format": "uuid",
2930
+ "readOnly": true,
2931
+ "type": [
2932
+ "string"
2933
+ ]
2934
+ },
2935
+ "identity": {
2936
+ "$ref": "#/definitions/addon-action/definitions/id"
2937
+ },
2938
+ "label": {
2939
+ "description": "the display text shown in Dashboard",
2940
+ "example": "Example",
2941
+ "readOnly": true,
2942
+ "type": [
2943
+ "string"
2944
+ ]
2945
+ },
2946
+ "action": {
2947
+ "description": "identifier of the action to take that is sent via SSO",
2948
+ "example": "example",
2949
+ "readOnly": true,
2950
+ "type": [
2951
+ "string"
2952
+ ]
2953
+ },
2954
+ "url": {
2955
+ "description": "absolute URL to use instead of an action",
2956
+ "example": "http://example.com?resource_id=:resource_id",
2957
+ "readOnly": true,
2958
+ "type": [
2959
+ "string"
2960
+ ]
2961
+ },
2962
+ "requires_owner": {
2963
+ "description": "if the action requires the user to own the app",
2964
+ "example": true,
2965
+ "readOnly": true,
2966
+ "type": [
2967
+ "boolean"
2968
+ ]
2969
+ }
2970
+ },
2971
+ "properties": {
2972
+ "id": {
2973
+ "$ref": "#/definitions/addon-action/definitions/id"
2974
+ },
2975
+ "label": {
2976
+ "$ref": "#/definitions/addon-action/definitions/label"
2977
+ },
2978
+ "action": {
2979
+ "$ref": "#/definitions/addon-action/definitions/action"
2980
+ },
2981
+ "url": {
2982
+ "$ref": "#/definitions/addon-action/definitions/url"
2983
+ },
2984
+ "requires_owner": {
2985
+ "$ref": "#/definitions/addon-action/definitions/requires_owner"
2986
+ }
2987
+ }
2988
+ },
2846
2989
  "addon-attachment": {
2847
2990
  "description": "An add-on attachment represents a connection between an app and an add-on that it has been given access to.",
2848
2991
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -3098,6 +3241,98 @@ module PlatformAPI
3098
3241
  }
3099
3242
  }
3100
3243
  },
3244
+ "addon-region-capability": {
3245
+ "description": "Add-on region capabilities represent the relationship between an Add-on Service and a specific Region",
3246
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
3247
+ "stability": "production",
3248
+ "strictProperties": true,
3249
+ "title": "Heroku Platform API - Add-on Region Capability",
3250
+ "type": [
3251
+ "object"
3252
+ ],
3253
+ "definitions": {
3254
+ "id": {
3255
+ "description": "unique identifier of this addon-region-capability",
3256
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
3257
+ "format": "uuid",
3258
+ "readOnly": true,
3259
+ "type": [
3260
+ "string"
3261
+ ]
3262
+ },
3263
+ "supports_private_networking": {
3264
+ "description": "whether the add-on can be installed to a Space",
3265
+ "readOnly": true,
3266
+ "type": [
3267
+ "boolean"
3268
+ ]
3269
+ },
3270
+ "identity": {
3271
+ "$ref": "#/definitions/addon-region-capability/definitions/id"
3272
+ }
3273
+ },
3274
+ "links": [
3275
+ {
3276
+ "description": "List all existing add-on region capabilities.",
3277
+ "href": "/addon-region-capabilities",
3278
+ "method": "GET",
3279
+ "rel": "instances",
3280
+ "targetSchema": {
3281
+ "items": {
3282
+ "$ref": "#/definitions/addon-region-capability"
3283
+ },
3284
+ "type": [
3285
+ "array"
3286
+ ]
3287
+ },
3288
+ "title": "List"
3289
+ },
3290
+ {
3291
+ "description": "List existing add-on region capabilities for an addon-service",
3292
+ "href": "/addon-services/{(%23%2Fdefinitions%2Faddon-service%2Fdefinitions%2Fidentity)}/region-capabilities",
3293
+ "method": "GET",
3294
+ "rel": "instances",
3295
+ "targetSchema": {
3296
+ "items": {
3297
+ "$ref": "#/definitions/addon-region-capability"
3298
+ },
3299
+ "type": [
3300
+ "array"
3301
+ ]
3302
+ },
3303
+ "title": "List by Add-on Service"
3304
+ },
3305
+ {
3306
+ "description": "List existing add-on region capabilities for a region.",
3307
+ "href": "/regions/{(%23%2Fdefinitions%2Fregion%2Fdefinitions%2Fidentity)}/addon-region-capabilities",
3308
+ "method": "GET",
3309
+ "rel": "instances",
3310
+ "targetSchema": {
3311
+ "items": {
3312
+ "$ref": "#/definitions/addon-region-capability"
3313
+ },
3314
+ "type": [
3315
+ "array"
3316
+ ]
3317
+ },
3318
+ "title": "List"
3319
+ }
3320
+ ],
3321
+ "properties": {
3322
+ "id": {
3323
+ "$ref": "#/definitions/addon-region-capability/definitions/id"
3324
+ },
3325
+ "supports_private_networking": {
3326
+ "$ref": "#/definitions/addon-region-capability/definitions/supports_private_networking"
3327
+ },
3328
+ "addon_service": {
3329
+ "$ref": "#/definitions/addon-service"
3330
+ },
3331
+ "region": {
3332
+ "$ref": "#/definitions/region"
3333
+ }
3334
+ }
3335
+ },
3101
3336
  "addon-service": {
3102
3337
  "description": "Add-on services represent add-ons that may be provisioned for apps. Endpoints under add-on services can be accessed without authentication.",
3103
3338
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -3270,6 +3505,35 @@ module PlatformAPI
3270
3505
  "object"
3271
3506
  ],
3272
3507
  "definitions": {
3508
+ "actions": {
3509
+ "description": "provider actions for this specific add-on",
3510
+ "type": [
3511
+ "array"
3512
+ ],
3513
+ "items": {
3514
+ "type": [
3515
+ "object"
3516
+ ]
3517
+ },
3518
+ "readOnly": true,
3519
+ "properties": {
3520
+ "id": {
3521
+ "$ref": "#/definitions/addon-action/definitions/id"
3522
+ },
3523
+ "label": {
3524
+ "$ref": "#/definitions/addon-action/definitions/label"
3525
+ },
3526
+ "action": {
3527
+ "$ref": "#/definitions/addon-action/definitions/action"
3528
+ },
3529
+ "url": {
3530
+ "$ref": "#/definitions/addon-action/definitions/url"
3531
+ },
3532
+ "requires_owner": {
3533
+ "$ref": "#/definitions/addon-action/definitions/requires_owner"
3534
+ }
3535
+ }
3536
+ },
3273
3537
  "config_vars": {
3274
3538
  "description": "config vars exposed to the owning app by this add-on",
3275
3539
  "example": [
@@ -3486,6 +3750,9 @@ module PlatformAPI
3486
3750
  }
3487
3751
  ],
3488
3752
  "properties": {
3753
+ "actions": {
3754
+ "$ref": "#/definitions/addon/definitions/actions"
3755
+ },
3489
3756
  "addon_service": {
3490
3757
  "description": "identity of add-on service",
3491
3758
  "properties": {
@@ -3939,7 +4206,6 @@ module PlatformAPI
3939
4206
  },
3940
4207
  "source_blob": {
3941
4208
  "description": "gzipped tarball of source code containing app.json manifest file",
3942
- "example": "https://example.com/source.tgz?token=xyz",
3943
4209
  "properties": {
3944
4210
  "checksum": {
3945
4211
  "description": "an optional checksum of the gzipped tarball for verifying its integrity",
@@ -5662,7 +5928,7 @@ module PlatformAPI
5662
5928
  }
5663
5929
  },
5664
5930
  "dyno": {
5665
- "description": "Dynos encapsulate running processes of an app on Heroku.",
5931
+ "description": "Dynos encapsulate running processes of an app on Heroku. Detailed information about dyno sizes can be found at: [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.heroku.com/articles/dyno-types).",
5666
5932
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
5667
5933
  "stability": "production",
5668
5934
  "strictProperties": true,
@@ -5752,6 +6018,15 @@ module PlatformAPI
5752
6018
  "string"
5753
6019
  ]
5754
6020
  },
6021
+ "force_no_tty": {
6022
+ "description": "force an attached one-off dyno to not run in a tty",
6023
+ "example": null,
6024
+ "readOnly": false,
6025
+ "type": [
6026
+ "boolean",
6027
+ "null"
6028
+ ]
6029
+ },
5755
6030
  "size": {
5756
6031
  "description": "dyno size (default: \"standard-1X\")",
5757
6032
  "example": "standard-1X",
@@ -5803,6 +6078,9 @@ module PlatformAPI
5803
6078
  "env": {
5804
6079
  "$ref": "#/definitions/dyno/definitions/env"
5805
6080
  },
6081
+ "force_no_tty": {
6082
+ "$ref": "#/definitions/dyno/definitions/force_no_tty"
6083
+ },
5806
6084
  "size": {
5807
6085
  "$ref": "#/definitions/dyno/definitions/size"
5808
6086
  }
@@ -6003,6 +6281,9 @@ module PlatformAPI
6003
6281
  {
6004
6282
  "$ref": "#/definitions/formation"
6005
6283
  },
6284
+ {
6285
+ "$ref": "#/definitions/organization"
6286
+ },
6006
6287
  {
6007
6288
  "$ref": "#/definitions/release"
6008
6289
  },
@@ -6055,6 +6336,7 @@ module PlatformAPI
6055
6336
  "dyno",
6056
6337
  "failed-event",
6057
6338
  "formation",
6339
+ "organization",
6058
6340
  "release",
6059
6341
  "space",
6060
6342
  "user"
@@ -6279,6 +6561,70 @@ module PlatformAPI
6279
6561
  }
6280
6562
  }
6281
6563
  },
6564
+ "filter-apps": {
6565
+ "description": "Filters are special endpoints to allow for API consumers to specify a subset of resources to consume in order to reduce the number of requests that are performed. Each filter endpoint endpoint is responsible for determining its supported request format. The endpoints are over POST in order to handle large request bodies without hitting request uri query length limitations, but the requests themselves are idempotent and will not have side effects.",
6566
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
6567
+ "stability": "development",
6568
+ "title": "Heroku Platform API - Filters",
6569
+ "type": [
6570
+ "object"
6571
+ ],
6572
+ "definitions": {
6573
+ "filter": {
6574
+ "type": [
6575
+ "object"
6576
+ ],
6577
+ "properties": {
6578
+ "in": {
6579
+ "$ref": "#/definitions/filter-apps/definitions/in"
6580
+ }
6581
+ }
6582
+ },
6583
+ "in": {
6584
+ "type": [
6585
+ "object"
6586
+ ],
6587
+ "properties": {
6588
+ "id": {
6589
+ "$ref": "#/definitions/filter-apps/definitions/id"
6590
+ }
6591
+ }
6592
+ },
6593
+ "id": {
6594
+ "type": [
6595
+ "array"
6596
+ ],
6597
+ "items": {
6598
+ "$ref": "#/definitions/app/definitions/id"
6599
+ }
6600
+ }
6601
+ },
6602
+ "links": [
6603
+ {
6604
+ "description": "Request an apps list filtered by app id.",
6605
+ "title": "Apps",
6606
+ "href": "/filters/apps",
6607
+ "method": "POST",
6608
+ "ranges": [
6609
+ "id",
6610
+ "name",
6611
+ "updated_at"
6612
+ ],
6613
+ "rel": "instances",
6614
+ "schema": {
6615
+ "$ref": "#/definitions/filter-apps/definitions/filter"
6616
+ },
6617
+ "targetSchema": {
6618
+ "items": {
6619
+ "$ref": "#/definitions/organization-app"
6620
+ },
6621
+ "type": [
6622
+ "array"
6623
+ ]
6624
+ }
6625
+ }
6626
+ ]
6627
+ },
6282
6628
  "formation": {
6283
6629
  "description": "The formation of processes that should be maintained for an app. Update the formation to scale processes or change dyno sizes. Available process type names and commands are defined by the `process_types` attribute for the [slug](#slug) currently released on an app.",
6284
6630
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -7979,6 +8325,16 @@ module PlatformAPI
7979
8325
  "$ref": "#/definitions/oauth-client"
7980
8326
  },
7981
8327
  "title": "Update"
8328
+ },
8329
+ {
8330
+ "description": "Rotate credentials for an OAuth client",
8331
+ "href": "/oauth/clients/{(%23%2Fdefinitions%2Foauth-client%2Fdefinitions%2Fidentity)}/actions/rotate-credentials",
8332
+ "method": "POST",
8333
+ "rel": "update",
8334
+ "targetSchema": {
8335
+ "$ref": "#/definitions/oauth-client"
8336
+ },
8337
+ "title": "Rotate Credentials"
7982
8338
  }
7983
8339
  ],
7984
8340
  "properties": {
@@ -8348,7 +8704,7 @@ module PlatformAPI
8348
8704
  },
8349
8705
  "links": [
8350
8706
  {
8351
- "description": "Create a new collaborator on an organization app. Use this endpoint instead of the `/apps/{app_id_or_name}/collaborator` endpoint when you want the collaborator to be granted [privileges] (https://devcenter.heroku.com/articles/org-users-access#roles-and-app-privileges) according to their role in the organization.",
8707
+ "description": "Create a new collaborator on an organization 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-app-permissions) according to their role in the organization.",
8352
8708
  "href": "/organizations/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/collaborators",
8353
8709
  "method": "POST",
8354
8710
  "rel": "create",
@@ -9528,11 +9884,13 @@ module PlatformAPI
9528
9884
  "admin",
9529
9885
  "collaborator",
9530
9886
  "member",
9531
- "owner"
9887
+ "owner",
9888
+ null
9532
9889
  ],
9533
9890
  "example": "admin",
9534
9891
  "readOnly": true,
9535
9892
  "type": [
9893
+ "null",
9536
9894
  "string"
9537
9895
  ]
9538
9896
  },
@@ -10272,7 +10630,7 @@ module PlatformAPI
10272
10630
  "links": [
10273
10631
  {
10274
10632
  "description": "List couplings for a pipeline",
10275
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/pipeline-couplings",
10633
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/pipeline-couplings",
10276
10634
  "method": "GET",
10277
10635
  "rel": "instances",
10278
10636
  "targetSchema": {
@@ -10311,7 +10669,7 @@ module PlatformAPI
10311
10669
  "$ref": "#/definitions/app/definitions/identity"
10312
10670
  },
10313
10671
  "pipeline": {
10314
- "$ref": "#/definitions/pipeline/definitions/identity"
10672
+ "$ref": "#/definitions/pipeline/definitions/id"
10315
10673
  },
10316
10674
  "stage": {
10317
10675
  "$ref": "#/definitions/pipeline-coupling/definitions/stage"
@@ -11888,7 +12246,7 @@ module PlatformAPI
11888
12246
  }
11889
12247
  },
11890
12248
  "space-app-access": {
11891
- "description": "Space access represents the privileges a particular user has on a particular space.",
12249
+ "description": "Space access represents the permissions a particular user has on a particular space.",
11892
12250
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
11893
12251
  "stability": "prototype",
11894
12252
  "title": "Heroku Platform API - Space Access",
@@ -11897,7 +12255,7 @@ module PlatformAPI
11897
12255
  ],
11898
12256
  "definitions": {
11899
12257
  "id": {
11900
- "description": "unique identifier of the space a user has privileges on",
12258
+ "description": "unique identifier of the space a user has permissions on",
11901
12259
  "example": "01234567-89ab-cdef-0123-456789abcdef",
11902
12260
  "format": "uuid",
11903
12261
  "readOnly": true,
@@ -11915,7 +12273,7 @@ module PlatformAPI
11915
12273
  },
11916
12274
  "links": [
11917
12275
  {
11918
- "description": "List privileges for a given user on a given space.",
12276
+ "description": "List permissions for a given user on a given space.",
11919
12277
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Faccount%2Fdefinitions%2Fidentity)}",
11920
12278
  "method": "GET",
11921
12279
  "rel": "self",
@@ -11925,13 +12283,13 @@ module PlatformAPI
11925
12283
  "title": "Info"
11926
12284
  },
11927
12285
  {
11928
- "description": "Update an existing user's set of privileges on a space.",
12286
+ "description": "Update an existing user's set of permissions on a space.",
11929
12287
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Faccount%2Fdefinitions%2Fidentity)}",
11930
12288
  "method": "PATCH",
11931
12289
  "rel": "update",
11932
12290
  "schema": {
11933
12291
  "properties": {
11934
- "privileges": {
12292
+ "permissions": {
11935
12293
  "type": [
11936
12294
  "array"
11937
12295
  ],
@@ -11956,7 +12314,7 @@ module PlatformAPI
11956
12314
  "title": "Update"
11957
12315
  },
11958
12316
  {
11959
- "description": "List all users and their privileges on a space.",
12317
+ "description": "List all users and their permissions on a space.",
11960
12318
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members",
11961
12319
  "method": "GET",
11962
12320
  "rel": "instances",
@@ -11993,8 +12351,8 @@ module PlatformAPI
11993
12351
  "id": {
11994
12352
  "$ref": "#/definitions/space/definitions/id"
11995
12353
  },
11996
- "privileges": {
11997
- "description": "user space privileges",
12354
+ "permissions": {
12355
+ "description": "user space permissions",
11998
12356
  "type": [
11999
12357
  "array"
12000
12358
  ],
@@ -12133,6 +12491,32 @@ module PlatformAPI
12133
12491
  "object"
12134
12492
  ],
12135
12493
  "definitions": {
12494
+ "regime": {
12495
+ "description": "compliance requirements a space must adhere to",
12496
+ "readOnly": true,
12497
+ "example": "HIPAA",
12498
+ "type": [
12499
+ "string"
12500
+ ],
12501
+ "enum": [
12502
+ "HIPAA",
12503
+ "PCI"
12504
+ ]
12505
+ },
12506
+ "compliance": {
12507
+ "description": "the compliance regimes applied to a space",
12508
+ "example": [
12509
+ "HIPAA"
12510
+ ],
12511
+ "readOnly": false,
12512
+ "type": [
12513
+ "null",
12514
+ "array"
12515
+ ],
12516
+ "items": {
12517
+ "$ref": "#/definitions/space/definitions/regime"
12518
+ }
12519
+ },
12136
12520
  "created_at": {
12137
12521
  "description": "when space was created",
12138
12522
  "example": "2012-01-01T12:00:00Z",
@@ -12261,6 +12645,9 @@ module PlatformAPI
12261
12645
  },
12262
12646
  "region": {
12263
12647
  "$ref": "#/definitions/region/definitions/identity"
12648
+ },
12649
+ "compliance": {
12650
+ "$ref": "#/definitions/space/definitions/compliance"
12264
12651
  }
12265
12652
  },
12266
12653
  "required": [
@@ -12277,6 +12664,9 @@ module PlatformAPI
12277
12664
  }
12278
12665
  ],
12279
12666
  "properties": {
12667
+ "compliance": {
12668
+ "$ref": "#/definitions/space/definitions/compliance"
12669
+ },
12280
12670
  "created_at": {
12281
12671
  "$ref": "#/definitions/space/definitions/created_at"
12282
12672
  },
@@ -13007,9 +13397,15 @@ module PlatformAPI
13007
13397
  "account": {
13008
13398
  "$ref": "#/definitions/account"
13009
13399
  },
13400
+ "addon-action": {
13401
+ "$ref": "#/definitions/addon-action"
13402
+ },
13010
13403
  "addon-attachment": {
13011
13404
  "$ref": "#/definitions/addon-attachment"
13012
13405
  },
13406
+ "addon-region-capability": {
13407
+ "$ref": "#/definitions/addon-region-capability"
13408
+ },
13013
13409
  "addon-service": {
13014
13410
  "$ref": "#/definitions/addon-service"
13015
13411
  },
@@ -13058,6 +13454,9 @@ module PlatformAPI
13058
13454
  "failed-event": {
13059
13455
  "$ref": "#/definitions/failed-event"
13060
13456
  },
13457
+ "filter-apps": {
13458
+ "$ref": "#/definitions/filter-apps"
13459
+ },
13061
13460
  "formation": {
13062
13461
  "$ref": "#/definitions/formation"
13063
13462
  },
@@ -1,3 +1,3 @@
1
1
  module PlatformAPI
2
- VERSION = '0.6.0'
2
+ VERSION = '0.7.0'
3
3
  end
@@ -599,6 +599,79 @@
599
599
  }
600
600
  }
601
601
  },
602
+ "addon-action": {
603
+ "description": "Add-on Actions are Provider functionality for specific add-on installations",
604
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
605
+ "stability": "development",
606
+ "strictProperties": true,
607
+ "title": "Heroku Platform API - Add-on Action",
608
+ "type": [
609
+ "object"
610
+ ],
611
+ "definitions": {
612
+ "id": {
613
+ "description": "a unique identifier",
614
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
615
+ "format": "uuid",
616
+ "readOnly": true,
617
+ "type": [
618
+ "string"
619
+ ]
620
+ },
621
+ "identity": {
622
+ "$ref": "#/definitions/addon-action/definitions/id"
623
+ },
624
+ "label": {
625
+ "description": "the display text shown in Dashboard",
626
+ "example": "Example",
627
+ "readOnly": true,
628
+ "type": [
629
+ "string"
630
+ ]
631
+ },
632
+ "action": {
633
+ "description": "identifier of the action to take that is sent via SSO",
634
+ "example": "example",
635
+ "readOnly": true,
636
+ "type": [
637
+ "string"
638
+ ]
639
+ },
640
+ "url": {
641
+ "description": "absolute URL to use instead of an action",
642
+ "example": "http://example.com?resource_id=:resource_id",
643
+ "readOnly": true,
644
+ "type": [
645
+ "string"
646
+ ]
647
+ },
648
+ "requires_owner": {
649
+ "description": "if the action requires the user to own the app",
650
+ "example": true,
651
+ "readOnly": true,
652
+ "type": [
653
+ "boolean"
654
+ ]
655
+ }
656
+ },
657
+ "properties": {
658
+ "id": {
659
+ "$ref": "#/definitions/addon-action/definitions/id"
660
+ },
661
+ "label": {
662
+ "$ref": "#/definitions/addon-action/definitions/label"
663
+ },
664
+ "action": {
665
+ "$ref": "#/definitions/addon-action/definitions/action"
666
+ },
667
+ "url": {
668
+ "$ref": "#/definitions/addon-action/definitions/url"
669
+ },
670
+ "requires_owner": {
671
+ "$ref": "#/definitions/addon-action/definitions/requires_owner"
672
+ }
673
+ }
674
+ },
602
675
  "addon-attachment": {
603
676
  "description": "An add-on attachment represents a connection between an app and an add-on that it has been given access to.",
604
677
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -854,6 +927,98 @@
854
927
  }
855
928
  }
856
929
  },
930
+ "addon-region-capability": {
931
+ "description": "Add-on region capabilities represent the relationship between an Add-on Service and a specific Region",
932
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
933
+ "stability": "production",
934
+ "strictProperties": true,
935
+ "title": "Heroku Platform API - Add-on Region Capability",
936
+ "type": [
937
+ "object"
938
+ ],
939
+ "definitions": {
940
+ "id": {
941
+ "description": "unique identifier of this addon-region-capability",
942
+ "example": "01234567-89ab-cdef-0123-456789abcdef",
943
+ "format": "uuid",
944
+ "readOnly": true,
945
+ "type": [
946
+ "string"
947
+ ]
948
+ },
949
+ "supports_private_networking": {
950
+ "description": "whether the add-on can be installed to a Space",
951
+ "readOnly": true,
952
+ "type": [
953
+ "boolean"
954
+ ]
955
+ },
956
+ "identity": {
957
+ "$ref": "#/definitions/addon-region-capability/definitions/id"
958
+ }
959
+ },
960
+ "links": [
961
+ {
962
+ "description": "List all existing add-on region capabilities.",
963
+ "href": "/addon-region-capabilities",
964
+ "method": "GET",
965
+ "rel": "instances",
966
+ "targetSchema": {
967
+ "items": {
968
+ "$ref": "#/definitions/addon-region-capability"
969
+ },
970
+ "type": [
971
+ "array"
972
+ ]
973
+ },
974
+ "title": "List"
975
+ },
976
+ {
977
+ "description": "List existing add-on region capabilities for an addon-service",
978
+ "href": "/addon-services/{(%23%2Fdefinitions%2Faddon-service%2Fdefinitions%2Fidentity)}/region-capabilities",
979
+ "method": "GET",
980
+ "rel": "instances",
981
+ "targetSchema": {
982
+ "items": {
983
+ "$ref": "#/definitions/addon-region-capability"
984
+ },
985
+ "type": [
986
+ "array"
987
+ ]
988
+ },
989
+ "title": "List by Add-on Service"
990
+ },
991
+ {
992
+ "description": "List existing add-on region capabilities for a region.",
993
+ "href": "/regions/{(%23%2Fdefinitions%2Fregion%2Fdefinitions%2Fidentity)}/addon-region-capabilities",
994
+ "method": "GET",
995
+ "rel": "instances",
996
+ "targetSchema": {
997
+ "items": {
998
+ "$ref": "#/definitions/addon-region-capability"
999
+ },
1000
+ "type": [
1001
+ "array"
1002
+ ]
1003
+ },
1004
+ "title": "List"
1005
+ }
1006
+ ],
1007
+ "properties": {
1008
+ "id": {
1009
+ "$ref": "#/definitions/addon-region-capability/definitions/id"
1010
+ },
1011
+ "supports_private_networking": {
1012
+ "$ref": "#/definitions/addon-region-capability/definitions/supports_private_networking"
1013
+ },
1014
+ "addon_service": {
1015
+ "$ref": "#/definitions/addon-service"
1016
+ },
1017
+ "region": {
1018
+ "$ref": "#/definitions/region"
1019
+ }
1020
+ }
1021
+ },
857
1022
  "addon-service": {
858
1023
  "description": "Add-on services represent add-ons that may be provisioned for apps. Endpoints under add-on services can be accessed without authentication.",
859
1024
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -1026,6 +1191,35 @@
1026
1191
  "object"
1027
1192
  ],
1028
1193
  "definitions": {
1194
+ "actions": {
1195
+ "description": "provider actions for this specific add-on",
1196
+ "type": [
1197
+ "array"
1198
+ ],
1199
+ "items": {
1200
+ "type": [
1201
+ "object"
1202
+ ]
1203
+ },
1204
+ "readOnly": true,
1205
+ "properties": {
1206
+ "id": {
1207
+ "$ref": "#/definitions/addon-action/definitions/id"
1208
+ },
1209
+ "label": {
1210
+ "$ref": "#/definitions/addon-action/definitions/label"
1211
+ },
1212
+ "action": {
1213
+ "$ref": "#/definitions/addon-action/definitions/action"
1214
+ },
1215
+ "url": {
1216
+ "$ref": "#/definitions/addon-action/definitions/url"
1217
+ },
1218
+ "requires_owner": {
1219
+ "$ref": "#/definitions/addon-action/definitions/requires_owner"
1220
+ }
1221
+ }
1222
+ },
1029
1223
  "config_vars": {
1030
1224
  "description": "config vars exposed to the owning app by this add-on",
1031
1225
  "example": [
@@ -1242,6 +1436,9 @@
1242
1436
  }
1243
1437
  ],
1244
1438
  "properties": {
1439
+ "actions": {
1440
+ "$ref": "#/definitions/addon/definitions/actions"
1441
+ },
1245
1442
  "addon_service": {
1246
1443
  "description": "identity of add-on service",
1247
1444
  "properties": {
@@ -1695,7 +1892,6 @@
1695
1892
  },
1696
1893
  "source_blob": {
1697
1894
  "description": "gzipped tarball of source code containing app.json manifest file",
1698
- "example": "https://example.com/source.tgz?token=xyz",
1699
1895
  "properties": {
1700
1896
  "checksum": {
1701
1897
  "description": "an optional checksum of the gzipped tarball for verifying its integrity",
@@ -3418,7 +3614,7 @@
3418
3614
  }
3419
3615
  },
3420
3616
  "dyno": {
3421
- "description": "Dynos encapsulate running processes of an app on Heroku.",
3617
+ "description": "Dynos encapsulate running processes of an app on Heroku. Detailed information about dyno sizes can be found at: [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.heroku.com/articles/dyno-types).",
3422
3618
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
3423
3619
  "stability": "production",
3424
3620
  "strictProperties": true,
@@ -3508,6 +3704,15 @@
3508
3704
  "string"
3509
3705
  ]
3510
3706
  },
3707
+ "force_no_tty": {
3708
+ "description": "force an attached one-off dyno to not run in a tty",
3709
+ "example": null,
3710
+ "readOnly": false,
3711
+ "type": [
3712
+ "boolean",
3713
+ "null"
3714
+ ]
3715
+ },
3511
3716
  "size": {
3512
3717
  "description": "dyno size (default: \"standard-1X\")",
3513
3718
  "example": "standard-1X",
@@ -3559,6 +3764,9 @@
3559
3764
  "env": {
3560
3765
  "$ref": "#/definitions/dyno/definitions/env"
3561
3766
  },
3767
+ "force_no_tty": {
3768
+ "$ref": "#/definitions/dyno/definitions/force_no_tty"
3769
+ },
3562
3770
  "size": {
3563
3771
  "$ref": "#/definitions/dyno/definitions/size"
3564
3772
  }
@@ -3759,6 +3967,9 @@
3759
3967
  {
3760
3968
  "$ref": "#/definitions/formation"
3761
3969
  },
3970
+ {
3971
+ "$ref": "#/definitions/organization"
3972
+ },
3762
3973
  {
3763
3974
  "$ref": "#/definitions/release"
3764
3975
  },
@@ -3811,6 +4022,7 @@
3811
4022
  "dyno",
3812
4023
  "failed-event",
3813
4024
  "formation",
4025
+ "organization",
3814
4026
  "release",
3815
4027
  "space",
3816
4028
  "user"
@@ -4033,6 +4245,70 @@
4033
4245
  }
4034
4246
  }
4035
4247
  },
4248
+ "filter-apps": {
4249
+ "description": "Filters are special endpoints to allow for API consumers to specify a subset of resources to consume in order to reduce the number of requests that are performed. Each filter endpoint endpoint is responsible for determining its supported request format. The endpoints are over POST in order to handle large request bodies without hitting request uri query length limitations, but the requests themselves are idempotent and will not have side effects.",
4250
+ "$schema": "http://json-schema.org/draft-04/hyper-schema",
4251
+ "stability": "development",
4252
+ "title": "Heroku Platform API - Filters",
4253
+ "type": [
4254
+ "object"
4255
+ ],
4256
+ "definitions": {
4257
+ "filter": {
4258
+ "type": [
4259
+ "object"
4260
+ ],
4261
+ "properties": {
4262
+ "in": {
4263
+ "$ref": "#/definitions/filter-apps/definitions/in"
4264
+ }
4265
+ }
4266
+ },
4267
+ "in": {
4268
+ "type": [
4269
+ "object"
4270
+ ],
4271
+ "properties": {
4272
+ "id": {
4273
+ "$ref": "#/definitions/filter-apps/definitions/id"
4274
+ }
4275
+ }
4276
+ },
4277
+ "id": {
4278
+ "type": [
4279
+ "array"
4280
+ ],
4281
+ "items": {
4282
+ "$ref": "#/definitions/app/definitions/id"
4283
+ }
4284
+ }
4285
+ },
4286
+ "links": [
4287
+ {
4288
+ "description": "Request an apps list filtered by app id.",
4289
+ "title": "Apps",
4290
+ "href": "/filters/apps",
4291
+ "method": "POST",
4292
+ "ranges": [
4293
+ "id",
4294
+ "name",
4295
+ "updated_at"
4296
+ ],
4297
+ "rel": "instances",
4298
+ "schema": {
4299
+ "$ref": "#/definitions/filter-apps/definitions/filter"
4300
+ },
4301
+ "targetSchema": {
4302
+ "items": {
4303
+ "$ref": "#/definitions/organization-app"
4304
+ },
4305
+ "type": [
4306
+ "array"
4307
+ ]
4308
+ }
4309
+ }
4310
+ ]
4311
+ },
4036
4312
  "formation": {
4037
4313
  "description": "The formation of processes that should be maintained for an app. Update the formation to scale processes or change dyno sizes. Available process type names and commands are defined by the `process_types` attribute for the [slug](#slug) currently released on an app.",
4038
4314
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
@@ -5733,6 +6009,16 @@
5733
6009
  "$ref": "#/definitions/oauth-client"
5734
6010
  },
5735
6011
  "title": "Update"
6012
+ },
6013
+ {
6014
+ "description": "Rotate credentials for an OAuth client",
6015
+ "href": "/oauth/clients/{(%23%2Fdefinitions%2Foauth-client%2Fdefinitions%2Fidentity)}/actions/rotate-credentials",
6016
+ "method": "POST",
6017
+ "rel": "update",
6018
+ "targetSchema": {
6019
+ "$ref": "#/definitions/oauth-client"
6020
+ },
6021
+ "title": "Rotate Credentials"
5736
6022
  }
5737
6023
  ],
5738
6024
  "properties": {
@@ -6101,7 +6387,7 @@
6101
6387
  },
6102
6388
  "links": [
6103
6389
  {
6104
- "description": "Create a new collaborator on an organization app. Use this endpoint instead of the `/apps/{app_id_or_name}/collaborator` endpoint when you want the collaborator to be granted [privileges] (https://devcenter.heroku.com/articles/org-users-access#roles-and-app-privileges) according to their role in the organization.",
6390
+ "description": "Create a new collaborator on an organization 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-app-permissions) according to their role in the organization.",
6105
6391
  "href": "/organizations/apps/{(%23%2Fdefinitions%2Fapp%2Fdefinitions%2Fidentity)}/collaborators",
6106
6392
  "method": "POST",
6107
6393
  "rel": "create",
@@ -7281,11 +7567,13 @@
7281
7567
  "admin",
7282
7568
  "collaborator",
7283
7569
  "member",
7284
- "owner"
7570
+ "owner",
7571
+ null
7285
7572
  ],
7286
7573
  "example": "admin",
7287
7574
  "readOnly": true,
7288
7575
  "type": [
7576
+ "null",
7289
7577
  "string"
7290
7578
  ]
7291
7579
  },
@@ -8025,7 +8313,7 @@
8025
8313
  "links": [
8026
8314
  {
8027
8315
  "description": "List couplings for a pipeline",
8028
- "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fidentity)}/pipeline-couplings",
8316
+ "href": "/pipelines/{(%23%2Fdefinitions%2Fpipeline%2Fdefinitions%2Fid)}/pipeline-couplings",
8029
8317
  "method": "GET",
8030
8318
  "rel": "instances",
8031
8319
  "targetSchema": {
@@ -8064,7 +8352,7 @@
8064
8352
  "$ref": "#/definitions/app/definitions/identity"
8065
8353
  },
8066
8354
  "pipeline": {
8067
- "$ref": "#/definitions/pipeline/definitions/identity"
8355
+ "$ref": "#/definitions/pipeline/definitions/id"
8068
8356
  },
8069
8357
  "stage": {
8070
8358
  "$ref": "#/definitions/pipeline-coupling/definitions/stage"
@@ -9641,7 +9929,7 @@
9641
9929
  }
9642
9930
  },
9643
9931
  "space-app-access": {
9644
- "description": "Space access represents the privileges a particular user has on a particular space.",
9932
+ "description": "Space access represents the permissions a particular user has on a particular space.",
9645
9933
  "$schema": "http://json-schema.org/draft-04/hyper-schema",
9646
9934
  "stability": "prototype",
9647
9935
  "title": "Heroku Platform API - Space Access",
@@ -9650,7 +9938,7 @@
9650
9938
  ],
9651
9939
  "definitions": {
9652
9940
  "id": {
9653
- "description": "unique identifier of the space a user has privileges on",
9941
+ "description": "unique identifier of the space a user has permissions on",
9654
9942
  "example": "01234567-89ab-cdef-0123-456789abcdef",
9655
9943
  "format": "uuid",
9656
9944
  "readOnly": true,
@@ -9668,7 +9956,7 @@
9668
9956
  },
9669
9957
  "links": [
9670
9958
  {
9671
- "description": "List privileges for a given user on a given space.",
9959
+ "description": "List permissions for a given user on a given space.",
9672
9960
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Faccount%2Fdefinitions%2Fidentity)}",
9673
9961
  "method": "GET",
9674
9962
  "rel": "self",
@@ -9678,13 +9966,13 @@
9678
9966
  "title": "Info"
9679
9967
  },
9680
9968
  {
9681
- "description": "Update an existing user's set of privileges on a space.",
9969
+ "description": "Update an existing user's set of permissions on a space.",
9682
9970
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members/{(%23%2Fdefinitions%2Faccount%2Fdefinitions%2Fidentity)}",
9683
9971
  "method": "PATCH",
9684
9972
  "rel": "update",
9685
9973
  "schema": {
9686
9974
  "properties": {
9687
- "privileges": {
9975
+ "permissions": {
9688
9976
  "type": [
9689
9977
  "array"
9690
9978
  ],
@@ -9709,7 +9997,7 @@
9709
9997
  "title": "Update"
9710
9998
  },
9711
9999
  {
9712
- "description": "List all users and their privileges on a space.",
10000
+ "description": "List all users and their permissions on a space.",
9713
10001
  "href": "/spaces/{(%23%2Fdefinitions%2Fspace%2Fdefinitions%2Fidentity)}/members",
9714
10002
  "method": "GET",
9715
10003
  "rel": "instances",
@@ -9746,8 +10034,8 @@
9746
10034
  "id": {
9747
10035
  "$ref": "#/definitions/space/definitions/id"
9748
10036
  },
9749
- "privileges": {
9750
- "description": "user space privileges",
10037
+ "permissions": {
10038
+ "description": "user space permissions",
9751
10039
  "type": [
9752
10040
  "array"
9753
10041
  ],
@@ -9886,6 +10174,32 @@
9886
10174
  "object"
9887
10175
  ],
9888
10176
  "definitions": {
10177
+ "regime": {
10178
+ "description": "compliance requirements a space must adhere to",
10179
+ "readOnly": true,
10180
+ "example": "HIPAA",
10181
+ "type": [
10182
+ "string"
10183
+ ],
10184
+ "enum": [
10185
+ "HIPAA",
10186
+ "PCI"
10187
+ ]
10188
+ },
10189
+ "compliance": {
10190
+ "description": "the compliance regimes applied to a space",
10191
+ "example": [
10192
+ "HIPAA"
10193
+ ],
10194
+ "readOnly": false,
10195
+ "type": [
10196
+ "null",
10197
+ "array"
10198
+ ],
10199
+ "items": {
10200
+ "$ref": "#/definitions/space/definitions/regime"
10201
+ }
10202
+ },
9889
10203
  "created_at": {
9890
10204
  "description": "when space was created",
9891
10205
  "example": "2012-01-01T12:00:00Z",
@@ -10014,6 +10328,9 @@
10014
10328
  },
10015
10329
  "region": {
10016
10330
  "$ref": "#/definitions/region/definitions/identity"
10331
+ },
10332
+ "compliance": {
10333
+ "$ref": "#/definitions/space/definitions/compliance"
10017
10334
  }
10018
10335
  },
10019
10336
  "required": [
@@ -10030,6 +10347,9 @@
10030
10347
  }
10031
10348
  ],
10032
10349
  "properties": {
10350
+ "compliance": {
10351
+ "$ref": "#/definitions/space/definitions/compliance"
10352
+ },
10033
10353
  "created_at": {
10034
10354
  "$ref": "#/definitions/space/definitions/created_at"
10035
10355
  },
@@ -10760,9 +11080,15 @@
10760
11080
  "account": {
10761
11081
  "$ref": "#/definitions/account"
10762
11082
  },
11083
+ "addon-action": {
11084
+ "$ref": "#/definitions/addon-action"
11085
+ },
10763
11086
  "addon-attachment": {
10764
11087
  "$ref": "#/definitions/addon-attachment"
10765
11088
  },
11089
+ "addon-region-capability": {
11090
+ "$ref": "#/definitions/addon-region-capability"
11091
+ },
10766
11092
  "addon-service": {
10767
11093
  "$ref": "#/definitions/addon-service"
10768
11094
  },
@@ -10811,6 +11137,9 @@
10811
11137
  "failed-event": {
10812
11138
  "$ref": "#/definitions/failed-event"
10813
11139
  },
11140
+ "filter-apps": {
11141
+ "$ref": "#/definitions/filter-apps"
11142
+ },
10814
11143
  "formation": {
10815
11144
  "$ref": "#/definitions/formation"
10816
11145
  },
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: platform-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - jkakar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-09 00:00:00.000000000 Z
11
+ date: 2016-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler