late-sdk 0.0.726 → 0.0.728

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 (60) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +19 -0
  3. data/docs/AttachNumberToSipTrunk200Response.md +22 -0
  4. data/docs/AttachNumberToSipTrunkRequest.md +18 -0
  5. data/docs/CreatePostRequest.md +1 -1
  6. data/docs/CreateSipTrunk201Response.md +34 -0
  7. data/docs/CreateSipTrunk201ResponseTermination.md +20 -0
  8. data/docs/CreateSipTrunkRequest.md +24 -0
  9. data/docs/DetachNumberFromSipTrunk200Response.md +20 -0
  10. data/docs/GetPhoneNumber200ResponsePhoneNumber.md +3 -1
  11. data/docs/GetSipTrunk200Response.md +34 -0
  12. data/docs/GetSipTrunk200ResponseNumbersInner.md +20 -0
  13. data/docs/LinkedInPlatformData.md +1 -1
  14. data/docs/ListPhoneNumbers200ResponseNumbersInner.md +2 -0
  15. data/docs/ListSipTrunks200Response.md +20 -0
  16. data/docs/ListSipTrunks200ResponseTrunksInner.md +32 -0
  17. data/docs/ListSipTrunks200ResponseTrunksInnerTermination.md +20 -0
  18. data/docs/PostsApi.md +1 -1
  19. data/docs/RotateSipTrunkCredentials200Response.md +20 -0
  20. data/docs/VoiceApi.md +485 -0
  21. data/lib/zernio-sdk/api/posts_api.rb +2 -2
  22. data/lib/zernio-sdk/api/voice_api.rb +447 -0
  23. data/lib/zernio-sdk/models/attach_number_to_sip_trunk200_response.rb +165 -0
  24. data/lib/zernio-sdk/models/attach_number_to_sip_trunk_request.rb +165 -0
  25. data/lib/zernio-sdk/models/create_post_request.rb +1 -1
  26. data/lib/zernio-sdk/models/create_sip_trunk201_response.rb +255 -0
  27. data/lib/zernio-sdk/models/create_sip_trunk201_response_termination.rb +158 -0
  28. data/lib/zernio-sdk/models/create_sip_trunk_request.rb +283 -0
  29. data/lib/zernio-sdk/models/detach_number_from_sip_trunk200_response.rb +157 -0
  30. data/lib/zernio-sdk/models/get_phone_number200_response_phone_number.rb +15 -4
  31. data/lib/zernio-sdk/models/get_sip_trunk200_response.rb +256 -0
  32. data/lib/zernio-sdk/models/get_sip_trunk200_response_numbers_inner.rb +157 -0
  33. data/lib/zernio-sdk/models/linked_in_platform_data.rb +1 -1
  34. data/lib/zernio-sdk/models/list_phone_numbers200_response_numbers_inner.rb +12 -1
  35. data/lib/zernio-sdk/models/list_sip_trunks200_response.rb +159 -0
  36. data/lib/zernio-sdk/models/list_sip_trunks200_response_trunks_inner.rb +245 -0
  37. data/lib/zernio-sdk/models/list_sip_trunks200_response_trunks_inner_termination.rb +156 -0
  38. data/lib/zernio-sdk/models/rotate_sip_trunk_credentials200_response.rb +156 -0
  39. data/lib/zernio-sdk/version.rb +1 -1
  40. data/lib/zernio-sdk.rb +12 -0
  41. data/openapi.yaml +271 -3
  42. data/spec/api/posts_api_spec.rb +1 -1
  43. data/spec/api/voice_api_spec.rb +82 -0
  44. data/spec/models/attach_number_to_sip_trunk200_response_spec.rb +48 -0
  45. data/spec/models/attach_number_to_sip_trunk_request_spec.rb +36 -0
  46. data/spec/models/create_sip_trunk201_response_spec.rb +88 -0
  47. data/spec/models/create_sip_trunk201_response_termination_spec.rb +42 -0
  48. data/spec/models/create_sip_trunk_request_spec.rb +58 -0
  49. data/spec/models/detach_number_from_sip_trunk200_response_spec.rb +42 -0
  50. data/spec/models/get_phone_number200_response_phone_number_spec.rb +6 -0
  51. data/spec/models/get_sip_trunk200_response_numbers_inner_spec.rb +42 -0
  52. data/spec/models/get_sip_trunk200_response_spec.rb +88 -0
  53. data/spec/models/list_phone_numbers200_response_numbers_inner_spec.rb +6 -0
  54. data/spec/models/list_sip_trunks200_response_spec.rb +42 -0
  55. data/spec/models/list_sip_trunks200_response_trunks_inner_spec.rb +82 -0
  56. data/spec/models/list_sip_trunks200_response_trunks_inner_termination_spec.rb +42 -0
  57. data/spec/models/rotate_sip_trunk_credentials200_response_spec.rb +42 -0
  58. data/zernio-sdk-0.0.728.gem +0 -0
  59. metadata +51 -3
  60. data/zernio-sdk-0.0.726.gem +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 389c2a6db9bcb1e1bfe4682df90c5ef3f73f8b23ee2bbb4a418ff43737c991c6
