unitysvc-data 0.1.7__tar.gz → 0.1.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. {unitysvc_data-0.1.7/src/unitysvc_data.egg-info → unitysvc_data-0.1.9}/PKG-INFO +1 -1
  2. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/pyproject.toml +1 -1
  3. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/_manifest.json +366 -5
  4. unitysvc_data-0.1.9/src/unitysvc_data/examples/api/code-example-requests/README.md +39 -0
  5. unitysvc_data-0.1.9/src/unitysvc_data/examples/api/code-example-requests/code-example-v1.py.j2 +15 -0
  6. unitysvc_data-0.1.9/src/unitysvc_data/examples/api/code-example-shell/README.md +38 -0
  7. unitysvc_data-0.1.9/src/unitysvc_data/examples/api/code-example-shell/code-example-v1.sh.j2 +11 -0
  8. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/api/connectivity/README.md +6 -8
  9. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-anthropic/README.md +9 -5
  10. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-javascript/README.md +32 -0
  11. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-javascript/code-example-embed-image-v1.js.j2 +36 -0
  12. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-requests/README.md +33 -0
  13. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-requests/code-example-embed-image-v1.py.j2 +38 -0
  14. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-shell/README.md +32 -0
  15. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-embed-image-shell/code-example-embed-image-v1.sh.j2 +21 -0
  16. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-javascript/README.md +9 -8
  17. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-requests/README.md +9 -10
  18. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-shell/README.md +9 -8
  19. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-fc-requests/README.md +9 -8
  20. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-guard-javascript/README.md +28 -0
  21. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-guard-javascript/code-example-guard-v1.js.j2 +29 -0
  22. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-guard-requests/README.md +9 -8
  23. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-guard-shell/README.md +28 -0
  24. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-guard-shell/code-example-guard-v1.sh.j2 +14 -0
  25. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-image-javascript/README.md +33 -0
  26. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-image-javascript/code-example-image-v1.js.j2 +33 -0
  27. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-image-requests/README.md +7 -8
  28. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-image-shell/README.md +33 -0
  29. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-image-shell/code-example-image-v1.sh.j2 +28 -0
  30. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-javascript/README.md +32 -0
  31. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-javascript/code-example-imagetoimage-v1.js.j2 +38 -0
  32. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-requests/README.md +34 -0
  33. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-requests/code-example-imagetoimage-v1.py.j2 +26 -0
  34. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-shell/README.md +32 -0
  35. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-imagetoimage-shell/code-example-imagetoimage-v1.sh.j2 +21 -0
  36. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-javascript/README.md +9 -8
  37. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-openai/README.md +10 -9
  38. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-openai-javascript/README.md +9 -5
  39. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-requests/README.md +10 -11
  40. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-rerank-javascript/README.md +28 -0
  41. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-rerank-javascript/code-example-rerank-v1.js.j2 +30 -0
  42. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-rerank-requests/README.md +9 -8
  43. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-rerank-shell/README.md +28 -0
  44. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-rerank-shell/code-example-rerank-v1.sh.j2 +20 -0
  45. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-javascript/README.md +28 -0
  46. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-javascript/code-example-sentencetransformers-v1.js.j2 +31 -0
  47. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-requests/README.md +29 -0
  48. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-requests/code-example-sentencetransformers-v1.py.j2 +23 -0
  49. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-shell/README.md +28 -0
  50. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-sentencetransformers-shell/code-example-sentencetransformers-v1.sh.j2 +18 -0
  51. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-shell/README.md +9 -8
  52. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-streaming-openai/README.md +9 -4
  53. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-streaming-openai-javascript/README.md +9 -4
  54. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-transcription-javascript/README.md +34 -0
  55. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-transcription-javascript/code-example-transcription-v1.js.j2 +35 -0
  56. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-transcription-requests/README.md +7 -4
  57. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-transcription-shell/README.md +32 -0
  58. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-transcription-shell/code-example-transcription-v1.sh.j2 +13 -0
  59. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-tts-javascript/README.md +33 -0
  60. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-tts-javascript/code-example-tts-v1.js.j2 +31 -0
  61. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-tts-requests/README.md +7 -8
  62. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-tts-shell/README.md +33 -0
  63. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-tts-shell/code-example-tts-v1.sh.j2 +20 -0
  64. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-javascript/README.md +32 -0
  65. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-javascript/code-example-ttv-v1.js.j2 +30 -0
  66. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-requests/README.md +33 -0
  67. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-requests/code-example-ttv-v1.py.j2 +19 -0
  68. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-shell/README.md +32 -0
  69. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-ttv-shell/code-example-ttv-v1.sh.j2 +15 -0
  70. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-vision-javascript/README.md +33 -0
  71. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-vision-javascript/code-example-vision-v1.js.j2 +36 -0
  72. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-vision-requests/README.md +7 -4
  73. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-vision-shell/README.md +32 -0
  74. unitysvc_data-0.1.9/src/unitysvc_data/examples/llm/code-example-vision-shell/code-example-vision-v1.sh.j2 +23 -0
  75. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/request-template/README.md +1 -1
  76. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/code-example/README.md +1 -1
  77. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/connectivity/README.md +2 -2
  78. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/smtp/connectivity/README.md +1 -1
  79. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9/src/unitysvc_data.egg-info}/PKG-INFO +1 -1
  80. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data.egg-info/SOURCES.txt +52 -0
  81. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/LICENSE +0 -0
  82. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/README.md +0 -0
  83. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/setup.cfg +0 -0
  84. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/__init__.py +0 -0
  85. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/_registry.py +0 -0
  86. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/_version.py +0 -0
  87. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/cli.py +0 -0
  88. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/api/connectivity/connectivity-v1.sh.j2 +0 -0
  89. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-anthropic/code-example-v1.py.j2 +0 -0
  90. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-javascript/code-example-embed-v1.js.j2 +0 -0
  91. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-requests/code-example-embed-v1.py.j2 +0 -0
  92. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-embed-shell/code-example-embed-v1.sh.j2 +0 -0
  93. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-fc-requests/code-example-fc-v1.py.j2 +0 -0
  94. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-guard-requests/code-example-guard-v1.py.j2 +0 -0
  95. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-image-requests/code-example-image-v1.py.j2 +0 -0
  96. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-javascript/code-example-v1.js.j2 +0 -0
  97. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-openai/code-example-v1.py.j2 +0 -0
  98. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-openai-javascript/code-example-v1.js.j2 +0 -0
  99. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-requests/code-example-v1.py.j2 +0 -0
  100. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-rerank-requests/code-example-rerank-v1.py.j2 +0 -0
  101. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-shell/code-example-v1.sh.j2 +0 -0
  102. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-streaming-openai/code-example-v1.py.j2 +0 -0
  103. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-streaming-openai-javascript/code-example-v1.js.j2 +0 -0
  104. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-transcription-requests/code-example-transcription-v1.py.j2 +0 -0
  105. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-tts-requests/code-example-tts-v1.py.j2 +0 -0
  106. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/code-example-vision-requests/code-example-vision-v1.py.j2 +0 -0
  107. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/description/README.md +0 -0
  108. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/description/description-v1.md +0 -0
  109. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/llm/request-template/request-template-v1.json +0 -0
  110. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/notification/description/README.md +0 -0
  111. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/notification/description/description-v1.md +0 -0
  112. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/recommender/description/README.md +0 -0
  113. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/recommender/description/description-v1.md +0 -0
  114. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/code-example/code-example-v1.py.j2 +0 -0
  115. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/connectivity/connectivity-v1.py.j2 +0 -0
  116. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/description/README.md +0 -0
  117. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/s3/description/description-v1.md +0 -0
  118. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/smtp/connectivity/connectivity-v1.sh.j2 +0 -0
  119. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/smtp/connectivity/connectivity-v2.sh.j2 +0 -0
  120. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/uptime/description/README.md +0 -0
  121. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/examples/uptime/description/description-v1.md +0 -0
  122. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/presets.py +0 -0
  123. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data/py.typed +0 -0
  124. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data.egg-info/dependency_links.txt +0 -0
  125. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data.egg-info/entry_points.txt +0 -0
  126. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data.egg-info/requires.txt +0 -0
  127. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/src/unitysvc_data.egg-info/top_level.txt +0 -0
  128. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/tests/test_build.py +0 -0
  129. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/tests/test_cli.py +0 -0
  130. {unitysvc_data-0.1.7 → unitysvc_data-0.1.9}/tests/test_presets.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: unitysvc-data
