late-sdk 0.0.815 → 0.0.817
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 +4 -4
- data/docs/ConnectApi.md +1 -1
- data/docs/WebhooksApi.md +1 -1
- data/lib/zernio-sdk/api/connect_api.rb +2 -2
- data/lib/zernio-sdk/api/webhooks_api.rb +2 -2
- data/lib/zernio-sdk/models/update_ad_request_creative.rb +1 -1
- data/lib/zernio-sdk/version.rb +1 -1
- data/openapi.yaml +12 -10
- data/spec/api/connect_api_spec.rb +1 -1
- data/spec/api/webhooks_api_spec.rb +1 -1
- data/zernio-sdk-0.0.817.gem +0 -0
- metadata +2 -2
- data/zernio-sdk-0.0.815.gem +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d29b0cbbf50db66d905333a2e8fab599ca23fecd7969776b71fb4d807438b96f
|
|
4
|
+
data.tar.gz: 438af5ae30990214dd632d4755009c50bc48515c6a9dbb67ded13fbfc378d0f0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0bb4b19f6b93a0ba4bdb64c50fa4b1dc5492abb6b34053eb8bd84a15ec1645ded030723a811d066825d7f01213bbbabc8909c29040f586770235d4e69055c71c
|
|
7
|
+
data.tar.gz: c51f482669a348335381d23a6a1d995359a208959bd0e35c978936201fa22cf6d3492ed771869cacce6b2c409e512e98c9e47a530ed2716756668d0a6e7bdda6
|
data/docs/ConnectApi.md
CHANGED
|
@@ -1279,7 +1279,7 @@ end
|
|
|
1279
1279
|
|
|
1280
1280
|
Get pending OAuth data
|
|
1281
1281
|
|
|
1282
|
-
Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook
|
|
1282
|
+
Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Google Business locations, Slack channels, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook and other platforms pass selection state directly via URL query params on the redirect (`profileId`, `tempToken`, `step`), no pending record is created, so this endpoint will return 404 for those flows. Use the platform-specific selection endpoint instead (e.g. `/v1/connect/whatsapp/select-phone-number`). Reading the token does not consume it, so this fetch is repeatable until the token expires 1 hour after issuance. Completing the platform selection deletes the pending record, so the token stops working from then on. No authentication required.
|
|
1283
1283
|
|
|
1284
1284
|
### Examples
|
|
1285
1285
|
|
data/docs/WebhooksApi.md
CHANGED
|
@@ -304,7 +304,7 @@ This endpoint does not need any parameter.
|
|
|
304
304
|
|
|
305
305
|
Redeliver a webhook event
|
|
306
306
|
|
|
307
|
-
Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a
|
|
307
|
+
Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a 422. Replays run the same resource-group checks as live delivery, against both the key's groups and the subscription's `disabledResourceGroups`.
|
|
308
308
|
|
|
309
309
|
### Examples
|
|
310
310
|
|
|
@@ -1244,7 +1244,7 @@ module Zernio
|
|
|
1244
1244
|
end
|
|
1245
1245
|
|
|
1246
1246
|
# Get pending OAuth data
|
|
1247
|
-
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook
|
|
1247
|
+
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Google Business locations, Slack channels, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook and other platforms pass selection state directly via URL query params on the redirect (`profileId`, `tempToken`, `step`), no pending record is created, so this endpoint will return 404 for those flows. Use the platform-specific selection endpoint instead (e.g. `/v1/connect/whatsapp/select-phone-number`). Reading the token does not consume it, so this fetch is repeatable until the token expires 1 hour after issuance. Completing the platform selection deletes the pending record, so the token stops working from then on. No authentication required.
|
|
1248
1248
|
# @param token [String] The pending data token from the OAuth redirect URL (pendingDataToken parameter)
|
|
1249
1249
|
# @param [Hash] opts the optional parameters
|
|
1250
1250
|
# @return [GetPendingOAuthData200Response]
|
|
@@ -1254,7 +1254,7 @@ module Zernio
|
|
|
1254
1254
|
end
|
|
1255
1255
|
|
|
1256
1256
|
# Get pending OAuth data
|
|
1257
|
-
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook
|
|
1257
|
+
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Google Business locations, Slack channels, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook and other platforms pass selection state directly via URL query params on the redirect (`profileId`, `tempToken`, `step`), no pending record is created, so this endpoint will return 404 for those flows. Use the platform-specific selection endpoint instead (e.g. `/v1/connect/whatsapp/select-phone-number`). Reading the token does not consume it, so this fetch is repeatable until the token expires 1 hour after issuance. Completing the platform selection deletes the pending record, so the token stops working from then on. No authentication required.
|
|
1258
1258
|
# @param token [String] The pending data token from the OAuth redirect URL (pendingDataToken parameter)
|
|
1259
1259
|
# @param [Hash] opts the optional parameters
|
|
1260
1260
|
# @return [Array<(GetPendingOAuthData200Response, Integer, Hash)>] GetPendingOAuthData200Response data, response status code and response headers
|
|
@@ -333,7 +333,7 @@ module Zernio
|
|
|
333
333
|
end
|
|
334
334
|
|
|
335
335
|
# Redeliver a webhook event
|
|
336
|
-
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a
|
|
336
|
+
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a 422. Replays run the same resource-group checks as live delivery, against both the key's groups and the subscription's `disabledResourceGroups`.
|
|
337
337
|
# @param redeliver_webhook_event_request [RedeliverWebhookEventRequest]
|
|
338
338
|
# @param [Hash] opts the optional parameters
|
|
339
339
|
# @return [UnpublishPost200Response]
|
|
@@ -343,7 +343,7 @@ module Zernio
|
|
|
343
343
|
end
|
|
344
344
|
|
|
345
345
|
# Redeliver a webhook event
|
|
346
|
-
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a
|
|
346
|
+
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a 422. Replays run the same resource-group checks as live delivery, against both the key's groups and the subscription's `disabledResourceGroups`.
|
|
347
347
|
# @param redeliver_webhook_event_request [RedeliverWebhookEventRequest]
|
|
348
348
|
# @param [Hash] opts the optional parameters
|
|
349
349
|
# @return [Array<(UnpublishPost200Response, Integer, Hash)>] UnpublishPost200Response data, response status code and response headers
|
|
@@ -14,7 +14,7 @@ require 'date'
|
|
|
14
14
|
require 'time'
|
|
15
15
|
|
|
16
16
|
module Zernio
|
|
17
|
-
# Replace or patch the ad's creative. Meta, TikTok, and LinkedIn. - **Meta**: patch-style. Pass any subset — fields you omit are preserved from the live creative, including media (`image_hash`/`video_id` are reused, no re-upload) and `url_tags`. Sending the full set (`headline`, `body`, `callToAction`, `linkUrl`, `imageUrl`) rebuilds the creative from scratch instead. Partial patching reads the live `object_story_spec`, which Meta strips on SHARE / page-post / dark / asset_feed creatives — those return 422 asking for the full set. A `videoUrl`/`videoId` on an image creative is a type change and also needs the full set. `existingCreativeId` repoints the ad at a creative from GET /v1/ads/creatives and ignores every other field. Meta creatives are immutable, so any change creates a new creative and repoints the ad; the old creative is retained on the ad account for historical reporting. - **TikTok**: patch-style. Pass any subset; `headline` is ignored (TikTok creatives have no headline slot). `body` becomes the in-feed `ad_text`; `linkUrl` becomes `landing_page_url`; `videoUrl` triggers a fresh upload. `description`, `videoId` and `existingCreativeId` are Meta-only and return 400. - **LinkedIn**:
|
|
17
|
+
# Replace or patch the ad's creative. Meta, TikTok, and LinkedIn. - **Meta**: patch-style. Pass any subset — fields you omit are preserved from the live creative, including media (`image_hash`/`video_id` are reused, no re-upload) and `url_tags`. Sending the full set (`headline`, `body`, `callToAction`, `linkUrl`, `imageUrl`) rebuilds the creative from scratch instead. Partial patching reads the live `object_story_spec`, which Meta strips on SHARE / page-post / dark / asset_feed creatives — those return 422 asking for the full set. A `videoUrl`/`videoId` on an image creative is a type change and also needs the full set. `existingCreativeId` repoints the ad at a creative from GET /v1/ads/creatives and ignores every other field. Meta creatives are immutable, so any change creates a new creative and repoints the ad; the old creative is retained on the ad account for historical reporting. - **TikTok**: patch-style. Pass any subset; `headline` is ignored (TikTok creatives have no headline slot). `body` becomes the in-feed `ad_text`; `linkUrl` becomes `landing_page_url`; `videoUrl` triggers a fresh upload. `description`, `videoId` and `existingCreativeId` are Meta-only and return 400. - **LinkedIn**: requires new media (image via `imageUrl` or video via `videoUrl`); a text-only creative update returns 400. Uploads the media, creates a new inline media creative on the same campaign, and pauses the old creative (best-effort). The old creative is retained for historical reporting. `videoId` and `existingCreativeId` are Meta-only and return 400.
|
|
18
18
|
class UpdateAdRequestCreative < ApiModelBase
|
|
19
19
|
# Meta and LinkedIn (TikTok has no headline slot)
|
|
20
20
|
attr_accessor :headline
|
data/lib/zernio-sdk/version.rb
CHANGED
data/openapi.yaml
CHANGED
|
@@ -20508,9 +20508,9 @@ paths:
|
|
|
20508
20508
|
description: |
|
|
20509
20509
|
Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL.
|
|
20510
20510
|
|
|
20511
|
-
**Scope**: This endpoint is used for LinkedIn organizations, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook
|
|
20511
|
+
**Scope**: This endpoint is used for LinkedIn organizations, Google Business locations, Slack channels, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook and other platforms pass selection state directly via URL query params on the redirect (`profileId`, `tempToken`, `step`), no pending record is created, so this endpoint will return 404 for those flows. Use the platform-specific selection endpoint instead (e.g. `/v1/connect/whatsapp/select-phone-number`).
|
|
20512
20512
|
|
|
20513
|
-
|
|
20513
|
+
Reading the token does not consume it, so this fetch is repeatable until the token expires 1 hour after issuance. Completing the platform selection deletes the pending record, so the token stops working from then on. No authentication required.
|
|
20514
20514
|
parameters:
|
|
20515
20515
|
- name: token
|
|
20516
20516
|
in: query
|
|
@@ -25697,7 +25697,7 @@ paths:
|
|
|
25697
25697
|
emitted, not the current state of the resource.
|
|
25698
25698
|
|
|
25699
25699
|
Only deliveries inside the 30-day log retention window can be replayed; past that
|
|
25700
|
-
the payload is gone and the request fails with a
|
|
25700
|
+
the payload is gone and the request fails with a 422. Replays run the same
|
|
25701
25701
|
resource-group checks as live delivery, against both the key's groups and the
|
|
25702
25702
|
subscription's `disabledResourceGroups`.
|
|
25703
25703
|
security:
|
|
@@ -25736,10 +25736,11 @@ paths:
|
|
|
25736
25736
|
example:
|
|
25737
25737
|
success: true
|
|
25738
25738
|
message: "Webhook re-delivered"
|
|
25739
|
-
'400': { description: 'webhookId or eventId missing or empty' }
|
|
25739
|
+
'400': { description: 'webhookId or eventId missing or empty, or the subscription has no URL configured' }
|
|
25740
25740
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
25741
25741
|
'403': { $ref: '#/components/responses/ResourceGroupForbidden' }
|
|
25742
|
-
'
|
|
25742
|
+
'404': { description: 'Webhook subscription not found' }
|
|
25743
|
+
'422': { description: 'Original payload not replayable: no delivery matches this event inside the 30-day retention window, or the stored payload is truncated or not valid JSON' }
|
|
25743
25744
|
'502':
|
|
25744
25745
|
description: |
|
|
25745
25746
|
Re-delivery was attempted but your endpoint errored again. The attempt is still
|
|
@@ -41662,10 +41663,11 @@ paths:
|
|
|
41662
41663
|
have no headline slot). `body` becomes the in-feed `ad_text`; `linkUrl` becomes
|
|
41663
41664
|
`landing_page_url`; `videoUrl` triggers a fresh upload. `description`, `videoId`
|
|
41664
41665
|
and `existingCreativeId` are Meta-only and return 400.
|
|
41665
|
-
- **LinkedIn**:
|
|
41666
|
-
|
|
41667
|
-
creative
|
|
41668
|
-
|
|
41666
|
+
- **LinkedIn**: requires new media (image via `imageUrl` or video via `videoUrl`);
|
|
41667
|
+
a text-only creative update returns 400. Uploads the media, creates a new inline
|
|
41668
|
+
media creative on the same campaign, and pauses the old creative (best-effort).
|
|
41669
|
+
The old creative is retained for historical reporting. `videoId` and
|
|
41670
|
+
`existingCreativeId` are Meta-only and return 400.
|
|
41669
41671
|
properties:
|
|
41670
41672
|
headline: { type: string, description: "Meta and LinkedIn (TikTok has no headline slot)" }
|
|
41671
41673
|
body: { type: string }
|
|
@@ -41688,7 +41690,7 @@ paths:
|
|
|
41688
41690
|
ad: { $ref: '#/components/schemas/Ad' }
|
|
41689
41691
|
message: { type: string }
|
|
41690
41692
|
'400':
|
|
41691
|
-
description: Invalid status transition
|
|
41693
|
+
description: 'Invalid status transition, budget below minimum, or a LinkedIn creative update without imageUrl or videoUrl'
|
|
41692
41694
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
41693
41695
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
41694
41696
|
'501': { description: "targeting or creative not supported on the platform (supported on Meta, TikTok, and LinkedIn)" }
|
|
@@ -257,7 +257,7 @@ describe 'ConnectApi' do
|
|
|
257
257
|
|
|
258
258
|
# unit tests for get_pending_o_auth_data
|
|
259
259
|
# Get pending OAuth data
|
|
260
|
-
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook
|
|
260
|
+
# Fetch pending OAuth data for headless mode using the pendingDataToken from the redirect URL. **Scope**: This endpoint is used for LinkedIn organizations, Google Business locations, Slack channels, Snapchat profiles, and Pinterest boards, where the selection list is too large to fit in URL params. The redirect carries a `pendingDataToken` instead of the full payload; the response includes the corresponding selection array (e.g. `boards` for Pinterest). WhatsApp, Facebook and other platforms pass selection state directly via URL query params on the redirect (`profileId`, `tempToken`, `step`), no pending record is created, so this endpoint will return 404 for those flows. Use the platform-specific selection endpoint instead (e.g. `/v1/connect/whatsapp/select-phone-number`). Reading the token does not consume it, so this fetch is repeatable until the token expires 1 hour after issuance. Completing the platform selection deletes the pending record, so the token stops working from then on. No authentication required.
|
|
261
261
|
# @param token The pending data token from the OAuth redirect URL (pendingDataToken parameter)
|
|
262
262
|
# @param [Hash] opts the optional parameters
|
|
263
263
|
# @return [GetPendingOAuthData200Response]
|
|
@@ -86,7 +86,7 @@ describe 'WebhooksApi' do
|
|
|
86
86
|
|
|
87
87
|
# unit tests for redeliver_webhook_event
|
|
88
88
|
# Redeliver a webhook event
|
|
89
|
-
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a
|
|
89
|
+
# Replay a past delivery: the original payload is re-sent, byte for byte, to the subscription's current URL. The original event ID is preserved so your endpoint can dedupe, and the replay is recorded as a fresh attempt, so it shows up in `GET /v1/webhooks/logs` next to the delivery it replays. Both `webhookId` and `eventId` come from a row of `GET /v1/webhooks/logs`. Because the stored payload is replayed as-is, a redelivery reflects the event as it was emitted, not the current state of the resource. Only deliveries inside the 30-day log retention window can be replayed; past that the payload is gone and the request fails with a 422. Replays run the same resource-group checks as live delivery, against both the key's groups and the subscription's `disabledResourceGroups`.
|
|
90
90
|
# @param redeliver_webhook_event_request
|
|
91
91
|
# @param [Hash] opts the optional parameters
|
|
92
92
|
# @return [UnpublishPost200Response]
|
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: late-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.817
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- OpenAPI-Generator
|
|
@@ -5557,7 +5557,7 @@ files:
|
|
|
5557
5557
|
- spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
|
|
5558
5558
|
- spec/models/you_tube_video_retention_response_spec.rb
|
|
5559
5559
|
- spec/spec_helper.rb
|
|
5560
|
-
- zernio-sdk-0.0.
|
|
5560
|
+
- zernio-sdk-0.0.817.gem
|
|
5561
5561
|
- zernio-sdk.gemspec
|
|
5562
5562
|
homepage: https://openapi-generator.tech
|
|
5563
5563
|
licenses:
|
data/zernio-sdk-0.0.815.gem
DELETED
|
Binary file
|