post.json 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. {
  2. "operationId": "createProxyHost",
  3. "summary": "Create a Proxy Host",
  4. "tags": ["proxy-hosts"],
  5. "security": [
  6. {
  7. "bearerAuth": [
  8. "proxy_hosts.manage"
  9. ]
  10. }
  11. ],
  12. "requestBody": {
  13. "description": "Proxy Host Payload",
  14. "required": true,
  15. "content": {
  16. "application/json": {
  17. "schema": {
  18. "type": "object",
  19. "additionalProperties": false,
  20. "required": [
  21. "domain_names",
  22. "forward_scheme",
  23. "forward_host",
  24. "forward_port"
  25. ],
  26. "properties": {
  27. "domain_names": {
  28. "$ref": "../../../components/proxy-host-object.json#/properties/domain_names"
  29. },
  30. "forward_scheme": {
  31. "$ref": "../../../components/proxy-host-object.json#/properties/forward_scheme"
  32. },
  33. "forward_host": {
  34. "$ref": "../../../components/proxy-host-object.json#/properties/forward_host"
  35. },
  36. "forward_port": {
  37. "$ref": "../../../components/proxy-host-object.json#/properties/forward_port"
  38. },
  39. "certificate_id": {
  40. "$ref": "../../../components/proxy-host-object.json#/properties/certificate_id"
  41. },
  42. "ssl_forced": {
  43. "$ref": "../../../components/proxy-host-object.json#/properties/ssl_forced"
  44. },
  45. "hsts_enabled": {
  46. "$ref": "../../../components/proxy-host-object.json#/properties/hsts_enabled"
  47. },
  48. "hsts_subdomains": {
  49. "$ref": "../../../components/proxy-host-object.json#/properties/hsts_subdomains"
  50. },
  51. "trust_forwarded_proto": {
  52. "$ref": "../../../components/proxy-host-object.json#/properties/trust_forwarded_proto"
  53. },
  54. "http2_support": {
  55. "$ref": "../../../components/proxy-host-object.json#/properties/http2_support"
  56. },
  57. "block_exploits": {
  58. "$ref": "../../../components/proxy-host-object.json#/properties/block_exploits"
  59. },
  60. "caching_enabled": {
  61. "$ref": "../../../components/proxy-host-object.json#/properties/caching_enabled"
  62. },
  63. "allow_websocket_upgrade": {
  64. "$ref": "../../../components/proxy-host-object.json#/properties/allow_websocket_upgrade"
  65. },
  66. "access_list_id": {
  67. "$ref": "../../../components/proxy-host-object.json#/properties/access_list_id"
  68. },
  69. "advanced_config": {
  70. "$ref": "../../../components/proxy-host-object.json#/properties/advanced_config"
  71. },
  72. "enabled": {
  73. "$ref": "../../../components/proxy-host-object.json#/properties/enabled"
  74. },
  75. "meta": {
  76. "$ref": "../../../components/proxy-host-object.json#/properties/meta"
  77. },
  78. "locations": {
  79. "$ref": "../../../components/proxy-host-object.json#/properties/locations"
  80. }
  81. }
  82. },
  83. "example": {
  84. "domain_names": [
  85. "test.example.com"
  86. ],
  87. "forward_scheme": "http",
  88. "forward_host": "127.0.0.1",
  89. "forward_port": 8080
  90. }
  91. }
  92. }
  93. },
  94. "responses": {
  95. "201": {
  96. "description": "201 response",
  97. "content": {
  98. "application/json": {
  99. "examples": {
  100. "default": {
  101. "value": {
  102. "id": 3,
  103. "created_on": "2025-10-30T01:12:05.000Z",
  104. "modified_on": "2025-10-30T01:12:05.000Z",
  105. "owner_user_id": 1,
  106. "domain_names": [
  107. "test.example.com"
  108. ],
  109. "forward_host": "127.0.0.1",
  110. "forward_port": 8080,
  111. "access_list_id": 0,
  112. "certificate_id": 0,
  113. "ssl_forced": false,
  114. "caching_enabled": false,
  115. "block_exploits": false,
  116. "advanced_config": "",
  117. "meta": {},
  118. "allow_websocket_upgrade": false,
  119. "http2_support": false,
  120. "forward_scheme": "http",
  121. "enabled": true,
  122. "locations": [],
  123. "hsts_enabled": false,
  124. "hsts_subdomains": false,
  125. "trust_forwarded_proto": false,
  126. "certificate": null,
  127. "owner": {
  128. "id": 1,
  129. "created_on": "2025-10-28T00:50:24.000Z",
  130. "modified_on": "2025-10-28T00:50:24.000Z",
  131. "is_disabled": false,
  132. "email": "[email protected]",
  133. "name": "jamiec",
  134. "nickname": "jamiec",
  135. "avatar": "//www.gravatar.com/avatar/6193176330f8d38747f038c170ddb193?default=mm",
  136. "roles": [
  137. "admin"
  138. ]
  139. },
  140. "access_list": null
  141. }
  142. }
  143. },
  144. "schema": {
  145. "$ref": "../../../components/proxy-host-object.json"
  146. }
  147. }
  148. }
  149. }
  150. }
  151. }