zernio-sdk 0.0.845 → 0.0.846

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 58e9e5ff7221cf9743a60b88fe7f9fa65b97d3a74aa07d6ff6bfb938c0e236e9
4
- data.tar.gz: e18867e19c752bf1b2b279e68d2b22a0a4ae624563ebd68a053cd1ecaf5d3f19
3
+ metadata.gz: ed425345471ead11b44d6395a53a4228ca5b27993aa7e5bcba446792b08b8961
4
+ data.tar.gz: 55d0a39475980102e12a0a5bd8d4ddd16d402b2621b0f7651f85050f4365894b
5
5
  SHA512:
6
- metadata.gz: c84ab94bbef49f346bd6791618587d43fb6737fe3bdbc7e4cba57f53cfabdd297cb7dfa9b1f20ec74beccacc016b13d124de0910fcecf21324289f350229a494
7
- data.tar.gz: c42d82f8d3260bf66199dde91e69fdf349c244adad6134b9f8216ba6474465554f7f0137447adb4e4460c6bc4ab3adc0870872c311bb218309efe099798a0bd7
6
+ metadata.gz: 198beb8975616a62658d1e1fa4b20df9b6943f8433af9afcdfde0c5eb7bca71ee3d86b41e585d9d6ee30f12b5a2ac33424b46255a7d4b31443fcdb0ac503468a
7
+ data.tar.gz: 6fa269492785ca65d246700455e1de49fa26c9a219705895cab4312f40826ec64d3df5fba6cf41d94ec4a4a1613066d4867f40cdfa6d4daa44319693c273945f
data/README.md CHANGED
@@ -1796,6 +1796,8 @@ Class | Method | HTTP request | Description
1796
1796
  - [Zernio::PostCreateResponse](docs/PostCreateResponse.md)
1797
1797
  - [Zernio::PostDeleteResponse](docs/PostDeleteResponse.md)
1798
1798
  - [Zernio::PostGetResponse](docs/PostGetResponse.md)
1799
+ - [Zernio::PostPublishIncompleteResponse](docs/PostPublishIncompleteResponse.md)
1800
+ - [Zernio::PostPublishIncompleteResponsePlatformResultsInner](docs/PostPublishIncompleteResponsePlatformResultsInner.md)
1799
1801
  - [Zernio::PostRetryResponse](docs/PostRetryResponse.md)
1800
1802
  - [Zernio::PostUpdateResponse](docs/PostUpdateResponse.md)
1801
1803
  - [Zernio::PostUserId](docs/PostUserId.md)
@@ -1879,6 +1881,7 @@ Class | Method | HTTP request | Description
1879
1881
  - [Zernio::RespondToSmsRegistrationReviewRequest](docs/RespondToSmsRegistrationReviewRequest.md)
1880
1882
  - [Zernio::RestoreWorkflowVersion200Response](docs/RestoreWorkflowVersion200Response.md)
1881
1883
  - [Zernio::RestoreWorkflowVersion200ResponseWorkflow](docs/RestoreWorkflowVersion200ResponseWorkflow.md)
1884
+ - [Zernio::RetryPost207Response](docs/RetryPost207Response.md)
1882
1885
  - [Zernio::RetweetPost200Response](docs/RetweetPost200Response.md)
1883
1886
  - [Zernio::RetweetPostRequest](docs/RetweetPostRequest.md)
1884
1887
  - [Zernio::ReuseSmsRegistrationForNumber200Response](docs/ReuseSmsRegistrationForNumber200Response.md)
