certificate-object.json 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. {
  2. "type": "object",
  3. "description": "Certificate object",
  4. "required": ["id", "created_on", "modified_on", "owner_user_id", "provider", "nice_name", "domain_names", "expires_on", "meta"],
  5. "additionalProperties": false,
  6. "properties": {
  7. "id": {
  8. "$ref": "../common.json#/properties/id"
  9. },
  10. "created_on": {
  11. "$ref": "../common.json#/properties/created_on"
  12. },
  13. "modified_on": {
  14. "$ref": "../common.json#/properties/modified_on"
  15. },
  16. "owner_user_id": {
  17. "$ref": "../common.json#/properties/user_id"
  18. },
  19. "provider": {
  20. "$ref": "../common.json#/properties/ssl_provider"
  21. },
  22. "nice_name": {
  23. "type": "string",
  24. "description": "Nice Name for the custom certificate",
  25. "example": "My Custom Cert"
  26. },
  27. "domain_names": {
  28. "description": "Domain Names separated by a comma",
  29. "type": "array",
  30. "maxItems": 100,
  31. "uniqueItems": true,
  32. "items": {
  33. "type": "string",
  34. "pattern": "^[^&| @!#%^();:/\\\\}{=+?<>,~`'\"]+$"
  35. },
  36. "example": ["example.com", "www.example.com"]
  37. },
  38. "expires_on": {
  39. "description": "Date and time of expiration",
  40. "readOnly": true,
  41. "type": "string",
  42. "example": "2025-10-28T04:17:54.000Z"
  43. },
  44. "owner": {
  45. "$ref": "./user-object.json"
  46. },
  47. "meta": {
  48. "type": "object",
  49. "additionalProperties": false,
  50. "properties": {
  51. "certificate": {
  52. "type": "string",
  53. "minLength": 1
  54. },
  55. "certificate_key": {
  56. "type": "string",
  57. "minLength": 1
  58. },
  59. "dns_challenge": {
  60. "type": "boolean"
  61. },
  62. "dns_provider": {
  63. "type": "string"
  64. },
  65. "letsencrypt_certificate": {
  66. "type": "object"
  67. },
  68. "propagation_seconds": {
  69. "type": "integer",
  70. "minimum": 0
  71. }
  72. },
  73. "example": {
  74. "dns_challenge": false
  75. }
  76. }
  77. }
  78. }