3
- Version: 0.1.7
3
+ Version: 0.1.9
4
4
  Summary: Standard examples and presets for UnitySVC data packages
5
5
  Author-email: Bo Peng <bo.peng@unitysvc.com>
6
6
  Maintainer-email: Bo Peng <bo.peng@unitysvc.com>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "unitysvc-data"
7
- version = "0.1.7"
7
+ version = "0.1.9"
8
8
  description = "Standard examples and presets for UnitySVC data packages"
9
9
  readme = "README.md"
10
10
  authors = [{ name = "Bo Peng", email = "bo.peng@unitysvc.com" }]
@@ -1,24 +1,50 @@
1
1
  {
2
2
  "aliases": {
3
+ "api_code_example_requests": "api_code_example_requests_v1",
4
+ "api_code_example_shell": "api_code_example_shell_v1",
3
5
  "api_connectivity": "api_connectivity_v1",
4
6
  "llm_code_example_anthropic": "llm_code_example_anthropic_v1",
7
+ "llm_code_example_embed_image_javascript": "llm_code_example_embed_image_javascript_v1",
8
+ "llm_code_example_embed_image_requests": "llm_code_example_embed_image_requests_v1",
9
+ "llm_code_example_embed_image_shell": "llm_code_example_embed_image_shell_v1",
5
10
  "llm_code_example_embed_javascript": "llm_code_example_embed_javascript_v1",
6
11
  "llm_code_example_embed_requests": "llm_code_example_embed_requests_v1",
7
12
  "llm_code_example_embed_shell": "llm_code_example_embed_shell_v1",
8
13
  "llm_code_example_fc_requests": "llm_code_example_fc_requests_v1",
14
+ "llm_code_example_guard_javascript": "llm_code_example_guard_javascript_v1",
9
15
  "llm_code_example_guard_requests": "llm_code_example_guard_requests_v1",
16
+ "llm_code_example_guard_shell": "llm_code_example_guard_shell_v1",
17
+ "llm_code_example_image_javascript": "llm_code_example_image_javascript_v1",
10
18
  "llm_code_example_image_requests": "llm_code_example_image_requests_v1",
19
+ "llm_code_example_image_shell": "llm_code_example_image_shell_v1",
20
+ "llm_code_example_imagetoimage_javascript": "llm_code_example_imagetoimage_javascript_v1",
21
+ "llm_code_example_imagetoimage_requests": "llm_code_example_imagetoimage_requests_v1",
22
+ "llm_code_example_imagetoimage_shell": "llm_code_example_imagetoimage_shell_v1",
11
23
  "llm_code_example_javascript": "llm_code_example_javascript_v1",
12
24
  "llm_code_example_openai": "llm_code_example_openai_v1",
13
25
  "llm_code_example_openai_javascript": "llm_code_example_openai_javascript_v1",
14
26
  "llm_code_example_requests": "llm_code_example_requests_v1",
27
+ "llm_code_example_rerank_javascript": "llm_code_example_rerank_javascript_v1",
15
28
  "llm_code_example_rerank_requests": "llm_code_example_rerank_requests_v1",
29
+ "llm_code_example_rerank_shell": "llm_code_example_rerank_shell_v1",
30
+ "llm_code_example_sentencetransformers_javascript": "llm_code_example_sentencetransformers_javascript_v1",
31
+ "llm_code_example_sentencetransformers_requests": "llm_code_example_sentencetransformers_requests_v1",
32
+ "llm_code_example_sentencetransformers_shell": "llm_code_example_sentencetransformers_shell_v1",
16
33
  "llm_code_example_shell": "llm_code_example_shell_v1",
17
34
  "llm_code_example_streaming_openai": "llm_code_example_streaming_openai_v1",
18
35
  "llm_code_example_streaming_openai_javascript": "llm_code_example_streaming_openai_javascript_v1",
36
+ "llm_code_example_transcription_javascript": "llm_code_example_transcription_javascript_v1",
19
37
  "llm_code_example_transcription_requests": "llm_code_example_transcription_requests_v1",
38
+ "llm_code_example_transcription_shell": "llm_code_example_transcription_shell_v1",
39
+ "llm_code_example_tts_javascript": "llm_code_example_tts_javascript_v1",
20
40
  "llm_code_example_tts_requests": "llm_code_example_tts_requests_v1",
41
+ "llm_code_example_tts_shell": "llm_code_example_tts_shell_v1",
42
+ "llm_code_example_ttv_javascript": "llm_code_example_ttv_javascript_v1",
43
+ "llm_code_example_ttv_requests": "llm_code_example_ttv_requests_v1",
44
+ "llm_code_example_ttv_shell": "llm_code_example_ttv_shell_v1",
45
+ "llm_code_example_vision_javascript": "llm_code_example_vision_javascript_v1",
21
46
  "llm_code_example_vision_requests": "llm_code_example_vision_requests_v1",
47
+ "llm_code_example_vision_shell": "llm_code_example_vision_shell_v1",
22
48
  "llm_description": "llm_description_v1",
23
49
  "llm_request_template": "llm_request_template_v1",
24
50
  "notification_description": "notification_description_v1",
@@ -30,12 +56,43 @@
30
56
  "uptime_description": "uptime_description_v1"
31
57
  },
32
58
  "presets": {
59
+ "api_code_example_requests_v1": {
60
+ "category": "code_example",
61
+ "description": "Python example: GET an HTTP endpoint via the requests library and assert a 2xx response",
62
+ "example_file": "api/code-example-requests/code-example-v1.py.j2",
63
+ "is_active": true,
64
+ "is_public": true,
65
+ "meta": {
66
+ "output_contains": "ok",
67
+ "requirements": [
68
+ "requests"
69
+ ]
70
+ },
71
+ "mime_type": "python",
72
+ "preset_name": "api_code_example_requests",
73
+ "source_readme": "api/code-example-requests/README.md",
74
+ "version": 1
75
+ },
76
+ "api_code_example_shell_v1": {
77
+ "category": "code_example",
78
+ "description": "curl example: GET an HTTP endpoint and assert a 2xx response",
79
+ "example_file": "api/code-example-shell/code-example-v1.sh.j2",
80
+ "is_active": true,
81
+ "is_public": true,
82
+ "meta": {
83
+ "output_contains": "ok"
84
+ },
85
+ "mime_type": "bash",
86
+ "preset_name": "api_code_example_shell",
87
+ "source_readme": "api/code-example-shell/README.md",
88
+ "version": 1
89
+ },
33
90
  "api_connectivity_v1": {
34
91
  "category": "connectivity_test",
35
92
  "description": "Verify HTTP endpoint is reachable and returns a healthy status",
36
93
  "example_file": "api/connectivity/connectivity-v1.sh.j2",
37
94
  "is_active": true,
38
- "is_public": false,
95
+ "is_public": true,
39
96
  "meta": {
40
97
  "output_contains": "connectivity ok"
41
98
  },
@@ -60,6 +117,46 @@
60
117
  "source_readme": "llm/code-example-anthropic/README.md",
61
118
  "version": 1
62
119
  },
120
+ "llm_code_example_embed_image_javascript_v1": {
121
+ "category": "code_example",
122
+ "description": "JavaScript example: embed an image via /embed (Cohere v2-style)",
123
+ "example_file": "llm/code-example-embed-image-javascript/code-example-embed-image-v1.js.j2",
124
+ "is_active": true,
125
+ "is_public": true,
126
+ "meta": {},
127
+ "mime_type": "javascript",
128
+ "preset_name": "llm_code_example_embed_image_javascript",
129
+ "source_readme": "llm/code-example-embed-image-javascript/README.md",
130
+ "version": 1
131
+ },
132
+ "llm_code_example_embed_image_requests_v1": {
133
+ "category": "code_example",
134
+ "description": "Python example: embed an image via /embed (Cohere v2-style)",
135
+ "example_file": "llm/code-example-embed-image-requests/code-example-embed-image-v1.py.j2",
136
+ "is_active": true,
137
+ "is_public": true,
138
+ "meta": {
139
+ "requirements": [
140
+ "requests"
141
+ ]
142
+ },
143
+ "mime_type": "python",
144
+ "preset_name": "llm_code_example_embed_image_requests",
145
+ "source_readme": "llm/code-example-embed-image-requests/README.md",
146
+ "version": 1
147
+ },
148
+ "llm_code_example_embed_image_shell_v1": {
149
+ "category": "code_example",
150
+ "description": "Bash example: embed an image via /embed (Cohere v2-style) using curl",
151
+ "example_file": "llm/code-example-embed-image-shell/code-example-embed-image-v1.sh.j2",
152
+ "is_active": true,
153
+ "is_public": true,
154
+ "meta": {},
155
+ "mime_type": "bash",
156
+ "preset_name": "llm_code_example_embed_image_shell",
157
+ "source_readme": "llm/code-example-embed-image-shell/README.md",
158
+ "version": 1
159
+ },
63
160
  "llm_code_example_embed_javascript_v1": {
64
161
  "category": "code_example",
65
162
  "description": "JavaScript example: request OpenAI-compatible embeddings via fetch",
@@ -116,6 +213,18 @@
116
213
  "source_readme": "llm/code-example-fc-requests/README.md",
117
214
  "version": 1
118
215
  },
216
+ "llm_code_example_guard_javascript_v1": {
217
+ "category": "code_example",
218
+ "description": "JavaScript example: send an unsafe prompt to a guard/safety model via /chat/completions",
219
+ "example_file": "llm/code-example-guard-javascript/code-example-guard-v1.js.j2",
220
+ "is_active": true,
221
+ "is_public": true,
222
+ "meta": {},
223
+ "mime_type": "javascript",
224
+ "preset_name": "llm_code_example_guard_javascript",
225
+ "source_readme": "llm/code-example-guard-javascript/README.md",
226
+ "version": 1
227
+ },
119
228
  "llm_code_example_guard_requests_v1": {
120
229
  "category": "code_example",
121
230
  "description": "Python example: probe a Llama-Guard-style safety classifier with a borderline prompt",
@@ -132,6 +241,30 @@
132
241
  "source_readme": "llm/code-example-guard-requests/README.md",
133
242
  "version": 1
134
243
  },
244
+ "llm_code_example_guard_shell_v1": {
245
+ "category": "code_example",
246
+ "description": "Bash example: send an unsafe prompt to a guard/safety model via curl",
247
+ "example_file": "llm/code-example-guard-shell/code-example-guard-v1.sh.j2",
248
+ "is_active": true,
249
+ "is_public": true,
250
+ "meta": {},
251
+ "mime_type": "bash",
252
+ "preset_name": "llm_code_example_guard_shell",
253
+ "source_readme": "llm/code-example-guard-shell/README.md",
254
+ "version": 1
255
+ },
256
+ "llm_code_example_image_javascript_v1": {
257
+ "category": "code_example",
258
+ "description": "JavaScript example: generate an image via OpenAI-compatible /images/generations",
259
+ "example_file": "llm/code-example-image-javascript/code-example-image-v1.js.j2",
260
+ "is_active": true,
261
+ "is_public": true,
262
+ "meta": {},
263
+ "mime_type": "javascript",
264
+ "preset_name": "llm_code_example_image_javascript",
265
+ "source_readme": "llm/code-example-image-javascript/README.md",
266
+ "version": 1
267
+ },
135
268
  "llm_code_example_image_requests_v1": {
136
269
  "category": "code_example",
137
270
  "description": "Python example: generate an image from a text prompt via an OpenAI-compatible images endpoint",
@@ -148,6 +281,58 @@
148
281
  "source_readme": "llm/code-example-image-requests/README.md",
149
282
  "version": 1
150
283
  },
284
+ "llm_code_example_image_shell_v1": {
285
+ "category": "code_example",
286
+ "description": "Bash example: generate an image via OpenAI-compatible /images/generations using curl",
287
+ "example_file": "llm/code-example-image-shell/code-example-image-v1.sh.j2",
288
+ "is_active": true,
289
+ "is_public": true,
290
+ "meta": {},
291
+ "mime_type": "bash",
292
+ "preset_name": "llm_code_example_image_shell",
293
+ "source_readme": "llm/code-example-image-shell/README.md",
294
+ "version": 1
295
+ },
296
+ "llm_code_example_imagetoimage_javascript_v1": {
297
+ "category": "code_example",
298
+ "description": "JavaScript example: image-to-image transform via Hugging Face /models/<model>",
299
+ "example_file": "llm/code-example-imagetoimage-javascript/code-example-imagetoimage-v1.js.j2",
300
+ "is_active": true,
301
+ "is_public": true,
302
+ "meta": {},
303
+ "mime_type": "javascript",
304
+ "preset_name": "llm_code_example_imagetoimage_javascript",
305
+ "source_readme": "llm/code-example-imagetoimage-javascript/README.md",
306
+ "version": 1
307
+ },
308
+ "llm_code_example_imagetoimage_requests_v1": {
309
+ "category": "code_example",
310
+ "description": "Python example: image-to-image transform via Hugging Face /models/<model>",
311
+ "example_file": "llm/code-example-imagetoimage-requests/code-example-imagetoimage-v1.py.j2",
312
+ "is_active": true,
313
+ "is_public": true,
314
+ "meta": {
315
+ "requirements": [
316
+ "requests"
317
+ ]
318
+ },
319
+ "mime_type": "python",
320
+ "preset_name": "llm_code_example_imagetoimage_requests",
321
+ "source_readme": "llm/code-example-imagetoimage-requests/README.md",
322
+ "version": 1
323
+ },
324
+ "llm_code_example_imagetoimage_shell_v1": {
325
+ "category": "code_example",
326
+ "description": "Bash example: image-to-image transform via Hugging Face /models/<model> using curl",
327
+ "example_file": "llm/code-example-imagetoimage-shell/code-example-imagetoimage-v1.sh.j2",
328
+ "is_active": true,
329
+ "is_public": true,
330
+ "meta": {},
331
+ "mime_type": "bash",
332
+ "preset_name": "llm_code_example_imagetoimage_shell",
333
+ "source_readme": "llm/code-example-imagetoimage-shell/README.md",
334
+ "version": 1
335
+ },
151
336
  "llm_code_example_javascript_v1": {
152
337
  "category": "code_example",
153
338
  "description": "JavaScript example: send a chat completion request to an OpenAI-compatible LLM",
@@ -208,6 +393,18 @@
208
393
  "source_readme": "llm/code-example-requests/README.md",
209
394
  "version": 1
210
395
  },
396
+ "llm_code_example_rerank_javascript_v1": {
397
+ "category": "code_example",
398
+ "description": "JavaScript example: rerank documents via /rerank",
399
+ "example_file": "llm/code-example-rerank-javascript/code-example-rerank-v1.js.j2",
400
+ "is_active": true,
401
+ "is_public": true,
402
+ "meta": {},
403
+ "mime_type": "javascript",
404
+ "preset_name": "llm_code_example_rerank_javascript",
405
+ "source_readme": "llm/code-example-rerank-javascript/README.md",
406
+ "version": 1
407
+ },
211
408
  "llm_code_example_rerank_requests_v1": {
212
409
  "category": "code_example",
213
410
  "description": "Python example: rerank a candidate document set against a query",
@@ -224,6 +421,58 @@
224
421
  "source_readme": "llm/code-example-rerank-requests/README.md",
225
422
  "version": 1
226
423
  },
424
+ "llm_code_example_rerank_shell_v1": {
425
+ "category": "code_example",
426
+ "description": "Bash example: rerank documents via /rerank using curl",
427
+ "example_file": "llm/code-example-rerank-shell/code-example-rerank-v1.sh.j2",
428
+ "is_active": true,
429
+ "is_public": true,
430
+ "meta": {},
431
+ "mime_type": "bash",
432
+ "preset_name": "llm_code_example_rerank_shell",
433
+ "source_readme": "llm/code-example-rerank-shell/README.md",
434
+ "version": 1
435
+ },
436
+ "llm_code_example_sentencetransformers_javascript_v1": {
437
+ "category": "code_example",
438
+ "description": "JavaScript example: sentence-similarity via HF sentence-transformers /models/<model>",
439
+ "example_file": "llm/code-example-sentencetransformers-javascript/code-example-sentencetransformers-v1.js.j2",
440
+ "is_active": true,
441
+ "is_public": true,
442
+ "meta": {},
443
+ "mime_type": "javascript",
444
+ "preset_name": "llm_code_example_sentencetransformers_javascript",
445
+ "source_readme": "llm/code-example-sentencetransformers-javascript/README.md",
446
+ "version": 1
447
+ },
448
+ "llm_code_example_sentencetransformers_requests_v1": {
449
+ "category": "code_example",
450
+ "description": "Python example: sentence-similarity via HF sentence-transformers /models/<model>",
451
+ "example_file": "llm/code-example-sentencetransformers-requests/code-example-sentencetransformers-v1.py.j2",
452
+ "is_active": true,
453
+ "is_public": true,
454
+ "meta": {
455
+ "requirements": [
456
+ "requests"
457
+ ]
458
+ },
459
+ "mime_type": "python",
460
+ "preset_name": "llm_code_example_sentencetransformers_requests",
461
+ "source_readme": "llm/code-example-sentencetransformers-requests/README.md",
462
+ "version": 1
463
+ },
464
+ "llm_code_example_sentencetransformers_shell_v1": {
465
+ "category": "code_example",
466
+ "description": "Bash example: sentence-similarity via HF sentence-transformers /models/<model> using curl",
467
+ "example_file": "llm/code-example-sentencetransformers-shell/code-example-sentencetransformers-v1.sh.j2",
468
+ "is_active": true,
469
+ "is_public": true,
470
+ "meta": {},
471
+ "mime_type": "bash",
472
+ "preset_name": "llm_code_example_sentencetransformers_shell",
473
+ "source_readme": "llm/code-example-sentencetransformers-shell/README.md",
474
+ "version": 1
475
+ },
227
476
  "llm_code_example_shell_v1": {
228
477
  "category": "code_example",
229
478
  "description": "Shell example: send a chat completion request to an OpenAI-compatible LLM via curl",
@@ -268,6 +517,18 @@
268
517
  "source_readme": "llm/code-example-streaming-openai/README.md",
269
518
  "version": 1
270
519
  },
520
+ "llm_code_example_transcription_javascript_v1": {
521
+ "category": "code_example",
522
+ "description": "JavaScript example: transcribe audio via OpenAI-compatible /audio/transcriptions",
523
+ "example_file": "llm/code-example-transcription-javascript/code-example-transcription-v1.js.j2",
524
+ "is_active": true,
525
+ "is_public": true,
526
+ "meta": {},
527
+ "mime_type": "javascript",
528
+ "preset_name": "llm_code_example_transcription_javascript",
529
+ "source_readme": "llm/code-example-transcription-javascript/README.md",
530
+ "version": 1
531
+ },
271
532
  "llm_code_example_transcription_requests_v1": {
272
533
  "category": "code_example",
273
534
  "description": "Python example: transcribe a pre-recorded audio file with an OpenAI-compatible audio transcription endpoint",
@@ -284,6 +545,30 @@
284
545
  "source_readme": "llm/code-example-transcription-requests/README.md",
285
546
  "version": 1
286
547
  },
548
+ "llm_code_example_transcription_shell_v1": {
549
+ "category": "code_example",
550
+ "description": "Bash example: transcribe audio via OpenAI-compatible /audio/transcriptions using curl",
551
+ "example_file": "llm/code-example-transcription-shell/code-example-transcription-v1.sh.j2",
552
+ "is_active": true,
553
+ "is_public": true,
554
+ "meta": {},
555
+ "mime_type": "bash",
556
+ "preset_name": "llm_code_example_transcription_shell",
557
+ "source_readme": "llm/code-example-transcription-shell/README.md",
558
+ "version": 1
559
+ },
560
+ "llm_code_example_tts_javascript_v1": {
561
+ "category": "code_example",
562
+ "description": "JavaScript example: synthesize speech via OpenAI-compatible /audio/speech",
563
+ "example_file": "llm/code-example-tts-javascript/code-example-tts-v1.js.j2",
564
+ "is_active": true,
565
+ "is_public": true,
566
+ "meta": {},
567
+ "mime_type": "javascript",
568
+ "preset_name": "llm_code_example_tts_javascript",
569
+ "source_readme": "llm/code-example-tts-javascript/README.md",
570
+ "version": 1
571
+ },
287
572
  "llm_code_example_tts_requests_v1": {
288
573
  "category": "code_example",
289
574
  "description": "Python example: synthesize speech from text using an OpenAI-compatible audio/speech endpoint",
@@ -300,6 +585,70 @@
300
585
  "source_readme": "llm/code-example-tts-requests/README.md",
301
586
  "version": 1
302
587
  },
588
+ "llm_code_example_tts_shell_v1": {
589
+ "category": "code_example",
590
+ "description": "Bash example: synthesize speech via OpenAI-compatible /audio/speech using curl",
591
+ "example_file": "llm/code-example-tts-shell/code-example-tts-v1.sh.j2",
592
+ "is_active": true,
593
+ "is_public": true,
594
+ "meta": {},
595
+ "mime_type": "bash",
596
+ "preset_name": "llm_code_example_tts_shell",
597
+ "source_readme": "llm/code-example-tts-shell/README.md",
598
+ "version": 1
599
+ },
600
+ "llm_code_example_ttv_javascript_v1": {
601
+ "category": "code_example",
602
+ "description": "JavaScript example: text-to-video via HF /models/<model>",
603
+ "example_file": "llm/code-example-ttv-javascript/code-example-ttv-v1.js.j2",
604
+ "is_active": true,
605
+ "is_public": true,
606
+ "meta": {},
607
+ "mime_type": "javascript",
608
+ "preset_name": "llm_code_example_ttv_javascript",
609
+ "source_readme": "llm/code-example-ttv-javascript/README.md",
610
+ "version": 1
611
+ },
612
+ "llm_code_example_ttv_requests_v1": {
613
+ "category": "code_example",
614
+ "description": "Python example: text-to-video via HF /models/<model>",
615
+ "example_file": "llm/code-example-ttv-requests/code-example-ttv-v1.py.j2",
616
+ "is_active": true,
617
+ "is_public": true,
618
+ "meta": {
619
+ "requirements": [
620
+ "requests"
621
+ ]
622
+ },
623
+ "mime_type": "python",
624
+ "preset_name": "llm_code_example_ttv_requests",
625
+ "source_readme": "llm/code-example-ttv-requests/README.md",
626
+ "version": 1
627
+ },
628
+ "llm_code_example_ttv_shell_v1": {
629
+ "category": "code_example",
630
+ "description": "Bash example: text-to-video via HF /models/<model> using curl",
631
+ "example_file": "llm/code-example-ttv-shell/code-example-ttv-v1.sh.j2",
632
+ "is_active": true,
633
+ "is_public": true,
634
+ "meta": {},
635
+ "mime_type": "bash",
636
+ "preset_name": "llm_code_example_ttv_shell",
637
+ "source_readme": "llm/code-example-ttv-shell/README.md",
638
+ "version": 1
639
+ },
640
+ "llm_code_example_vision_javascript_v1": {
641
+ "category": "code_example",
642
+ "description": "JavaScript example: describe an image via OpenAI-compatible /chat/completions vision messages",
643
+ "example_file": "llm/code-example-vision-javascript/code-example-vision-v1.js.j2",
644
+ "is_active": true,
645
+ "is_public": true,
646
+ "meta": {},
647
+ "mime_type": "javascript",
648
+ "preset_name": "llm_code_example_vision_javascript",
649
+ "source_readme": "llm/code-example-vision-javascript/README.md",
650
+ "version": 1
651
+ },
303
652
  "llm_code_example_vision_requests_v1": {
304
653
  "category": "code_example",
305
654
  "description": "Python example: ask a vision-capable LLM about a publicly-hosted image",
@@ -316,6 +665,18 @@
316
665
  "source_readme": "llm/code-example-vision-requests/README.md",
317
666
  "version": 1
318
667
  },
668
+ "llm_code_example_vision_shell_v1": {
669
+ "category": "code_example",
670
+ "description": "Bash example: describe an image via OpenAI-compatible /chat/completions using curl",
671
+ "example_file": "llm/code-example-vision-shell/code-example-vision-v1.sh.j2",
672
+ "is_active": true,
673
+ "is_public": true,
674
+ "meta": {},
675
+ "mime_type": "bash",
676
+ "preset_name": "llm_code_example_vision_shell",
677
+ "source_readme": "llm/code-example-vision-shell/README.md",
678
+ "version": 1
679
+ },
319
680
  "llm_description_v1": {
320
681
  "category": "getting_started",
321
682
  "description": "Customer-facing overview of an OpenAI-compatible LLM gateway service",
@@ -333,7 +694,7 @@
333
694
  "description": "Minimal OpenAI-compatible chat completion request body",
334
695
  "example_file": "llm/request-template/request-template-v1.json",
335
696
  "is_active": true,
336
- "is_public": false,
697
+ "is_public": true,
337
698
  "meta": {},
338
699
  "mime_type": "json",
339
700
  "preset_name": "llm_request_template",
@@ -386,7 +747,7 @@
386
747
  "description": "Verify S3 endpoint accepts the configured credentials",
387
748
  "example_file": "s3/connectivity/connectivity-v1.py.j2",
388
749
  "is_active": true,
389
- "is_public": false,
750
+ "is_public": true,
390
751
  "meta": {
391
752
  "output_contains": "connectivity ok",
392
753
  "requirements": [
@@ -415,7 +776,7 @@
415
776
  "description": "Verify SMTP server returns a 220 greeting on connect",
416
777
  "example_file": "smtp/connectivity/connectivity-v1.sh.j2",
417
778
  "is_active": true,
418
- "is_public": false,
779
+ "is_public": true,
419
780
  "meta": {
420
781
  "output_contains": "connectivity ok"
421
782
  },
@@ -429,7 +790,7 @@
429
790
  "description": "Verify SMTP server returns a 220 greeting on connect",
430
791
  "example_file": "smtp/connectivity/connectivity-v2.sh.j2",
431
792
  "is_active": true,
432
- "is_public": false,
793
+ "is_public": true,
433
794
  "meta": {
434
795
  "output_contains": "connectivity ok"
435
796
  },
@@ -0,0 +1,39 @@
1
+ +++
2
+ preset_name = "api_code_example_requests"
3
+ category = "code_example"
4
+ mime_type = "python"
5
+ file = "code-example.py.j2"
6
+ description = "Python example: GET an HTTP endpoint via the requests library and assert a 2xx response"
7
+ is_active = true
8
+ is_public = true
9
+ meta = { requirements = ["requests"], output_contains = "ok" }
10
+ +++
11
+
12
+ # api / code-example-requests — generic HTTP smoke test via `requests`
13
+
14
+ Customer-facing Python example for any HTTP-based service that's
15
+ fronted by a UnitySVC gateway (HTTP relays, S3-compatible proxies,
16
+ echo services, simple forward services). Sends a `GET` to
17
+ `{{ service_base_url }}` using the `requests` library and asserts
18
+ the response is 2xx.
19
+
20
+ Companion to `api_connectivity` (curl smoke test, internal) — same
21
+ endpoint check, different audience: this one is the doc you'd hand
22
+ a customer who wants to wire the service into their own Python code.
23
+
24
+ ## Template variables (filled in by the platform when rendering for a given access interface)
25
+
26
+ - `{{ service_base_url }}` — endpoint base URL, taken from the listing's access interface.
27
+
28
+ ## Environment variables (read at runtime)
29
+
30
+ - `UNITYSVC_API_KEY` — optional. Sent as `Authorization: Bearer …` when set.
31
+
32
+ ## Versions
33
+
34
+ ### v1 — initial release
35
+
36
+ - `GET {{ service_base_url }}` with optional bearer auth, 5-second timeout.
37
+ - `raise_for_status()` raises on any non-2xx response (exit code ≠ 0).
38
+ - Prints `ok` on success — paired with the `output_contains = "ok"` meta
39
+ so the platform's run-tests flow can confirm a real endpoint hit.
@@ -0,0 +1,15 @@
1
+ """Generic HTTP smoke test for any UnitySVC HTTP-fronted service.
2
+
3
+ Sends a GET to the rendered base URL and raises on a non-2xx response.
4
+ """
5
+
6
+ import os
7
+
8
+ import requests
9
+
10
+ headers = {}
11
+ if api_key := os.environ.get("UNITYSVC_API_KEY"):
12
+ headers["Authorization"] = f"Bearer {api_key}"
13
+
14
+ requests.get("{{ service_base_url }}", headers=headers, timeout=5).raise_for_status()
15
+ print("ok")
@@ -0,0 +1,38 @@
1
+ +++
2
+ preset_name = "api_code_example_shell"
3
+ category = "code_example"
4
+ mime_type = "bash"
5
+ file = "code-example.sh.j2"
6
+ description = "curl example: GET an HTTP endpoint and assert a 2xx response"
7
+ is_active = true
8
+ is_public = true
9
+ meta = { output_contains = "ok" }
10
+ +++
11
+
12
+ # api / code-example-shell — generic HTTP smoke test via `curl`
13
+
14
+ Customer-facing shell example for any HTTP-based service fronted by
15
+ a UnitySVC gateway. `curl`s `{{ service_base_url }}` and asserts a
16
+ 2xx status.
17
+
18
+ Companion to `api_connectivity` (which has broader pass criteria —
19
+ 2xx/3xx/401/403 — and is intended for internal connectivity testing).
20
+ This preset is stricter (2xx only) and is the doc you'd show a
21
+ customer wiring the service into a shell script.
22
+
23
+ ## Template variables (filled in by the platform when rendering for a given access interface)
24
+
25
+ - `{{ service_base_url }}` — endpoint base URL, taken from the listing's access interface.
26
+
27
+ ## Environment variables (read at runtime)
28
+
29
+ - `UNITYSVC_API_KEY` — optional. Sent as `Authorization: Bearer …` when set.
30
+
31
+ ## Versions
32
+
33
+ ### v1 — initial release
34
+
35
+ - `curl -fsS {{ service_base_url }}` with optional bearer auth, 5-second timeout.
36
+ - `-f` makes curl exit non-zero on any non-2xx response.
37
+ - Prints `ok` on success — paired with the `output_contains = "ok"` meta
38
+ so the platform's run-tests flow can confirm a real endpoint hit.
@@ -0,0 +1,11 @@
1
+ #!/bin/bash
2
+ # Generic HTTP smoke test for any UnitySVC HTTP-fronted service.
3
+ # `-f` makes curl exit non-zero on any non-2xx response.
4
+ set -e
5
+
6
+ if [ -n "${UNITYSVC_API_KEY:-}" ]; then
7
+ curl -fsS --max-time 5 -H "Authorization: Bearer ${UNITYSVC_API_KEY}" -o /dev/null "{{ service_base_url }}"
8
+ else
9
+ curl -fsS --max-time 5 -o /dev/null "{{ service_base_url }}"
10
+ fi
11
+ echo "ok"
@@ -5,7 +5,7 @@ mime_type = "bash"
5
5
  file = "connectivity.sh.j2"
6
6
  description = "Verify HTTP endpoint is reachable and returns a healthy status"
7
7
  is_active = true
8
- is_public = false
8
+ is_public = true
9
9
  meta = { output_contains = "connectivity ok" }
10
10
  +++
11
11
 
@@ -25,15 +25,13 @@ proxy variants, any endpoint fronted by an HTTP gateway). The script
25
25
  | 5xx | fail | upstream broken |
26
26
  | 000 | fail | connect / DNS / timeout |
27
27
 
28
- ## Environment variables
28
+ ## Template variables (filled in by the platform when rendering for a given access interface)
29
29
 
30
- Provided identically by the test harness in both local and gateway
31
- modes, so the script does not branch on `local_testing`:
30
+ - `{{ service_base_url }}` endpoint base URL, taken from the listing's access interface.
32
31
 
33
- - `SERVICE_BASE_URL` upstream URL (local) or gateway URL (online).
34
- - `UNITYSVC_API_KEY` — optional. Seller's upstream api key if present
35
- in `upstream_access_config` (local mode), or the customer's gateway
36
- key (online mode). Sent as `Authorization: Bearer ...` when set.
32
+ ## Environment variables (read at runtime)
33
+
34
+ - `UNITYSVC_API_KEY` — optional. Sent as `Authorization: Bearer ...` when set. Either the seller's upstream API key (local mode, when `upstream_access_config` carries one) or the customer's svcpass / BYOK secret (gateway mode).
37
35
 
38
36
  ## Versions
39
37