@@ -0,0 +1,26 @@
1
+ # Zernio::PostPublishIncompleteResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **post** | [**Post**](Post.md) | | [optional] |
8
+ | **message** | **String** | Human-readable summary of the publish outcome. | [optional] |
9
+ | **error** | **String** | Present when no platform published. Absent on a partial success. Informational only; the per-platform detail is in `platformResults` and in `post.platforms[]`. | [optional] |
10
+ | **platform_results** | [**Array<PostPublishIncompleteResponsePlatformResultsInner>**](PostPublishIncompleteResponsePlatformResultsInner.md) | Per-platform outcome of the publish attempt. Omitted when the attempt aborted before producing per-platform results (for example the post was already being processed); read `post.platforms[]` in that case. | [optional] |
11
+ | **warnings** | **Array<String>** | Advisory notices about the post that was still created. Absent when there are none. | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'zernio-sdk'
17
+
18
+ instance = Zernio::PostPublishIncompleteResponse.new(
19
+ post: null,
20
+ message: null,
21
+ error: null,
22
+ platform_results: null,
23
+ warnings: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # Zernio::PostPublishIncompleteResponsePlatformResultsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **platform** | **String** | Platform slug, matching `post.platforms[].platform`. | |
8
+ | **status** | **String** | Per-platform status: pending, processing, published, failed, cancelled, uploading. | |
9
+ | **error** | **String** | Failure detail for this platform, or null when it did not fail. | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'zernio-sdk'
15
+
16
+ instance = Zernio::PostPublishIncompleteResponsePlatformResultsInner.new(
17
+ platform: null,
18
+ status: failed,
19
+ error: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,22 @@
1
+ # Zernio::RetryPost207Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **message** | **String** | | [optional] |
8
+ | **error** | **String** | Summary of why the retry did not fully succeed. | [optional] |
9
+ | **post** | [**Post**](Post.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'zernio-sdk'
15
+
16
+ instance = Zernio::RetryPost207Response.new(
17
+ message: null,
18
+ error: null,
19
+ post: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,192 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ # Body of the 207 returned by createPost and updatePost when the post was saved but the inline publish did not fully succeed. Read `post.status` to tell the three outcomes apart.
18
+ class PostPublishIncompleteResponse < ApiModelBase
19
+ attr_accessor :post
20
+
21
+ # Human-readable summary of the publish outcome.
22
+ attr_accessor :message
23
+
24
+ # Present when no platform published. Absent on a partial success. Informational only; the per-platform detail is in `platformResults` and in `post.platforms[]`.
25
+ attr_accessor :error
26
+
27
+ # Per-platform outcome of the publish attempt. Omitted when the attempt aborted before producing per-platform results (for example the post was already being processed); read `post.platforms[]` in that case.
28
+ attr_accessor :platform_results
29
+
30
+ # Advisory notices about the post that was still created. Absent when there are none.
31
+ attr_accessor :warnings
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+ :'post' => :'post',
37
+ :'message' => :'message',
38
+ :'error' => :'error',
39
+ :'platform_results' => :'platformResults',
40
+ :'warnings' => :'warnings'
41
+ }
42
+ end
43
+
44
+ # Returns attribute mapping this model knows about
45
+ def self.acceptable_attribute_map
46
+ attribute_map
47
+ end
48
+
49
+ # Returns all the JSON keys this model knows about
50
+ def self.acceptable_attributes
51
+ acceptable_attribute_map.values
52
+ end
53
+
54
+ # Attribute type mapping.
55
+ def self.openapi_types
56
+ {
57
+ :'post' => :'Post',
58
+ :'message' => :'String',
59
+ :'error' => :'String',
60
+ :'platform_results' => :'Array<PostPublishIncompleteResponsePlatformResultsInner>',
61
+ :'warnings' => :'Array<String>'
62
+ }
63
+ end
64
+
65
+ # List of attributes with nullable: true
66
+ def self.openapi_nullable
67
+ Set.new([
68
+ ])
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ if (!attributes.is_a?(Hash))
75
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::PostPublishIncompleteResponse` initialize method"
76
+ end
77
+
78
+ # check to see if the attribute exists and convert string to symbol for hash key
79
+ acceptable_attribute_map = self.class.acceptable_attribute_map
80
+ attributes = attributes.each_with_object({}) { |(k, v), h|
81
+ if (!acceptable_attribute_map.key?(k.to_sym))
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::PostPublishIncompleteResponse`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
83
+ end
84
+ h[k.to_sym] = v
85
+ }
86
+
87
+ if attributes.key?(:'post')
88
+ self.post = attributes[:'post']
89
+ end
90
+
91
+ if attributes.key?(:'message')
92
+ self.message = attributes[:'message']
93
+ end
94
+
95
+ if attributes.key?(:'error')
96
+ self.error = attributes[:'error']
97
+ end
98
+
99
+ if attributes.key?(:'platform_results')
100
+ if (value = attributes[:'platform_results']).is_a?(Array)
101
+ self.platform_results = value
102
+ end
103
+ end
104
+
105
+ if attributes.key?(:'warnings')
106
+ if (value = attributes[:'warnings']).is_a?(Array)
107
+ self.warnings = value
108
+ end
109
+ end
110
+ end
111
+
112
+ # Show invalid properties with the reasons. Usually used together with valid?
113
+ # @return Array for valid properties with the reasons
114
+ def list_invalid_properties
115
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
116
+ invalid_properties = Array.new
117
+ invalid_properties
118
+ end
119
+
120
+ # Check to see if the all the properties in the model are valid
121
+ # @return true if the model is valid
122
+ def valid?
123
+ warn '[DEPRECATED] the `valid?` method is obsolete'
124
+ true
125
+ end
126
+
127
+ # Checks equality by comparing each attribute.
128
+ # @param [Object] Object to be compared
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ post == o.post &&
133
+ message == o.message &&
134
+ error == o.error &&
135
+ platform_results == o.platform_results &&
136
+ warnings == o.warnings
137
+ end
138
+
139
+ # @see the `==` method
140
+ # @param [Object] Object to be compared
141
+ def eql?(o)
142
+ self == o
143
+ end
144
+
145
+ # Calculates hash code according to all attributes.
146
+ # @return [Integer] Hash code
147
+ def hash
148
+ [post, message, error, platform_results, warnings].hash
149
+ end
150
+
151
+ # Builds the object from hash
152
+ # @param [Hash] attributes Model attributes in the form of hash
153
+ # @return [Object] Returns the model itself
154
+ def self.build_from_hash(attributes)
155
+ return nil unless attributes.is_a?(Hash)
156
+ attributes = attributes.transform_keys(&:to_sym)
157
+ transformed_hash = {}
158
+ openapi_types.each_pair do |key, type|
159
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
160
+ transformed_hash["#{key}"] = nil
161
+ elsif type =~ /\AArray<(.*)>/i
162
+ # check to ensure the input is an array given that the attribute
163
+ # is documented as an array but the input is not
164
+ if attributes[attribute_map[key]].is_a?(Array)
165
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
166
+ end
167
+ elsif !attributes[attribute_map[key]].nil?
168
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
169
+ end
170
+ end
171
+ new(transformed_hash)
172
+ end
173
+
174
+ # Returns the object in the form of hash
175
+ # @return [Hash] Returns the object in the form of hash
176
+ def to_hash
177
+ hash = {}
178
+ self.class.attribute_map.each_pair do |attr, param|
179
+ value = self.send(attr)
180
+ if value.nil?
181
+ is_nullable = self.class.openapi_nullable.include?(attr)
182
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
183
+ end
184
+
185
+ hash[param] = _to_hash(value)
186
+ end
187
+ hash
188
+ end
189
+
190
+ end
191
+
192
+ end
@@ -0,0 +1,205 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ class PostPublishIncompleteResponsePlatformResultsInner < ApiModelBase
18
+ # Platform slug, matching `post.platforms[].platform`.
19
+ attr_accessor :platform
20
+
21
+ # Per-platform status: pending, processing, published, failed, cancelled, uploading.
22
+ attr_accessor :status
23
+
24
+ # Failure detail for this platform, or null when it did not fail.
25
+ attr_accessor :error
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+ :'platform' => :'platform',
31
+ :'status' => :'status',
32
+ :'error' => :'error'
33
+ }
34
+ end
35
+
36
+ # Returns attribute mapping this model knows about
37
+ def self.acceptable_attribute_map
38
+ attribute_map
39
+ end
40
+
41
+ # Returns all the JSON keys this model knows about
42
+ def self.acceptable_attributes
43
+ acceptable_attribute_map.values
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.openapi_types
48
+ {
49
+ :'platform' => :'String',
50
+ :'status' => :'String',
51
+ :'error' => :'String'
52
+ }
53
+ end
54
+
55
+ # List of attributes with nullable: true
56
+ def self.openapi_nullable
57
+ Set.new([
58
+ :'error'
59
+ ])
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ if (!attributes.is_a?(Hash))
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::PostPublishIncompleteResponsePlatformResultsInner` initialize method"
67
+ end
68
+
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ acceptable_attribute_map = self.class.acceptable_attribute_map
71
+ attributes = attributes.each_with_object({}) { |(k, v), h|
72
+ if (!acceptable_attribute_map.key?(k.to_sym))
73
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::PostPublishIncompleteResponsePlatformResultsInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
74
+ end
75
+ h[k.to_sym] = v
76
+ }
77
+
78
+ if attributes.key?(:'platform')
79
+ self.platform = attributes[:'platform']
80
+ else
81
+ self.platform = nil
82
+ end
83
+
84
+ if attributes.key?(:'status')
85
+ self.status = attributes[:'status']
86
+ else
87
+ self.status = nil
88
+ end
89
+
90
+ if attributes.key?(:'error')
91
+ self.error = attributes[:'error']
92
+ else
93
+ self.error = nil
94
+ end
95
+ end
96
+
97
+ # Show invalid properties with the reasons. Usually used together with valid?
98
+ # @return Array for valid properties with the reasons
99
+ def list_invalid_properties
100
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
101
+ invalid_properties = Array.new
102
+ if @platform.nil?
103
+ invalid_properties.push('invalid value for "platform", platform cannot be nil.')
104
+ end
105
+
106
+ if @status.nil?
107
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
108
+ end
109
+
110
+ invalid_properties
111
+ end
112
+
113
+ # Check to see if the all the properties in the model are valid
114
+ # @return true if the model is valid
115
+ def valid?
116
+ warn '[DEPRECATED] the `valid?` method is obsolete'
117
+ return false if @platform.nil?
118
+ return false if @status.nil?
119
+ true
120
+ end
121
+
122
+ # Custom attribute writer method with validation
123
+ # @param [Object] platform Value to be assigned
124
+ def platform=(platform)
125
+ if platform.nil?
126
+ fail ArgumentError, 'platform cannot be nil'
127
+ end
128
+
129
+ @platform = platform
130
+ end
131
+
132
+ # Custom attribute writer method with validation
133
+ # @param [Object] status Value to be assigned
134
+ def status=(status)
135
+ if status.nil?
136
+ fail ArgumentError, 'status cannot be nil'
137
+ end
138
+
139
+ @status = status
140
+ end
141
+
142
+ # Checks equality by comparing each attribute.
143
+ # @param [Object] Object to be compared
144
+ def ==(o)
145
+ return true if self.equal?(o)
146
+ self.class == o.class &&
147
+ platform == o.platform &&
148
+ status == o.status &&
149
+ error == o.error
150
+ end
151
+
152
+ # @see the `==` method
153
+ # @param [Object] Object to be compared
154
+ def eql?(o)
155
+ self == o
156
+ end
157
+
158
+ # Calculates hash code according to all attributes.
159
+ # @return [Integer] Hash code
160
+ def hash
161
+ [platform, status, error].hash
162
+ end
163
+
164
+ # Builds the object from hash
165
+ # @param [Hash] attributes Model attributes in the form of hash
166
+ # @return [Object] Returns the model itself
167
+ def self.build_from_hash(attributes)
168
+ return nil unless attributes.is_a?(Hash)
169
+ attributes = attributes.transform_keys(&:to_sym)
170
+ transformed_hash = {}
171
+ openapi_types.each_pair do |key, type|
172
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
173
+ transformed_hash["#{key}"] = nil
174
+ elsif type =~ /\AArray<(.*)>/i
175
+ # check to ensure the input is an array given that the attribute
176
+ # is documented as an array but the input is not
177
+ if attributes[attribute_map[key]].is_a?(Array)
178
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
179
+ end
180
+ elsif !attributes[attribute_map[key]].nil?
181
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
182
+ end
183
+ end
184
+ new(transformed_hash)
185
+ end
186
+
187
+ # Returns the object in the form of hash
188
+ # @return [Hash] Returns the object in the form of hash
189
+ def to_hash
190
+ hash = {}
191
+ self.class.attribute_map.each_pair do |attr, param|
192
+ value = self.send(attr)
193
+ if value.nil?
194
+ is_nullable = self.class.openapi_nullable.include?(attr)
195
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
196
+ end
197
+
198
+ hash[param] = _to_hash(value)
199
+ end
200
+ hash
201
+ end
202
+
203
+ end
204
+
205
+ end
@@ -0,0 +1,166 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ class RetryPost207Response < ApiModelBase
18
+ attr_accessor :message
19
+
20
+ # Summary of why the retry did not fully succeed.
21
+ attr_accessor :error
22
+
23
+ attr_accessor :post
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'message' => :'message',
29
+ :'error' => :'error',
30
+ :'post' => :'post'
31
+ }
32
+ end
33
+
34
+ # Returns attribute mapping this model knows about
35
+ def self.acceptable_attribute_map
36
+ attribute_map
37
+ end
38
+
39
+ # Returns all the JSON keys this model knows about
40
+ def self.acceptable_attributes
41
+ acceptable_attribute_map.values
42
+ end
43
+
44
+ # Attribute type mapping.
45
+ def self.openapi_types
46
+ {
47
+ :'message' => :'String',
48
+ :'error' => :'String',
49
+ :'post' => :'Post'
50
+ }
51
+ end
52
+
53
+ # List of attributes with nullable: true
54
+ def self.openapi_nullable
55
+ Set.new([
56
+ ])
57
+ end
58
+
59
+ # Initializes the object
60
+ # @param [Hash] attributes Model attributes in the form of hash
61
+ def initialize(attributes = {})
62
+ if (!attributes.is_a?(Hash))
63
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RetryPost207Response` initialize method"
64
+ end
65
+
66
+ # check to see if the attribute exists and convert string to symbol for hash key
67
+ acceptable_attribute_map = self.class.acceptable_attribute_map
68
+ attributes = attributes.each_with_object({}) { |(k, v), h|
69
+ if (!acceptable_attribute_map.key?(k.to_sym))
70
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RetryPost207Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
71
+ end
72
+ h[k.to_sym] = v
73
+ }
74
+
75
+ if attributes.key?(:'message')
76
+ self.message = attributes[:'message']
77
+ end
78
+
79
+ if attributes.key?(:'error')
80
+ self.error = attributes[:'error']
81
+ end
82
+
83
+ if attributes.key?(:'post')
84
+ self.post = attributes[:'post']
85
+ end
86
+ end
87
+
88
+ # Show invalid properties with the reasons. Usually used together with valid?
89
+ # @return Array for valid properties with the reasons
90
+ def list_invalid_properties
91
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
92
+ invalid_properties = Array.new
93
+ invalid_properties
94
+ end
95
+
96
+ # Check to see if the all the properties in the model are valid
97
+ # @return true if the model is valid
98
+ def valid?
99
+ warn '[DEPRECATED] the `valid?` method is obsolete'
100
+ true
101
+ end
102
+
103
+ # Checks equality by comparing each attribute.
104
+ # @param [Object] Object to be compared
105
+ def ==(o)
106
+ return true if self.equal?(o)
107
+ self.class == o.class &&
108
+ message == o.message &&
109
+ error == o.error &&
110
+ post == o.post
111
+ end
112
+
113
+ # @see the `==` method
114
+ # @param [Object] Object to be compared
115
+ def eql?(o)
116
+ self == o
117
+ end
118
+
119
+ # Calculates hash code according to all attributes.
120
+ # @return [Integer] Hash code
121
+ def hash
122
+ [message, error, post].hash
123
+ end
124
+
125
+ # Builds the object from hash
126
+ # @param [Hash] attributes Model attributes in the form of hash
127
+ # @return [Object] Returns the model itself
128
+ def self.build_from_hash(attributes)
129
+ return nil unless attributes.is_a?(Hash)
130
+ attributes = attributes.transform_keys(&:to_sym)
131
+ transformed_hash = {}
132
+ openapi_types.each_pair do |key, type|
133
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
134
+ transformed_hash["#{key}"] = nil
135
+ elsif type =~ /\AArray<(.*)>/i
136
+ # check to ensure the input is an array given that the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[attribute_map[key]].is_a?(Array)
139
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
140
+ end
141
+ elsif !attributes[attribute_map[key]].nil?
142
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
143
+ end
144
+ end
145
+ new(transformed_hash)
146
+ end
147
+
148
+ # Returns the object in the form of hash
149
+ # @return [Hash] Returns the object in the form of hash
150
+ def to_hash
151
+ hash = {}
152
+ self.class.attribute_map.each_pair do |attr, param|
153
+ value = self.send(attr)
154
+ if value.nil?
155
+ is_nullable = self.class.openapi_nullable.include?(attr)
156
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
157
+ end
158
+
159
+ hash[param] = _to_hash(value)
160
+ end
161
+ hash
162
+ end
163
+
164
+ end
165
+
166
+ end
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Zernio
14
- VERSION = '0.0.845'
14
+ VERSION = '0.0.846'
15
15
  end
data/lib/zernio-sdk.rb CHANGED
@@ -1134,6 +1134,8 @@ require 'zernio-sdk/models/post_analytics'
1134
1134
  require 'zernio-sdk/models/post_create_response'
1135
1135
  require 'zernio-sdk/models/post_delete_response'
1136
1136
  require 'zernio-sdk/models/post_get_response'
1137
+ require 'zernio-sdk/models/post_publish_incomplete_response'
1138
+ require 'zernio-sdk/models/post_publish_incomplete_response_platform_results_inner'
1137
1139
  require 'zernio-sdk/models/post_retry_response'
1138
1140
  require 'zernio-sdk/models/post_update_response'
1139
1141
  require 'zernio-sdk/models/post_user_id'
@@ -1217,6 +1219,7 @@ require 'zernio-sdk/models/respond_to_sms_registration_review200_response'
1217
1219
  require 'zernio-sdk/models/respond_to_sms_registration_review_request'
1218
1220
  require 'zernio-sdk/models/restore_workflow_version200_response'
1219
1221
  require 'zernio-sdk/models/restore_workflow_version200_response_workflow'
1222
+ require 'zernio-sdk/models/retry_post207_response'
1220
1223
  require 'zernio-sdk/models/retweet_post200_response'
1221
1224
  require 'zernio-sdk/models/retweet_post_request'
1222
1225
  require 'zernio-sdk/models/reuse_sms_registration_for_number200_response'
data/openapi.yaml CHANGED
@@ -7890,6 +7890,40 @@ components:
7890
7890
  type: array
7891
7891
  items:
7892
7892
  type: string
7893
+ PostPublishIncompleteResponse:
7894
+ type: object
7895
+ description: 'Body of the 207 returned by createPost and updatePost when the post was saved but the inline publish did not fully succeed. Read `post.status` to tell the three outcomes apart.'
7896
+ properties:
7897
+ post:
7898
+ $ref: '#/components/schemas/Post'
7899
+ message:
7900
+ type: string
7901
+ description: Human-readable summary of the publish outcome.
7902
+ error:
7903
+ type: string
7904
+ description: 'Present when no platform published. Absent on a partial success. Informational only; the per-platform detail is in `platformResults` and in `post.platforms[]`.'
7905
+ platformResults:
7906
+ type: array
7907
+ description: 'Per-platform outcome of the publish attempt. Omitted when the attempt aborted before producing per-platform results (for example the post was already being processed); read `post.platforms[]` in that case.'
7908
+ items:
7909
+ type: object
7910
+ required: [platform, status, error]
7911
+ properties:
7912
+ platform:
7913
+ type: string
7914
+ description: 'Platform slug, matching `post.platforms[].platform`.'
7915
+ status:
7916
+ type: string
7917
+ example: failed
7918
+ description: 'Per-platform status: pending, processing, published, failed, cancelled, uploading.'
7919
+ error:
7920
+ type: [string, "null"]
7921
+ description: 'Failure detail for this platform, or null when it did not fail.'
7922
+ warnings:
7923
+ type: array
7924
+ description: Advisory notices about the post that was still created. Absent when there are none.
7925
+ items:
7926
+ type: string
7893
7927
  PostDeleteResponse:
7894
7928
  type: object
7895
7929
  properties:
@@ -15394,6 +15428,58 @@ paths:
15394
15428
  isActive: true
15395
15429
  status: "pending"
15396
15430
  message: "Post scheduled successfully"
15431
+ '207':
15432
+ description: |
15433
+ The post was created, but the inline publish (`publishNow: true`, or a `scheduledFor` that is already due) did not fully succeed.
15434
+
15435
+ **207 is a 2xx status.** `fetch(...).ok` is `true` and axios' default `validateStatus` resolves, so a client that only checks for success will read this as a published post. Branch on the status code explicitly.
15436
+
15437
+ Tell the outcomes apart with `post.status`:
15438
+ - `partial` - at least one platform published and at least one failed. Per-platform detail is in `platformResults` and in `post.platforms[]`.
15439
+ - `failed` - no platform published. Terminal; nothing will be retried. Read `platforms[].errorMessage`, `platforms[].errorCategory` and `platforms[].errorSource` to decide whether the caller, the platform or Zernio must act.
15440
+ - `scheduled` - every platform hit a transient error and was reset to `pending`. Zernio retries automatically. This is **not** a failure and must not be surfaced to an end user as one.
15441
+
15442
+ A publish attempt that aborted before it started (for example the post was already being processed) reports none of the three: `post.status` is whatever it already was and `platformResults` is absent. Read `error` and `post.platforms[]`, which is always present.
15443
+ content:
15444
+ application/json:
15445
+ schema:
15446
+ $ref: '#/components/schemas/PostPublishIncompleteResponse'
15447
+ examples:
15448
+ allPlatformsFailed:
15449
+ summary: Every platform failed (post.status is failed, terminal)
15450
+ value:
15451
+ post:
15452
+ _id: "6a9e43f7fd28fe46ce033d98"
15453
+ content: "We just launched!"
15454
+ status: "failed"
15455
+ platforms:
15456
+ - platform: "facebook"
15457
+ status: "failed"
15458
+ errorMessage: "Facebook needs you to confirm your identity before you can publish as this Page. Open the Facebook mobile app, go to this Page, and complete the identity confirmation, then try again."
15459
+ errorCategory: "platform_rejected"
15460
+ errorSource: "platform"
15461
+ message: "Post created but publishing failed"
15462
+ error: "All platforms failed"
15463
+ platformResults:
15464
+ - platform: "facebook"
15465
+ status: "failed"
15466
+ error: "Facebook needs you to confirm your identity before you can publish as this Page. Open the Facebook mobile app, go to this Page, and complete the identity confirmation, then try again."
15467
+ temporaryErrorsWillRetry:
15468
+ summary: Transient errors (post.status is scheduled, Zernio retries)
15469
+ value:
15470
+ post:
15471
+ _id: "6a9e43f7fd28fe46ce033d99"
15472
+ content: "We just launched!"
15473
+ status: "scheduled"
15474
+ platforms:
15475
+ - platform: "instagram"
15476
+ status: "pending"
15477
+ message: "Post created but publishing failed"
15478
+ error: "Publishing encountered temporary errors. The post will be retried automatically."
15479
+ platformResults:
15480
+ - platform: "instagram"
15481
+ status: "pending"
15482
+ error: null
15397
15483
  '400':
15398
15484
  description: Validation error
15399
15485
  content:
@@ -15778,7 +15864,16 @@ paths:
15778
15864
  status: "scheduled"
15779
15865
  scheduledFor: "2024-11-02T14:00:00Z"
15780
15866
  '207':
15781
- description: Partial publish success
15867
+ description: |
15868
+ The post was updated, but the inline publish that followed did not fully succeed.
15869
+
15870
+ **207 is a 2xx status**, so `fetch(...).ok` is `true` and axios resolves. Branch on the status code explicitly.
15871
+
15872
+ Read `post.status`: `partial` (some platforms published), `failed` (none published, terminal), or `scheduled` (transient errors, platforms reset to `pending`, Zernio retries automatically and this is not a failure). `platformResults` is omitted when the attempt aborted before producing per-platform results; `post.platforms[]` is always present.
15873
+ content:
15874
+ application/json:
15875
+ schema:
15876
+ $ref: '#/components/schemas/PostPublishIncompleteResponse'
15782
15877
  '400':
15783
15878
  description: Invalid request
15784
15879
  content:
@@ -15969,7 +16064,24 @@ paths:
15969
16064
  platformPostId: "1234567890"
15970
16065
  platformPostUrl: "https://twitter.com/acme/status/1234567890"
15971
16066
  '207':
15972
- description: Partial success
16067
+ description: |
16068
+ The retry ran, but publishing did not fully succeed. Covers both a partial publish and a retry in which no platform published.
16069
+
16070
+ **207 is a 2xx status**, so `fetch(...).ok` is `true` and axios resolves. Branch on the status code explicitly.
16071
+
16072
+ This response carries no `platformResults`. Read `post.status` (`partial`, `failed`, or `scheduled` when transient errors will be retried automatically) and `post.platforms[]` for per-platform detail.
16073
+ content:
16074
+ application/json:
16075
+ schema:
16076
+ type: object
16077
+ properties:
16078
+ message:
16079
+ type: string
16080
+ error:
16081
+ type: string
16082
+ description: Summary of why the retry did not fully succeed.
16083
+ post:
16084
+ $ref: '#/components/schemas/Post'
15973
16085
  '400':
15974
16086
  description: Invalid state
15975
16087
  content:
@@ -0,0 +1,48 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Zernio::PostPublishIncompleteResponsePlatformResultsInner
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::PostPublishIncompleteResponsePlatformResultsInner do
21
+ #let(:instance) { Zernio::PostPublishIncompleteResponsePlatformResultsInner.new }
22
+
23
+ describe 'test an instance of PostPublishIncompleteResponsePlatformResultsInner' do
24
+ it 'should create an instance of PostPublishIncompleteResponsePlatformResultsInner' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::PostPublishIncompleteResponsePlatformResultsInner)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "platform"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "status"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "error"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ end
@@ -0,0 +1,60 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Zernio::PostPublishIncompleteResponse
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::PostPublishIncompleteResponse do
21
+ #let(:instance) { Zernio::PostPublishIncompleteResponse.new }
22
+
23
+ describe 'test an instance of PostPublishIncompleteResponse' do
24
+ it 'should create an instance of PostPublishIncompleteResponse' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::PostPublishIncompleteResponse)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "post"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "message"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "error"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ describe 'test attribute "platform_results"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ end
52
+ end
53
+
54
+ describe 'test attribute "warnings"' do
55
+ it 'should work' do
56
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
57
+ end
58
+ end
59
+
60
+ end
@@ -0,0 +1,48 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Zernio::RetryPost207Response
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::RetryPost207Response do
21
+ #let(:instance) { Zernio::RetryPost207Response.new }
22
+
23
+ describe 'test an instance of RetryPost207Response' do
24
+ it 'should create an instance of RetryPost207Response' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::RetryPost207Response)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "message"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "error"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "post"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zernio-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.845
4
+ version: 0.0.846
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
@@ -1225,6 +1225,8 @@ files:
1225
1225
  - docs/PostCreateResponse.md
