templatefox 1.7.0 → 1.8.0

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 (79) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -6
  3. data/lib/templatefox/api/account_api.rb +1 -1
  4. data/lib/templatefox/api/integrations_api.rb +1 -1
  5. data/lib/templatefox/api/pdf_api.rb +1 -1
  6. data/lib/templatefox/api/pdf_async_api.rb +9 -9
  7. data/lib/templatefox/api/templates_api.rb +426 -3
  8. data/lib/templatefox/api_client.rb +1 -1
  9. data/lib/templatefox/api_error.rb +1 -1
  10. data/lib/templatefox/api_model_base.rb +1 -1
  11. data/lib/templatefox/configuration.rb +3 -3
  12. data/lib/templatefox/models/account_info_response.rb +1 -1
  13. data/lib/templatefox/models/app_routers_v1_pdf_async_export_type.rb +1 -1
  14. data/lib/templatefox/models/app_routers_v1_pdf_export_type.rb +1 -1
  15. data/lib/templatefox/models/create_async_pdf_request.rb +33 -8
  16. data/lib/templatefox/models/create_async_pdf_response.rb +1 -1
  17. data/lib/templatefox/models/create_pdf_request.rb +33 -8
  18. data/lib/templatefox/models/create_pdf_response.rb +1 -1
  19. data/lib/templatefox/models/create_version_request.rb +200 -0
  20. data/lib/templatefox/models/http_validation_error.rb +1 -1
  21. data/lib/templatefox/models/job_list_response.rb +1 -1
  22. data/lib/templatefox/models/job_status.rb +1 -1
  23. data/lib/templatefox/models/job_status_response.rb +1 -1
  24. data/lib/templatefox/models/location_inner.rb +1 -1
  25. data/lib/templatefox/models/pdf_variant.rb +1 -1
  26. data/lib/templatefox/models/s3_config_request.rb +1 -1
  27. data/lib/templatefox/models/s3_config_response.rb +1 -1
  28. data/lib/templatefox/models/s3_success_response.rb +1 -1
  29. data/lib/templatefox/models/s3_test_response.rb +1 -1
  30. data/lib/templatefox/models/set_default_version_request.rb +166 -0
  31. data/lib/templatefox/models/template_field.rb +1 -1
  32. data/lib/templatefox/models/template_field_spec.rb +1 -1
  33. data/lib/templatefox/models/template_list_item.rb +1 -1
  34. data/lib/templatefox/models/templates_list_response.rb +1 -1
  35. data/lib/templatefox/models/transaction.rb +1 -1
  36. data/lib/templatefox/models/transactions_response.rb +1 -1
  37. data/lib/templatefox/models/update_version_request.rb +200 -0
  38. data/lib/templatefox/models/validation_error.rb +1 -1
  39. data/lib/templatefox/models/version_item.rb +225 -0
  40. data/lib/templatefox/models/versions_list_response.rb +167 -0
  41. data/lib/templatefox/version.rb +2 -2
  42. data/lib/templatefox.rb +6 -1
  43. data/spec/api/account_api_spec.rb +1 -1
  44. data/spec/api/integrations_api_spec.rb +1 -1
  45. data/spec/api/pdf_api_spec.rb +1 -1
  46. data/spec/api/pdf_async_api_spec.rb +5 -5
  47. data/spec/api/templates_api_spec.rb +79 -2
  48. data/spec/models/account_info_response_spec.rb +1 -1
  49. data/spec/models/app_routers_v1_pdf_async_export_type_spec.rb +1 -1
  50. data/spec/models/app_routers_v1_pdf_export_type_spec.rb +1 -1
  51. data/spec/models/create_async_pdf_request_spec.rb +7 -1
  52. data/spec/models/create_async_pdf_response_spec.rb +1 -1
  53. data/spec/models/create_pdf_request_spec.rb +7 -1
  54. data/spec/models/create_pdf_response_spec.rb +1 -1
  55. data/spec/models/create_version_request_spec.rb +42 -0
  56. data/spec/models/http_validation_error_spec.rb +1 -1
  57. data/spec/models/job_list_response_spec.rb +1 -1
  58. data/spec/models/job_status_response_spec.rb +1 -1
  59. data/spec/models/job_status_spec.rb +1 -1
  60. data/spec/models/location_inner_spec.rb +1 -1
  61. data/spec/models/pdf_variant_spec.rb +1 -1
  62. data/spec/models/s3_config_request_spec.rb +1 -1
  63. data/spec/models/s3_config_response_spec.rb +1 -1
  64. data/spec/models/s3_success_response_spec.rb +1 -1
  65. data/spec/models/s3_test_response_spec.rb +1 -1
  66. data/spec/models/set_default_version_request_spec.rb +36 -0
  67. data/spec/models/template_field_spec.rb +1 -1
  68. data/spec/models/template_field_spec_spec.rb +1 -1
  69. data/spec/models/template_list_item_spec.rb +1 -1
  70. data/spec/models/templates_list_response_spec.rb +1 -1
  71. data/spec/models/transaction_spec.rb +1 -1
  72. data/spec/models/transactions_response_spec.rb +1 -1
  73. data/spec/models/update_version_request_spec.rb +42 -0
  74. data/spec/models/validation_error_spec.rb +1 -1
  75. data/spec/models/version_item_spec.rb +60 -0
  76. data/spec/models/versions_list_response_spec.rb +36 -0
  77. data/spec/spec_helper.rb +1 -1
  78. data/templatefox.gemspec +5 -5
  79. metadata +38 -23
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 91c45ce0fadc1defd43c0185ef7c50b2f0a8da6f2cbd69d0667f8932024eda67
4
- data.tar.gz: a21024e5ee876221a7e32923d9f9d94e309fffd3b86dd0214652094788597c9a
3
+ metadata.gz: 2c28aaa4222ed70aa7f28956c913e184fdaa2bb077cfc96584b627e9fe4fa05f
4
+ data.tar.gz: 87dc35782563ad6c617f9a82b13fddd7e223b821e74a5d7db0a53fe512536150
5
5
  SHA512:
