norbelys 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Gemfile +9 -0
- data/README.md +429 -0
- data/Rakefile +10 -0
- data/docs/AddProgramSenderParams.md +18 -0
- data/docs/AiEmailVariantContent.md +28 -0
- data/docs/AnalyticsApi.md +81 -0
- data/docs/AnalyticsQuery.md +20 -0
- data/docs/AnalyticsQueryName.md +15 -0
- data/docs/AnalyticsQueryParams.md +50 -0
- data/docs/AnalyticsQueryResult.md +20 -0
- data/docs/ApiError.md +18 -0
- data/docs/ApiErrorDetail.md +26 -0
- data/docs/AudienceActivityAction.md +15 -0
- data/docs/AudienceActivityCondition.md +20 -0
- data/docs/AudienceActivityLinkFilter.md +20 -0
- data/docs/AudienceActivityLinkMatchOp.md +15 -0
- data/docs/AudienceActivityParams.md +32 -0
- data/docs/AudienceAttributeCondition.md +22 -0
- data/docs/AudienceConditionOp.md +15 -0
- data/docs/AudienceConditionValue.md +15 -0
- data/docs/AudienceFilter.md +20 -0
- data/docs/AudienceMatch.md +15 -0
- data/docs/AudienceRule.md +26 -0
- data/docs/AudienceSource.md +26 -0
- data/docs/AudienceStatusBreakdown.md +20 -0
- data/docs/AudienceSummary.md +26 -0
- data/docs/AudienceWeekPoint.md +20 -0
- data/docs/BulkUpdateSenderPatch.md +34 -0
- data/docs/BulkUpdateSendersInput.md +20 -0
- data/docs/BulkUpdateSendersResult.md +24 -0
- data/docs/CampaignReportShare.md +22 -0
- data/docs/CollectionAddress.md +28 -0
- data/docs/ConnectionSettings.md +22 -0
- data/docs/CreateSenderInput.md +42 -0
- data/docs/DetachResult.md +18 -0
- data/docs/DmarcRecordToPublish.md +22 -0
- data/docs/Domain.md +38 -0
- data/docs/DomainAge.md +30 -0
- data/docs/DomainCapacity.md +28 -0
- data/docs/DomainCreateParams.md +24 -0
- data/docs/DomainDetail.md +42 -0
- data/docs/DomainHealth.md +24 -0
- data/docs/DomainList.md +26 -0
- data/docs/DomainMonitoring.md +30 -0
- data/docs/DomainMonitoringParams.md +20 -0
- data/docs/DomainSending.md +26 -0
- data/docs/DomainSendingPolicy.md +36 -0
- data/docs/DomainSendingPolicyParams.md +32 -0
- data/docs/DomainSendingUpdateParams.md +20 -0
- data/docs/DomainTracking.md +50 -0
- data/docs/DomainTrackingParams.md +22 -0
- data/docs/DomainTrackingUpdateParams.md +24 -0
- data/docs/DomainUpdateParams.md +22 -0
- data/docs/DomainsApi.md +525 -0
- data/docs/EmailVariantContent.md +28 -0
- data/docs/EnrollProgramParams.md +28 -0
- data/docs/EnrollProgramResult.md +28 -0
- data/docs/Enrollment.md +42 -0
- data/docs/EnrollmentCounts.md +44 -0
- data/docs/EnrollmentList.md +28 -0
- data/docs/EnrollmentPersonRef.md +22 -0
- data/docs/EnrollmentProgramRef.md +20 -0
- data/docs/Features.md +18 -0
- data/docs/Field.md +38 -0
- data/docs/FieldCreateParams.md +26 -0
- data/docs/FieldList.md +20 -0
- data/docs/FieldType.md +15 -0
- data/docs/FieldUpdateParams.md +24 -0
- data/docs/FieldsApi.md +297 -0
- data/docs/FileObject.md +28 -0
- data/docs/FileUpload.md +22 -0
- data/docs/FilesApi.md +81 -0
- data/docs/Group.md +34 -0
- data/docs/GroupAddMembersParams.md +20 -0
- data/docs/GroupAddMembersResult.md +22 -0
- data/docs/GroupCreateParams.md +22 -0
- data/docs/GroupList.md +26 -0
- data/docs/GroupUpdateParams.md +22 -0
- data/docs/GroupsApi.md +521 -0
- data/docs/ImapConnectionUpdate.md +22 -0
- data/docs/InboundMessage.md +48 -0
- data/docs/Integration.md +34 -0
- data/docs/IntegrationConfig.md +26 -0
- data/docs/IntegrationConnectParams.md +18 -0
- data/docs/IntegrationConnectResult.md +18 -0
- data/docs/IntegrationList.md +26 -0
- data/docs/IntegrationNotifyConfig.md +24 -0
- data/docs/IntegrationOptions.md +18 -0
- data/docs/IntegrationProvider.md +15 -0
- data/docs/IntegrationStatus.md +15 -0
- data/docs/IntegrationSyncResult.md +18 -0
- data/docs/IntegrationUpdateParams.md +18 -0
- data/docs/IntegrationsApi.md +513 -0
- data/docs/LaunchProgramParams.md +18 -0
- data/docs/LaunchProgramResult.md +22 -0
- data/docs/Message.md +58 -0
- data/docs/MessageAddress.md +20 -0
- data/docs/MessageAttachment.md +28 -0
- data/docs/MessageAttachmentDownload.md +32 -0
- data/docs/MessageAttachmentInput.md +22 -0
- data/docs/MessageAttachmentList.md +22 -0
- data/docs/MessageCreateParams.md +44 -0
- data/docs/MessageEnrollParams.md +26 -0
- data/docs/MessageList.md +26 -0
- data/docs/MessageReplyParams.md +40 -0
- data/docs/MessageSource.md +36 -0
- data/docs/MessageSourceAttachment.md +22 -0
- data/docs/MessageTestParams.md +40 -0
- data/docs/MessageUpdateParams.md +22 -0
- data/docs/MessagesApi.md +543 -0
- data/docs/MonthlyEmailUsageMeter.md +24 -0
- data/docs/Organization.md +30 -0
- data/docs/OrganizationAlerts.md +18 -0
- data/docs/OrganizationAlertsParams.md +18 -0
- data/docs/OrganizationApi.md +350 -0
- data/docs/OrganizationBouncePolicy.md +20 -0
- data/docs/OrganizationBouncePolicyParams.md +20 -0
- data/docs/OrganizationOnboarding.md +20 -0
- data/docs/OrganizationProfile.md +22 -0
- data/docs/OrganizationProfileParams.md +22 -0
- data/docs/OrganizationPulse.md +28 -0
- data/docs/OrganizationUpdateParams.md +24 -0
- data/docs/OrganizationUsage.md +26 -0
- data/docs/OutboundMessage.md +46 -0
- data/docs/PeopleApi.md +681 -0
- data/docs/PeopleBulkCreateParams.md +28 -0
- data/docs/PeopleBulkCreateResult.md +34 -0
- data/docs/Person.md +52 -0
- data/docs/PersonCreateParams.md +30 -0
- data/docs/PersonDetail.md +60 -0
- data/docs/PersonErased.md +20 -0
- data/docs/PersonGroupRef.md +22 -0
- data/docs/PersonImportItem.md +30 -0
- data/docs/PersonImportReason.md +22 -0
- data/docs/PersonImportStats.md +36 -0
- data/docs/PersonList.md +26 -0
- data/docs/PersonListItem.md +50 -0
- data/docs/PersonSegmentRef.md +22 -0
- data/docs/PersonUpdateParams.md +30 -0
- data/docs/Program.md +78 -0
- data/docs/ProgramCreateParams.md +62 -0
- data/docs/ProgramDetail.md +84 -0
- data/docs/ProgramList.md +26 -0
- data/docs/ProgramListItem.md +80 -0
- data/docs/ProgramPauseMeta.md +20 -0
- data/docs/ProgramSenderRef.md +26 -0
- data/docs/ProgramStats.md +22 -0
- data/docs/ProgramStepInput.md +38 -0
- data/docs/ProgramUpdateParams.md +62 -0
- data/docs/ProgramVariantInput.md +26 -0
- data/docs/ProgramsApi.md +1283 -0
- data/docs/ProgramsAudienceList.md +26 -0
- data/docs/ProgramsSendersList.md +26 -0
- data/docs/ProviderApiSenderInput.md +38 -0
- data/docs/PulseDeliverability.md +30 -0
- data/docs/PulseProgram.md +42 -0
- data/docs/PulseSenderFleet.md +30 -0
- data/docs/PulseValue.md +26 -0
- data/docs/ReportShare.md +22 -0
- data/docs/Segment.md +32 -0
- data/docs/SegmentCreateParams.md +22 -0
- data/docs/SegmentList.md +26 -0
- data/docs/SegmentUpdateParams.md +22 -0
- data/docs/SegmentsApi.md +373 -0
- data/docs/SelfHostedSenderInput.md +36 -0
- data/docs/Sender.md +66 -0
- data/docs/SenderBulkError.md +20 -0
- data/docs/SenderDetail.md +70 -0
- data/docs/SenderList.md +26 -0
- data/docs/SenderRemoveResult.md +20 -0
- data/docs/SenderUsage.md +24 -0
- data/docs/SenderWarmupStatus.md +20 -0
- data/docs/SendersApi.md +531 -0
- data/docs/SlackChannel.md +20 -0
- data/docs/SmtpConnectionSettings.md +26 -0
- data/docs/SmtpConnectionUpdate.md +26 -0
- data/docs/SmtpSenderInput.md +40 -0
- data/docs/StaticEmailVariantContent.md +28 -0
- data/docs/StepWithVariants.md +46 -0
- data/docs/Suppression.md +32 -0
- data/docs/SuppressionBulkParams.md +20 -0
- data/docs/SuppressionBulkResult.md +18 -0
- data/docs/SuppressionCreateParams.md +24 -0
- data/docs/SuppressionList.md +26 -0
- data/docs/SuppressionScope.md +15 -0
- data/docs/SuppressionsApi.md +369 -0
- data/docs/SyncModel.md +15 -0
- data/docs/TeamSize.md +15 -0
- data/docs/TrackingDnsRecord.md +22 -0
- data/docs/UpdateSenderInput.md +48 -0
- data/docs/UsageMeter.md +22 -0
- data/docs/UsagePlan.md +22 -0
- data/docs/Variant.md +34 -0
- data/docs/VariantAi.md +22 -0
- data/docs/VerifyApi.md +81 -0
- data/docs/VerifyEmailInput.md +18 -0
- data/docs/VerifyMx.md +22 -0
- data/docs/VerifyReachability.md +15 -0
- data/docs/VerifyReasonCode.md +15 -0
- data/docs/VerifyResult.md +38 -0
- data/docs/VerifySignals.md +28 -0
- data/docs/VerifySyntax.md +22 -0
- data/docs/VoiceSenderInput.md +38 -0
- data/docs/WarmupRuntimeStatus.md +32 -0
- data/docs/WarmupSettings.md +44 -0
- data/docs/WarmupTemplate.md +20 -0
- data/docs/WarmupTodayTally.md +22 -0
- data/lib/norbelys/api/analytics_api.rb +97 -0
- data/lib/norbelys/api/domains_api.rb +528 -0
- data/lib/norbelys/api/fields_api.rb +290 -0
- data/lib/norbelys/api/files_api.rb +97 -0
- data/lib/norbelys/api/groups_api.rb +516 -0
- data/lib/norbelys/api/integrations_api.rb +509 -0
- data/lib/norbelys/api/messages_api.rb +572 -0
- data/lib/norbelys/api/organization_api.rb +329 -0
- data/lib/norbelys/api/people_api.rb +689 -0
- data/lib/norbelys/api/programs_api.rb +1299 -0
- data/lib/norbelys/api/segments_api.rb +370 -0
- data/lib/norbelys/api/senders_api.rb +539 -0
- data/lib/norbelys/api/suppressions_api.rb +370 -0
- data/lib/norbelys/api/verify_api.rb +97 -0
- data/lib/norbelys/api_client.rb +394 -0
- data/lib/norbelys/api_error.rb +58 -0
- data/lib/norbelys/configuration.rb +308 -0
- data/lib/norbelys/models/add_program_sender_params.rb +222 -0
- data/lib/norbelys/models/ai_email_variant_content.rb +318 -0
- data/lib/norbelys/models/analytics_query.rb +252 -0
- data/lib/norbelys/models/analytics_query_name.rb +63 -0
- data/lib/norbelys/models/analytics_query_params.rb +485 -0
- data/lib/norbelys/models/analytics_query_result.rb +260 -0
- data/lib/norbelys/models/api_error.rb +221 -0
- data/lib/norbelys/models/api_error_detail.rb +310 -0
- data/lib/norbelys/models/audience_activity_action.rb +45 -0
- data/lib/norbelys/models/audience_activity_condition.rb +233 -0
- data/lib/norbelys/models/audience_activity_link_filter.rb +289 -0
- data/lib/norbelys/models/audience_activity_link_match_op.rb +40 -0
- data/lib/norbelys/models/audience_activity_params.rb +395 -0
- data/lib/norbelys/models/audience_attribute_condition.rb +289 -0
- data/lib/norbelys/models/audience_condition_op.rb +59 -0
- data/lib/norbelys/models/audience_condition_value.rb +107 -0
- data/lib/norbelys/models/audience_filter.rb +270 -0
- data/lib/norbelys/models/audience_match.rb +40 -0
- data/lib/norbelys/models/audience_rule.rb +104 -0
- data/lib/norbelys/models/audience_source.rb +343 -0
- data/lib/norbelys/models/audience_status_breakdown.rb +292 -0
- data/lib/norbelys/models/audience_summary.rb +351 -0
- data/lib/norbelys/models/audience_week_point.rb +258 -0
- data/lib/norbelys/models/bulk_update_sender_patch.rb +368 -0
- data/lib/norbelys/models/bulk_update_senders_input.rb +268 -0
- data/lib/norbelys/models/bulk_update_senders_result.rb +291 -0
- data/lib/norbelys/models/campaign_report_share.rb +244 -0
- data/lib/norbelys/models/collection_address.rb +321 -0
- data/lib/norbelys/models/connection_settings.rb +331 -0
- data/lib/norbelys/models/create_sender_input.rb +106 -0
- data/lib/norbelys/models/detach_result.rb +223 -0
- data/lib/norbelys/models/dmarc_record_to_publish.rb +252 -0
- data/lib/norbelys/models/domain.rb +421 -0
- data/lib/norbelys/models/domain_age.rb +351 -0
- data/lib/norbelys/models/domain_capacity.rb +397 -0
- data/lib/norbelys/models/domain_create_params.rb +307 -0
- data/lib/norbelys/models/domain_detail.rb +445 -0
- data/lib/norbelys/models/domain_health.rb +310 -0
- data/lib/norbelys/models/domain_list.rb +292 -0
- data/lib/norbelys/models/domain_monitoring.rb +380 -0
- data/lib/norbelys/models/domain_monitoring_params.rb +262 -0
- data/lib/norbelys/models/domain_sending.rb +302 -0
- data/lib/norbelys/models/domain_sending_policy.rb +479 -0
- data/lib/norbelys/models/domain_sending_policy_params.rb +389 -0
- data/lib/norbelys/models/domain_sending_update_params.rb +225 -0
- data/lib/norbelys/models/domain_tracking.rb +570 -0
- data/lib/norbelys/models/domain_tracking_params.rb +268 -0
- data/lib/norbelys/models/domain_tracking_update_params.rb +306 -0
- data/lib/norbelys/models/domain_update_params.rb +259 -0
- data/lib/norbelys/models/email_variant_content.rb +104 -0
- data/lib/norbelys/models/enroll_program_params.rb +308 -0
- data/lib/norbelys/models/enroll_program_result.rb +366 -0
- data/lib/norbelys/models/enrollment.rb +405 -0
- data/lib/norbelys/models/enrollment_counts.rb +660 -0
- data/lib/norbelys/models/enrollment_list.rb +308 -0
- data/lib/norbelys/models/enrollment_person_ref.rb +246 -0
- data/lib/norbelys/models/enrollment_program_ref.rb +239 -0
- data/lib/norbelys/models/features.rb +223 -0
- data/lib/norbelys/models/field.rb +401 -0
- data/lib/norbelys/models/field_create_params.rb +386 -0
- data/lib/norbelys/models/field_list.rb +234 -0
- data/lib/norbelys/models/field_type.rb +45 -0
- data/lib/norbelys/models/field_update_params.rb +324 -0
- data/lib/norbelys/models/file_object.rb +321 -0
- data/lib/norbelys/models/file_upload.rb +324 -0
- data/lib/norbelys/models/group.rb +339 -0
- data/lib/norbelys/models/group_add_members_params.rb +227 -0
- data/lib/norbelys/models/group_add_members_result.rb +313 -0
- data/lib/norbelys/models/group_create_params.rb +308 -0
- data/lib/norbelys/models/group_list.rb +299 -0
- data/lib/norbelys/models/group_update_params.rb +293 -0
- data/lib/norbelys/models/imap_connection_update.rb +317 -0
- data/lib/norbelys/models/inbound_message.rb +442 -0
- data/lib/norbelys/models/integration.rb +340 -0
- data/lib/norbelys/models/integration_config.rb +254 -0
- data/lib/norbelys/models/integration_connect_params.rb +244 -0
- data/lib/norbelys/models/integration_connect_result.rb +222 -0
- data/lib/norbelys/models/integration_list.rb +292 -0
- data/lib/norbelys/models/integration_notify_config.rb +246 -0
- data/lib/norbelys/models/integration_options.rb +224 -0
- data/lib/norbelys/models/integration_provider.rb +52 -0
- data/lib/norbelys/models/integration_status.rb +41 -0
- data/lib/norbelys/models/integration_sync_result.rb +224 -0
- data/lib/norbelys/models/integration_update_params.rb +222 -0
- data/lib/norbelys/models/launch_program_params.rb +230 -0
- data/lib/norbelys/models/launch_program_result.rb +292 -0
- data/lib/norbelys/models/message.rb +104 -0
- data/lib/norbelys/models/message_address.rb +232 -0
- data/lib/norbelys/models/message_attachment.rb +312 -0
- data/lib/norbelys/models/message_attachment_download.rb +341 -0
- data/lib/norbelys/models/message_attachment_input.rb +296 -0
- data/lib/norbelys/models/message_attachment_list.rb +253 -0
- data/lib/norbelys/models/message_create_params.rb +105 -0
- data/lib/norbelys/models/message_enroll_params.rb +278 -0
- data/lib/norbelys/models/message_list.rb +299 -0
- data/lib/norbelys/models/message_reply_params.rb +369 -0
- data/lib/norbelys/models/message_source.rb +348 -0
- data/lib/norbelys/models/message_source_attachment.rb +242 -0
- data/lib/norbelys/models/message_test_params.rb +364 -0
- data/lib/norbelys/models/message_update_params.rb +269 -0
- data/lib/norbelys/models/monthly_email_usage_meter.rb +303 -0
- data/lib/norbelys/models/organization.rb +321 -0
- data/lib/norbelys/models/organization_alerts.rb +223 -0
- data/lib/norbelys/models/organization_alerts_params.rb +216 -0
- data/lib/norbelys/models/organization_bounce_policy.rb +240 -0
- data/lib/norbelys/models/organization_bounce_policy_params.rb +226 -0
- data/lib/norbelys/models/organization_onboarding.rb +250 -0
- data/lib/norbelys/models/organization_profile.rb +264 -0
- data/lib/norbelys/models/organization_profile_params.rb +270 -0
- data/lib/norbelys/models/organization_pulse.rb +301 -0
- data/lib/norbelys/models/organization_update_params.rb +242 -0
- data/lib/norbelys/models/organization_usage.rb +282 -0
- data/lib/norbelys/models/outbound_message.rb +447 -0
- data/lib/norbelys/models/people_bulk_create_params.rb +401 -0
- data/lib/norbelys/models/people_bulk_create_result.rb +493 -0
- data/lib/norbelys/models/person.rb +500 -0
- data/lib/norbelys/models/person_create_params.rb +320 -0
- data/lib/norbelys/models/person_detail.rb +548 -0
- data/lib/norbelys/models/person_erased.rb +234 -0
- data/lib/norbelys/models/person_group_ref.rb +251 -0
- data/lib/norbelys/models/person_import_item.rb +339 -0
- data/lib/norbelys/models/person_import_reason.rb +309 -0
- data/lib/norbelys/models/person_import_stats.rb +518 -0
- data/lib/norbelys/models/person_list.rb +299 -0
- data/lib/norbelys/models/person_list_item.rb +488 -0
- data/lib/norbelys/models/person_segment_ref.rb +251 -0
- data/lib/norbelys/models/person_update_params.rb +313 -0
- data/lib/norbelys/models/program.rb +871 -0
- data/lib/norbelys/models/program_create_params.rb +704 -0
- data/lib/norbelys/models/program_detail.rb +911 -0
- data/lib/norbelys/models/program_list.rb +292 -0
- data/lib/norbelys/models/program_list_item.rb +887 -0
- data/lib/norbelys/models/program_pause_meta.rb +295 -0
- data/lib/norbelys/models/program_sender_ref.rb +295 -0
- data/lib/norbelys/models/program_stats.rb +297 -0
- data/lib/norbelys/models/program_step_input.rb +469 -0
- data/lib/norbelys/models/program_update_params.rb +697 -0
- data/lib/norbelys/models/program_variant_input.rb +274 -0
- data/lib/norbelys/models/programs_audience_list.rb +293 -0
- data/lib/norbelys/models/programs_senders_list.rb +293 -0
- data/lib/norbelys/models/provider_api_sender_input.rb +395 -0
- data/lib/norbelys/models/pulse_deliverability.rb +325 -0
- data/lib/norbelys/models/pulse_program.rb +453 -0
- data/lib/norbelys/models/pulse_sender_fleet.rb +325 -0
- data/lib/norbelys/models/pulse_value.rb +291 -0
- data/lib/norbelys/models/report_share.rb +244 -0
- data/lib/norbelys/models/segment.rb +307 -0
- data/lib/norbelys/models/segment_create_params.rb +296 -0
- data/lib/norbelys/models/segment_list.rb +299 -0
- data/lib/norbelys/models/segment_update_params.rb +278 -0
- data/lib/norbelys/models/self_hosted_sender_input.rb +378 -0
- data/lib/norbelys/models/sender.rb +708 -0
- data/lib/norbelys/models/sender_bulk_error.rb +239 -0
- data/lib/norbelys/models/sender_detail.rb +726 -0
- data/lib/norbelys/models/sender_list.rb +299 -0
- data/lib/norbelys/models/sender_remove_result.rb +268 -0
- data/lib/norbelys/models/sender_usage.rb +331 -0
- data/lib/norbelys/models/sender_warmup_status.rb +230 -0
- data/lib/norbelys/models/slack_channel.rb +239 -0
- data/lib/norbelys/models/smtp_connection_settings.rb +351 -0
- data/lib/norbelys/models/smtp_connection_update.rb +337 -0
- data/lib/norbelys/models/smtp_sender_input.rb +403 -0
- data/lib/norbelys/models/static_email_variant_content.rb +312 -0
- data/lib/norbelys/models/step_with_variants.rb +591 -0
- data/lib/norbelys/models/suppression.rb +331 -0
- data/lib/norbelys/models/suppression_bulk_params.rb +262 -0
- data/lib/norbelys/models/suppression_bulk_result.rb +241 -0
- data/lib/norbelys/models/suppression_create_params.rb +305 -0
- data/lib/norbelys/models/suppression_list.rb +293 -0
- data/lib/norbelys/models/suppression_scope.rb +40 -0
- data/lib/norbelys/models/sync_model.rb +41 -0
- data/lib/norbelys/models/team_size.rb +43 -0
- data/lib/norbelys/models/tracking_dns_record.rb +252 -0
- data/lib/norbelys/models/update_sender_input.rb +481 -0
- data/lib/norbelys/models/usage_meter.rb +286 -0
- data/lib/norbelys/models/usage_plan.rb +257 -0
- data/lib/norbelys/models/variant.rb +385 -0
- data/lib/norbelys/models/variant_ai.rb +314 -0
- data/lib/norbelys/models/verify_email_input.rb +251 -0
- data/lib/norbelys/models/verify_mx.rb +254 -0
- data/lib/norbelys/models/verify_reachability.rb +42 -0
- data/lib/norbelys/models/verify_reason_code.rb +52 -0
- data/lib/norbelys/models/verify_result.rb +426 -0
- data/lib/norbelys/models/verify_signals.rb +308 -0
- data/lib/norbelys/models/verify_syntax.rb +257 -0
- data/lib/norbelys/models/voice_sender_input.rb +388 -0
- data/lib/norbelys/models/warmup_runtime_status.rb +440 -0
- data/lib/norbelys/models/warmup_settings.rb +562 -0
- data/lib/norbelys/models/warmup_template.rb +295 -0
- data/lib/norbelys/models/warmup_today_tally.rb +314 -0
- data/lib/norbelys/version.rb +15 -0
- data/lib/norbelys.rb +243 -0
- data/norbelys.gemspec +39 -0
- data/spec/api/analytics_api_spec.rb +48 -0
- data/spec/api/domains_api_spec.rb +128 -0
- data/spec/api/fields_api_spec.rb +85 -0
- data/spec/api/files_api_spec.rb +48 -0
- data/spec/api/groups_api_spec.rb +127 -0
- data/spec/api/integrations_api_spec.rb +124 -0
- data/spec/api/messages_api_spec.rb +139 -0
- data/spec/api/organization_api_spec.rb +92 -0
- data/spec/api/people_api_spec.rb +158 -0
- data/spec/api/programs_api_spec.rb +270 -0
- data/spec/api/segments_api_spec.rb +100 -0
- data/spec/api/senders_api_spec.rb +130 -0
- data/spec/api/suppressions_api_spec.rb +98 -0
- data/spec/api/verify_api_spec.rb +48 -0
- data/spec/models/add_program_sender_params_spec.rb +36 -0
- data/spec/models/ai_email_variant_content_spec.rb +66 -0
- data/spec/models/analytics_query_name_spec.rb +30 -0
- data/spec/models/analytics_query_params_spec.rb +136 -0
- data/spec/models/analytics_query_result_spec.rb +42 -0
- data/spec/models/analytics_query_spec.rb +42 -0
- data/spec/models/api_error_detail_spec.rb +64 -0
- data/spec/models/api_error_spec.rb +36 -0
- data/spec/models/audience_activity_action_spec.rb +30 -0
- data/spec/models/audience_activity_condition_spec.rb +42 -0
- data/spec/models/audience_activity_link_filter_spec.rb +42 -0
- data/spec/models/audience_activity_link_match_op_spec.rb +30 -0
- data/spec/models/audience_activity_params_spec.rb +78 -0
- data/spec/models/audience_attribute_condition_spec.rb +48 -0
- data/spec/models/audience_condition_op_spec.rb +30 -0
- data/spec/models/audience_condition_value_spec.rb +21 -0
- data/spec/models/audience_filter_spec.rb +42 -0
- data/spec/models/audience_match_spec.rb +30 -0
- data/spec/models/audience_rule_spec.rb +21 -0
- data/spec/models/audience_source_spec.rb +64 -0
- data/spec/models/audience_status_breakdown_spec.rb +46 -0
- data/spec/models/audience_summary_spec.rb +60 -0
- data/spec/models/audience_week_point_spec.rb +42 -0
- data/spec/models/bulk_update_sender_patch_spec.rb +88 -0
- data/spec/models/bulk_update_senders_input_spec.rb +42 -0
- data/spec/models/bulk_update_senders_result_spec.rb +54 -0
- data/spec/models/campaign_report_share_spec.rb +48 -0
- data/spec/models/collection_address_spec.rb +70 -0
- data/spec/models/connection_settings_spec.rb +52 -0
- data/spec/models/create_sender_input_spec.rb +21 -0
- data/spec/models/detach_result_spec.rb +36 -0
- data/spec/models/dmarc_record_to_publish_spec.rb +48 -0
- data/spec/models/domain_age_spec.rb +76 -0
- data/spec/models/domain_capacity_spec.rb +70 -0
- data/spec/models/domain_create_params_spec.rb +58 -0
- data/spec/models/domain_detail_spec.rb +112 -0
- data/spec/models/domain_health_spec.rb +62 -0
- data/spec/models/domain_list_spec.rb +60 -0
- data/spec/models/domain_monitoring_params_spec.rb +46 -0
- data/spec/models/domain_monitoring_spec.rb +84 -0
- data/spec/models/domain_sending_policy_params_spec.rb +82 -0
- data/spec/models/domain_sending_policy_spec.rb +94 -0
- data/spec/models/domain_sending_spec.rb +60 -0
- data/spec/models/domain_sending_update_params_spec.rb +42 -0
- data/spec/models/domain_spec.rb +100 -0
- data/spec/models/domain_tracking_params_spec.rb +48 -0
- data/spec/models/domain_tracking_spec.rb +160 -0
- data/spec/models/domain_tracking_update_params_spec.rb +58 -0
- data/spec/models/domain_update_params_spec.rb +48 -0
- data/spec/models/email_variant_content_spec.rb +21 -0
- data/spec/models/enroll_program_params_spec.rb +70 -0
- data/spec/models/enroll_program_result_spec.rb +66 -0
- data/spec/models/enrollment_counts_spec.rb +114 -0
- data/spec/models/enrollment_list_spec.rb +66 -0
- data/spec/models/enrollment_person_ref_spec.rb +48 -0
- data/spec/models/enrollment_program_ref_spec.rb +42 -0
- data/spec/models/enrollment_spec.rb +112 -0
- data/spec/models/features_spec.rb +36 -0
- data/spec/models/field_create_params_spec.rb +64 -0
- data/spec/models/field_list_spec.rb +42 -0
- data/spec/models/field_spec.rb +96 -0
- data/spec/models/field_type_spec.rb +30 -0
- data/spec/models/field_update_params_spec.rb +58 -0
- data/spec/models/file_object_spec.rb +66 -0
- data/spec/models/file_upload_spec.rb +48 -0
- data/spec/models/group_add_members_params_spec.rb +42 -0
- data/spec/models/group_add_members_result_spec.rb +48 -0
- data/spec/models/group_create_params_spec.rb +48 -0
- data/spec/models/group_list_spec.rb +60 -0
- data/spec/models/group_spec.rb +84 -0
- data/spec/models/group_update_params_spec.rb +48 -0
- data/spec/models/imap_connection_update_spec.rb +52 -0
- data/spec/models/inbound_message_spec.rb +130 -0
- data/spec/models/integration_config_spec.rb +60 -0
- data/spec/models/integration_connect_params_spec.rb +36 -0
- data/spec/models/integration_connect_result_spec.rb +36 -0
- data/spec/models/integration_list_spec.rb +60 -0
- data/spec/models/integration_notify_config_spec.rb +54 -0
- data/spec/models/integration_options_spec.rb +36 -0
- data/spec/models/integration_provider_spec.rb +30 -0
- data/spec/models/integration_spec.rb +84 -0
- data/spec/models/integration_status_spec.rb +30 -0
- data/spec/models/integration_sync_result_spec.rb +36 -0
- data/spec/models/integration_update_params_spec.rb +36 -0
- data/spec/models/launch_program_params_spec.rb +36 -0
- data/spec/models/launch_program_result_spec.rb +52 -0
- data/spec/models/message_address_spec.rb +42 -0
- data/spec/models/message_attachment_download_spec.rb +78 -0
- data/spec/models/message_attachment_input_spec.rb +48 -0
- data/spec/models/message_attachment_list_spec.rb +48 -0
- data/spec/models/message_attachment_spec.rb +66 -0
- data/spec/models/message_create_params_spec.rb +21 -0
- data/spec/models/message_enroll_params_spec.rb +60 -0
- data/spec/models/message_list_spec.rb +60 -0
- data/spec/models/message_reply_params_spec.rb +102 -0
- data/spec/models/message_source_attachment_spec.rb +48 -0
- data/spec/models/message_source_spec.rb +90 -0
- data/spec/models/message_spec.rb +21 -0
- data/spec/models/message_test_params_spec.rb +102 -0
- data/spec/models/message_update_params_spec.rb +52 -0
- data/spec/models/monthly_email_usage_meter_spec.rb +58 -0
- data/spec/models/organization_alerts_params_spec.rb +36 -0
- data/spec/models/organization_alerts_spec.rb +36 -0
- data/spec/models/organization_bounce_policy_params_spec.rb +42 -0
- data/spec/models/organization_bounce_policy_spec.rb +42 -0
- data/spec/models/organization_onboarding_spec.rb +42 -0
- data/spec/models/organization_profile_params_spec.rb +52 -0
- data/spec/models/organization_profile_spec.rb +48 -0
- data/spec/models/organization_pulse_spec.rb +66 -0
- data/spec/models/organization_spec.rb +72 -0
- data/spec/models/organization_update_params_spec.rb +54 -0
- data/spec/models/organization_usage_spec.rb +60 -0
- data/spec/models/outbound_message_spec.rb +128 -0
- data/spec/models/people_bulk_create_params_spec.rb +70 -0
- data/spec/models/people_bulk_create_result_spec.rb +84 -0
- data/spec/models/person_create_params_spec.rb +76 -0
- data/spec/models/person_detail_spec.rb +170 -0
- data/spec/models/person_erased_spec.rb +42 -0
- data/spec/models/person_group_ref_spec.rb +48 -0
- data/spec/models/person_import_item_spec.rb +76 -0
- data/spec/models/person_import_reason_spec.rb +52 -0
- data/spec/models/person_import_stats_spec.rb +94 -0
- data/spec/models/person_list_item_spec.rb +140 -0
- data/spec/models/person_list_spec.rb +60 -0
- data/spec/models/person_segment_ref_spec.rb +48 -0
- data/spec/models/person_spec.rb +146 -0
- data/spec/models/person_update_params_spec.rb +76 -0
- data/spec/models/program_create_params_spec.rb +180 -0
- data/spec/models/program_detail_spec.rb +254 -0
- data/spec/models/program_list_item_spec.rb +242 -0
- data/spec/models/program_list_spec.rb +60 -0
- data/spec/models/program_pause_meta_spec.rb +42 -0
- data/spec/models/program_sender_ref_spec.rb +60 -0
- data/spec/models/program_spec.rb +236 -0
- data/spec/models/program_stats_spec.rb +48 -0
- data/spec/models/program_step_input_spec.rb +108 -0
- data/spec/models/program_update_params_spec.rb +180 -0
- data/spec/models/program_variant_input_spec.rb +60 -0
- data/spec/models/programs_audience_list_spec.rb +60 -0
- data/spec/models/programs_senders_list_spec.rb +60 -0
- data/spec/models/provider_api_sender_input_spec.rb +96 -0
- data/spec/models/pulse_deliverability_spec.rb +72 -0
- data/spec/models/pulse_program_spec.rb +112 -0
- data/spec/models/pulse_sender_fleet_spec.rb +72 -0
- data/spec/models/pulse_value_spec.rb +60 -0
- data/spec/models/report_share_spec.rb +48 -0
- data/spec/models/segment_create_params_spec.rb +48 -0
- data/spec/models/segment_list_spec.rb +60 -0
- data/spec/models/segment_spec.rb +78 -0
- data/spec/models/segment_update_params_spec.rb +48 -0
- data/spec/models/self_hosted_sender_input_spec.rb +90 -0
- data/spec/models/sender_bulk_error_spec.rb +42 -0
- data/spec/models/sender_detail_spec.rb +212 -0
- data/spec/models/sender_list_spec.rb +60 -0
- data/spec/models/sender_remove_result_spec.rb +46 -0
- data/spec/models/sender_spec.rb +200 -0
- data/spec/models/sender_usage_spec.rb +54 -0
- data/spec/models/sender_warmup_status_spec.rb +42 -0
- data/spec/models/slack_channel_spec.rb +42 -0
- data/spec/models/smtp_connection_settings_spec.rb +64 -0
- data/spec/models/smtp_connection_update_spec.rb +64 -0
- data/spec/models/smtp_sender_input_spec.rb +102 -0
- data/spec/models/static_email_variant_content_spec.rb +66 -0
- data/spec/models/step_with_variants_spec.rb +136 -0
- data/spec/models/suppression_bulk_params_spec.rb +42 -0
- data/spec/models/suppression_bulk_result_spec.rb +36 -0
- data/spec/models/suppression_create_params_spec.rb +58 -0
- data/spec/models/suppression_list_spec.rb +60 -0
- data/spec/models/suppression_scope_spec.rb +30 -0
- data/spec/models/suppression_spec.rb +78 -0
- data/spec/models/sync_model_spec.rb +30 -0
- data/spec/models/team_size_spec.rb +30 -0
- data/spec/models/tracking_dns_record_spec.rb +48 -0
- data/spec/models/update_sender_input_spec.rb +134 -0
- data/spec/models/usage_meter_spec.rb +52 -0
- data/spec/models/usage_plan_spec.rb +48 -0
- data/spec/models/variant_ai_spec.rb +52 -0
- data/spec/models/variant_spec.rb +88 -0
- data/spec/models/verify_email_input_spec.rb +36 -0
- data/spec/models/verify_mx_spec.rb +48 -0
- data/spec/models/verify_reachability_spec.rb +30 -0
- data/spec/models/verify_reason_code_spec.rb +30 -0
- data/spec/models/verify_result_spec.rb +96 -0
- data/spec/models/verify_signals_spec.rb +66 -0
- data/spec/models/verify_syntax_spec.rb +48 -0
- data/spec/models/voice_sender_input_spec.rb +96 -0
- data/spec/models/warmup_runtime_status_spec.rb +86 -0
- data/spec/models/warmup_settings_spec.rb +118 -0
- data/spec/models/warmup_template_spec.rb +42 -0
- data/spec/models/warmup_today_tally_spec.rb +48 -0
- data/spec/spec_helper.rb +111 -0
- metadata +935 -0
|
@@ -0,0 +1,1299 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Norbelys API
|
|
3
|
+
|
|
4
|
+
#The **Norbelys API** is a single, predictable REST surface for cold email and outreach — people, senders, programs, and sending all live behind the five patterns below. Developer-first and AI-first: every name is either already invented (Schema.org) or obvious. ## Authentication Every request authenticates with an **org-scoped API key**. Create one in **Settings → API keys** and send it as a bearer token: ```http GET https://api.norbelys.com/v1/people Authorization: Bearer ak_live_… ``` Interactive agents may instead use OAuth 2.1 (see `/auth.md` and the `/.well-known/oauth-protected-resource` metadata). ## Conventions - **Base URL** — `https://api.norbelys.com/v1`. - **JSON in, JSON out.** Timestamps are ISO-8601 in UTC. - **Cursor pagination.** List endpoints take `limit` + `cursor` and return `{ data, hasMore, nextCursor }` (offset-paged tables add `page` + `total`). - **Expansions.** Detail GETs take an `expand[]` query param to inline related data (e.g. `GET /people/{id}?expand[]=timeline`) instead of extra calls. - **Soft deletes.** Anything that has been used is archived, never hard-deleted — `DELETE` archives the resource and returns it. ## Errors Failures return the same envelope on every 4xx/5xx, with the matching HTTP status: ```json { \"error\": { \"type\": \"invalid_request\", \"code\": \"invalid_param\", \"message\": \"…\", \"hint\": \"…\", \"doc_url\": \"…\" } } ``` `type` is a broad, machine-routable category derived from the status; `code` is the stable machine contract you branch on (never the human `message`). See the `ApiError` schema. ## Idempotency Every `POST` accepts an optional **`Idempotency-Key`** header. Reuse the same key to replay the original result for 24h instead of re-executing — so a retried create can never double-charge or duplicate a record. ## Rate limits & versioning Abuse control is enforced at the edge; responses advertise the policy via the `RateLimit-Policy` header, and a `429` carries `Retry-After`. The API is versioned in the URL path (`/v1`). Breaking changes ship under a new version; a retiring surface is announced with `Deprecation` + `Sunset` response headers at least 90 days ahead.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 0.0.1
|
|
7
|
+
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.10.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module Norbelys
|
|
16
|
+
class ProgramsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Archive a program
|
|
23
|
+
# Soft-delete the campaign and cancel its in-flight runs. Reversible with programs.restore.
|
|
24
|
+
# @param id [String]
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [Program]
|
|
27
|
+
def programs_archive(id, opts = {})
|
|
28
|
+
data, _status_code, _headers = programs_archive_with_http_info(id, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Archive a program
|
|
33
|
+
# Soft-delete the campaign and cancel its in-flight runs. Reversible with programs.restore.
|
|
34
|
+
# @param id [String]
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(Program, Integer, Hash)>] Program data, response status code and response headers
|
|
37
|
+
def programs_archive_with_http_info(id, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_archive ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'id' is set
|
|
42
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_archive"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/programs/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
|
|
56
|
+
# form parameters
|
|
57
|
+
form_params = opts[:form_params] || {}
|
|
58
|
+
|
|
59
|
+
# http body (model)
|
|
60
|
+
post_body = opts[:debug_body]
|
|
61
|
+
|
|
62
|
+
# return_type
|
|
63
|
+
return_type = opts[:debug_return_type] || 'Program'
|
|
64
|
+
|
|
65
|
+
# auth_names
|
|
66
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
67
|
+
|
|
68
|
+
new_options = opts.merge(
|
|
69
|
+
:operation => :"ProgramsApi.programs_archive",
|
|
70
|
+
:header_params => header_params,
|
|
71
|
+
:query_params => query_params,
|
|
72
|
+
:form_params => form_params,
|
|
73
|
+
:body => post_body,
|
|
74
|
+
:auth_names => auth_names,
|
|
75
|
+
:return_type => return_type
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
79
|
+
if @api_client.config.debugging
|
|
80
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_archive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
81
|
+
end
|
|
82
|
+
return data, status_code, headers
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# List a program's audience sources
|
|
86
|
+
# Where this campaign's people came from — one entry per source (segment, group, CSV import, manual), with the people count enrolled from each and whether a segment is kept in continuous sync (dynamic audience).
|
|
87
|
+
# @param id [String]
|
|
88
|
+
# @param [Hash] opts the optional parameters
|
|
89
|
+
# @return [ProgramsAudienceList]
|
|
90
|
+
def programs_audience_list(id, opts = {})
|
|
91
|
+
data, _status_code, _headers = programs_audience_list_with_http_info(id, opts)
|
|
92
|
+
data
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# List a program's audience sources
|
|
96
|
+
# Where this campaign's people came from — one entry per source (segment, group, CSV import, manual), with the people count enrolled from each and whether a segment is kept in continuous sync (dynamic audience).
|
|
97
|
+
# @param id [String]
|
|
98
|
+
# @param [Hash] opts the optional parameters
|
|
99
|
+
# @return [Array<(ProgramsAudienceList, Integer, Hash)>] ProgramsAudienceList data, response status code and response headers
|
|
100
|
+
def programs_audience_list_with_http_info(id, opts = {})
|
|
101
|
+
if @api_client.config.debugging
|
|
102
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_audience_list ...'
|
|
103
|
+
end
|
|
104
|
+
# verify the required parameter 'id' is set
|
|
105
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
106
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_audience_list"
|
|
107
|
+
end
|
|
108
|
+
# resource path
|
|
109
|
+
local_var_path = '/programs/{id}/audience'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
110
|
+
|
|
111
|
+
# query parameters
|
|
112
|
+
query_params = opts[:query_params] || {}
|
|
113
|
+
|
|
114
|
+
# header parameters
|
|
115
|
+
header_params = opts[:header_params] || {}
|
|
116
|
+
# HTTP header 'Accept' (if needed)
|
|
117
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
118
|
+
|
|
119
|
+
# form parameters
|
|
120
|
+
form_params = opts[:form_params] || {}
|
|
121
|
+
|
|
122
|
+
# http body (model)
|
|
123
|
+
post_body = opts[:debug_body]
|
|
124
|
+
|
|
125
|
+
# return_type
|
|
126
|
+
return_type = opts[:debug_return_type] || 'ProgramsAudienceList'
|
|
127
|
+
|
|
128
|
+
# auth_names
|
|
129
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
130
|
+
|
|
131
|
+
new_options = opts.merge(
|
|
132
|
+
:operation => :"ProgramsApi.programs_audience_list",
|
|
133
|
+
:header_params => header_params,
|
|
134
|
+
:query_params => query_params,
|
|
135
|
+
:form_params => form_params,
|
|
136
|
+
:body => post_body,
|
|
137
|
+
:auth_names => auth_names,
|
|
138
|
+
:return_type => return_type
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
142
|
+
if @api_client.config.debugging
|
|
143
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_audience_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
144
|
+
end
|
|
145
|
+
return data, status_code, headers
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# Create a program
|
|
149
|
+
# Create a cold-email sequence. Optionally build the WHOLE cadence in one call by passing steps[] (each with inline variants[]); the response returns the program with its steps expanded. Then attach senders, enroll people, and launch.
|
|
150
|
+
# @param program_create_params [ProgramCreateParams]
|
|
151
|
+
# @param [Hash] opts the optional parameters
|
|
152
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
153
|
+
# @return [ProgramDetail]
|
|
154
|
+
def programs_create(program_create_params, opts = {})
|
|
155
|
+
data, _status_code, _headers = programs_create_with_http_info(program_create_params, opts)
|
|
156
|
+
data
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Create a program
|
|
160
|
+
# Create a cold-email sequence. Optionally build the WHOLE cadence in one call by passing steps[] (each with inline variants[]); the response returns the program with its steps expanded. Then attach senders, enroll people, and launch.
|
|
161
|
+
# @param program_create_params [ProgramCreateParams]
|
|
162
|
+
# @param [Hash] opts the optional parameters
|
|
163
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
164
|
+
# @return [Array<(ProgramDetail, Integer, Hash)>] ProgramDetail data, response status code and response headers
|
|
165
|
+
def programs_create_with_http_info(program_create_params, opts = {})
|
|
166
|
+
if @api_client.config.debugging
|
|
167
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_create ...'
|
|
168
|
+
end
|
|
169
|
+
# verify the required parameter 'program_create_params' is set
|
|
170
|
+
if @api_client.config.client_side_validation && program_create_params.nil?
|
|
171
|
+
fail ArgumentError, "Missing the required parameter 'program_create_params' when calling ProgramsApi.programs_create"
|
|
172
|
+
end
|
|
173
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
174
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_create, the character length must be smaller than or equal to 255.'
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
# resource path
|
|
178
|
+
local_var_path = '/programs'
|
|
179
|
+
|
|
180
|
+
# query parameters
|
|
181
|
+
query_params = opts[:query_params] || {}
|
|
182
|
+
|
|
183
|
+
# header parameters
|
|
184
|
+
header_params = opts[:header_params] || {}
|
|
185
|
+
# HTTP header 'Accept' (if needed)
|
|
186
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
187
|
+
# HTTP header 'Content-Type'
|
|
188
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
189
|
+
if !content_type.nil?
|
|
190
|
+
header_params['Content-Type'] = content_type
|
|
191
|
+
end
|
|
192
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
193
|
+
|
|
194
|
+
# form parameters
|
|
195
|
+
form_params = opts[:form_params] || {}
|
|
196
|
+
|
|
197
|
+
# http body (model)
|
|
198
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(program_create_params)
|
|
199
|
+
|
|
200
|
+
# return_type
|
|
201
|
+
return_type = opts[:debug_return_type] || 'ProgramDetail'
|
|
202
|
+
|
|
203
|
+
# auth_names
|
|
204
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
205
|
+
|
|
206
|
+
new_options = opts.merge(
|
|
207
|
+
:operation => :"ProgramsApi.programs_create",
|
|
208
|
+
:header_params => header_params,
|
|
209
|
+
:query_params => query_params,
|
|
210
|
+
:form_params => form_params,
|
|
211
|
+
:body => post_body,
|
|
212
|
+
:auth_names => auth_names,
|
|
213
|
+
:return_type => return_type
|
|
214
|
+
)
|
|
215
|
+
|
|
216
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
217
|
+
if @api_client.config.debugging
|
|
218
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
219
|
+
end
|
|
220
|
+
return data, status_code, headers
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
# Enroll people into a program
|
|
224
|
+
# Add an audience as leads — the union of personIds, a groupId's members, and a segmentId's current matches (omit all to enroll every active person). Never starts sending on its own; call programs.launch to go live.
|
|
225
|
+
# @param id [String]
|
|
226
|
+
# @param [Hash] opts the optional parameters
|
|
227
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
228
|
+
# @option opts [EnrollProgramParams] :enroll_program_params
|
|
229
|
+
# @return [EnrollProgramResult]
|
|
230
|
+
def programs_enroll(id, opts = {})
|
|
231
|
+
data, _status_code, _headers = programs_enroll_with_http_info(id, opts)
|
|
232
|
+
data
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Enroll people into a program
|
|
236
|
+
# Add an audience as leads — the union of personIds, a groupId's members, and a segmentId's current matches (omit all to enroll every active person). Never starts sending on its own; call programs.launch to go live.
|
|
237
|
+
# @param id [String]
|
|
238
|
+
# @param [Hash] opts the optional parameters
|
|
239
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
240
|
+
# @option opts [EnrollProgramParams] :enroll_program_params
|
|
241
|
+
# @return [Array<(EnrollProgramResult, Integer, Hash)>] EnrollProgramResult data, response status code and response headers
|
|
242
|
+
def programs_enroll_with_http_info(id, opts = {})
|
|
243
|
+
if @api_client.config.debugging
|
|
244
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_enroll ...'
|
|
245
|
+
end
|
|
246
|
+
# verify the required parameter 'id' is set
|
|
247
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
248
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_enroll"
|
|
249
|
+
end
|
|
250
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
251
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_enroll, the character length must be smaller than or equal to 255.'
|
|
252
|
+
end
|
|
253
|
+
|
|
254
|
+
# resource path
|
|
255
|
+
local_var_path = '/programs/{id}/enroll'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
256
|
+
|
|
257
|
+
# query parameters
|
|
258
|
+
query_params = opts[:query_params] || {}
|
|
259
|
+
|
|
260
|
+
# header parameters
|
|
261
|
+
header_params = opts[:header_params] || {}
|
|
262
|
+
# HTTP header 'Accept' (if needed)
|
|
263
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
264
|
+
# HTTP header 'Content-Type'
|
|
265
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
266
|
+
if !content_type.nil?
|
|
267
|
+
header_params['Content-Type'] = content_type
|
|
268
|
+
end
|
|
269
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
270
|
+
|
|
271
|
+
# form parameters
|
|
272
|
+
form_params = opts[:form_params] || {}
|
|
273
|
+
|
|
274
|
+
# http body (model)
|
|
275
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'enroll_program_params'])
|
|
276
|
+
|
|
277
|
+
# return_type
|
|
278
|
+
return_type = opts[:debug_return_type] || 'EnrollProgramResult'
|
|
279
|
+
|
|
280
|
+
# auth_names
|
|
281
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
282
|
+
|
|
283
|
+
new_options = opts.merge(
|
|
284
|
+
:operation => :"ProgramsApi.programs_enroll",
|
|
285
|
+
:header_params => header_params,
|
|
286
|
+
:query_params => query_params,
|
|
287
|
+
:form_params => form_params,
|
|
288
|
+
:body => post_body,
|
|
289
|
+
:auth_names => auth_names,
|
|
290
|
+
:return_type => return_type
|
|
291
|
+
)
|
|
292
|
+
|
|
293
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
294
|
+
if @api_client.config.debugging
|
|
295
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_enroll\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
296
|
+
end
|
|
297
|
+
return data, status_code, headers
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
# Get an enrollment
|
|
301
|
+
# @param program_id [String]
|
|
302
|
+
# @param id [String]
|
|
303
|
+
# @param [Hash] opts the optional parameters
|
|
304
|
+
# @return [Enrollment]
|
|
305
|
+
def programs_enrollments_find(program_id, id, opts = {})
|
|
306
|
+
data, _status_code, _headers = programs_enrollments_find_with_http_info(program_id, id, opts)
|
|
307
|
+
data
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
# Get an enrollment
|
|
311
|
+
# @param program_id [String]
|
|
312
|
+
# @param id [String]
|
|
313
|
+
# @param [Hash] opts the optional parameters
|
|
314
|
+
# @return [Array<(Enrollment, Integer, Hash)>] Enrollment data, response status code and response headers
|
|
315
|
+
def programs_enrollments_find_with_http_info(program_id, id, opts = {})
|
|
316
|
+
if @api_client.config.debugging
|
|
317
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_enrollments_find ...'
|
|
318
|
+
end
|
|
319
|
+
# verify the required parameter 'program_id' is set
|
|
320
|
+
if @api_client.config.client_side_validation && program_id.nil?
|
|
321
|
+
fail ArgumentError, "Missing the required parameter 'program_id' when calling ProgramsApi.programs_enrollments_find"
|
|
322
|
+
end
|
|
323
|
+
# verify the required parameter 'id' is set
|
|
324
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
325
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_enrollments_find"
|
|
326
|
+
end
|
|
327
|
+
# resource path
|
|
328
|
+
local_var_path = '/programs/{programId}/enrollments/{id}'.sub('{' + 'programId' + '}', CGI.escape(program_id.to_s)).sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
329
|
+
|
|
330
|
+
# query parameters
|
|
331
|
+
query_params = opts[:query_params] || {}
|
|
332
|
+
|
|
333
|
+
# header parameters
|
|
334
|
+
header_params = opts[:header_params] || {}
|
|
335
|
+
# HTTP header 'Accept' (if needed)
|
|
336
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
337
|
+
|
|
338
|
+
# form parameters
|
|
339
|
+
form_params = opts[:form_params] || {}
|
|
340
|
+
|
|
341
|
+
# http body (model)
|
|
342
|
+
post_body = opts[:debug_body]
|
|
343
|
+
|
|
344
|
+
# return_type
|
|
345
|
+
return_type = opts[:debug_return_type] || 'Enrollment'
|
|
346
|
+
|
|
347
|
+
# auth_names
|
|
348
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
349
|
+
|
|
350
|
+
new_options = opts.merge(
|
|
351
|
+
:operation => :"ProgramsApi.programs_enrollments_find",
|
|
352
|
+
:header_params => header_params,
|
|
353
|
+
:query_params => query_params,
|
|
354
|
+
:form_params => form_params,
|
|
355
|
+
:body => post_body,
|
|
356
|
+
:auth_names => auth_names,
|
|
357
|
+
:return_type => return_type
|
|
358
|
+
)
|
|
359
|
+
|
|
360
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
361
|
+
if @api_client.config.debugging
|
|
362
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_enrollments_find\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
363
|
+
end
|
|
364
|
+
return data, status_code, headers
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
# List a program's leads
|
|
368
|
+
# The people enrolled in the program and where each sits in the cadence, with per-status counts for the Leads view.
|
|
369
|
+
# @param program_id [String]
|
|
370
|
+
# @param [Hash] opts the optional parameters
|
|
371
|
+
# @option opts [String] :cursor
|
|
372
|
+
# @option opts [Boolean] :include_archived
|
|
373
|
+
# @option opts [Integer] :limit
|
|
374
|
+
# @option opts [String] :dir
|
|
375
|
+
# @option opts [Integer] :page
|
|
376
|
+
# @option opts [String] :q
|
|
377
|
+
# @option opts [String] :sort
|
|
378
|
+
# @option opts [Array<String>] :status
|
|
379
|
+
# @return [EnrollmentList]
|
|
380
|
+
def programs_enrollments_list(program_id, opts = {})
|
|
381
|
+
data, _status_code, _headers = programs_enrollments_list_with_http_info(program_id, opts)
|
|
382
|
+
data
|
|
383
|
+
end
|
|
384
|
+
|
|
385
|
+
# List a program's leads
|
|
386
|
+
# The people enrolled in the program and where each sits in the cadence, with per-status counts for the Leads view.
|
|
387
|
+
# @param program_id [String]
|
|
388
|
+
# @param [Hash] opts the optional parameters
|
|
389
|
+
# @option opts [String] :cursor
|
|
390
|
+
# @option opts [Boolean] :include_archived
|
|
391
|
+
# @option opts [Integer] :limit
|
|
392
|
+
# @option opts [String] :dir
|
|
393
|
+
# @option opts [Integer] :page
|
|
394
|
+
# @option opts [String] :q
|
|
395
|
+
# @option opts [String] :sort
|
|
396
|
+
# @option opts [Array<String>] :status
|
|
397
|
+
# @return [Array<(EnrollmentList, Integer, Hash)>] EnrollmentList data, response status code and response headers
|
|
398
|
+
def programs_enrollments_list_with_http_info(program_id, opts = {})
|
|
399
|
+
if @api_client.config.debugging
|
|
400
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_enrollments_list ...'
|
|
401
|
+
end
|
|
402
|
+
# verify the required parameter 'program_id' is set
|
|
403
|
+
if @api_client.config.client_side_validation && program_id.nil?
|
|
404
|
+
fail ArgumentError, "Missing the required parameter 'program_id' when calling ProgramsApi.programs_enrollments_list"
|
|
405
|
+
end
|
|
406
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
|
|
407
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProgramsApi.programs_enrollments_list, must be smaller than or equal to 100.'
|
|
408
|
+
end
|
|
409
|
+
|
|
410
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
|
|
411
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProgramsApi.programs_enrollments_list, must be greater than or equal to 1.'
|
|
412
|
+
end
|
|
413
|
+
|
|
414
|
+
allowable_values = ["asc", "desc"]
|
|
415
|
+
if @api_client.config.client_side_validation && opts[:'dir'] && !allowable_values.include?(opts[:'dir'])
|
|
416
|
+
fail ArgumentError, "invalid value for \"dir\", must be one of #{allowable_values}"
|
|
417
|
+
end
|
|
418
|
+
if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
|
|
419
|
+
fail ArgumentError, 'invalid value for "opts[:"page"]" when calling ProgramsApi.programs_enrollments_list, must be greater than or equal to 1.'
|
|
420
|
+
end
|
|
421
|
+
|
|
422
|
+
allowable_values = ["created", "updated", "status"]
|
|
423
|
+
if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
|
|
424
|
+
fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
|
|
425
|
+
end
|
|
426
|
+
allowable_values = ["active", "replied", "bounced", "unsubscribed", "finished", "skipped", "stopped", "cancelled", "paused"]
|
|
427
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !opts[:'status'].all? { |item| allowable_values.include?(item) }
|
|
428
|
+
fail ArgumentError, "invalid value for \"status\", must include one of #{allowable_values}"
|
|
429
|
+
end
|
|
430
|
+
# resource path
|
|
431
|
+
local_var_path = '/programs/{programId}/enrollments'.sub('{' + 'programId' + '}', CGI.escape(program_id.to_s))
|
|
432
|
+
|
|
433
|
+
# query parameters
|
|
434
|
+
query_params = opts[:query_params] || {}
|
|
435
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
436
|
+
query_params[:'includeArchived'] = opts[:'include_archived'] if !opts[:'include_archived'].nil?
|
|
437
|
+
query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
|
|
438
|
+
query_params[:'dir'] = opts[:'dir'] if !opts[:'dir'].nil?
|
|
439
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
440
|
+
query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
|
|
441
|
+
query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
|
|
442
|
+
query_params[:'status'] = @api_client.build_collection_param(opts[:'status'], :csv) if !opts[:'status'].nil?
|
|
443
|
+
|
|
444
|
+
# header parameters
|
|
445
|
+
header_params = opts[:header_params] || {}
|
|
446
|
+
# HTTP header 'Accept' (if needed)
|
|
447
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
448
|
+
|
|
449
|
+
# form parameters
|
|
450
|
+
form_params = opts[:form_params] || {}
|
|
451
|
+
|
|
452
|
+
# http body (model)
|
|
453
|
+
post_body = opts[:debug_body]
|
|
454
|
+
|
|
455
|
+
# return_type
|
|
456
|
+
return_type = opts[:debug_return_type] || 'EnrollmentList'
|
|
457
|
+
|
|
458
|
+
# auth_names
|
|
459
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
460
|
+
|
|
461
|
+
new_options = opts.merge(
|
|
462
|
+
:operation => :"ProgramsApi.programs_enrollments_list",
|
|
463
|
+
:header_params => header_params,
|
|
464
|
+
:query_params => query_params,
|
|
465
|
+
:form_params => form_params,
|
|
466
|
+
:body => post_body,
|
|
467
|
+
:auth_names => auth_names,
|
|
468
|
+
:return_type => return_type
|
|
469
|
+
)
|
|
470
|
+
|
|
471
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
472
|
+
if @api_client.config.debugging
|
|
473
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_enrollments_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
474
|
+
end
|
|
475
|
+
return data, status_code, headers
|
|
476
|
+
end
|
|
477
|
+
|
|
478
|
+
# Get a program
|
|
479
|
+
# Read one program. Pass expand[]=steps to inline the cadence (each step with its arms) and expand[]=senders for the attached mailboxes.
|
|
480
|
+
# @param id [String]
|
|
481
|
+
# @param [Hash] opts the optional parameters
|
|
482
|
+
# @option opts [Array<String>] :expand
|
|
483
|
+
# @return [ProgramDetail]
|
|
484
|
+
def programs_find(id, opts = {})
|
|
485
|
+
data, _status_code, _headers = programs_find_with_http_info(id, opts)
|
|
486
|
+
data
|
|
487
|
+
end
|
|
488
|
+
|
|
489
|
+
# Get a program
|
|
490
|
+
# Read one program. Pass expand[]=steps to inline the cadence (each step with its arms) and expand[]=senders for the attached mailboxes.
|
|
491
|
+
# @param id [String]
|
|
492
|
+
# @param [Hash] opts the optional parameters
|
|
493
|
+
# @option opts [Array<String>] :expand
|
|
494
|
+
# @return [Array<(ProgramDetail, Integer, Hash)>] ProgramDetail data, response status code and response headers
|
|
495
|
+
def programs_find_with_http_info(id, opts = {})
|
|
496
|
+
if @api_client.config.debugging
|
|
497
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_find ...'
|
|
498
|
+
end
|
|
499
|
+
# verify the required parameter 'id' is set
|
|
500
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
501
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_find"
|
|
502
|
+
end
|
|
503
|
+
allowable_values = ["steps", "senders"]
|
|
504
|
+
if @api_client.config.client_side_validation && opts[:'expand'] && !opts[:'expand'].all? { |item| allowable_values.include?(item) }
|
|
505
|
+
fail ArgumentError, "invalid value for \"expand\", must include one of #{allowable_values}"
|
|
506
|
+
end
|
|
507
|
+
# resource path
|
|
508
|
+
local_var_path = '/programs/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
509
|
+
|
|
510
|
+
# query parameters
|
|
511
|
+
query_params = opts[:query_params] || {}
|
|
512
|
+
query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :csv) if !opts[:'expand'].nil?
|
|
513
|
+
|
|
514
|
+
# header parameters
|
|
515
|
+
header_params = opts[:header_params] || {}
|
|
516
|
+
# HTTP header 'Accept' (if needed)
|
|
517
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
518
|
+
|
|
519
|
+
# form parameters
|
|
520
|
+
form_params = opts[:form_params] || {}
|
|
521
|
+
|
|
522
|
+
# http body (model)
|
|
523
|
+
post_body = opts[:debug_body]
|
|
524
|
+
|
|
525
|
+
# return_type
|
|
526
|
+
return_type = opts[:debug_return_type] || 'ProgramDetail'
|
|
527
|
+
|
|
528
|
+
# auth_names
|
|
529
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
530
|
+
|
|
531
|
+
new_options = opts.merge(
|
|
532
|
+
:operation => :"ProgramsApi.programs_find",
|
|
533
|
+
:header_params => header_params,
|
|
534
|
+
:query_params => query_params,
|
|
535
|
+
:form_params => form_params,
|
|
536
|
+
:body => post_body,
|
|
537
|
+
:auth_names => auth_names,
|
|
538
|
+
:return_type => return_type
|
|
539
|
+
)
|
|
540
|
+
|
|
541
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
542
|
+
if @api_client.config.debugging
|
|
543
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_find\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
544
|
+
end
|
|
545
|
+
return data, status_code, headers
|
|
546
|
+
end
|
|
547
|
+
|
|
548
|
+
# Launch a program
|
|
549
|
+
# The go-live gate — the only path a draft becomes active. Requires at least one live sender, one step, and one enrolled lead. Returns any non-blocking compliance warnings.
|
|
550
|
+
# @param id [String]
|
|
551
|
+
# @param [Hash] opts the optional parameters
|
|
552
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
553
|
+
# @option opts [LaunchProgramParams] :launch_program_params
|
|
554
|
+
# @return [LaunchProgramResult]
|
|
555
|
+
def programs_launch(id, opts = {})
|
|
556
|
+
data, _status_code, _headers = programs_launch_with_http_info(id, opts)
|
|
557
|
+
data
|
|
558
|
+
end
|
|
559
|
+
|
|
560
|
+
# Launch a program
|
|
561
|
+
# The go-live gate — the only path a draft becomes active. Requires at least one live sender, one step, and one enrolled lead. Returns any non-blocking compliance warnings.
|
|
562
|
+
# @param id [String]
|
|
563
|
+
# @param [Hash] opts the optional parameters
|
|
564
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
565
|
+
# @option opts [LaunchProgramParams] :launch_program_params
|
|
566
|
+
# @return [Array<(LaunchProgramResult, Integer, Hash)>] LaunchProgramResult data, response status code and response headers
|
|
567
|
+
def programs_launch_with_http_info(id, opts = {})
|
|
568
|
+
if @api_client.config.debugging
|
|
569
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_launch ...'
|
|
570
|
+
end
|
|
571
|
+
# verify the required parameter 'id' is set
|
|
572
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
573
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_launch"
|
|
574
|
+
end
|
|
575
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
576
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_launch, the character length must be smaller than or equal to 255.'
|
|
577
|
+
end
|
|
578
|
+
|
|
579
|
+
# resource path
|
|
580
|
+
local_var_path = '/programs/{id}/launch'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
581
|
+
|
|
582
|
+
# query parameters
|
|
583
|
+
query_params = opts[:query_params] || {}
|
|
584
|
+
|
|
585
|
+
# header parameters
|
|
586
|
+
header_params = opts[:header_params] || {}
|
|
587
|
+
# HTTP header 'Accept' (if needed)
|
|
588
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
589
|
+
# HTTP header 'Content-Type'
|
|
590
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
591
|
+
if !content_type.nil?
|
|
592
|
+
header_params['Content-Type'] = content_type
|
|
593
|
+
end
|
|
594
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
595
|
+
|
|
596
|
+
# form parameters
|
|
597
|
+
form_params = opts[:form_params] || {}
|
|
598
|
+
|
|
599
|
+
# http body (model)
|
|
600
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'launch_program_params'])
|
|
601
|
+
|
|
602
|
+
# return_type
|
|
603
|
+
return_type = opts[:debug_return_type] || 'LaunchProgramResult'
|
|
604
|
+
|
|
605
|
+
# auth_names
|
|
606
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
607
|
+
|
|
608
|
+
new_options = opts.merge(
|
|
609
|
+
:operation => :"ProgramsApi.programs_launch",
|
|
610
|
+
:header_params => header_params,
|
|
611
|
+
:query_params => query_params,
|
|
612
|
+
:form_params => form_params,
|
|
613
|
+
:body => post_body,
|
|
614
|
+
:auth_names => auth_names,
|
|
615
|
+
:return_type => return_type
|
|
616
|
+
)
|
|
617
|
+
|
|
618
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
619
|
+
if @api_client.config.debugging
|
|
620
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_launch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
621
|
+
end
|
|
622
|
+
return data, status_code, headers
|
|
623
|
+
end
|
|
624
|
+
|
|
625
|
+
# List programs
|
|
626
|
+
# List the org's campaigns (cold-email sequences), newest first, with per-campaign stats (leads, completion, next send).
|
|
627
|
+
# @param [Hash] opts the optional parameters
|
|
628
|
+
# @option opts [String] :cursor
|
|
629
|
+
# @option opts [Boolean] :include_archived
|
|
630
|
+
# @option opts [Integer] :limit
|
|
631
|
+
# @option opts [String] :dir
|
|
632
|
+
# @option opts [Integer] :page
|
|
633
|
+
# @option opts [Boolean] :archived
|
|
634
|
+
# @option opts [String] :q
|
|
635
|
+
# @option opts [String] :sender_id
|
|
636
|
+
# @option opts [String] :sort
|
|
637
|
+
# @option opts [Array<String>] :status
|
|
638
|
+
# @return [ProgramList]
|
|
639
|
+
def programs_list(opts = {})
|
|
640
|
+
data, _status_code, _headers = programs_list_with_http_info(opts)
|
|
641
|
+
data
|
|
642
|
+
end
|
|
643
|
+
|
|
644
|
+
# List programs
|
|
645
|
+
# List the org's campaigns (cold-email sequences), newest first, with per-campaign stats (leads, completion, next send).
|
|
646
|
+
# @param [Hash] opts the optional parameters
|
|
647
|
+
# @option opts [String] :cursor
|
|
648
|
+
# @option opts [Boolean] :include_archived
|
|
649
|
+
# @option opts [Integer] :limit
|
|
650
|
+
# @option opts [String] :dir
|
|
651
|
+
# @option opts [Integer] :page
|
|
652
|
+
# @option opts [Boolean] :archived
|
|
653
|
+
# @option opts [String] :q
|
|
654
|
+
# @option opts [String] :sender_id
|
|
655
|
+
# @option opts [String] :sort
|
|
656
|
+
# @option opts [Array<String>] :status
|
|
657
|
+
# @return [Array<(ProgramList, Integer, Hash)>] ProgramList data, response status code and response headers
|
|
658
|
+
def programs_list_with_http_info(opts = {})
|
|
659
|
+
if @api_client.config.debugging
|
|
660
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_list ...'
|
|
661
|
+
end
|
|
662
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
|
|
663
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProgramsApi.programs_list, must be smaller than or equal to 100.'
|
|
664
|
+
end
|
|
665
|
+
|
|
666
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
|
|
667
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ProgramsApi.programs_list, must be greater than or equal to 1.'
|
|
668
|
+
end
|
|
669
|
+
|
|
670
|
+
allowable_values = ["asc", "desc"]
|
|
671
|
+
if @api_client.config.client_side_validation && opts[:'dir'] && !allowable_values.include?(opts[:'dir'])
|
|
672
|
+
fail ArgumentError, "invalid value for \"dir\", must be one of #{allowable_values}"
|
|
673
|
+
end
|
|
674
|
+
if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
|
|
675
|
+
fail ArgumentError, 'invalid value for "opts[:"page"]" when calling ProgramsApi.programs_list, must be greater than or equal to 1.'
|
|
676
|
+
end
|
|
677
|
+
|
|
678
|
+
allowable_values = ["created", "name", "status"]
|
|
679
|
+
if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
|
|
680
|
+
fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
|
|
681
|
+
end
|
|
682
|
+
allowable_values = ["draft", "active", "paused", "done"]
|
|
683
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !opts[:'status'].all? { |item| allowable_values.include?(item) }
|
|
684
|
+
fail ArgumentError, "invalid value for \"status\", must include one of #{allowable_values}"
|
|
685
|
+
end
|
|
686
|
+
# resource path
|
|
687
|
+
local_var_path = '/programs'
|
|
688
|
+
|
|
689
|
+
# query parameters
|
|
690
|
+
query_params = opts[:query_params] || {}
|
|
691
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
692
|
+
query_params[:'includeArchived'] = opts[:'include_archived'] if !opts[:'include_archived'].nil?
|
|
693
|
+
query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
|
|
694
|
+
query_params[:'dir'] = opts[:'dir'] if !opts[:'dir'].nil?
|
|
695
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
696
|
+
query_params[:'archived'] = opts[:'archived'] if !opts[:'archived'].nil?
|
|
697
|
+
query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
|
|
698
|
+
query_params[:'senderId'] = opts[:'sender_id'] if !opts[:'sender_id'].nil?
|
|
699
|
+
query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
|
|
700
|
+
query_params[:'status'] = @api_client.build_collection_param(opts[:'status'], :csv) if !opts[:'status'].nil?
|
|
701
|
+
|
|
702
|
+
# header parameters
|
|
703
|
+
header_params = opts[:header_params] || {}
|
|
704
|
+
# HTTP header 'Accept' (if needed)
|
|
705
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
706
|
+
|
|
707
|
+
# form parameters
|
|
708
|
+
form_params = opts[:form_params] || {}
|
|
709
|
+
|
|
710
|
+
# http body (model)
|
|
711
|
+
post_body = opts[:debug_body]
|
|
712
|
+
|
|
713
|
+
# return_type
|
|
714
|
+
return_type = opts[:debug_return_type] || 'ProgramList'
|
|
715
|
+
|
|
716
|
+
# auth_names
|
|
717
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
718
|
+
|
|
719
|
+
new_options = opts.merge(
|
|
720
|
+
:operation => :"ProgramsApi.programs_list",
|
|
721
|
+
:header_params => header_params,
|
|
722
|
+
:query_params => query_params,
|
|
723
|
+
:form_params => form_params,
|
|
724
|
+
:body => post_body,
|
|
725
|
+
:auth_names => auth_names,
|
|
726
|
+
:return_type => return_type
|
|
727
|
+
)
|
|
728
|
+
|
|
729
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
730
|
+
if @api_client.config.debugging
|
|
731
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
732
|
+
end
|
|
733
|
+
return data, status_code, headers
|
|
734
|
+
end
|
|
735
|
+
|
|
736
|
+
# Pause a program's sending
|
|
737
|
+
# Stop sending; messages already queued still complete. Resume with programs.resume.
|
|
738
|
+
# @param id [String]
|
|
739
|
+
# @param [Hash] opts the optional parameters
|
|
740
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
741
|
+
# @return [Program]
|
|
742
|
+
def programs_pause(id, opts = {})
|
|
743
|
+
data, _status_code, _headers = programs_pause_with_http_info(id, opts)
|
|
744
|
+
data
|
|
745
|
+
end
|
|
746
|
+
|
|
747
|
+
# Pause a program's sending
|
|
748
|
+
# Stop sending; messages already queued still complete. Resume with programs.resume.
|
|
749
|
+
# @param id [String]
|
|
750
|
+
# @param [Hash] opts the optional parameters
|
|
751
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
752
|
+
# @return [Array<(Program, Integer, Hash)>] Program data, response status code and response headers
|
|
753
|
+
def programs_pause_with_http_info(id, opts = {})
|
|
754
|
+
if @api_client.config.debugging
|
|
755
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_pause ...'
|
|
756
|
+
end
|
|
757
|
+
# verify the required parameter 'id' is set
|
|
758
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
759
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_pause"
|
|
760
|
+
end
|
|
761
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
762
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_pause, the character length must be smaller than or equal to 255.'
|
|
763
|
+
end
|
|
764
|
+
|
|
765
|
+
# resource path
|
|
766
|
+
local_var_path = '/programs/{id}/pause'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
767
|
+
|
|
768
|
+
# query parameters
|
|
769
|
+
query_params = opts[:query_params] || {}
|
|
770
|
+
|
|
771
|
+
# header parameters
|
|
772
|
+
header_params = opts[:header_params] || {}
|
|
773
|
+
# HTTP header 'Accept' (if needed)
|
|
774
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
775
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
776
|
+
|
|
777
|
+
# form parameters
|
|
778
|
+
form_params = opts[:form_params] || {}
|
|
779
|
+
|
|
780
|
+
# http body (model)
|
|
781
|
+
post_body = opts[:debug_body]
|
|
782
|
+
|
|
783
|
+
# return_type
|
|
784
|
+
return_type = opts[:debug_return_type] || 'Program'
|
|
785
|
+
|
|
786
|
+
# auth_names
|
|
787
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
788
|
+
|
|
789
|
+
new_options = opts.merge(
|
|
790
|
+
:operation => :"ProgramsApi.programs_pause",
|
|
791
|
+
:header_params => header_params,
|
|
792
|
+
:query_params => query_params,
|
|
793
|
+
:form_params => form_params,
|
|
794
|
+
:body => post_body,
|
|
795
|
+
:auth_names => auth_names,
|
|
796
|
+
:return_type => return_type
|
|
797
|
+
)
|
|
798
|
+
|
|
799
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
800
|
+
if @api_client.config.debugging
|
|
801
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_pause\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
802
|
+
end
|
|
803
|
+
return data, status_code, headers
|
|
804
|
+
end
|
|
805
|
+
|
|
806
|
+
# Restore an archived program
|
|
807
|
+
# Un-archive the campaign and revive the runs the archive cancelled, resuming what's left of the cadence.
|
|
808
|
+
# @param id [String]
|
|
809
|
+
# @param [Hash] opts the optional parameters
|
|
810
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
811
|
+
# @return [Program]
|
|
812
|
+
def programs_restore(id, opts = {})
|
|
813
|
+
data, _status_code, _headers = programs_restore_with_http_info(id, opts)
|
|
814
|
+
data
|
|
815
|
+
end
|
|
816
|
+
|
|
817
|
+
# Restore an archived program
|
|
818
|
+
# Un-archive the campaign and revive the runs the archive cancelled, resuming what's left of the cadence.
|
|
819
|
+
# @param id [String]
|
|
820
|
+
# @param [Hash] opts the optional parameters
|
|
821
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
822
|
+
# @return [Array<(Program, Integer, Hash)>] Program data, response status code and response headers
|
|
823
|
+
def programs_restore_with_http_info(id, opts = {})
|
|
824
|
+
if @api_client.config.debugging
|
|
825
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_restore ...'
|
|
826
|
+
end
|
|
827
|
+
# verify the required parameter 'id' is set
|
|
828
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
829
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_restore"
|
|
830
|
+
end
|
|
831
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
832
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_restore, the character length must be smaller than or equal to 255.'
|
|
833
|
+
end
|
|
834
|
+
|
|
835
|
+
# resource path
|
|
836
|
+
local_var_path = '/programs/{id}/restore'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
837
|
+
|
|
838
|
+
# query parameters
|
|
839
|
+
query_params = opts[:query_params] || {}
|
|
840
|
+
|
|
841
|
+
# header parameters
|
|
842
|
+
header_params = opts[:header_params] || {}
|
|
843
|
+
# HTTP header 'Accept' (if needed)
|
|
844
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
845
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
846
|
+
|
|
847
|
+
# form parameters
|
|
848
|
+
form_params = opts[:form_params] || {}
|
|
849
|
+
|
|
850
|
+
# http body (model)
|
|
851
|
+
post_body = opts[:debug_body]
|
|
852
|
+
|
|
853
|
+
# return_type
|
|
854
|
+
return_type = opts[:debug_return_type] || 'Program'
|
|
855
|
+
|
|
856
|
+
# auth_names
|
|
857
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
858
|
+
|
|
859
|
+
new_options = opts.merge(
|
|
860
|
+
:operation => :"ProgramsApi.programs_restore",
|
|
861
|
+
:header_params => header_params,
|
|
862
|
+
:query_params => query_params,
|
|
863
|
+
:form_params => form_params,
|
|
864
|
+
:body => post_body,
|
|
865
|
+
:auth_names => auth_names,
|
|
866
|
+
:return_type => return_type
|
|
867
|
+
)
|
|
868
|
+
|
|
869
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
870
|
+
if @api_client.config.debugging
|
|
871
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_restore\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
872
|
+
end
|
|
873
|
+
return data, status_code, headers
|
|
874
|
+
end
|
|
875
|
+
|
|
876
|
+
# Resume a paused program
|
|
877
|
+
# Resume sending from where it stopped — each lead keeps its place in the cadence.
|
|
878
|
+
# @param id [String]
|
|
879
|
+
# @param [Hash] opts the optional parameters
|
|
880
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
881
|
+
# @return [Program]
|
|
882
|
+
def programs_resume(id, opts = {})
|
|
883
|
+
data, _status_code, _headers = programs_resume_with_http_info(id, opts)
|
|
884
|
+
data
|
|
885
|
+
end
|
|
886
|
+
|
|
887
|
+
# Resume a paused program
|
|
888
|
+
# Resume sending from where it stopped — each lead keeps its place in the cadence.
|
|
889
|
+
# @param id [String]
|
|
890
|
+
# @param [Hash] opts the optional parameters
|
|
891
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
892
|
+
# @return [Array<(Program, Integer, Hash)>] Program data, response status code and response headers
|
|
893
|
+
def programs_resume_with_http_info(id, opts = {})
|
|
894
|
+
if @api_client.config.debugging
|
|
895
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_resume ...'
|
|
896
|
+
end
|
|
897
|
+
# verify the required parameter 'id' is set
|
|
898
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
899
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_resume"
|
|
900
|
+
end
|
|
901
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
902
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_resume, the character length must be smaller than or equal to 255.'
|
|
903
|
+
end
|
|
904
|
+
|
|
905
|
+
# resource path
|
|
906
|
+
local_var_path = '/programs/{id}/resume'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
907
|
+
|
|
908
|
+
# query parameters
|
|
909
|
+
query_params = opts[:query_params] || {}
|
|
910
|
+
|
|
911
|
+
# header parameters
|
|
912
|
+
header_params = opts[:header_params] || {}
|
|
913
|
+
# HTTP header 'Accept' (if needed)
|
|
914
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
915
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
916
|
+
|
|
917
|
+
# form parameters
|
|
918
|
+
form_params = opts[:form_params] || {}
|
|
919
|
+
|
|
920
|
+
# http body (model)
|
|
921
|
+
post_body = opts[:debug_body]
|
|
922
|
+
|
|
923
|
+
# return_type
|
|
924
|
+
return_type = opts[:debug_return_type] || 'Program'
|
|
925
|
+
|
|
926
|
+
# auth_names
|
|
927
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
928
|
+
|
|
929
|
+
new_options = opts.merge(
|
|
930
|
+
:operation => :"ProgramsApi.programs_resume",
|
|
931
|
+
:header_params => header_params,
|
|
932
|
+
:query_params => query_params,
|
|
933
|
+
:form_params => form_params,
|
|
934
|
+
:body => post_body,
|
|
935
|
+
:auth_names => auth_names,
|
|
936
|
+
:return_type => return_type
|
|
937
|
+
)
|
|
938
|
+
|
|
939
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
940
|
+
if @api_client.config.debugging
|
|
941
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_resume\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
942
|
+
end
|
|
943
|
+
return data, status_code, headers
|
|
944
|
+
end
|
|
945
|
+
|
|
946
|
+
# Attach a sender to a program
|
|
947
|
+
# Assign a mailbox the program can send from (a program needs at least one to launch).
|
|
948
|
+
# @param id [String]
|
|
949
|
+
# @param add_program_sender_params [AddProgramSenderParams]
|
|
950
|
+
# @param [Hash] opts the optional parameters
|
|
951
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
952
|
+
# @return [ProgramSenderRef]
|
|
953
|
+
def programs_senders_add(id, add_program_sender_params, opts = {})
|
|
954
|
+
data, _status_code, _headers = programs_senders_add_with_http_info(id, add_program_sender_params, opts)
|
|
955
|
+
data
|
|
956
|
+
end
|
|
957
|
+
|
|
958
|
+
# Attach a sender to a program
|
|
959
|
+
# Assign a mailbox the program can send from (a program needs at least one to launch).
|
|
960
|
+
# @param id [String]
|
|
961
|
+
# @param add_program_sender_params [AddProgramSenderParams]
|
|
962
|
+
# @param [Hash] opts the optional parameters
|
|
963
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
964
|
+
# @return [Array<(ProgramSenderRef, Integer, Hash)>] ProgramSenderRef data, response status code and response headers
|
|
965
|
+
def programs_senders_add_with_http_info(id, add_program_sender_params, opts = {})
|
|
966
|
+
if @api_client.config.debugging
|
|
967
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_senders_add ...'
|
|
968
|
+
end
|
|
969
|
+
# verify the required parameter 'id' is set
|
|
970
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
971
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_senders_add"
|
|
972
|
+
end
|
|
973
|
+
# verify the required parameter 'add_program_sender_params' is set
|
|
974
|
+
if @api_client.config.client_side_validation && add_program_sender_params.nil?
|
|
975
|
+
fail ArgumentError, "Missing the required parameter 'add_program_sender_params' when calling ProgramsApi.programs_senders_add"
|
|
976
|
+
end
|
|
977
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
978
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_senders_add, the character length must be smaller than or equal to 255.'
|
|
979
|
+
end
|
|
980
|
+
|
|
981
|
+
# resource path
|
|
982
|
+
local_var_path = '/programs/{id}/senders'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
983
|
+
|
|
984
|
+
# query parameters
|
|
985
|
+
query_params = opts[:query_params] || {}
|
|
986
|
+
|
|
987
|
+
# header parameters
|
|
988
|
+
header_params = opts[:header_params] || {}
|
|
989
|
+
# HTTP header 'Accept' (if needed)
|
|
990
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
991
|
+
# HTTP header 'Content-Type'
|
|
992
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
993
|
+
if !content_type.nil?
|
|
994
|
+
header_params['Content-Type'] = content_type
|
|
995
|
+
end
|
|
996
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
997
|
+
|
|
998
|
+
# form parameters
|
|
999
|
+
form_params = opts[:form_params] || {}
|
|
1000
|
+
|
|
1001
|
+
# http body (model)
|
|
1002
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(add_program_sender_params)
|
|
1003
|
+
|
|
1004
|
+
# return_type
|
|
1005
|
+
return_type = opts[:debug_return_type] || 'ProgramSenderRef'
|
|
1006
|
+
|
|
1007
|
+
# auth_names
|
|
1008
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1009
|
+
|
|
1010
|
+
new_options = opts.merge(
|
|
1011
|
+
:operation => :"ProgramsApi.programs_senders_add",
|
|
1012
|
+
:header_params => header_params,
|
|
1013
|
+
:query_params => query_params,
|
|
1014
|
+
:form_params => form_params,
|
|
1015
|
+
:body => post_body,
|
|
1016
|
+
:auth_names => auth_names,
|
|
1017
|
+
:return_type => return_type
|
|
1018
|
+
)
|
|
1019
|
+
|
|
1020
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1021
|
+
if @api_client.config.debugging
|
|
1022
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_senders_add\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1023
|
+
end
|
|
1024
|
+
return data, status_code, headers
|
|
1025
|
+
end
|
|
1026
|
+
|
|
1027
|
+
# List a program's senders
|
|
1028
|
+
# The mailboxes assigned to this program, each with its pending queue in the program.
|
|
1029
|
+
# @param id [String]
|
|
1030
|
+
# @param [Hash] opts the optional parameters
|
|
1031
|
+
# @return [ProgramsSendersList]
|
|
1032
|
+
def programs_senders_list(id, opts = {})
|
|
1033
|
+
data, _status_code, _headers = programs_senders_list_with_http_info(id, opts)
|
|
1034
|
+
data
|
|
1035
|
+
end
|
|
1036
|
+
|
|
1037
|
+
# List a program's senders
|
|
1038
|
+
# The mailboxes assigned to this program, each with its pending queue in the program.
|
|
1039
|
+
# @param id [String]
|
|
1040
|
+
# @param [Hash] opts the optional parameters
|
|
1041
|
+
# @return [Array<(ProgramsSendersList, Integer, Hash)>] ProgramsSendersList data, response status code and response headers
|
|
1042
|
+
def programs_senders_list_with_http_info(id, opts = {})
|
|
1043
|
+
if @api_client.config.debugging
|
|
1044
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_senders_list ...'
|
|
1045
|
+
end
|
|
1046
|
+
# verify the required parameter 'id' is set
|
|
1047
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
1048
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_senders_list"
|
|
1049
|
+
end
|
|
1050
|
+
# resource path
|
|
1051
|
+
local_var_path = '/programs/{id}/senders'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
1052
|
+
|
|
1053
|
+
# query parameters
|
|
1054
|
+
query_params = opts[:query_params] || {}
|
|
1055
|
+
|
|
1056
|
+
# header parameters
|
|
1057
|
+
header_params = opts[:header_params] || {}
|
|
1058
|
+
# HTTP header 'Accept' (if needed)
|
|
1059
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1060
|
+
|
|
1061
|
+
# form parameters
|
|
1062
|
+
form_params = opts[:form_params] || {}
|
|
1063
|
+
|
|
1064
|
+
# http body (model)
|
|
1065
|
+
post_body = opts[:debug_body]
|
|
1066
|
+
|
|
1067
|
+
# return_type
|
|
1068
|
+
return_type = opts[:debug_return_type] || 'ProgramsSendersList'
|
|
1069
|
+
|
|
1070
|
+
# auth_names
|
|
1071
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1072
|
+
|
|
1073
|
+
new_options = opts.merge(
|
|
1074
|
+
:operation => :"ProgramsApi.programs_senders_list",
|
|
1075
|
+
:header_params => header_params,
|
|
1076
|
+
:query_params => query_params,
|
|
1077
|
+
:form_params => form_params,
|
|
1078
|
+
:body => post_body,
|
|
1079
|
+
:auth_names => auth_names,
|
|
1080
|
+
:return_type => return_type
|
|
1081
|
+
)
|
|
1082
|
+
|
|
1083
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1084
|
+
if @api_client.config.debugging
|
|
1085
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_senders_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1086
|
+
end
|
|
1087
|
+
return data, status_code, headers
|
|
1088
|
+
end
|
|
1089
|
+
|
|
1090
|
+
# Detach a sender from a program
|
|
1091
|
+
# Unassign a mailbox. A running campaign refuses to drop its last live sender — pause it first.
|
|
1092
|
+
# @param id [String]
|
|
1093
|
+
# @param rel_id [String]
|
|
1094
|
+
# @param [Hash] opts the optional parameters
|
|
1095
|
+
# @return [DetachResult]
|
|
1096
|
+
def programs_senders_remove(id, rel_id, opts = {})
|
|
1097
|
+
data, _status_code, _headers = programs_senders_remove_with_http_info(id, rel_id, opts)
|
|
1098
|
+
data
|
|
1099
|
+
end
|
|
1100
|
+
|
|
1101
|
+
# Detach a sender from a program
|
|
1102
|
+
# Unassign a mailbox. A running campaign refuses to drop its last live sender — pause it first.
|
|
1103
|
+
# @param id [String]
|
|
1104
|
+
# @param rel_id [String]
|
|
1105
|
+
# @param [Hash] opts the optional parameters
|
|
1106
|
+
# @return [Array<(DetachResult, Integer, Hash)>] DetachResult data, response status code and response headers
|
|
1107
|
+
def programs_senders_remove_with_http_info(id, rel_id, opts = {})
|
|
1108
|
+
if @api_client.config.debugging
|
|
1109
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_senders_remove ...'
|
|
1110
|
+
end
|
|
1111
|
+
# verify the required parameter 'id' is set
|
|
1112
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
1113
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_senders_remove"
|
|
1114
|
+
end
|
|
1115
|
+
# verify the required parameter 'rel_id' is set
|
|
1116
|
+
if @api_client.config.client_side_validation && rel_id.nil?
|
|
1117
|
+
fail ArgumentError, "Missing the required parameter 'rel_id' when calling ProgramsApi.programs_senders_remove"
|
|
1118
|
+
end
|
|
1119
|
+
# resource path
|
|
1120
|
+
local_var_path = '/programs/{id}/senders/{relId}'.sub('{' + 'id' + '}', CGI.escape(id.to_s)).sub('{' + 'relId' + '}', CGI.escape(rel_id.to_s))
|
|
1121
|
+
|
|
1122
|
+
# query parameters
|
|
1123
|
+
query_params = opts[:query_params] || {}
|
|
1124
|
+
|
|
1125
|
+
# header parameters
|
|
1126
|
+
header_params = opts[:header_params] || {}
|
|
1127
|
+
# HTTP header 'Accept' (if needed)
|
|
1128
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1129
|
+
|
|
1130
|
+
# form parameters
|
|
1131
|
+
form_params = opts[:form_params] || {}
|
|
1132
|
+
|
|
1133
|
+
# http body (model)
|
|
1134
|
+
post_body = opts[:debug_body]
|
|
1135
|
+
|
|
1136
|
+
# return_type
|
|
1137
|
+
return_type = opts[:debug_return_type] || 'DetachResult'
|
|
1138
|
+
|
|
1139
|
+
# auth_names
|
|
1140
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1141
|
+
|
|
1142
|
+
new_options = opts.merge(
|
|
1143
|
+
:operation => :"ProgramsApi.programs_senders_remove",
|
|
1144
|
+
:header_params => header_params,
|
|
1145
|
+
:query_params => query_params,
|
|
1146
|
+
:form_params => form_params,
|
|
1147
|
+
:body => post_body,
|
|
1148
|
+
:auth_names => auth_names,
|
|
1149
|
+
:return_type => return_type
|
|
1150
|
+
)
|
|
1151
|
+
|
|
1152
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
1153
|
+
if @api_client.config.debugging
|
|
1154
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_senders_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1155
|
+
end
|
|
1156
|
+
return data, status_code, headers
|
|
1157
|
+
end
|
|
1158
|
+
|
|
1159
|
+
# Share the campaign report
|
|
1160
|
+
# Mint a public, read-only link to this campaign's report (send it to a client — no account needed). The link is signed and expires after 30 days; archiving the campaign kills it immediately. Mint again for a fresh link.
|
|
1161
|
+
# @param id [String]
|
|
1162
|
+
# @param [Hash] opts the optional parameters
|
|
1163
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
1164
|
+
# @return [CampaignReportShare]
|
|
1165
|
+
def programs_share(id, opts = {})
|
|
1166
|
+
data, _status_code, _headers = programs_share_with_http_info(id, opts)
|
|
1167
|
+
data
|
|
1168
|
+
end
|
|
1169
|
+
|
|
1170
|
+
# Share the campaign report
|
|
1171
|
+
# Mint a public, read-only link to this campaign's report (send it to a client — no account needed). The link is signed and expires after 30 days; archiving the campaign kills it immediately. Mint again for a fresh link.
|
|
1172
|
+
# @param id [String]
|
|
1173
|
+
# @param [Hash] opts the optional parameters
|
|
1174
|
+
# @option opts [String] :idempotency_key Opt-in idempotency for a safely retried write: reuse the same key to replay the original result for 24h instead of re-executing. Recommended on every POST.
|
|
1175
|
+
# @return [Array<(CampaignReportShare, Integer, Hash)>] CampaignReportShare data, response status code and response headers
|
|
1176
|
+
def programs_share_with_http_info(id, opts = {})
|
|
1177
|
+
if @api_client.config.debugging
|
|
1178
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_share ...'
|
|
1179
|
+
end
|
|
1180
|
+
# verify the required parameter 'id' is set
|
|
1181
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
1182
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_share"
|
|
1183
|
+
end
|
|
1184
|
+
if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
|
|
1185
|
+
fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ProgramsApi.programs_share, the character length must be smaller than or equal to 255.'
|
|
1186
|
+
end
|
|
1187
|
+
|
|
1188
|
+
# resource path
|
|
1189
|
+
local_var_path = '/programs/{id}/share'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
1190
|
+
|
|
1191
|
+
# query parameters
|
|
1192
|
+
query_params = opts[:query_params] || {}
|
|
1193
|
+
|
|
1194
|
+
# header parameters
|
|
1195
|
+
header_params = opts[:header_params] || {}
|
|
1196
|
+
# HTTP header 'Accept' (if needed)
|
|
1197
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1198
|
+
header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
|
|
1199
|
+
|
|
1200
|
+
# form parameters
|
|
1201
|
+
form_params = opts[:form_params] || {}
|
|
1202
|
+
|
|
1203
|
+
# http body (model)
|
|
1204
|
+
post_body = opts[:debug_body]
|
|
1205
|
+
|
|
1206
|
+
# return_type
|
|
1207
|
+
return_type = opts[:debug_return_type] || 'CampaignReportShare'
|
|
1208
|
+
|
|
1209
|
+
# auth_names
|
|
1210
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1211
|
+
|
|
1212
|
+
new_options = opts.merge(
|
|
1213
|
+
:operation => :"ProgramsApi.programs_share",
|
|
1214
|
+
:header_params => header_params,
|
|
1215
|
+
:query_params => query_params,
|
|
1216
|
+
:form_params => form_params,
|
|
1217
|
+
:body => post_body,
|
|
1218
|
+
:auth_names => auth_names,
|
|
1219
|
+
:return_type => return_type
|
|
1220
|
+
)
|
|
1221
|
+
|
|
1222
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1223
|
+
if @api_client.config.debugging
|
|
1224
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1225
|
+
end
|
|
1226
|
+
return data, status_code, headers
|
|
1227
|
+
end
|
|
1228
|
+
|
|
1229
|
+
# Update a program
|
|
1230
|
+
# Patch program settings and/or edit the cadence in one call. steps[] is a sparse upsert: an item WITH id edits that step, WITHOUT id creates one, archived:true removes it — same for each step's variants[]. Returns the program with its steps expanded.
|
|
1231
|
+
# @param id [String]
|
|
1232
|
+
# @param [Hash] opts the optional parameters
|
|
1233
|
+
# @option opts [ProgramUpdateParams] :program_update_params
|
|
1234
|
+
# @return [ProgramDetail]
|
|
1235
|
+
def programs_update(id, opts = {})
|
|
1236
|
+
data, _status_code, _headers = programs_update_with_http_info(id, opts)
|
|
1237
|
+
data
|
|
1238
|
+
end
|
|
1239
|
+
|
|
1240
|
+
# Update a program
|
|
1241
|
+
# Patch program settings and/or edit the cadence in one call. steps[] is a sparse upsert: an item WITH id edits that step, WITHOUT id creates one, archived:true removes it — same for each step's variants[]. Returns the program with its steps expanded.
|
|
1242
|
+
# @param id [String]
|
|
1243
|
+
# @param [Hash] opts the optional parameters
|
|
1244
|
+
# @option opts [ProgramUpdateParams] :program_update_params
|
|
1245
|
+
# @return [Array<(ProgramDetail, Integer, Hash)>] ProgramDetail data, response status code and response headers
|
|
1246
|
+
def programs_update_with_http_info(id, opts = {})
|
|
1247
|
+
if @api_client.config.debugging
|
|
1248
|
+
@api_client.config.logger.debug 'Calling API: ProgramsApi.programs_update ...'
|
|
1249
|
+
end
|
|
1250
|
+
# verify the required parameter 'id' is set
|
|
1251
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
1252
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling ProgramsApi.programs_update"
|
|
1253
|
+
end
|
|
1254
|
+
# resource path
|
|
1255
|
+
local_var_path = '/programs/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
1256
|
+
|
|
1257
|
+
# query parameters
|
|
1258
|
+
query_params = opts[:query_params] || {}
|
|
1259
|
+
|
|
1260
|
+
# header parameters
|
|
1261
|
+
header_params = opts[:header_params] || {}
|
|
1262
|
+
# HTTP header 'Accept' (if needed)
|
|
1263
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1264
|
+
# HTTP header 'Content-Type'
|
|
1265
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
1266
|
+
if !content_type.nil?
|
|
1267
|
+
header_params['Content-Type'] = content_type
|
|
1268
|
+
end
|
|
1269
|
+
|
|
1270
|
+
# form parameters
|
|
1271
|
+
form_params = opts[:form_params] || {}
|
|
1272
|
+
|
|
1273
|
+
# http body (model)
|
|
1274
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'program_update_params'])
|
|
1275
|
+
|
|
1276
|
+
# return_type
|
|
1277
|
+
return_type = opts[:debug_return_type] || 'ProgramDetail'
|
|
1278
|
+
|
|
1279
|
+
# auth_names
|
|
1280
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1281
|
+
|
|
1282
|
+
new_options = opts.merge(
|
|
1283
|
+
:operation => :"ProgramsApi.programs_update",
|
|
1284
|
+
:header_params => header_params,
|
|
1285
|
+
:query_params => query_params,
|
|
1286
|
+
:form_params => form_params,
|
|
1287
|
+
:body => post_body,
|
|
1288
|
+
:auth_names => auth_names,
|
|
1289
|
+
:return_type => return_type
|
|
1290
|
+
)
|
|
1291
|
+
|
|
1292
|
+
data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
|
|
1293
|
+
if @api_client.config.debugging
|
|
1294
|
+
@api_client.config.logger.debug "API called: ProgramsApi#programs_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1295
|
+
end
|
|
1296
|
+
return data, status_code, headers
|
|
1297
|
+
end
|
|
1298
|
+
end
|
|
1299
|
+
end
|