1226
1226
  - docs/PostDeleteResponse.md
1227
1227
  - docs/PostGetResponse.md
1228
+ - docs/PostPublishIncompleteResponse.md
1229
+ - docs/PostPublishIncompleteResponsePlatformResultsInner.md
1228
1230
  - docs/PostRetryResponse.md
1229
1231
  - docs/PostUpdateResponse.md
1230
1232
  - docs/PostUserId.md
@@ -1313,6 +1315,7 @@ files:
1313
1315
  - docs/RespondToSmsRegistrationReviewRequest.md
1314
1316
  - docs/RestoreWorkflowVersion200Response.md
1315
1317
  - docs/RestoreWorkflowVersion200ResponseWorkflow.md
1318
+ - docs/RetryPost207Response.md
1316
1319
  - docs/RetweetPost200Response.md
1317
1320
  - docs/RetweetPostRequest.md
1318
1321
  - docs/ReuseSmsRegistrationForNumber200Response.md
@@ -3092,6 +3095,8 @@ files:
3092
3095
  - lib/zernio-sdk/models/post_create_response.rb
3093
3096
  - lib/zernio-sdk/models/post_delete_response.rb
3094
3097
  - lib/zernio-sdk/models/post_get_response.rb
3098
+ - lib/zernio-sdk/models/post_publish_incomplete_response.rb
3099
+ - lib/zernio-sdk/models/post_publish_incomplete_response_platform_results_inner.rb
3095
3100
  - lib/zernio-sdk/models/post_retry_response.rb