4
- data.tar.gz: 6a98465ee15e882eda3f4a8ce86d943f0792388649bed0683535bd2610940128
3
+ metadata.gz: 76301795289f7457e866f27bce4a8a336973906811c9b1a7824705a08bd6c862
4
+ data.tar.gz: f80e84b2b0cca16c8ca545402652e9ad5a2e9ebcf12e6dc43b784e767d697214
5
5
  SHA512:
6
- metadata.gz: 94468de2ca9483929a9a94a401ea2dadb816e47fbc6517901a1f9d566be02d4d3b2313ec219bb7cb763f6262e13749b11a668f7f8d027a4cb72122e0903c640c
7
- data.tar.gz: 80f6f893e201edb178ced529fb411564b0740fd0256024e777bcb481f065cdd7fe653f86b95c827e7eeb674614fa1b2b24ff42a854f614944cbb212f2c24220f
6
+ metadata.gz: c551585639023783dc67c5d74ed06c12361b9f650763f4c3fff369c076c8d54e6bcb061699c2809ce3de61778abf80fcc3517d93193c3c3b93730f33044a0464
7
+ data.tar.gz: 23d2c7159be0e5e10a1c7126fdfb1db1828a1a6cfe16093e076ea5f4622fac6f7444af0517ba94e45aba597ddce373cec37e251e837ef65b74227091d76fdf65
data/README.md CHANGED
@@ -523,16 +523,23 @@ Class | Method | HTTP request | Description
523
523
  *Zernio::VerifyApi* | [**check_verification**](docs/VerifyApi.md#check_verification) | **POST** /v1/verify/verifications/{verificationId}/check | Check a verification code
524
524
  *Zernio::VerifyApi* | [**create_verification**](docs/VerifyApi.md#create_verification) | **POST** /v1/verify/verifications | Send a verification code
525
525
  *Zernio::VerifyApi* | [**get_verification**](docs/VerifyApi.md#get_verification) | **GET** /v1/verify/verifications/{verificationId} | Get a verification
526
+ *Zernio::VoiceApi* | [**attach_number_to_sip_trunk**](docs/VoiceApi.md#attach_number_to_sip_trunk) | **POST** /v1/phone-numbers/{id}/sip-trunk | Attach a number to a SIP trunk
527
+ *Zernio::VoiceApi* | [**create_sip_trunk**](docs/VoiceApi.md#create_sip_trunk) | **POST** /v1/phone-numbers/sip-trunks | Create a SIP trunk
526
528
  *Zernio::VoiceApi* | [**create_voice_call**](docs/VoiceApi.md#create_voice_call) | **POST** /v1/voice/calls | Place an outbound phone call
527
529
  *Zernio::VoiceApi* | [**create_voice_web_session**](docs/VoiceApi.md#create_voice_web_session) | **POST** /v1/voice/calls/web | Mint a browser softphone session
530
+ *Zernio::VoiceApi* | [**delete_sip_trunk**](docs/VoiceApi.md#delete_sip_trunk) | **DELETE** /v1/phone-numbers/sip-trunks/{id} | Delete a SIP trunk
531
+ *Zernio::VoiceApi* | [**detach_number_from_sip_trunk**](docs/VoiceApi.md#detach_number_from_sip_trunk) | **DELETE** /v1/phone-numbers/{id}/sip-trunk | Detach a number from its SIP trunk
528
532
  *Zernio::VoiceApi* | [**dial_voice_web_call**](docs/VoiceApi.md#dial_voice_web_call) | **POST** /v1/voice/calls/web/dial | Dial from the browser softphone
529
533
  *Zernio::VoiceApi* | [**disable_voice_on_number**](docs/VoiceApi.md#disable_voice_on_number) | **DELETE** /v1/phone-numbers/{id}/voice | Disable phone calling on a number
530
534
  *Zernio::VoiceApi* | [**enable_voice_on_number**](docs/VoiceApi.md#enable_voice_on_number) | **POST** /v1/phone-numbers/{id}/voice | Enable phone calling on a number
531
535
  *Zernio::VoiceApi* | [**end_voice_call**](docs/VoiceApi.md#end_voice_call) | **POST** /v1/voice/calls/{id}/end | Hang up a live call
536
+ *Zernio::VoiceApi* | [**get_sip_trunk**](docs/VoiceApi.md#get_sip_trunk) | **GET** /v1/phone-numbers/sip-trunks/{id} | Get a SIP trunk
532
537
  *Zernio::VoiceApi* | [**get_voice_call**](docs/VoiceApi.md#get_voice_call) | **GET** /v1/voice/calls/{id} | Get a phone call
533
538
  *Zernio::VoiceApi* | [**get_voice_call_estimate**](docs/VoiceApi.md#get_voice_call_estimate) | **GET** /v1/voice/calls/estimate | Estimate call cost
534
539
  *Zernio::VoiceApi* | [**get_voice_call_recording**](docs/VoiceApi.md#get_voice_call_recording) | **GET** /v1/voice/calls/{id}/recording | Get a call recording
540
+ *Zernio::VoiceApi* | [**list_sip_trunks**](docs/VoiceApi.md#list_sip_trunks) | **GET** /v1/phone-numbers/sip-trunks | List SIP trunks
535
541
  *Zernio::VoiceApi* | [**list_voice_calls**](docs/VoiceApi.md#list_voice_calls) | **GET** /v1/voice/calls | List phone calls
542
+ *Zernio::VoiceApi* | [**rotate_sip_trunk_credentials**](docs/VoiceApi.md#rotate_sip_trunk_credentials) | **POST** /v1/phone-numbers/sip-trunks/{id}/rotate-credentials | Rotate a SIP trunk's password
536
543
  *Zernio::VoiceApi* | [**transfer_voice_call**](docs/VoiceApi.md#transfer_voice_call) | **POST** /v1/voice/calls/{id}/transfer | Blind-transfer a live call
537
544
  *Zernio::WebhooksApi* | [**create_webhook_settings**](docs/WebhooksApi.md#create_webhook_settings) | **POST** /v1/webhooks/settings | Create webhook
538
545
  *Zernio::WebhooksApi* | [**delete_webhook_settings**](docs/WebhooksApi.md#delete_webhook_settings) | **DELETE** /v1/webhooks/settings | Delete webhook
@@ -711,6 +718,8 @@ Class | Method | HTTP request | Description
711
718
  - [Zernio::AssignGoogleBusinessLocation200Response](docs/AssignGoogleBusinessLocation200Response.md)
712
719
  - [Zernio::AssignGoogleBusinessLocation200ResponseAccount](docs/AssignGoogleBusinessLocation200ResponseAccount.md)
713
720
  - [Zernio::AssignGoogleBusinessLocationRequest](docs/AssignGoogleBusinessLocationRequest.md)
721
+ - [Zernio::AttachNumberToSipTrunk200Response](docs/AttachNumberToSipTrunk200Response.md)
722
+ - [Zernio::AttachNumberToSipTrunkRequest](docs/AttachNumberToSipTrunkRequest.md)
714
723
  - [Zernio::BatchGetGoogleBusinessReviews200Response](docs/BatchGetGoogleBusinessReviews200Response.md)
715
724
  - [Zernio::BatchGetGoogleBusinessReviews200ResponseLocationReviewsInner](docs/BatchGetGoogleBusinessReviews200ResponseLocationReviewsInner.md)
716
725
  - [Zernio::BatchGetGoogleBusinessReviewsRequest](docs/BatchGetGoogleBusinessReviewsRequest.md)
@@ -912,6 +921,9 @@ Class | Method | HTTP request | Description
912
921
  - [Zernio::CreateSequenceRequestStepsInner](docs/CreateSequenceRequestStepsInner.md)
913
922
  - [Zernio::CreateSequenceRequestStepsInnerTemplate](docs/CreateSequenceRequestStepsInnerTemplate.md)
914
923
  - [Zernio::CreateSequenceRequestStepsInnerTemplateVariableMappingValue](docs/CreateSequenceRequestStepsInnerTemplateVariableMappingValue.md)
924
+ - [Zernio::CreateSipTrunk201Response](docs/CreateSipTrunk201Response.md)
925
+ - [Zernio::CreateSipTrunk201ResponseTermination](docs/CreateSipTrunk201ResponseTermination.md)
926
+ - [Zernio::CreateSipTrunkRequest](docs/CreateSipTrunkRequest.md)
915
927
  - [Zernio::CreateSmsSenderId200Response](docs/CreateSmsSenderId200Response.md)
916
928
  - [Zernio::CreateSmsSenderIdRequest](docs/CreateSmsSenderIdRequest.md)
917
929
  - [Zernio::CreateStandaloneAd200Response](docs/CreateStandaloneAd200Response.md)
@@ -999,6 +1011,7 @@ Class | Method | HTTP request | Description
999
1011
  - [Zernio::DeleteSmsSenderId200Response](docs/DeleteSmsSenderId200Response.md)
1000
1012
  - [Zernio::DeleteValueRuleSet200Response](docs/DeleteValueRuleSet200Response.md)
1001
1013
  - [Zernio::DeleteWhatsappBusinessUsernameRequest](docs/DeleteWhatsappBusinessUsernameRequest.md)
1014
+ - [Zernio::DetachNumberFromSipTrunk200Response](docs/DetachNumberFromSipTrunk200Response.md)
1002
1015
  - [Zernio::DialVoiceWebCall200Response](docs/DialVoiceWebCall200Response.md)
1003
1016
  - [Zernio::DialVoiceWebCallRequest](docs/DialVoiceWebCallRequest.md)
1004
1017
  - [Zernio::DisableSmsOnNumber200Response](docs/DisableSmsOnNumber200Response.md)
@@ -1322,6 +1335,8 @@ Class | Method | HTTP request | Description
1322
1335
  - [Zernio::GetSequence200ResponseSequence](docs/GetSequence200ResponseSequence.md)
1323
1336
  - [Zernio::GetSequence200ResponseSequenceStepsInner](docs/GetSequence200ResponseSequenceStepsInner.md)
1324
1337
  - [Zernio::GetSequence200ResponseSequenceStepsInnerTemplate](docs/GetSequence200ResponseSequenceStepsInnerTemplate.md)
1338
+ - [Zernio::GetSipTrunk200Response](docs/GetSipTrunk200Response.md)
1339
+ - [Zernio::GetSipTrunk200ResponseNumbersInner](docs/GetSipTrunk200ResponseNumbersInner.md)
1325
1340
  - [Zernio::GetSlackSettings200Response](docs/GetSlackSettings200Response.md)
1326
1341
  - [Zernio::GetSlackSettings200ResponseAccount](docs/GetSlackSettings200ResponseAccount.md)
1327
1342
  - [Zernio::GetSmsRegistration200Response](docs/GetSmsRegistration200Response.md)
@@ -1611,6 +1626,9 @@ Class | Method | HTTP request | Description
1611
1626
  - [Zernio::ListSequenceEnrollments200ResponseEnrollmentsInner](docs/ListSequenceEnrollments200ResponseEnrollmentsInner.md)
1612
1627
  - [Zernio::ListSequences200Response](docs/ListSequences200Response.md)
1613
1628
  - [Zernio::ListSequences200ResponseSequencesInner](docs/ListSequences200ResponseSequencesInner.md)
1629
+ - [Zernio::ListSipTrunks200Response](docs/ListSipTrunks200Response.md)
1630
+ - [Zernio::ListSipTrunks200ResponseTrunksInner](docs/ListSipTrunks200ResponseTrunksInner.md)
1631
+ - [Zernio::ListSipTrunks200ResponseTrunksInnerTermination](docs/ListSipTrunks200ResponseTrunksInnerTermination.md)
1614
1632
  - [Zernio::ListSlackMembers200Response](docs/ListSlackMembers200Response.md)
1615
1633
  - [Zernio::ListSlackMembers200ResponseMembersInner](docs/ListSlackMembers200ResponseMembersInner.md)
1616
1634
  - [Zernio::ListSmsOptOuts200Response](docs/ListSmsOptOuts200Response.md)
@@ -1799,6 +1817,7 @@ Class | Method | HTTP request | Description
1799
1817
  - [Zernio::ReviewWebhookReviewReviewer](docs/ReviewWebhookReviewReviewer.md)
1800
1818
  - [Zernio::RevokeConnectedApp200Response](docs/RevokeConnectedApp200Response.md)
1801
1819
  - [Zernio::RfPrediction](docs/RfPrediction.md)
1820
+ - [Zernio::RotateSipTrunkCredentials200Response](docs/RotateSipTrunkCredentials200Response.md)
1802
1821
  - [Zernio::SavedTargetingAudience](docs/SavedTargetingAudience.md)
1803
1822
  - [Zernio::ScheduleBroadcast200Response](docs/ScheduleBroadcast200Response.md)
1804
1823
  - [Zernio::ScheduleBroadcast200ResponseBroadcast](docs/ScheduleBroadcast200ResponseBroadcast.md)
@@ -0,0 +1,22 @@
1
+ # Zernio::AttachNumberToSipTrunk200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **attached** | **Boolean** | | [optional] |
8
+ | **phone_number** | **String** | | [optional] |
9
+ | **trunk_id** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'zernio-sdk'
15
+
16
+ instance = Zernio::AttachNumberToSipTrunk200Response.new(
17
+ attached: null,
18
+ phone_number: null,
19
+ trunk_id: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,18 @@
1
+ # Zernio::AttachNumberToSipTrunkRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **trunk_id** | **String** | SIP trunk ID (from POST /v1/phone-numbers/sip-trunks). | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ instance = Zernio::AttachNumberToSipTrunkRequest.new(
15
+ trunk_id: null
16
+ )
17
+ ```
18
+
@@ -5,7 +5,7 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **title** | **String** | | [optional] |
8
- | **content** | **String** | Post caption/text. Optional when media is attached, all platforms have customContent, every platform entry is an X Article (platformSpecificData.article), or every platform entry is a LinkedIn plain repost (platformSpecificData.reshareUrl with no text). Required for other text-only posts. | [optional] |
8
+ | **content** | **String** | Post caption/text. Optional when media is attached, all platforms have customContent, every platform entry is an X Article (platformSpecificData.article), or every platform entry is a LinkedIn text-free reshare (platformSpecificData.reshareUrl with no text). Required for other text-only posts. | [optional] |
9
9
  | **media_items** | [**Array<MediaItem>**](MediaItem.md) | | [optional] |
10
10
  | **platforms** | [**Array<CreatePostRequestPlatformsInner>**](CreatePostRequestPlatformsInner.md) | Target platforms and accounts for this post. Required for non-draft posts (returns 400 if empty). Drafts can omit platforms. | [optional] |
11
11
  | **scheduled_for** | **Time** | | [optional] |
@@ -0,0 +1,34 @@
1
+ # Zernio::CreateSipTrunk201Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **label** | **String** | | [optional] |
9
+ | **sip_host** | **String** | | [optional] |
10
+ | **sip_port** | **Integer** | | [optional] |
11
+ | **transport** | **String** | | [optional] |
12
+ | **termination** | [**CreateSipTrunk201ResponseTermination**](CreateSipTrunk201ResponseTermination.md) | | [optional] |
13
+ | **numbers_attached** | **Integer** | | [optional] |
14
+ | **created_at** | **Time** | | [optional] |
15
+ | **digest_password** | **String** | SIP digest password, shown only in this response. | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'zernio-sdk'
21
+
22
+ instance = Zernio::CreateSipTrunk201Response.new(
23
+ id: null,
24
+ label: null,
25
+ sip_host: null,
26
+ sip_port: null,
27
+ transport: null,
28
+ termination: null,
29
+ numbers_attached: null,
30
+ created_at: null,
31
+ digest_password: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,20 @@
1
+ # Zernio::CreateSipTrunk201ResponseTermination
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **uri** | **String** | Telnyx termination host the platform dials for outbound (sip.telnyx.com). | [optional] |
8
+ | **username** | **String** | SIP digest username. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::CreateSipTrunk201ResponseTermination.new(
16
+ uri: null,
17
+ username: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,24 @@
1
+ # Zernio::CreateSipTrunkRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **label** | **String** | Display name for the trunk. | |
8
+ | **sip_host** | **String** | Fully-qualified hostname inbound calls are delivered to (e.g. sip.rtc.elevenlabs.io, sip.retellai.com). | |
9
+ | **sip_port** | **Integer** | Defaults to 5061 for tls, 5060 otherwise. | [optional] |
10
+ | **transport** | **String** | Signaling transport toward sipHost. Default tls (with SRTP media). | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'zernio-sdk'
16
+
17
+ instance = Zernio::CreateSipTrunkRequest.new(
18
+ label: null,
19
+ sip_host: null,
20
+ sip_port: null,
21
+ transport: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,20 @@
1
+ # Zernio::DetachNumberFromSipTrunk200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **attached** | **Boolean** | Always false after a successful detach. | [optional] |
8
+ | **phone_number** | **String** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::DetachNumberFromSipTrunk200Response.new(
16
+ attached: null,
17
+ phone_number: null
18
+ )
19
+ ```
20
+
@@ -15,6 +15,7 @@
15
15
  | **end_user_last_name** | **String** | | [optional] |
16
16
  | **regulatory_decline_reason** | **String** | Reviewer rejection reason when status is regulatory_declined. | [optional] |
17
17
  | **provisioned_at** | **Time** | | [optional] |
18
+ | **sip_trunk_id** | **String** | SIP trunk the number is attached to; null when not trunked. While attached, enabling Calls or WhatsApp calling, requesting WhatsApp verification, and releasing the number all return 409. | [optional] |
18
19
 
19
20
  ## Example
20
21
 
@@ -32,7 +33,8 @@ instance = Zernio::GetPhoneNumber200ResponsePhoneNumber.new(
32
33
  end_user_first_name: null,
33
34
  end_user_last_name: null,
34
35
  regulatory_decline_reason: null,
35
- provisioned_at: null
36
+ provisioned_at: null,
37
+ sip_trunk_id: null
36
38
  )
37
39
  ```
38
40
 
@@ -0,0 +1,34 @@
1
+ # Zernio::GetSipTrunk200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **label** | **String** | | [optional] |
9
+ | **sip_host** | **String** | | [optional] |
10
+ | **sip_port** | **Integer** | | [optional] |
11
+ | **transport** | **String** | | [optional] |
12
+ | **termination** | [**ListSipTrunks200ResponseTrunksInnerTermination**](ListSipTrunks200ResponseTrunksInnerTermination.md) | | [optional] |
13
+ | **numbers_attached** | **Integer** | | [optional] |
14
+ | **created_at** | **Time** | | [optional] |
15
+ | **numbers** | [**Array<GetSipTrunk200ResponseNumbersInner>**](GetSipTrunk200ResponseNumbersInner.md) | | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'zernio-sdk'
21
+
22
+ instance = Zernio::GetSipTrunk200Response.new(
23
+ id: null,
24
+ label: null,
25
+ sip_host: null,
26
+ sip_port: null,
27
+ transport: null,
28
+ termination: null,
29
+ numbers_attached: null,
30
+ created_at: null,
31
+ numbers: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,20 @@
1
+ # Zernio::GetSipTrunk200ResponseNumbersInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Phone number record ID. | [optional] |
8
+ | **phone_number** | **String** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::GetSipTrunk200ResponseNumbersInner.new(
16
+ id: null,
17
+ phone_number: null
18
+ )
19
+ ```
20
+
@@ -8,7 +8,7 @@
8
8
  | **organization_urn** | **String** | Target LinkedIn Organization URN (e.g. \"urn:li:organization:123456789\"). If omitted, uses the default org. Use GET /v1/accounts/{id}/linkedin-organizations to list orgs. | [optional] |
9
9
  | **first_comment** | **String** | Optional first comment to add after the post is created | [optional] |
10
10
  | **disable_link_preview** | **Boolean** | Set to true to disable automatic link previews for URLs in the post content (default is false) | [optional] |
11
- | **reshare_url** | **String** | LinkedIn post link to repost (use the post's \"Copy link to post\" action), or a urn:li:share / urn:li:ugcPost / urn:li:groupPost URN. With content, the published post is a quote-reshare: your text is the commentary and the original is embedded underneath (LinkedIn's \"repost with your thoughts\"). Leave content empty (and omit customContent) to publish a plain repost with no text, LinkedIn's one-click \"Repost\". Mutually exclusive with media. Works on personal profiles and organization pages. | [optional] |
11
+ | **reshare_url** | **String** | LinkedIn post link to repost (use the post's \"Copy link to post\" action), or a urn:li:share / urn:li:ugcPost / urn:li:groupPost URN. The published post is always a reshare authored by your account with the original embedded underneath: with content your text is the commentary (LinkedIn's \"repost with your thoughts\"), and with no content it publishes as a text-free reshare. Note that a text-free reshare is NOT LinkedIn's one-click \"Repost\" (the feed treatment where the original author stays the author); LinkedIn's API exposes no way to create that, so the post still appears authored by you with the original embedded. Mutually exclusive with media. Works on personal profiles and organization pages. | [optional] |
12
12
  | **geo_restriction** | [**GeoRestriction**](GeoRestriction.md) | | [optional] |
13
13
  | **poll** | [**LinkedInPlatformDataPoll**](LinkedInPlatformDataPoll.md) | | [optional] |
14
14
 
@@ -12,6 +12,7 @@
12
12
  | **telnyx_order_id** | **String** | Present once the number order has been placed (i.e. the requirement group was approved). Absent while still in identity review. | [optional] |
13
13
  | **monthly_cents** | **Integer** | Per-country monthly price in cents ($2..$25). | [optional] |
14
14
  | **hosted_by_zernio** | **Boolean** | False for numbers you brought yourself (connected via Meta embedded signup) — they live on your own carrier, so SMS/Calls can't be enabled on them. | [optional] |
15
+ | **sip_trunk_id** | **String** | SIP trunk the number is attached to; null when not trunked. While attached, enabling Calls or WhatsApp calling, requesting WhatsApp verification, and releasing the number all return 409. | [optional] |
15
16
  | **profile_id** | **Object** | | [optional] |
16
17
  | **provisioned_at** | **Time** | | [optional] |
17
18
  | **meta_preverified_id** | **String** | | [optional] |
@@ -37,6 +38,7 @@ instance = Zernio::ListPhoneNumbers200ResponseNumbersInner.new(
37
38
  telnyx_order_id: null,
38
39
  monthly_cents: null,
39
40
  hosted_by_zernio: null,
41
+ sip_trunk_id: null,
40
42
  profile_id: null,
41
43
  provisioned_at: null,
42
44
  meta_preverified_id: null,
@@ -0,0 +1,20 @@
1
+ # Zernio::ListSipTrunks200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **trunks** | [**Array<ListSipTrunks200ResponseTrunksInner>**](ListSipTrunks200ResponseTrunksInner.md) | | [optional] |
8
+ | **enabled** | **Boolean** | Whether this workspace can create SIP trunks. Managing existing trunks always works. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::ListSipTrunks200Response.new(
16
+ trunks: null,
17
+ enabled: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,32 @@
1
+ # Zernio::ListSipTrunks200ResponseTrunksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **label** | **String** | | [optional] |
9
+ | **sip_host** | **String** | | [optional] |
10
+ | **sip_port** | **Integer** | | [optional] |
11
+ | **transport** | **String** | | [optional] |
12
+ | **termination** | [**ListSipTrunks200ResponseTrunksInnerTermination**](ListSipTrunks200ResponseTrunksInnerTermination.md) | | [optional] |
13
+ | **numbers_attached** | **Integer** | | [optional] |
14
+ | **created_at** | **Time** | | [optional] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'zernio-sdk'
20
+
21
+ instance = Zernio::ListSipTrunks200ResponseTrunksInner.new(
22
+ id: null,
23
+ label: null,
24
+ sip_host: null,
25
+ sip_port: null,
26
+ transport: null,
27
+ termination: null,
28
+ numbers_attached: null,
29
+ created_at: null
30
+ )
31
+ ```
32
+
@@ -0,0 +1,20 @@
1
+ # Zernio::ListSipTrunks200ResponseTrunksInnerTermination
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **uri** | **String** | | [optional] |
8
+ | **username** | **String** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::ListSipTrunks200ResponseTrunksInnerTermination.new(
16
+ uri: null,
17
+ username: null
18
+ )
19
+ ```
20
+
data/docs/PostsApi.md CHANGED
@@ -95,7 +95,7 @@ end
95
95
 
96
96
  Create post
97
97
 
98
- Create and optionally publish a post. Immediate posts (`publishNow: true`) include `platformPostUrl` in the response. Content is optional when media is attached, all platforms have `customContent`, every platform entry is an X Article (`platformSpecificData.article`), or every platform entry is a LinkedIn plain repost (`platformSpecificData.reshareUrl` with no text). See each platform's schema for media constraints. ## Idempotency Two layers of duplicate-protection apply, so safe-to-retry callers (network blips, n8n / Zapier retries, etc.) don't accidentally double-post. **1. Same-request idempotency (5-minute window).** Pass an `x-request-id` header to mark a logical request. If a second request arrives with the same `x-request-id` while the first is in-flight (or within ~5 minutes of completion), we return **HTTP 200** with the original post in the `existingPost` field — no new post is created. The official Zernio SDKs auto-generate a unique `x-request-id` per call. If you're using a generic HTTP client (curl, n8n's HTTP node, Zapier, custom code), either: - Set a unique `x-request-id` per logical call (recommended — UUIDv4 is fine) - Or simply omit the header — we'll treat each request as new **Common pitfall**: if your workflow tool uses a single execution-level request ID and reuses it across multiple HTTP nodes (e.g. one ID for the whole run, shared across 6 different platform calls), every call after the first will look like a retry of the first and return its post. Generate a fresh ID per node. **2. Content-hash dedup (24-hour window).** Independently, we hash `(platform, accountId, content + media URLs)` and reject duplicates within 24 hours with **HTTP 409**. This catches genuine \"same content posted twice to the same account\" cases regardless of `x-request-id`. Returns `error`, `accountId`, `platform`, and `existingPostId` so you can find the original. To intentionally re-post identical content within 24h, change something (the caption, the media, the account) — the dedup is keyed on the full content fingerprint. Order: same-`x-request-id` retries (200) are checked first; if no idempotency match, the content-hash dedup (409) runs.
98
+ Create and optionally publish a post. Immediate posts (`publishNow: true`) include `platformPostUrl` in the response. Content is optional when media is attached, all platforms have `customContent`, every platform entry is an X Article (`platformSpecificData.article`), or every platform entry is a LinkedIn text-free reshare (`platformSpecificData.reshareUrl` with no text). See each platform's schema for media constraints. ## Idempotency Two layers of duplicate-protection apply, so safe-to-retry callers (network blips, n8n / Zapier retries, etc.) don't accidentally double-post. **1. Same-request idempotency (5-minute window).** Pass an `x-request-id` header to mark a logical request. If a second request arrives with the same `x-request-id` while the first is in-flight (or within ~5 minutes of completion), we return **HTTP 200** with the original post in the `existingPost` field — no new post is created. The official Zernio SDKs auto-generate a unique `x-request-id` per call. If you're using a generic HTTP client (curl, n8n's HTTP node, Zapier, custom code), either: - Set a unique `x-request-id` per logical call (recommended — UUIDv4 is fine) - Or simply omit the header — we'll treat each request as new **Common pitfall**: if your workflow tool uses a single execution-level request ID and reuses it across multiple HTTP nodes (e.g. one ID for the whole run, shared across 6 different platform calls), every call after the first will look like a retry of the first and return its post. Generate a fresh ID per node. **2. Content-hash dedup (24-hour window).** Independently, we hash `(platform, accountId, content + media URLs)` and reject duplicates within 24 hours with **HTTP 409**. This catches genuine \"same content posted twice to the same account\" cases regardless of `x-request-id`. Returns `error`, `accountId`, `platform`, and `existingPostId` so you can find the original. To intentionally re-post identical content within 24h, change something (the caption, the media, the account) — the dedup is keyed on the full content fingerprint. Order: same-`x-request-id` retries (200) are checked first; if no idempotency match, the content-hash dedup (409) runs.
99
99
 
100
100
  ### Examples
101
101
 
@@ -0,0 +1,20 @@
1
+ # Zernio::RotateSipTrunkCredentials200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **termination** | [**CreateSipTrunk201ResponseTermination**](CreateSipTrunk201ResponseTermination.md) | | [optional] |
8
+ | **digest_password** | **String** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::RotateSipTrunkCredentials200Response.new(
16
+ termination: null,
17
+ digest_password: null
18
+ )
19
+ ```
20
+