This repository has been archived by the owner on Feb 13, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 43
/
btpsa-usecase.json
4844 lines (4485 loc) · 632 KB
/
btpsa-usecase.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "JSON Schema for BTPSA use case definitions",
"description": "Use case definitions are described using properties and values defined in this schema",
"type": "object",
"additionalProperties": false,
"properties": {
"$schema": {
"type": "string"
},
"aboutThisUseCase": {
"type": "object",
"description": "name of the service",
"title": "name of the service",
"properties": {
"id": {
"type": "string",
"description": "ID of the service (internal use only)",
"title": "ID of the service (internal use only)",
"default": "1234"
},
"name": {
"type": "string",
"description": "name of the use case",
"title": "name of the use case"
},
"description": {
"type": "string",
"description": "description of the use case",
"title": "description of the use case"
},
"author": {
"type": "string",
"description": "email of the author of this use case",
"title": "email of the author of this use case",
"format": "email"
},
"testStatus": {
"type": "string",
"description": "test status of the use case",
"title": "test status of the use case",
"enum": ["tested successfully", "not tested"]
},
"usageStatus": {
"type": "string",
"description": "usage status of the use case",
"title": "usage status of the use case",
"enum": ["READY TO BE USED", "NOT READY TO BE USED"]
},
"relatedLinks": {
"type": "array",
"description": "links related to this use case",
"title": "links related to this use case"
}
},
"required": ["name", "author", "testStatus", "usageStatus"]
},
"assignrolecollections": {
"type": "array",
"description": "role collections to be assigned to a service",
"title": "role collections to be assigned to a service",
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["name", "type", "assignedUserGroupsFromParameterFile"],
"properties": {
"assignedRoles":{
"type": "array",
"description": "roles to be assigned to a custom role collection",
"title": "roles for custom role collection",
"additionalProperties": false,
"items": {
"type": "string",
"description": "roles name",
"title": "roles name"
}
},
"assignedUserGroupsFromParameterFile": {
"type": "array",
"description": "user groups to be assigned from the parameter file",
"title": "user groups from parameter file"
},
"attribute": {
"type": "string",
"description": "the name of the attribute. To be found in the identity provider.",
"title": "attribute name (custom IdP)",
"default": null
},
"attributeValue": {
"type": "string",
"description": "the value of the attribute. To be found in the identity provider.",
"title": "attribute value (custom IdP)",
"default": null
},
"group":{
"type": "string",
"description": "the name of the user group. To be found in the identity provider.",
"title": "group name (custom IdP)",
"default": null
},
"idp":{
"type": "string",
"description": "the identity provider that hosts the user. ",
"title": "IdP name",
"default": null
},
"level": {
"type": "string",
"description": "level of the role collection",
"title": "level of the role collection",
"enum": ["global account","sub account", "org", "space"]
},
"name": {
"type": "string",
"description": "name of the role collection",
"title": "name of the role collection"
},
"type": {
"type": "string",
"description": "type of the role collection",
"title": "type of the role collection",
"enum": ["account", "cloudfoundry", "custom"]
}
}
}
},
"executeAfterAccountSetup": {
"type": "array",
"description": "create a list of commands, that should be executed after the SAP BTP account is setup",
"title": "commands to run after setup of SAP BTP account",
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["command", "description"],
"properties": {
"command": {
"type": "string",
"description": "the command that should be executed within the btpsa container image",
"title": "command to execute"
},
"description": {
"type": "string",
"description": "description of what the command will do",
"title": "description of the command"
}
}
}
},
"executeBeforeAccountSetup": {
"type": "array",
"description": "create a list of commands, that should be executed before the SAP BTP account is setup",
"title": "commands to run before setup of SAP BTP account",
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["command", "description"],
"properties": {
"command": {
"type": "string",
"description": "the command that should be executed within the btpsa container image",
"title": "command to execute"
},
"description": {
"type": "string",
"description": "description of what the command will do",
"title": "description of the command"
}
}
}
},
"executeToPruneUseCase": {
"type": "array",
"description": "create a list of commands, that should be executed to prune the use case from your SAP BTP account",
"title": "commands to run to prune use case from your SAP BTP account",
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["command", "description"],
"properties": {
"command": {
"type": "string",
"description": "the command that should be executed within the btpsa container image",
"title": "command to execute"
},
"description": {
"type": "string",
"description": "description of what the command will do",
"title": "description of the command"
}
}
}
},
"services": {
"type": "array",
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["name", "category"],
"properties": {
"amount": {
"type": "integer",
"description": "amount to be used for the service",
"title": "amount to be used for the service"
},
"assignrolecollections": {
"type": "array",
"description": "list of role collections to be created within the btp account",
"title": "list of role collections to be created within the btp account",
"default": []
},
"category": {
"type": "string",
"description": "category of the service",
"title": "category of the service",
"enum": ["SERVICE", "APPLICATION", "CF_CUP_SERVICE", "ENVIRONMENT"]
},
"createServiceKeys": {
"type": "array",
"description": "list of service keys to be created for the service",
"title": "list of service keys to be created for the service",
"default": []
},
"customerDeveloped": {
"type": "boolean",
"description": "custom developed application",
"title": "custom developed application",
"default": false
},
"entitleonly": {
"type": "boolean",
"description": "only entitlement - if true, the service will only be entitled, but not assigned to a role collection",
"title": "only entitlement (no service instances will be created by the tool)",
"default": false,
"enum": [true, false]
},
"instancename": {
"type": "string",
"description": "name of the service instance",
"title": "name of the service instance"
},
"labels":{
"type": "object",
"description": "labels for the service",
"title": "labels for the service"
},
"name": {
"type": "string",
"description": "name of the service",
"title": "name of the service"
},
"parameters": {
"type": ["object", "string"],
"description": "parameters for the service",
"title": "parameters for the service"
},
"plan": {
"type": "string",
"description": "plan name of the service",
"title": "plan name of the service"
},
"planCatalogName": {
"type": "string",
"description": "catalog name of the service plan",
"title": "catalog name of the service plan"
},
"relatedLinks": {
"type": "array",
"description": "links related to this service",
"title": "links related to this service"
},
"repeatstatusrequest": {
"type": "integer",
"description": "number of seconds when status should be checked",
"title": "number of seconds when status should be checked",
"default": 5
},
"repeatstatustimeout": {
"type": "integer",
"description": "timeout in seconds after which the script will stop checking the status",
"title": "timeout in seconds after which the script will stop checking the status",
"default": 3600
},
"requiredrolecollections": {
"type": "array",
"description": "list of role collections to assign users to",
"title": "list of role collections to assign users to",
"default": null,
"additionalProperties": false,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"description": "name of the role collection",
"title": "name of the role collection"
},
"assignedUserGroupsFromParameterFile": {
"type": "array",
"description": "list of user groups to assign the role collection",
"title": "list of user groups to assign the role collection"
},
"attribute": {
"type": "string",
"description": "the name of the attribute. To be found in the identity provider.",
"title": "attribute name (custom IdP)",
"default": null
},
"attributeValue": {
"type": "string",
"description": "the value of the attribute. To be found in the identity provider.",
"title": "attribute value (custom IdP)",
"default": null
},
"group":{
"type": "string",
"description": "the name of the user group. To be found in the identity provider.",
"title": "group name (custom IdP)",
"default": null
},
"idp":{
"type": "string",
"description": "the identity provider that hosts the user. ",
"title": "IdP name",
"default": null
}
}
}
},
"requiredServices": {
"type": "array",
"description": "list of services that need to be instantiated before instantiating this service",
"title": "list of services that need to be instantiated before instantiating this service",
"default": []
},
"serviceKeyLabels":{
"type": "array",
"additionalProperties": false,
"description": "labels for service keys as JSON",
"title": "labels for service keys",
"items": {
"type": "object"
},
"default": []
},
"serviceparameterfile": {
"type": "string",
"description": "parameter file for the service in case you want to provide the parameters via a file",
"title": "parameter file for the service"
},
"skipTrustSetupForXSUAA": {
"type": "boolean",
"default": false,
"description": "skip the trust setup to an IdP for XSUAA. Only relevant for the plan apiaccess!",
"title": "skip trust setup to IdP for XSUAA (plan apiaccess)"
},
"statusResponse": {
"type": "object",
"description": "information that is available only durng the execution of the script (should not be set in the usecase.json file)",
"title": "creation info"
},
"targetenvironment": {
"type": "string",
"description": "environment in which the service should be created",
"title": "environment in which the service should be created",
"default": "cloudfoundry",
"enum": ["cloudfoundry", "kymaruntime", "sapbtp"]
}
},
"allOf": [
{
"if": { "properties": { "category": { "const": "CF_CUP_SERVICE"} } },
"then" :{
"properties": {
"parameters": { "default": "-p '{\"username\":\"admin1\",\"password\":\"pa55woRD1\"}'"},
"name": { "default": "nameForYourCfUserProvidedInstance"},
"category": { "default": "CF_CUP_SERVICE"}
}, "required": ["parameters", "name", "category"], "additionalProperties": false
}
},
{
"if": { "properties": { "category": { "const": "SERVICE"} } },
"then" :{
"properties": { "name": { "enum": ["abap", "abap-solution", "ads", "adsrestapi", "aicore", "alert-notification", "api-management", "apimanagement-apiportal", "apimanagement-devportal", "application-logs", "ASE_PROVISIONING", "auditlog", "auditlog-api", "auditlog-management", "autoscaler", "build-workzone-advanced", "build-workzone-standard", "business-entity-recognition", "business-rules", "cias", "cicd-service", "cis", "COMPUTE_UNIT", "connectivity", "connectivity-central", "content-agent", "conversational-ai", "credstore", "data-analytics-osb", "data-attribute-recommendation", "data-intelligence", "data-privacy-integration-service", "dataenrichment-business-partner", "dateandtime", "destination", "di-api", "document-classification", "document-translation", "dq-services", "enterprise-messaging", "feature-flags", "hana", "hana-cloud", "hana-db", "hana-tenant-db", "html5-apps-repo", "ibanservice", "identity", "INFRA", "integration-assessment", "integrationsuite", "intercompany-reconciliation", "invoice-object-recommendation", "iot", "iotae", "IRPA", "irpa-service", "it-rt", "jobscheduler", "malware-scanner", "market-rates-byor", "market-rates-thr", "MDMBusinessPartnerService", "ml-foundation", "mobile-app-catalog", "mobile-app-update", "mobile-c2g", "mobile-cbms", "mobile-client-log-upload", "mobile-client-resource", "mobile-client-usage", "mobile-discovery", "mobile-network-trace", "mobile-offline", "mobile-proxy", "mobile-push", "mobile-sample-odata-v2-espm", "mobile-services", "mobile-services-preview", "mobile-settings-exchange", "objectstore", "one-inbox-service", "one-mds", "personal-data-manager-service", "portal", "postgresql", "postgresql-db", "print", "privatelink", "process-automation", "process-automation-service", "processvisibility", "rabbitmq", "recommendation-systems-production", "redis-cache", "responsibility-management-service-beta", "responsibilitymanagement-service", "retention-manager", "saas-registry", "sap-analytics-cloud-embedded-edition", "sap-bigdataservices", "sap-build-apps-runtime", "sap-calm", "sap-document-information-extraction", "sap-graph", "sdm", "sdm-repository", "service-manager", "service-ticket-intelligence", "spatialservices", "theming", "transport", "uas", "ui5-flexibility-keyuser", "workcalendar", "workflow", "workflowmanagement", "wums-partner-api-beta", "xfs-runtime", "xsuaa"] } },
"allOf": [
{
"if": { "properties": { "name": { "const": "abap"} } },
"then" :{
"properties": {
"plan": { "enum": ["16_abap_64_db","abap_compute_unit","free","hana_compute_unit","standard"] },
"name": { "description": "SAP BTP, ABAP environment: Access an instance to build custom ABAP cloud apps, leveraging newest innovations powered by SAP HANA."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "16_abap_64_db"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >16_abap_64_db< for >abap< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
, "parameters" : {"$schema": "http://json-schema.org/draft-07/schema", "_controlsOrder": ["admin_email", "description", "is_development_allowed", "sapsystemname", "size_of_runtime", "size_of_persistence"], "_show_form_view": true, "additionalProperties": false, "properties": {"admin_email": {"description": "Enter the administrator\u0027s email address", "maxLength": 256, "minLength": 6, "pattern": "^[^\u003c\u003e()\\[\\]\\\\,;:\\s@\"`]+@([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}$", "title": "Admin Email Address", "type": "string"}, "admin_user_name": {"description": "Optionally enter the username of the administrator. The username must not begin with SAP_ or _, must only contain uppercase letters, digits, underscores, hyphens and periods, and must not be longer than 40 characters.", "maxLength": 40, "minLength": 0, "pattern": "^(?!SAP_|_)[\\.A-Z0-9_-]{0,40}$", "title": "Admin User Name", "type": "string"}, "description": {"description": "Enter a description for the ABAP system", "maxLength": 256, "pattern": "^[^\u0027\\x00-\\x1f]*$", "title": "ABAP System Description", "type": "string"}, "is_development_allowed": {"default": true, "description": "Specify, if development shall be allowed on this ABAP system", "title": "Development System", "type": "boolean"}, "login_attribute": {"default": "email", "description": "Which attribute should be used for login.", "enum": ["email", "user_name"], "title": "Login Attribute", "type": "string"}, "sapsystemname": {"default": "H01", "description": "Enter a valid system ID (SID) for the ABAP system. The ID must consist of exactly three alphanumeric characters. Only uppercase letters are allowed. The first character must be a letter (not a digit). The ID does not have to be technically unique. The following IDs are reserved and cannot be used: ADD ALL AMD AND ANY ARE ASC AUX AVG BIT CDC COM CON DBA END EPS FOR GET GID IBM INT KEY LOG LPT MAP MAX MIN MON NIX NOT NUL OFF OLD OMS OUT PAD PRN RAW REF ROW SAP SET SGA SHG SID SQL SUM SYS TMP TOP UID USE USR VAR.", "maxLength": 3, "minLength": 3, "pattern": "^(?!ADD|ALL|AMD|ADM|AND|ANY|ARE|ASC|AUX|AVG|BIT|CDC|COM|CON|DAA|DBA|ECO|END|EPS|FOR|GET|GID|IBM|INT|KEY|LOG|LPT|MAP|MAX|MIN|MON|NIX|NOT|NUL|OFF|OLD|OMS|OUT|PAD|PRN|RAW|REF|ROW|SAP|SET|SGA|SHG|SID|SQL|SUM|SYS|TMP|TOP|UID|USE|USR|VAR)[A-Z][A-Z0-9]{2}$", "title": "ABAP System ID", "type": "string"}, "size_of_persistence": {"const": 4, "default": 4, "description": "Enter the size of the HANA memory in blocks of 15 GB on AWS or 16 GB on Azure", "title": "HANA Memory Size", "type": "integer"}, "size_of_runtime": {"const": 1, "default": 1, "description": "Enter the size of the ABAP runtime in blocks of 16 GB", "title": "ABAP Runtime Size", "type": "integer"}}, "required": ["admin_email", "size_of_persistence", "size_of_runtime"], "type": "object"}
}, "required" : ["parameters"]
}
}, {
"if": { "properties": { "plan": { "const": "abap_compute_unit"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >abap_compute_unit< for >abap< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "free"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >free< for >abap< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "hana_compute_unit"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >hana_compute_unit< for >abap< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >abap< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "abap-solution"} } },
"then" :{
"properties": {
"plan": { "enum": ["standard"] },
"name": { "description": "ABAP Solution: Create an ABAP Environment based SaaS Solution"}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >abap-solution< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
, "parameters" : {"$schema": "http://json-schema.org/draft-07/schema", "oneOf": [{"additionalProperties": false, "properties": {"addon_product_name": {"description": "Registered name of the addon product. Will be passed through to ABAP OEM Plan", "type": "string"}, "addon_product_version": {"description": "Version of the addon product that should be installed. Will be passed through to ABAP OEM Plan", "type": "string"}, "consumer_id_pattern": {"description": "String containing a regular expression with a capturing group. The subdomain of the consumer is matched against this regular expression. The value of the first capturing group is used as consumer id.", "type": "string"}, "consumer_tenant_limit": {"default": 1, "description": "Maximum number of tenants in ABAP System", "maximum": 800, "minimum": 1, "type": "integer"}, "name": {"description": "Name of the solution", "type": "string"}, "provider_admin_email": {"description": "Email address of initial provider user. Will be passed through to ABAP OEM Plan", "format": "email", "type": "string"}, "sap_system_name": {"description": "Name of the SAP system", "pattern": "(^$)|(^(?!ADD|ALL|AMD|AND|ANY|ARE|ASC|AUX|AVG|BIT|CDC|COM|CON|DBA|END|EPS|FOR|GET|GID|IBM|INT|KEY|LOG|LPT|MAP|MAX|MIN|MON|NIX|NOT|NUL|OFF|OLD|OMS|OUT|PAD|PRN|RAW|REF|ROW|SAP|SET|SGA|SHG|SID|SQL|SUM|SYS|TMP|TOP|UID|USE|USR|VAR)[A-Z][A-Z0-9]{2}$)", "type": "string"}, "size_of_persistence": {"default": 4, "description": "Default size of the ABAP system (in blocks of the size 16 GB). Will be passed through to ABAP OEM Plan", "enum": [4, 8, 16, 32, 64], "type": "integer"}, "size_of_runtime": {"default": 1, "description": "Default size of the HANA database (in blocks of the size 16 GB) of the ABAP System. Will be passed through to ABAP OEM Plan", "enum": [1, 2, 4, 6, 8], "type": "integer"}, "tenant_mode": {"description": "Decides whether a customer will have a tenant in a dedicated system (single) or a shared system (multi)", "enum": ["single", "multi"], "type": "string"}, "usage": {"description": "Whether it is a test or productive solution", "enum": ["test", "prod"], "type": "string"}, "xs-security": {"properties": {"xsappname": {"description": "xsappname used for the OAuth clone during the instance creation", "type": "string"}}, "type": "object"}}, "required": ["name", "consumer_id_pattern", "size_of_runtime", "size_of_persistence", "provider_admin_email", "usage"], "type": "object"}, {"additionalProperties": false, "properties": {"consumer_id_pattern": {"description": "String containing a regular expression with a capturing group. The subdomain of the consumer is matched against this regular expression. The value of the first capturing group is used as consumer id.", "type": "string"}, "name": {"description": "Name of the solution", "type": "string"}, "plans": {"items": {"properties": {"addon_product_name": {"description": "Registered name of the addon product. Will be passed through to ABAP OEM Plan", "type": "string"}, "addon_product_version": {"description": "Version of the addon product that should be installed. Will be passed through to ABAP OEM Plan", "type": "string"}, "consumer_tenant_limit": {"default": 1, "description": "Maximum number of tenants in ABAP System", "maximum": 800, "minimum": 1, "type": "integer"}, "plan_name": {"default": "default", "description": "Name of the plan", "pattern": "^[A-Z0-9a-z-_/ ]*$", "type": "string"}, "provider_admin_email": {"description": "Email address of initial provider user. Will be passed through to ABAP OEM Plan", "format": "email", "type": "string"}, "sap_system_name": {"description": "Name of the SAP system", "pattern": "(^$)|(^(?!ADD|ALL|AMD|AND|ANY|ARE|ASC|AUX|AVG|BIT|CDC|COM|CON|DBA|END|EPS|FOR|GET|GID|IBM|INT|KEY|LOG|LPT|MAP|MAX|MIN|MON|NIX|NOT|NUL|OFF|OLD|OMS|OUT|PAD|PRN|RAW|REF|ROW|SAP|SET|SGA|SHG|SID|SQL|SUM|SYS|TMP|TOP|UID|USE|USR|VAR)[A-Z][A-Z0-9]{2}$)", "type": "string"}, "size_of_persistence": {"default": 4, "description": "Default size of the ABAP system (in blocks of the size 16 GB). Will be passed through to ABAP OEM Plan", "enum": [4, 8, 16, 32, 64], "type": "integer"}, "size_of_runtime": {"default": 1, "description": "Default size of the HANA database (in blocks of the size 16 GB) of the ABAP System. Will be passed through to ABAP OEM Plan", "enum": [1, 2, 4, 6, 8], "type": "integer"}, "tenant_mode": {"description": "Decides whether a customer will have a tenant in a dedicated system (single) or a shared system (multi)", "enum": ["single", "multi"], "type": "string"}, "usage": {"description": "Whether it is a test or productive solution", "enum": ["test", "prod"], "type": "string"}}, "required": ["plan_name", "size_of_runtime", "size_of_persistence", "provider_admin_email", "usage"], "type": "object"}, "minItems": 1, "type": "array"}, "xs-security": {"properties": {"xsappname": {"description": "xsappname used for the OAuth clone during the instance creation", "type": "string"}}, "type": "object"}}, "required": ["name", "consumer_id_pattern", "plans"], "type": "object"}], "type": "object"}
}, "required" : ["parameters"]
}
}]
}
}, {
"if": { "properties": { "name": { "const": "ads"} } },
"then" :{
"properties": {
"plan": { "enum": ["standard"] },
"name": { "description": "SAP Forms service by Adobe: SAP Forms service by Adobe lets you generate print and interactive forms using Adobe Document Services (ADS). Call the service from your application using a REST API for rendering documents and for managing form templates in the template store. Configure ADS and access the template store via service-offered UIs. To use Forms service by Adobe, you must subscribe to the application (ads-configui) and set entitlements to both, the ADS (ads) and the REST API template store (adsrestapi) service. In the Service Marketplace, find all two tiles easily by entering 'adobe' into the search field."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >ads< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "adsrestapi"} } },
"then" :{
"properties": {
"plan": { "enum": ["standard"] },
"name": { "description": "SAP Forms service by Adobe: SAP Forms service by Adobe lets you generate print and interactive forms using Adobe Document Services (ADS). Call the service from your application using a REST API for rendering documents and for managing form templates in the template store. Configure ADS and access the template store via service-offered UIs. To use Forms service by Adobe, you must subscribe to the application (ads-configui) and set entitlements to both, the ADS (ads) and the REST API template store (adsrestapi) service. In the Service Marketplace, find all two tiles easily by entering 'adobe' into the search field."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >adsrestapi< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
, "parameters" : {"$schema": "http://json-schema.org/draft-07/schema", "properties": {"readOnly": {"default": false, "description": "read Only scope for restrictive access", "type": "boolean"}}, "type": "object"}
}, "required" : ["parameters"]
}
}]
}
}, {
"if": { "properties": { "name": { "const": "aicore"} } },
"then" :{
"properties": {
"plan": { "enum": ["free","standard"] },
"name": { "description": "SAP AI Core: SAP AI Core provides an infrastructure for a number of machine learning applications and services, including the option to bring and deploy your own model. SAP systems contain a huge amount of enterprise data, which many solutions can analyze. With SAP AI Core, you can use this enterprise data to train machine learning services and help your business applications to become intelligent. Your applications learn from historical data that is generated by manually performed tasks, and then uses this new-found knowledge to automate the same tasks in the future."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "free"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >free< for >aicore< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >aicore< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "alert-notification"} } },
"then" :{
"properties": {
"plan": { "enum": ["free","standard"] },
"name": { "description": "SAP Alert Notification service for SAP BTP: SAP Business Technology Platform Alert Notification offers a common API for providers to publish alerts and for consumers to subscribe to these alerts. It is designed to send automatically real-time notifications and alerts about SAP Cloud events that may be of interest to the business and operations.<br/><br/>SAP does not support EU Access for this service. By activating the service, you are accepting this limitation."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "free"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >free< for >alert-notification< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >alert-notification< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "api-management"} } },
"then" :{
"properties": {
"plan": { "enum": ["preview"] },
"name": { "description": "SAP API Management: API Management"}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "preview"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >preview< for >api-management< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "apimanagement-apiportal"} } },
"then" :{
"properties": {
"plan": { "enum": ["apim-as-route-service","apiportal-apiaccess","on-premise-connectivity"] },
"name": { "description": "SAP API Management: API Management, API portal service drives innovation in modern business models. Based on APIs and digital assets, the service facilitates unified access from new channels and diverse user interfaces. This is possible by enabling developer communities to connect to your enterprise information and processes securely. Here, the access to backend services and complex landscapes are simplified with easy to consume APIs while protecting your systems from threats and overloaded access."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "apim-as-route-service"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >apim-as-route-service< for >apimanagement-apiportal< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "apiportal-apiaccess"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >apiportal-apiaccess< for >apimanagement-apiportal< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "on-premise-connectivity"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >on-premise-connectivity< for >apimanagement-apiportal< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "apimanagement-devportal"} } },
"then" :{
"properties": {
"plan": { "enum": ["devportal-apiaccess"] },
"name": { "description": "SAP API Management: API Management, developer portal service simplifies sharing managed APIs and enables collaborations with customers, partners, and developers, providing a common platform for application developers to consume APIs. It offers capabilities for onboarding application developers, exploring and testing APIs, and creating and subscribing to applications.This service provides the plan which allows you to access APIs in the developer portal."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "devportal-apiaccess"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >devportal-apiaccess< for >apimanagement-devportal< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "application-logs"} } },
"then" :{
"properties": {
"plan": { "enum": ["large","lite","standard"] },
"name": { "description": "SAP Application Logging service for SAP BTP: In the Cloud Foundry environment, the SAP Application Logging service for SAP BTP lets you stream logs of bound applications to a central application logging stack. SAP Application Logging service for SAP BTP uses Elastic Stack to store and visualize your application log data. To fully leverage this service, please also consider using one of SAP's open source libraries (for example, cf-java-logging-support or cf-nodejs-logging-support). In the Neo environment, the application logging allows you to configure loggers for Java applications through the cockpit or the console client. Furthermore, you can retrieve default trace logs, HTTP access logs, and garbage collection logs for the last 7 days."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "large"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >large< for >application-logs< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "lite"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >lite< for >application-logs< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >application-logs< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "ASE_PROVISIONING"} } },
"then" :{
"properties": {
"plan": { "enum": ["LARGE","MEDIUM","SMALL","XLARGE","XSMALL"] },
"name": { "description": "SAP ASE service: The SAP ASE service on SAP Business Technology Platform lets you consume SAP ASE databases from your applications running on SAP Business Technology Platform or on-premise via Java APIs. It offers variousself-services, for example, that let you create or update databases, whileSAPis providing infrastructure and database platform operations."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "LARGE"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >LARGE< for >ASE_PROVISIONING< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "MEDIUM"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >MEDIUM< for >ASE_PROVISIONING< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "SMALL"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >SMALL< for >ASE_PROVISIONING< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "XLARGE"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >XLARGE< for >ASE_PROVISIONING< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "XSMALL"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >XSMALL< for >ASE_PROVISIONING< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "auditlog"} } },
"then" :{
"properties": {
"plan": { "enum": ["premium"] },
"name": { "description": "SAP Audit Log service: Allow users to ingest compliance audit data from SAP BTP services and applications and store it for a default retention time of 90 days (with no additional costs applied). The ability to retrieve and download this data within this period is part of Auditlog Management Service. The service serves to support audit activities by prove wrongdoing and identifying malicious activities and provision of forensic evidence that can be used at Court. The scope of the service are secure and configuration change information records, data privacy specific logs, logs motivated by Multiple Regulations. The service is following each SAP Product standards and GDPR Compliance regulations."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "premium"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >premium< for >auditlog< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "auditlog-api"} } },
"then" :{
"properties": {
"plan": { "enum": ["default"] },
"name": { "description": "DEPRECATED Audit Log Retrieval: DEPRECATED Retrieve the audit logs."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "default"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >default< for >auditlog-api< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "auditlog-management"} } },
"then" :{
"properties": {
"plan": { "enum": ["central","default"] },
"name": { "description": "SAP Audit Log Management service: SAP Audit Log Management service helps to retrieve logs and change retention."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "central"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >central< for >auditlog-management< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "default"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >default< for >auditlog-management< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "autoscaler"} } },
"then" :{
"properties": {
"plan": { "enum": ["standard"] },
"name": { "description": "Application Autoscaler: The Application Autoscaler lets you automatically increase or decrease the number of application instances based on a policy you define."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >autoscaler< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}, "required" : ["parameters"]
}
}]
}
}, {
"if": { "properties": { "name": { "const": "build-workzone-advanced"} } },
"then" :{
"properties": {
"plan": { "enum": ["advanced","standard"] },
"name": { "description": "SAP Build Work Zone, advanced edition: SAP Build Work Zone, advanced edition lets you build digital workplace solutions to increase user productivity and engagement. It centralizes access to relevant business applications, processes, information, and communication in a unified entry point that your users can access from any device. Note: SAP Work Zone was recently renamed to SAP Build Work Zone, advanced edition."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "advanced"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >advanced< for >build-workzone-advanced< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >build-workzone-advanced< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "build-workzone-standard"} } },
"then" :{
"properties": {
"plan": { "enum": ["foundation","standard"] },
"name": { "description": "SAP Build Work Zone, standard edition: Provides users with a central point of access to applications from different sources. Note: SAP Launchpad service was recently renamed to SAP Build Work Zone, standard edition."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "foundation"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >foundation< for >build-workzone-standard< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >build-workzone-standard< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "business-entity-recognition"} } },
"then" :{
"properties": {
"plan": { "enum": ["free","standard"] },
"name": { "description": "Business Entity Recognition: Business Entity Recognition helps you to detect and highlight any given type of named entity in unstructured text into pre-defined categories. You can use Business Entity Recognition, for example, to automatically extract the context from incoming emails with invoice inquiries, automating recurring tasks of answering to status and payment of invoices."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "free"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >free< for >business-entity-recognition< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >business-entity-recognition< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "business-rules"} } },
"then" :{
"properties": {
"plan": { "enum": ["basic","standard"] },
"name": { "description": "SAP Business Rules Management: The business rules capability within the SAP Workflow Management service translates business-decision logic into natural language that is configurable directly by line-of-business key users or knowledge experts without IT or developer intervention. It provides web-based tools to solution architects and developers, enabling them to model, author, and simulate business rules independent of the backend system."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "basic"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >basic< for >business-rules< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "standard"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >standard< for >business-rules< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "cias"} } },
"then" :{
"properties": {
"plan": { "enum": ["oauth2"] },
"name": { "description": "Cloud Integration Automation: Cloud Integration Automation service provides you a guided workflow to integrate SAP cloud solutions to On-Premise and other SAP Cloud solutions. The guided workflow contains instructions for manual and automated tasks to enable a simpler and faster integration configuration setup."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "oauth2"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >oauth2< for >cias< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "cicd-service"} } },
"then" :{
"properties": {
"plan": { "enum": ["default"] },
"name": { "description": "SAP Continuous Integration and Delivery: SAP Continuous Integration and Delivery lets you configure and run predefined continuous integration and delivery (CI/CD) pipelines that automatically test, build, and deploy your code changes to speed up your development and delivery cycles."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "default"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >default< for >cicd-service< is available in data centers:\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "cis"} } },
"then" :{
"properties": {
"plan": { "enum": ["central","local"] },
"name": { "description": "SAP Cloud Management service for SAP BTP: Manage the control plane, account model, and product resources in SAP BTP using supported API interfaces provided by the SAP Cloud Management service for SAP BTP."}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "central"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >central< for >cis< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
, "parameters" : {"$schema": "http://json-schema.org/draft-07/schema", "_show_form_view": true, "additionalProperties": true, "properties": {"grantType": {"_enumDisplayName": {"clientCredentials": "Client Credentials", "password": "Password"}, "default": "password", "description": "Use the Password grant type for Cloud Foundry and Kubernetes, or Client Credentials grant type for Other Environments.", "enum": ["password", "clientCredentials"], "title": "Authorization Type", "type": "string"}}, "type": "object"}
}, "required" : ["parameters"]
}
}, {
"if": { "properties": { "plan": { "const": "local"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >local< for >cis< is available in data centers:\n- {'region': 'ap10', 'name': 'Australia (Sydney)'}\n- {'region': 'ap11', 'name': 'Singapore'}\n- {'region': 'ap12', 'name': 'South Korea (Seoul)'}\n- {'region': 'ap20', 'name': 'Australia (Sydney) Azure'}\n- {'region': 'ap21', 'name': 'Singapore'}\n- {'region': 'br10', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca10', 'name': 'Canada (Montreal)'}\n- {'region': 'ch20', 'name': 'cf-ch20'}\n- {'region': 'eu10', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu11', 'name': 'Europe (Frankfurt) EU Access - AWS'}\n- {'region': 'eu20', 'name': 'Europe (Netherlands)'}\n- {'region': 'eu30', 'name': 'Europe (Frankfurt)'}\n- {'region': 'in30', 'name': 'India (Mumbai)'}\n- {'region': 'jp10', 'name': 'Japan (Tokyo)'}\n- {'region': 'jp20', 'name': 'Japan (Tokyo)'}\n- {'region': 'us10', 'name': 'US East (VA)'}\n- {'region': 'us20', 'name': 'US West (WA)'}\n- {'region': 'us21', 'name': 'US East (VA)'}\n- {'region': 'us30', 'name': 'US Central (IA)'}" }
, "parameters" : {"$schema": "http://json-schema.org/draft-07/schema", "_show_form_view": true, "additionalProperties": true, "properties": {"grantType": {"_enumDisplayName": {"clientCredentials": "Client Credentials", "password": "Password"}, "default": "password", "description": "Use the Password grant type for Cloud Foundry and Kubernetes, or Client Credentials grant type for Other Environments.", "enum": ["password", "clientCredentials"], "title": "Authorization Type", "type": "string"}}, "type": "object"}
}, "required" : ["parameters"]
}
}]
}
}, {
"if": { "properties": { "name": { "const": "COMPUTE_UNIT"} } },
"then" :{
"properties": {
"plan": { "enum": ["PREMIUM","PREMIUM_PLUS","PRO"] },
"name": { "description": "SAP BTP, Java server: Java Quota"}
},
"allOf": [
{
"if": { "properties": { "plan": { "const": "PREMIUM"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >PREMIUM< for >COMPUTE_UNIT< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "PREMIUM_PLUS"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >PREMIUM_PLUS< for >COMPUTE_UNIT< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}, {
"if": { "properties": { "plan": { "const": "PRO"} } },
"then" :{
"properties": {
"plan": { "description": "service plan >PRO< for >COMPUTE_UNIT< is available in data centers:\n- {'region': 'ae1', 'name': 'UAE (Dubai)'}\n- {'region': 'ap1', 'name': 'Australia (Sydney)'}\n- {'region': 'br1', 'name': 'Brazil (Sao Paulo)'}\n- {'region': 'ca1', 'name': 'Canada (Toronto)'}\n- {'region': 'cn1', 'name': 'China (Shanghai)'}\n- {'region': 'eu1', 'name': 'Europe (Rot)'}\n- {'region': 'eu2', 'name': 'Europe (Frankfurt)'}\n- {'region': 'eu3', 'name': 'Europe (Amsterdam)'}\n- {'region': 'jp1', 'name': 'Japan (Tokyo)'}\n- {'region': 'sa1', 'name': 'KSA (Riyadh)'}\n- {'region': 'us1', 'name': 'US East (Ashburn)'}\n- {'region': 'us2', 'name': 'US West (Chandler)'}\n- {'region': 'us3', 'name': 'US East (Sterling)'}\n- {'region': 'us4', 'name': 'US West (Colorado Springs)'}" }
}
}
}]
}
}, {
"if": { "properties": { "name": { "const": "connectivity"} } },
"then" :{
"properties": {
"plan": { "enum": ["connectivity_proxy","lite"] },
"name": { "description": "SAP Connectivity service: SAP BTP Connectivity service allows you to establish secure and reliable connectivity between your cloud applications and on-premise systems running in isolated networks."}
},
"allOf": [