3096
3101
  - lib/zernio-sdk/models/post_update_response.rb
3097
3102
  - lib/zernio-sdk/models/post_user_id.rb
@@ -3175,6 +3180,7 @@ files:
3175
3180
  - lib/zernio-sdk/models/respond_to_sms_registration_review_request.rb
3176
3181
  - lib/zernio-sdk/models/restore_workflow_version200_response.rb
3177
3182
  - lib/zernio-sdk/models/restore_workflow_version200_response_workflow.rb
3183
+ - lib/zernio-sdk/models/retry_post207_response.rb
3178
3184
  - lib/zernio-sdk/models/retweet_post200_response.rb
3179
3185
  - lib/zernio-sdk/models/retweet_post_request.rb
3180
3186
  - lib/zernio-sdk/models/reuse_sms_registration_for_number200_response.rb
@@ -4928,6 +4934,8 @@ files:
4928
4934
  - spec/models/post_create_response_spec.rb
4929
4935
  - spec/models/post_delete_response_spec.rb
4930
4936
  - spec/models/post_get_response_spec.rb
4937
+ - spec/models/post_publish_incomplete_response_platform_results_inner_spec.rb
4938
+ - spec/models/post_publish_incomplete_response_spec.rb
4931
4939
  - spec/models/post_retry_response_spec.rb