6
- metadata.gz: c78c66ebdc5c86b35d4eb6eed7f6375794c5bbb56a52d4025c6210364c3eabb2ae94298d4397c13c2dd6a4c951ba7bb578d84a022fb1a9042a0672bb0bd645e9
7
- data.tar.gz: 46ebd1e0016ad3a08bcb061795d94db6b68f32f1b337780fbcca7ee081adf08847e0d080f9b53940939a3a1f6eaa88328f2b3897786bb8827e811010e08fe25f
6
+ metadata.gz: 1515fdf9ec7ea263a1521abe68e1a17fb887e82ff58d7a7049cf1547feda60e40106be5d22290f069ef0103443064ca98334296ed980c29cbfaaedf80c617e02
7
+ data.tar.gz: 9585627649e0f504a12bcb3af3081deffd1818a730afa057d91a4258e576ab038e30f93cb36b5f86c7b467da649b8aaa8ac71cf3c128f84a241916fe25ef06f2
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # TemplateFox Ruby SDK
2
2
 
3
- Official Ruby SDK for [TemplateFox](https://pdftemplateapi.com) - Generate PDFs from HTML templates via API.
3
+ Official Ruby SDK for [TemplateFox](https://templatefox.com) - Generate PDFs from HTML templates via API.
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/templatefox.svg)](https://rubygems.org/gems/templatefox)
6
6
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
@@ -139,7 +139,7 @@ puts "Connection: #{test.success ? 'OK' : 'Failed'}"
139
139
 
140
140
  ```ruby
141
141
  TemplateFox.configure do |config|
142
- config.host = 'https://api.pdftemplateapi.com' # Default API URL
142
+ config.host = 'https://api.templatefox.com' # Default API URL
143
143
  config.api_key['ApiKeyAuth'] = ENV['TEMPLATEFOX_API_KEY']
144
144
 
145
145
  # Optional: Enable debugging
@@ -192,13 +192,13 @@ end
192
192
 
193
193
  ## Documentation
194
194
 
195
- - [API Documentation](https://pdftemplateapi.com/docs)
196
- - [Swagger UI](https://api.pdftemplateapi.com/docs)
197
- - [Dashboard](https://pdftemplateapi.com/dashboard)
195
+ - [API Documentation](https://templatefox.com/docs)
196
+ - [Swagger UI](https://api.templatefox.com/docs)
197
+ - [Dashboard](https://templatefox.com/dashboard)
198
198
 
199
199
  ## Support
200
200
 
201
- - Email: support@pdftemplateapi.com
201
+ - Email: support@templatefox.com
202
202
  - Issues: [GitHub Issues](https://github.com/TemplateFoxPDF/rubysdk/issues)
203
203
 
204
204
  ## License
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -89,7 +89,7 @@ module TemplateFox
89
89
 
90
90
  # Get PDF job status
91
91
  # Get the current status of an async PDF generation job. **Authentication:** API Key required (`x-api-key` header) ## Status Values | Status | Description | |--------|-------------| | `pending` | Job is queued, waiting to be processed | | `processing` | Job is being processed | | `completed` | PDF generated successfully | | `failed` | Job failed (check error_message) | ## Polling Recommendations - Poll every 1-2 seconds for small documents - Poll every 5-10 seconds for large documents - Consider using webhooks instead of polling
92
- # @param job_id [String]
92
+ # @param job_id [String] Async job ID (UUID returned by the create-async endpoint)
93
93
  # @param [Hash] opts the optional parameters
94
94
  # @return [JobStatusResponse]
95
95
  def get_pdf_job(job_id, opts = {})
@@ -99,7 +99,7 @@ module TemplateFox
99
99
 
100
100
  # Get PDF job status
101
101
  # Get the current status of an async PDF generation job. **Authentication:** API Key required (`x-api-key` header) ## Status Values | Status | Description | |--------|-------------| | `pending` | Job is queued, waiting to be processed | | `processing` | Job is being processed | | `completed` | PDF generated successfully | | `failed` | Job failed (check error_message) | ## Polling Recommendations - Poll every 1-2 seconds for small documents - Poll every 5-10 seconds for large documents - Consider using webhooks instead of polling
102
- # @param job_id [String]
102
+ # @param job_id [String] Async job ID (UUID returned by the create-async endpoint)
103
103
  # @param [Hash] opts the optional parameters
104
104
  # @return [Array<(JobStatusResponse, Integer, Hash)>] JobStatusResponse data, response status code and response headers
105
105
  def get_pdf_job_with_http_info(job_id, opts = {})
@@ -153,9 +153,9 @@ module TemplateFox
153
153
  # List PDF jobs
154
154
  # List async PDF generation jobs for your team. **Authentication:** API Key required (`x-api-key` header) Supports pagination and filtering by status.
155
155
  # @param [Hash] opts the optional parameters
156
- # @option opts [Integer] :limit (default to 20)
157
- # @option opts [Integer] :offset (default to 0)
158
- # @option opts [JobStatus] :status
156
+ # @option opts [Integer] :limit Maximum number of results to return (default to 20)
157
+ # @option opts [Integer] :offset Number of results to skip (for pagination) (default to 0)
158
+ # @option opts [JobStatus] :status Filter jobs by status
159
159
  # @return [JobListResponse]
160
160
  def list_pdf_jobs(opts = {})
161
161
  data, _status_code, _headers = list_pdf_jobs_with_http_info(opts)
@@ -165,9 +165,9 @@ module TemplateFox
165
165
  # List PDF jobs
166
166
  # List async PDF generation jobs for your team. **Authentication:** API Key required (&#x60;x-api-key&#x60; header) Supports pagination and filtering by status.
167
167
  # @param [Hash] opts the optional parameters
168
- # @option opts [Integer] :limit (default to 20)
169
- # @option opts [Integer] :offset (default to 0)
170
- # @option opts [JobStatus] :status
168
+ # @option opts [Integer] :limit Maximum number of results to return (default to 20)
169
+ # @option opts [Integer] :offset Number of results to skip (for pagination) (default to 0)
170
+ # @option opts [JobStatus] :status Filter jobs by status
171
171
  # @return [Array<(JobListResponse, Integer, Hash)>] JobListResponse data, response status code and response headers
172
172
  def list_pdf_jobs_with_http_info(opts = {})
173
173
  if @api_client.config.debugging
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -19,9 +19,152 @@ module TemplateFox
19
19
  def initialize(api_client = ApiClient.default)
20
20
  @api_client = api_client
21
21
  end
22
+ # Create a version snapshot
23
+ # Create an immutable snapshot of the current template draft.
24
+ # @param template_id [String] Template short ID (12 characters)
25
+ # @param create_version_request [CreateVersionRequest]
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [VersionItem]
28
+ def create_template_version(template_id, create_version_request, opts = {})
29
+ data, _status_code, _headers = create_template_version_with_http_info(template_id, create_version_request, opts)
30
+ data
31
+ end
32
+
33
+ # Create a version snapshot
34
+ # Create an immutable snapshot of the current template draft.
35
+ # @param template_id [String] Template short ID (12 characters)
36
+ # @param create_version_request [CreateVersionRequest]
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(VersionItem, Integer, Hash)>] VersionItem data, response status code and response headers
39
+ def create_template_version_with_http_info(template_id, create_version_request, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.create_template_version ...'
42
+ end
43
+ # verify the required parameter 'template_id' is set
44
+ if @api_client.config.client_side_validation && template_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.create_template_version"
46
+ end
47
+ # verify the required parameter 'create_version_request' is set
48
+ if @api_client.config.client_side_validation && create_version_request.nil?
49
+ fail ArgumentError, "Missing the required parameter 'create_version_request' when calling TemplatesApi.create_template_version"
50
+ end
51
+ # resource path
52
+ local_var_path = '/v1/templates/{template_id}/versions'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
61
+ # HTTP header 'Content-Type'
62
+ content_type = @api_client.select_header_content_type(['application/json'])
63
+ if !content_type.nil?
64
+ header_params['Content-Type'] = content_type
65
+ end
66
+
67
+ # form parameters
68
+ form_params = opts[:form_params] || {}
69
+
70
+ # http body (model)
71
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_version_request)
72
+
73
+ # return_type
74
+ return_type = opts[:debug_return_type] || 'VersionItem'
75
+
76
+ # auth_names
77
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
78
+
79
+ new_options = opts.merge(
80
+ :operation => :"TemplatesApi.create_template_version",
81
+ :header_params => header_params,
82
+ :query_params => query_params,
83
+ :form_params => form_params,
84
+ :body => post_body,
85
+ :auth_names => auth_names,
86
+ :return_type => return_type
87
+ )
88
+
89
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
90
+ if @api_client.config.debugging
91
+ @api_client.config.logger.debug "API called: TemplatesApi#create_template_version\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
92
+ end
93
+ return data, status_code, headers
94
+ end
95
+
96
+ # Delete a version
97
+ # Delete a specific version snapshot.
98
+ # @param template_id [String] Template short ID
99
+ # @param version_number [Integer] Version number to delete
100
+ # @param [Hash] opts the optional parameters
101
+ # @return [Object]
102
+ def delete_template_version(template_id, version_number, opts = {})
103
+ data, _status_code, _headers = delete_template_version_with_http_info(template_id, version_number, opts)
104
+ data
105
+ end
106
+
107
+ # Delete a version
108
+ # Delete a specific version snapshot.
109
+ # @param template_id [String] Template short ID
110
+ # @param version_number [Integer] Version number to delete
111
+ # @param [Hash] opts the optional parameters
112
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
113
+ def delete_template_version_with_http_info(template_id, version_number, opts = {})
114
+ if @api_client.config.debugging
115
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.delete_template_version ...'
116
+ end
117
+ # verify the required parameter 'template_id' is set
118
+ if @api_client.config.client_side_validation && template_id.nil?
119
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.delete_template_version"
120
+ end
121
+ # verify the required parameter 'version_number' is set
122
+ if @api_client.config.client_side_validation && version_number.nil?
123
+ fail ArgumentError, "Missing the required parameter 'version_number' when calling TemplatesApi.delete_template_version"
124
+ end
125
+ # resource path
126
+ local_var_path = '/v1/templates/{template_id}/versions/{version_number}'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s)).sub('{' + 'version_number' + '}', CGI.escape(version_number.to_s))
127
+
128
+ # query parameters
129
+ query_params = opts[:query_params] || {}
130
+
131
+ # header parameters
132
+ header_params = opts[:header_params] || {}
133
+ # HTTP header 'Accept' (if needed)
134
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
135
+
136
+ # form parameters
137
+ form_params = opts[:form_params] || {}
138
+
139
+ # http body (model)
140
+ post_body = opts[:debug_body]
141
+
142
+ # return_type
143
+ return_type = opts[:debug_return_type] || 'Object'
144
+
145
+ # auth_names
146
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
147
+
148
+ new_options = opts.merge(
149
+ :operation => :"TemplatesApi.delete_template_version",
150
+ :header_params => header_params,
151
+ :query_params => query_params,
152
+ :form_params => form_params,
153
+ :body => post_body,
154
+ :auth_names => auth_names,
155
+ :return_type => return_type
156
+ )
157
+
158
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
159
+ if @api_client.config.debugging
160
+ @api_client.config.logger.debug "API called: TemplatesApi#delete_template_version\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
161
+ end
162
+ return data, status_code, headers
163
+ end
164
+
22
165
  # Get template fields
23
166
  # Get the dynamic fields for a template. **Authentication:** API Key required (`x-api-key` header) or JWT token **Usage:** This endpoint is designed for no-code tool integrations (Zapier, Make.com). It returns an array of field definitions used to dynamically generate input forms. **Response format:** Array of field objects with: `key`, `label`, `type`, `required`, optional `helpText`, and optional `spec` (for array fields). **Field types:** - `string`: Text input - `integer`: Integer number - `number`: Decimal number - `boolean`: True/False checkbox - `array`: Array of items with nested `spec` defining item structure **Array fields:** When a field is an array of objects, the response includes a `spec` array defining the structure of each item (name, label, type for each nested field). **No credits consumed:** This is a read-only endpoint. **Rate Limits:** 60 requests/min (free), 120 requests/min (paid). Headers included in response.
24
- # @param template_id [String]
167
+ # @param template_id [String] Template short ID (12 characters)
25
168
  # @param [Hash] opts the optional parameters
26
169
  # @return [Array<TemplateField>]
27
170
  def get_template_fields(template_id, opts = {})
@@ -31,7 +174,7 @@ module TemplateFox
31
174
 
32
175
  # Get template fields
33
176
  # Get the dynamic fields for a template. **Authentication:** API Key required (&#x60;x-api-key&#x60; header) or JWT token **Usage:** This endpoint is designed for no-code tool integrations (Zapier, Make.com). It returns an array of field definitions used to dynamically generate input forms. **Response format:** Array of field objects with: &#x60;key&#x60;, &#x60;label&#x60;, &#x60;type&#x60;, &#x60;required&#x60;, optional &#x60;helpText&#x60;, and optional &#x60;spec&#x60; (for array fields). **Field types:** - &#x60;string&#x60;: Text input - &#x60;integer&#x60;: Integer number - &#x60;number&#x60;: Decimal number - &#x60;boolean&#x60;: True/False checkbox - &#x60;array&#x60;: Array of items with nested &#x60;spec&#x60; defining item structure **Array fields:** When a field is an array of objects, the response includes a &#x60;spec&#x60; array defining the structure of each item (name, label, type for each nested field). **No credits consumed:** This is a read-only endpoint. **Rate Limits:** 60 requests/min (free), 120 requests/min (paid). Headers included in response.
34
- # @param template_id [String]
177
+ # @param template_id [String] Template short ID (12 characters)
35
178
  # @param [Hash] opts the optional parameters
36
179
  # @return [Array<(Array<TemplateField>, Integer, Hash)>] Array<TemplateField> data, response status code and response headers
37
180
  def get_template_fields_with_http_info(template_id, opts = {})
@@ -82,6 +225,69 @@ module TemplateFox
82
225
  return data, status_code, headers
83
226
  end
84
227
 
228
+ # List template versions
229
+ # List all snapshot versions for a template (excludes the working draft).
230
+ # @param template_id [String] Template short ID (12 characters)
231
+ # @param [Hash] opts the optional parameters
232
+ # @return [VersionsListResponse]
233
+ def list_template_versions(template_id, opts = {})
234
+ data, _status_code, _headers = list_template_versions_with_http_info(template_id, opts)
235
+ data
236
+ end
237
+
238
+ # List template versions
239
+ # List all snapshot versions for a template (excludes the working draft).
240
+ # @param template_id [String] Template short ID (12 characters)
241
+ # @param [Hash] opts the optional parameters
242
+ # @return [Array<(VersionsListResponse, Integer, Hash)>] VersionsListResponse data, response status code and response headers
243
+ def list_template_versions_with_http_info(template_id, opts = {})
244
+ if @api_client.config.debugging
245
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.list_template_versions ...'
246
+ end
247
+ # verify the required parameter 'template_id' is set
248
+ if @api_client.config.client_side_validation && template_id.nil?
249
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.list_template_versions"
250
+ end
251
+ # resource path
252
+ local_var_path = '/v1/templates/{template_id}/versions'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s))
253
+
254
+ # query parameters
255
+ query_params = opts[:query_params] || {}
256
+
257
+ # header parameters
258
+ header_params = opts[:header_params] || {}
259
+ # HTTP header 'Accept' (if needed)
260
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
261
+
262
+ # form parameters
263
+ form_params = opts[:form_params] || {}
264
+
265
+ # http body (model)
266
+ post_body = opts[:debug_body]
267
+
268
+ # return_type
269
+ return_type = opts[:debug_return_type] || 'VersionsListResponse'
270
+
271
+ # auth_names
272
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
273
+
274
+ new_options = opts.merge(
275
+ :operation => :"TemplatesApi.list_template_versions",
276
+ :header_params => header_params,
277
+ :query_params => query_params,
278
+ :form_params => form_params,
279
+ :body => post_body,
280
+ :auth_names => auth_names,
281
+ :return_type => return_type
282
+ )
283
+
284
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
285
+ if @api_client.config.debugging
286
+ @api_client.config.logger.debug "API called: TemplatesApi#list_template_versions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
287
+ end
288
+ return data, status_code, headers
289
+ end
290
+
85
291
  # List templates
86
292
  # List all templates for the authenticated user. **Authentication:** API Key required (`x-api-key` header) or JWT token **Usage:** This endpoint is designed for no-code tools (Zapier, Make, n8n) to populate template selection dropdowns. **No credits consumed:** This is a read-only endpoint. **Rate Limits:** 60 requests/min (free), 120 requests/min (paid). Headers included in response.
87
293
  # @param [Hash] opts the optional parameters
@@ -138,5 +344,222 @@ module TemplateFox
138
344
  end
139
345
  return data, status_code, headers
140
346
  end
347
+
348
+ # Remove default version
349
+ # Remove the default version setting. API will use the working draft.
350
+ # @param template_id [String] Template short ID
351
+ # @param [Hash] opts the optional parameters
352
+ # @return [Object]
353
+ def remove_default_version(template_id, opts = {})
354
+ data, _status_code, _headers = remove_default_version_with_http_info(template_id, opts)
355
+ data
356
+ end
357
+
358
+ # Remove default version
359
+ # Remove the default version setting. API will use the working draft.
360
+ # @param template_id [String] Template short ID
361
+ # @param [Hash] opts the optional parameters
362
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
363
+ def remove_default_version_with_http_info(template_id, opts = {})
364
+ if @api_client.config.debugging
365
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.remove_default_version ...'
366
+ end
367
+ # verify the required parameter 'template_id' is set
368
+ if @api_client.config.client_side_validation && template_id.nil?
369
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.remove_default_version"
370
+ end
371
+ # resource path
372
+ local_var_path = '/v1/templates/{template_id}/default-version'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s))
373
+
374
+ # query parameters
375
+ query_params = opts[:query_params] || {}
376
+
377
+ # header parameters
378
+ header_params = opts[:header_params] || {}
379
+ # HTTP header 'Accept' (if needed)
380
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
381
+
382
+ # form parameters
383
+ form_params = opts[:form_params] || {}
384
+
385
+ # http body (model)
386
+ post_body = opts[:debug_body]
387
+
388
+ # return_type
389
+ return_type = opts[:debug_return_type] || 'Object'
390
+
391
+ # auth_names
392
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
393
+
394
+ new_options = opts.merge(
395
+ :operation => :"TemplatesApi.remove_default_version",
396
+ :header_params => header_params,
397
+ :query_params => query_params,
398
+ :form_params => form_params,
399
+ :body => post_body,
400
+ :auth_names => auth_names,
401
+ :return_type => return_type
402
+ )
403
+
404
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
405
+ if @api_client.config.debugging
406
+ @api_client.config.logger.debug "API called: TemplatesApi#remove_default_version\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
407
+ end
408
+ return data, status_code, headers
409
+ end
410
+
411
+ # Set default version
412
+ # Set which version the API uses by default when no version param is provided.
413
+ # @param template_id [String] Template short ID
414
+ # @param set_default_version_request [SetDefaultVersionRequest]
415
+ # @param [Hash] opts the optional parameters
416
+ # @return [Object]
417
+ def set_default_version(template_id, set_default_version_request, opts = {})
418
+ data, _status_code, _headers = set_default_version_with_http_info(template_id, set_default_version_request, opts)
419
+ data
420
+ end
421
+
422
+ # Set default version
423
+ # Set which version the API uses by default when no version param is provided.
424
+ # @param template_id [String] Template short ID
425
+ # @param set_default_version_request [SetDefaultVersionRequest]
426
+ # @param [Hash] opts the optional parameters
427
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
428
+ def set_default_version_with_http_info(template_id, set_default_version_request, opts = {})
429
+ if @api_client.config.debugging
430
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.set_default_version ...'
431
+ end
432
+ # verify the required parameter 'template_id' is set
433
+ if @api_client.config.client_side_validation && template_id.nil?
434
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.set_default_version"
435
+ end
436
+ # verify the required parameter 'set_default_version_request' is set
437
+ if @api_client.config.client_side_validation && set_default_version_request.nil?
438
+ fail ArgumentError, "Missing the required parameter 'set_default_version_request' when calling TemplatesApi.set_default_version"
439
+ end
440
+ # resource path
441
+ local_var_path = '/v1/templates/{template_id}/default-version'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s))
442
+
443
+ # query parameters
444
+ query_params = opts[:query_params] || {}
445
+
446
+ # header parameters
447
+ header_params = opts[:header_params] || {}
448
+ # HTTP header 'Accept' (if needed)
449
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
450
+ # HTTP header 'Content-Type'
451
+ content_type = @api_client.select_header_content_type(['application/json'])
452
+ if !content_type.nil?
453
+ header_params['Content-Type'] = content_type
454
+ end
455
+
456
+ # form parameters
457
+ form_params = opts[:form_params] || {}
458
+
459
+ # http body (model)
460
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(set_default_version_request)
461
+
462
+ # return_type
463
+ return_type = opts[:debug_return_type] || 'Object'
464
+
465
+ # auth_names
466
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
467
+
468
+ new_options = opts.merge(
469
+ :operation => :"TemplatesApi.set_default_version",
470
+ :header_params => header_params,
471
+ :query_params => query_params,
472
+ :form_params => form_params,
473
+ :body => post_body,
474
+ :auth_names => auth_names,
475
+ :return_type => return_type
476
+ )
477
+
478
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
479
+ if @api_client.config.debugging
480
+ @api_client.config.logger.debug "API called: TemplatesApi#set_default_version\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
481
+ end
482
+ return data, status_code, headers
483
+ end
484
+
485
+ # Update a version
486
+ # Update a version's tag or description.
487
+ # @param template_id [String] Template short ID
488
+ # @param version_number [Integer] Version number to update
489
+ # @param update_version_request [UpdateVersionRequest]
490
+ # @param [Hash] opts the optional parameters
491
+ # @return [VersionItem]
492
+ def update_template_version(template_id, version_number, update_version_request, opts = {})
493
+ data, _status_code, _headers = update_template_version_with_http_info(template_id, version_number, update_version_request, opts)
494
+ data
495
+ end
496
+
497
+ # Update a version
498
+ # Update a version&#39;s tag or description.
499
+ # @param template_id [String] Template short ID
500
+ # @param version_number [Integer] Version number to update
501
+ # @param update_version_request [UpdateVersionRequest]
502
+ # @param [Hash] opts the optional parameters
503
+ # @return [Array<(VersionItem, Integer, Hash)>] VersionItem data, response status code and response headers
504
+ def update_template_version_with_http_info(template_id, version_number, update_version_request, opts = {})
505
+ if @api_client.config.debugging
506
+ @api_client.config.logger.debug 'Calling API: TemplatesApi.update_template_version ...'
507
+ end
508
+ # verify the required parameter 'template_id' is set
509
+ if @api_client.config.client_side_validation && template_id.nil?
510
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling TemplatesApi.update_template_version"
511
+ end
512
+ # verify the required parameter 'version_number' is set
513
+ if @api_client.config.client_side_validation && version_number.nil?
514
+ fail ArgumentError, "Missing the required parameter 'version_number' when calling TemplatesApi.update_template_version"
515
+ end
516
+ # verify the required parameter 'update_version_request' is set
517
+ if @api_client.config.client_side_validation && update_version_request.nil?
518
+ fail ArgumentError, "Missing the required parameter 'update_version_request' when calling TemplatesApi.update_template_version"
519
+ end
520
+ # resource path
521
+ local_var_path = '/v1/templates/{template_id}/versions/{version_number}'.sub('{' + 'template_id' + '}', CGI.escape(template_id.to_s)).sub('{' + 'version_number' + '}', CGI.escape(version_number.to_s))
522
+
523
+ # query parameters
524
+ query_params = opts[:query_params] || {}
525
+
526
+ # header parameters
527
+ header_params = opts[:header_params] || {}
528
+ # HTTP header 'Accept' (if needed)
529
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
530
+ # HTTP header 'Content-Type'
531
+ content_type = @api_client.select_header_content_type(['application/json'])
532
+ if !content_type.nil?
533
+ header_params['Content-Type'] = content_type
534
+ end
535
+
536
+ # form parameters
537
+ form_params = opts[:form_params] || {}
538
+
539
+ # http body (model)
540
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_version_request)
541
+
542
+ # return_type
543
+ return_type = opts[:debug_return_type] || 'VersionItem'
544
+
545
+ # auth_names
546
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
547
+
548
+ new_options = opts.merge(
549
+ :operation => :"TemplatesApi.update_template_version",
550
+ :header_params => header_params,
551
+ :query_params => query_params,
552
+ :form_params => form_params,
553
+ :body => post_body,
554
+ :auth_names => auth_names,
555
+ :return_type => return_type
556
+ )
557
+
558
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
559
+ if @api_client.config.debugging
560
+ @api_client.config.logger.debug "API called: TemplatesApi#update_template_version\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
561
+ end
562
+ return data, status_code, headers
563
+ end
141
564
  end
142
565
  end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0
@@ -158,7 +158,7 @@ module TemplateFox
158
158
 
159
159
  def initialize
160
160
  @scheme = 'https'
161
- @host = 'api.pdftemplateapi.com'
161
+ @host = 'api.templatefox.com'
162
162
  @base_path = ''
163
163
  @server_index = nil
164
164
  @server_operation_index = {}
@@ -258,7 +258,7 @@ module TemplateFox
258
258
  def server_settings
259
259
  [
260
260
  {
261
- url: "https://api.pdftemplateapi.com",
261
+ url: "https://api.templatefox.com",
262
262
  description: "Production",
263
263
  }
264
264
  ]
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Generate beautiful PDFs from HTML/CSS templates with Jinja2 via API. Design once, generate thousands.
5
5
 
6
- The version of the OpenAPI document: 1.7.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.21.0