4932
4940
  - spec/models/post_spec.rb
4933
4941
  - spec/models/post_update_response_spec.rb
@@ -5012,6 +5020,7 @@ files:
5012
5020
  - spec/models/respond_to_sms_registration_review_request_spec.rb
5013
5021
  - spec/models/restore_workflow_version200_response_spec.rb
5014
5022
  - spec/models/restore_workflow_version200_response_workflow_spec.rb
5023
+ - spec/models/retry_post207_response_spec.rb
5015
5024
  - spec/models/retweet_post200_response_spec.rb
5016
5025
  - spec/models/retweet_post_request_spec.rb
5017
5026
  - spec/models/reuse_sms_registration_for_number200_response_spec.rb
@@ -6274,6 +6283,7 @@ test_files:
6274
6283
  - spec/models/set_instagram_ice_breakers_request_ice_breakers_inner_spec.rb
6275
6284
  - spec/models/google_business_platform_data_event_schedule_start_date_spec.rb
6276
6285
  - spec/models/webhook_payload_comment_comment_ad_spec.rb
6286
+ - spec/models/post_publish_incomplete_response_platform_results_inner_spec.rb
6277
6287
  - spec/models/send_inbox_message_request_interactive_action_one_of8_parameters_spec.rb
6278
6288
  - spec/models/food_menu_item_spec.rb
6279
6289
  - spec/models/discord_platform_data_thread_from_message_spec.rb
@@ -7131,6 +7141,7 @@ test_files:
7131
7141
  - spec/models/create_broadcast_request_message_spec.rb
7132
7142
  - spec/models/send_inbox_message_request_interactive_action_one_of7_sections_inner_spec.rb
7133
7143
  - spec/models/x_article_entity_one_of_spec.rb
7144
+ - spec/models/post_publish_incomplete_response_spec.rb
7134
7145
  - spec/models/whats_app_carousel_component_cards_inner_spec.rb
7135
7146
  - spec/models/get_inbox_conversation_messages200_response_messages_inner_attachments_inner_spec.rb
7136
7147
  - spec/models/validate_post_request_spec.rb
@@ -7196,6 +7207,7 @@ test_files:
7196
7207
  - spec/models/generate_ad_previews_request_spec.rb
7197
7208
  - spec/models/create_discord_guild_role201_response_spec.rb
7198
7209
  - spec/models/create_whats_app_flow200_response_flow_spec.rb
7210
+ - spec/models/retry_post207_response_spec.rb
7199
7211
  - spec/models/get_broadcast200_response_spec.rb
7200
7212
  - spec/models/profile_delete_response_spec.rb
7201
7213
  - spec/models/money_spec.rb