vapi_server_sdk 0.0.0.pre.alpha7
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/lib/core/file_utilities.rb +26 -0
- data/lib/environment.rb +7 -0
- data/lib/gemconfig.rb +14 -0
- data/lib/requests.rb +174 -0
- data/lib/types_export.rb +526 -0
- data/lib/vapi_server_sdk/analytics/client.rb +115 -0
- data/lib/vapi_server_sdk/assistants/client.rb +949 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_background_sound.rb +12 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_client_messages_item.rb +22 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_first_message_mode.rb +21 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_model.rb +201 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_server_messages_item.rb +23 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_transcriber.rb +110 -0
- data/lib/vapi_server_sdk/assistants/types/update_assistant_dto_voice.rb +188 -0
- data/lib/vapi_server_sdk/blocks/client.rb +552 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_create_request.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_create_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_delete_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_get_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_list_response_item.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/blocks_update_response.rb +109 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_steps_item.rb +96 -0
- data/lib/vapi_server_sdk/blocks/types/update_block_dto_tool.rb +163 -0
- data/lib/vapi_server_sdk/calls/client.rb +966 -0
- data/lib/vapi_server_sdk/files/client.rb +347 -0
- data/lib/vapi_server_sdk/logs/client.rb +174 -0
- data/lib/vapi_server_sdk/logs/types/logs_get_request_sort_order.rb +10 -0
- data/lib/vapi_server_sdk/logs/types/logs_get_request_type.rb +12 -0
- data/lib/vapi_server_sdk/phone_numbers/client.rb +455 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_request.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_create_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_delete_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_get_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_list_response_item.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/phone_numbers_update_response.rb +122 -0
- data/lib/vapi_server_sdk/phone_numbers/types/update_phone_number_dto_fallback_destination.rb +103 -0
- data/lib/vapi_server_sdk/squads/client.rb +1050 -0
- data/lib/vapi_server_sdk/tools/client.rb +473 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_request.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_create_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_delete_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_get_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_list_response_item.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/tools_update_response.rb +161 -0
- data/lib/vapi_server_sdk/tools/types/update_tool_dto_messages_item.rb +122 -0
- data/lib/vapi_server_sdk/types/add_voice_to_provider_dto.rb +78 -0
- data/lib/vapi_server_sdk/types/analysis.rb +88 -0
- data/lib/vapi_server_sdk/types/analysis_cost.rb +93 -0
- data/lib/vapi_server_sdk/types/analysis_cost_analysis_type.rb +10 -0
- data/lib/vapi_server_sdk/types/analysis_cost_breakdown.rb +137 -0
- data/lib/vapi_server_sdk/types/analysis_plan.rb +103 -0
- data/lib/vapi_server_sdk/types/analytics_operation.rb +76 -0
- data/lib/vapi_server_sdk/types/analytics_operation_column.rb +17 -0
- data/lib/vapi_server_sdk/types/analytics_operation_operation.rb +12 -0
- data/lib/vapi_server_sdk/types/analytics_query.rb +107 -0
- data/lib/vapi_server_sdk/types/analytics_query_group_by_item.rb +11 -0
- data/lib/vapi_server_sdk/types/analytics_query_result.rb +96 -0
- data/lib/vapi_server_sdk/types/anthropic_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/anthropic_model.rb +170 -0
- data/lib/vapi_server_sdk/types/anthropic_model_model.rb +11 -0
- data/lib/vapi_server_sdk/types/anthropic_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/anyscale_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/anyscale_model.rb +169 -0
- data/lib/vapi_server_sdk/types/anyscale_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/artifact.rb +133 -0
- data/lib/vapi_server_sdk/types/artifact_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/types/artifact_plan.rb +139 -0
- data/lib/vapi_server_sdk/types/assignment_mutation.rb +189 -0
- data/lib/vapi_server_sdk/types/assignment_mutation_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/assistant.rb +562 -0
- data/lib/vapi_server_sdk/types/assistant_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/assistant_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/assistant_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/assistant_model.rb +199 -0
- data/lib/vapi_server_sdk/types/assistant_overrides.rb +539 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_model.rb +199 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/assistant_overrides_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/assistant_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/assistant_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/assistant_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential.rb +128 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/azure_open_ai_credential_region.rb +21 -0
- data/lib/vapi_server_sdk/types/azure_voice.rb +104 -0
- data/lib/vapi_server_sdk/types/azure_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/azure_voice_id_enum.rb +9 -0
- data/lib/vapi_server_sdk/types/block_complete_message.rb +73 -0
- data/lib/vapi_server_sdk/types/block_complete_message_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/block_start_message.rb +73 -0
- data/lib/vapi_server_sdk/types/block_start_message_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/bot_message.rb +111 -0
- data/lib/vapi_server_sdk/types/bucket_plan.rb +139 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto.rb +151 -0
- data/lib/vapi_server_sdk/types/buy_phone_number_dto_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/byo_phone_number.rb +224 -0
- data/lib/vapi_server_sdk/types/byo_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/byo_sip_trunk_credential.rb +166 -0
- data/lib/vapi_server_sdk/types/call.rb +425 -0
- data/lib/vapi_server_sdk/types/call_costs_item.rb +146 -0
- data/lib/vapi_server_sdk/types/call_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/call_ended_reason.rb +175 -0
- data/lib/vapi_server_sdk/types/call_messages_item.rb +96 -0
- data/lib/vapi_server_sdk/types/call_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/call_phone_call_provider.rb +11 -0
- data/lib/vapi_server_sdk/types/call_phone_call_transport.rb +10 -0
- data/lib/vapi_server_sdk/types/call_status.rb +12 -0
- data/lib/vapi_server_sdk/types/call_type.rb +10 -0
- data/lib/vapi_server_sdk/types/callback_step.rb +204 -0
- data/lib/vapi_server_sdk/types/callback_step_block.rb +108 -0
- data/lib/vapi_server_sdk/types/cartesia_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/cartesia_voice.rb +113 -0
- data/lib/vapi_server_sdk/types/cartesia_voice_language.rb +15 -0
- data/lib/vapi_server_sdk/types/cartesia_voice_model.rb +10 -0
- data/lib/vapi_server_sdk/types/chunk_plan.rb +128 -0
- data/lib/vapi_server_sdk/types/client_inbound_message.rb +63 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_add_message.rb +61 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_control.rb +56 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_control_control.rb +10 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_message.rb +109 -0
- data/lib/vapi_server_sdk/types/client_inbound_message_say.rb +67 -0
- data/lib/vapi_server_sdk/types/client_message.rb +65 -0
- data/lib/vapi_server_sdk/types/client_message_conversation_update.rb +79 -0
- data/lib/vapi_server_sdk/types/client_message_conversation_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/client_message_hang.rb +47 -0
- data/lib/vapi_server_sdk/types/client_message_language_changed.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_message.rb +214 -0
- data/lib/vapi_server_sdk/types/client_message_metadata.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_model_output.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update.rb +67 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update_role.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_speech_update_status.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls.rb +75 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls_result.rb +55 -0
- data/lib/vapi_server_sdk/types/client_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
- data/lib/vapi_server_sdk/types/client_message_transcript.rb +74 -0
- data/lib/vapi_server_sdk/types/client_message_transcript_role.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_transcript_transcript_type.rb +9 -0
- data/lib/vapi_server_sdk/types/client_message_user_interrupted.rb +47 -0
- data/lib/vapi_server_sdk/types/client_message_voice_input.rb +55 -0
- data/lib/vapi_server_sdk/types/clone_voice_dto.rb +83 -0
- data/lib/vapi_server_sdk/types/condition.rb +73 -0
- data/lib/vapi_server_sdk/types/condition_operator.rb +13 -0
- data/lib/vapi_server_sdk/types/conversation_block.rb +239 -0
- data/lib/vapi_server_sdk/types/conversation_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/cost_breakdown.rb +141 -0
- data/lib/vapi_server_sdk/types/create_anthropic_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_anyscale_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto.rb +529 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_background_sound.rb +10 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_client_messages_item.rb +20 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_first_message_mode.rb +19 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_model.rb +199 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_server_messages_item.rb +21 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_transcriber.rb +108 -0
- data/lib/vapi_server_sdk/types/create_assistant_dto_voice.rb +186 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/create_azure_open_ai_credential_dto_region.rb +21 -0
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto.rb +191 -0
- data/lib/vapi_server_sdk/types/create_byo_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_byo_sip_trunk_credential_dto.rb +133 -0
- data/lib/vapi_server_sdk/types/create_cartesia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_conversation_block_dto.rb +206 -0
- data/lib/vapi_server_sdk/types/create_conversation_block_dto_messages_item.rb +95 -0
- data/lib/vapi_server_sdk/types/create_custom_llm_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_customer_dto.rb +117 -0
- data/lib/vapi_server_sdk/types/create_deep_infra_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_deepgram_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/create_dtmf_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_dtmf_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_eleven_labs_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_end_call_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_end_call_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_function_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_function_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_gcp_credential_dto.rb +104 -0
- data/lib/vapi_server_sdk/types/create_ghl_tool_dto.rb +158 -0
- data/lib/vapi_server_sdk/types/create_ghl_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_gladia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_go_high_level_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_groq_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_lmnt_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_make_credential_dto.rb +79 -0
- data/lib/vapi_server_sdk/types/create_make_tool_dto.rb +158 -0
- data/lib/vapi_server_sdk/types/create_make_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_open_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_open_router_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_org_dto.rb +129 -0
- data/lib/vapi_server_sdk/types/create_outbound_call_dto.rb +191 -0
- data/lib/vapi_server_sdk/types/create_output_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_output_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_perplexity_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_play_ht_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_rime_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_runpod_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_s_3_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/create_squad_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/create_together_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/create_token_dto.rb +81 -0
- data/lib/vapi_server_sdk/types/create_token_dto_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto.rb +168 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/create_tool_call_block_dto_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto.rb +131 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_details.rb +159 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/create_tool_template_dto_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_destinations_item.rb +121 -0
- data/lib/vapi_server_sdk/types/create_transfer_call_tool_dto_messages_item.rb +121 -0
- data/lib/vapi_server_sdk/types/create_twilio_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto.rb +167 -0
- data/lib/vapi_server_sdk/types/create_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto.rb +155 -0
- data/lib/vapi_server_sdk/types/create_vapi_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_voicemail_tool_dto.rb +139 -0
- data/lib/vapi_server_sdk/types/create_voicemail_tool_dto_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/create_vonage_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto.rb +161 -0
- data/lib/vapi_server_sdk/types/create_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/create_web_call_dto.rb +123 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto.rb +154 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/create_workflow_block_dto_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/custom_llm_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/custom_llm_model.rb +204 -0
- data/lib/vapi_server_sdk/types/custom_llm_model_metadata_send_mode.rb +18 -0
- data/lib/vapi_server_sdk/types/custom_llm_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/deep_infra_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/deep_infra_model.rb +169 -0
- data/lib/vapi_server_sdk/types/deep_infra_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/deepgram_credential.rb +114 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber.rb +143 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber_language.rb +62 -0
- data/lib/vapi_server_sdk/types/deepgram_transcriber_model.rb +34 -0
- data/lib/vapi_server_sdk/types/deepgram_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/deepgram_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/deepgram_voice_id_enum.rb +18 -0
- data/lib/vapi_server_sdk/types/dtmf_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/dtmf_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/eleven_labs_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice.rb +176 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_id.rb +54 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_id_enum.rb +21 -0
- data/lib/vapi_server_sdk/types/eleven_labs_voice_model.rb +12 -0
- data/lib/vapi_server_sdk/types/end_call_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/end_call_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/error.rb +55 -0
- data/lib/vapi_server_sdk/types/exact_replacement.rb +65 -0
- data/lib/vapi_server_sdk/types/file.rb +185 -0
- data/lib/vapi_server_sdk/types/file_status.rb +8 -0
- data/lib/vapi_server_sdk/types/format_plan.rb +130 -0
- data/lib/vapi_server_sdk/types/format_plan_replacements_item.rb +94 -0
- data/lib/vapi_server_sdk/types/function_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/function_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/function_tool_provider_details.rb +71 -0
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call.rb +158 -0
- data/lib/vapi_server_sdk/types/function_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/gcp_credential.rb +138 -0
- data/lib/vapi_server_sdk/types/gcp_key.rb +143 -0
- data/lib/vapi_server_sdk/types/ghl_tool.rb +192 -0
- data/lib/vapi_server_sdk/types/ghl_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/ghl_tool_metadata.rb +67 -0
- data/lib/vapi_server_sdk/types/ghl_tool_provider_details.rb +115 -0
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call.rb +173 -0
- data/lib/vapi_server_sdk/types/ghl_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/gladia_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber.rb +122 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_language.rb +108 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_language_behaviour.rb +9 -0
- data/lib/vapi_server_sdk/types/gladia_transcriber_model.rb +8 -0
- data/lib/vapi_server_sdk/types/go_high_level_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/groq_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/groq_model.rb +170 -0
- data/lib/vapi_server_sdk/types/groq_model_model.rb +17 -0
- data/lib/vapi_server_sdk/types/groq_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/handoff_step.rb +204 -0
- data/lib/vapi_server_sdk/types/handoff_step_block.rb +108 -0
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto.rb +167 -0
- data/lib/vapi_server_sdk/types/import_twilio_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto.rb +165 -0
- data/lib/vapi_server_sdk/types/import_vonage_phone_number_dto_fallback_destination.rb +101 -0
- data/lib/vapi_server_sdk/types/invite_user_dto.rb +66 -0
- data/lib/vapi_server_sdk/types/invite_user_dto_role.rb +9 -0
- data/lib/vapi_server_sdk/types/json_schema.rb +125 -0
- data/lib/vapi_server_sdk/types/json_schema_type.rb +21 -0
- data/lib/vapi_server_sdk/types/knowledge_base.rb +74 -0
- data/lib/vapi_server_sdk/types/lmnt_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/lmnt_voice.rb +104 -0
- data/lib/vapi_server_sdk/types/lmnt_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/lmnt_voice_id_enum.rb +8 -0
- data/lib/vapi_server_sdk/types/log.rb +248 -0
- data/lib/vapi_server_sdk/types/log_request_http_method.rb +12 -0
- data/lib/vapi_server_sdk/types/log_resource.rb +15 -0
- data/lib/vapi_server_sdk/types/log_type.rb +11 -0
- data/lib/vapi_server_sdk/types/logs_paginated_response.rb +75 -0
- data/lib/vapi_server_sdk/types/make_credential.rb +118 -0
- data/lib/vapi_server_sdk/types/make_tool.rb +192 -0
- data/lib/vapi_server_sdk/types/make_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/make_tool_metadata.rb +67 -0
- data/lib/vapi_server_sdk/types/make_tool_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call.rb +173 -0
- data/lib/vapi_server_sdk/types/make_tool_with_tool_call_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/message_plan.rb +107 -0
- data/lib/vapi_server_sdk/types/metrics.rb +165 -0
- data/lib/vapi_server_sdk/types/model_based_condition.rb +117 -0
- data/lib/vapi_server_sdk/types/model_cost.rb +106 -0
- data/lib/vapi_server_sdk/types/monitor.rb +71 -0
- data/lib/vapi_server_sdk/types/monitor_plan.rb +85 -0
- data/lib/vapi_server_sdk/types/neets_voice.rb +96 -0
- data/lib/vapi_server_sdk/types/neets_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/neets_voice_id_enum.rb +7 -0
- data/lib/vapi_server_sdk/types/open_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/open_ai_function.rb +96 -0
- data/lib/vapi_server_sdk/types/open_ai_function_parameters.rb +85 -0
- data/lib/vapi_server_sdk/types/open_ai_message.rb +68 -0
- data/lib/vapi_server_sdk/types/open_ai_message_role.rb +11 -0
- data/lib/vapi_server_sdk/types/open_ai_model.rb +191 -0
- data/lib/vapi_server_sdk/types/open_ai_model_fallback_models_item.rb +23 -0
- data/lib/vapi_server_sdk/types/open_ai_model_model.rb +24 -0
- data/lib/vapi_server_sdk/types/open_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/open_ai_voice.rb +99 -0
- data/lib/vapi_server_sdk/types/open_ai_voice_id.rb +13 -0
- data/lib/vapi_server_sdk/types/open_router_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/open_router_model.rb +169 -0
- data/lib/vapi_server_sdk/types/open_router_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/org.rb +212 -0
- data/lib/vapi_server_sdk/types/org_plan.rb +79 -0
- data/lib/vapi_server_sdk/types/output_tool.rb +178 -0
- data/lib/vapi_server_sdk/types/output_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/pagination_meta.rb +72 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_model.rb +169 -0
- data/lib/vapi_server_sdk/types/perplexity_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/play_ht_credential.rb +109 -0
- data/lib/vapi_server_sdk/types/play_ht_voice.rb +166 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_emotion.rb +19 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/play_ht_voice_id_enum.rb +16 -0
- data/lib/vapi_server_sdk/types/punctuation_boundary.rb +21 -0
- data/lib/vapi_server_sdk/types/regex_option.rb +74 -0
- data/lib/vapi_server_sdk/types/regex_option_type.rb +13 -0
- data/lib/vapi_server_sdk/types/regex_replacement.rb +82 -0
- data/lib/vapi_server_sdk/types/rime_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice.rb +114 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_id.rb +53 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_id_enum.rb +87 -0
- data/lib/vapi_server_sdk/types/rime_ai_voice_model.rb +9 -0
- data/lib/vapi_server_sdk/types/rule_based_condition.rb +195 -0
- data/lib/vapi_server_sdk/types/rule_based_condition_operator.rb +14 -0
- data/lib/vapi_server_sdk/types/runpod_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/s_3_credential.rb +134 -0
- data/lib/vapi_server_sdk/types/sbc_configuration.rb +47 -0
- data/lib/vapi_server_sdk/types/server.rb +82 -0
- data/lib/vapi_server_sdk/types/server_message.rb +77 -0
- data/lib/vapi_server_sdk/types/server_message_assistant_request.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_assistant_request_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update.rb +197 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_conversation_update_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report.rb +241 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_costs_item.rb +147 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_ended_reason.rb +176 -0
- data/lib/vapi_server_sdk/types/server_message_end_of_call_report_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_hang.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_hang_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_language_changed.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_language_changed_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_message.rb +285 -0
- data/lib/vapi_server_sdk/types/server_message_model_output.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_model_output_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control.rb +192 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_phone_call_control_request.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_response.rb +65 -0
- data/lib/vapi_server_sdk/types/server_message_response_assistant_request.rb +162 -0
- data/lib/vapi_server_sdk/types/server_message_response_assistant_request_destination.rb +98 -0
- data/lib/vapi_server_sdk/types/server_message_response_message_response.rb +85 -0
- data/lib/vapi_server_sdk/types/server_message_response_tool_calls.rb +71 -0
- data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request.rb +75 -0
- data/lib/vapi_server_sdk/types/server_message_response_transfer_destination_request_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/server_message_response_voice_request.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update.rb +187 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_role.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_speech_update_status.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_status_update.rb +255 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_destination.rb +96 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_ended_reason.rb +175 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_messages_item.rb +97 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_status_update_status.rb +12 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_tool_calls_tool_with_tool_call_list_item.rb +108 -0
- data/lib/vapi_server_sdk/types/server_message_transcript.rb +195 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_role.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_transcript_transcript_type.rb +9 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_destination_request.rb +171 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_destination_request_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update.rb +213 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update_destination.rb +122 -0
- data/lib/vapi_server_sdk/types/server_message_transfer_update_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_user_interrupted.rb +169 -0
- data/lib/vapi_server_sdk/types/server_message_user_interrupted_phone_number.rb +125 -0
- data/lib/vapi_server_sdk/types/server_message_voice_input.rb +177 -0
- data/lib/vapi_server_sdk/types/server_message_voice_input_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/server_message_voice_request.rb +185 -0
- data/lib/vapi_server_sdk/types/server_message_voice_request_phone_number.rb +124 -0
- data/lib/vapi_server_sdk/types/sip_trunk_gateway.rb +138 -0
- data/lib/vapi_server_sdk/types/sip_trunk_gateway_outbound_protocol.rb +12 -0
- data/lib/vapi_server_sdk/types/sip_trunk_outbound_authentication_plan.rb +86 -0
- data/lib/vapi_server_sdk/types/sip_trunk_outbound_sip_register_plan.rb +74 -0
- data/lib/vapi_server_sdk/types/squad.rb +132 -0
- data/lib/vapi_server_sdk/types/squad_member_dto.rb +113 -0
- data/lib/vapi_server_sdk/types/start_speaking_plan.rb +119 -0
- data/lib/vapi_server_sdk/types/step_destination.rb +82 -0
- data/lib/vapi_server_sdk/types/step_destination_conditions_item.rb +94 -0
- data/lib/vapi_server_sdk/types/stop_speaking_plan.rb +120 -0
- data/lib/vapi_server_sdk/types/structured_data_plan.rb +140 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan.rb +161 -0
- data/lib/vapi_server_sdk/types/success_evaluation_plan_rubric.rb +29 -0
- data/lib/vapi_server_sdk/types/summary_plan.rb +110 -0
- data/lib/vapi_server_sdk/types/sync_voice_library_dto.rb +58 -0
- data/lib/vapi_server_sdk/types/sync_voice_library_dto_providers_item.rb +16 -0
- data/lib/vapi_server_sdk/types/system_message.rb +79 -0
- data/lib/vapi_server_sdk/types/talkscriber_transcriber.rb +72 -0
- data/lib/vapi_server_sdk/types/talkscriber_transcriber_language.rb +109 -0
- data/lib/vapi_server_sdk/types/template.rb +164 -0
- data/lib/vapi_server_sdk/types/template_details.rb +159 -0
- data/lib/vapi_server_sdk/types/template_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/template_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/template_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/time_range.rb +91 -0
- data/lib/vapi_server_sdk/types/time_range_step.rb +18 -0
- data/lib/vapi_server_sdk/types/together_ai_credential.rb +101 -0
- data/lib/vapi_server_sdk/types/together_ai_model.rb +169 -0
- data/lib/vapi_server_sdk/types/together_ai_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/token.rb +127 -0
- data/lib/vapi_server_sdk/types/token_restrictions.rb +103 -0
- data/lib/vapi_server_sdk/types/token_tag.rb +9 -0
- data/lib/vapi_server_sdk/types/tool_call.rb +78 -0
- data/lib/vapi_server_sdk/types/tool_call_block.rb +201 -0
- data/lib/vapi_server_sdk/types/tool_call_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/tool_call_block_tool.rb +161 -0
- data/lib/vapi_server_sdk/types/tool_call_function.rb +65 -0
- data/lib/vapi_server_sdk/types/tool_call_message.rb +92 -0
- data/lib/vapi_server_sdk/types/tool_call_result.rb +126 -0
- data/lib/vapi_server_sdk/types/tool_call_result_message.rb +100 -0
- data/lib/vapi_server_sdk/types/tool_call_result_message_item.rb +94 -0
- data/lib/vapi_server_sdk/types/tool_message_complete.rb +130 -0
- data/lib/vapi_server_sdk/types/tool_message_complete_role.rb +24 -0
- data/lib/vapi_server_sdk/types/tool_message_delayed.rb +86 -0
- data/lib/vapi_server_sdk/types/tool_message_failed.rb +88 -0
- data/lib/vapi_server_sdk/types/tool_message_start.rb +73 -0
- data/lib/vapi_server_sdk/types/tool_template_metadata.rb +78 -0
- data/lib/vapi_server_sdk/types/tool_template_setup.rb +86 -0
- data/lib/vapi_server_sdk/types/transcriber_cost.rb +90 -0
- data/lib/vapi_server_sdk/types/transcript_plan.rb +122 -0
- data/lib/vapi_server_sdk/types/transcription_endpointing_plan.rb +109 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool.rb +194 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool_destinations_item.rb +120 -0
- data/lib/vapi_server_sdk/types/transfer_call_tool_messages_item.rb +120 -0
- data/lib/vapi_server_sdk/types/transfer_destination_assistant.rb +181 -0
- data/lib/vapi_server_sdk/types/transfer_destination_number.rb +163 -0
- data/lib/vapi_server_sdk/types/transfer_destination_sip.rb +90 -0
- data/lib/vapi_server_sdk/types/transfer_destination_step.rb +90 -0
- data/lib/vapi_server_sdk/types/transfer_mode.rb +8 -0
- data/lib/vapi_server_sdk/types/transport_configuration_twilio.rb +125 -0
- data/lib/vapi_server_sdk/types/transport_configuration_twilio_recording_channels.rb +16 -0
- data/lib/vapi_server_sdk/types/transport_cost.rb +67 -0
- data/lib/vapi_server_sdk/types/twilio_credential.rb +110 -0
- data/lib/vapi_server_sdk/types/twilio_phone_number.rb +200 -0
- data/lib/vapi_server_sdk/types/twilio_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/twilio_voicemail_detection.rb +248 -0
- data/lib/vapi_server_sdk/types/twilio_voicemail_detection_voicemail_detection_types_item.rb +13 -0
- data/lib/vapi_server_sdk/types/update_anthropic_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_anyscale_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto.rb +94 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_models_item.rb +14 -0
- data/lib/vapi_server_sdk/types/update_azure_open_ai_credential_dto_region.rb +21 -0
- data/lib/vapi_server_sdk/types/update_byo_sip_trunk_credential_dto.rb +133 -0
- data/lib/vapi_server_sdk/types/update_cartesia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_custom_llm_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_deep_infra_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_deepgram_credential_dto.rb +76 -0
- data/lib/vapi_server_sdk/types/update_eleven_labs_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_gcp_credential_dto.rb +104 -0
- data/lib/vapi_server_sdk/types/update_gladia_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_go_high_level_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_groq_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_lmnt_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_make_credential_dto.rb +79 -0
- data/lib/vapi_server_sdk/types/update_open_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_open_router_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_org_dto.rb +129 -0
- data/lib/vapi_server_sdk/types/update_perplexity_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_play_ht_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/update_rime_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_runpod_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_s_3_credential_dto.rb +101 -0
- data/lib/vapi_server_sdk/types/update_together_ai_credential_dto.rb +65 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto.rb +131 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_details.rb +159 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_provider.rb +9 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_provider_details.rb +107 -0
- data/lib/vapi_server_sdk/types/update_tool_template_dto_visibility.rb +8 -0
- data/lib/vapi_server_sdk/types/update_twilio_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/update_user_role_dto.rb +66 -0
- data/lib/vapi_server_sdk/types/update_user_role_dto_role.rb +9 -0
- data/lib/vapi_server_sdk/types/update_vonage_credential_dto.rb +72 -0
- data/lib/vapi_server_sdk/types/user.rb +95 -0
- data/lib/vapi_server_sdk/types/user_message.rb +102 -0
- data/lib/vapi_server_sdk/types/vapi_cost.rb +67 -0
- data/lib/vapi_server_sdk/types/vapi_model.rb +181 -0
- data/lib/vapi_server_sdk/types/vapi_model_steps_item.rb +94 -0
- data/lib/vapi_server_sdk/types/vapi_model_tools_item.rb +159 -0
- data/lib/vapi_server_sdk/types/vapi_phone_number.rb +188 -0
- data/lib/vapi_server_sdk/types/vapi_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/voice_cost.rb +90 -0
- data/lib/vapi_server_sdk/types/voice_library.rb +209 -0
- data/lib/vapi_server_sdk/types/voice_library_gender.rb +9 -0
- data/lib/vapi_server_sdk/types/voice_library_voice_response.rb +111 -0
- data/lib/vapi_server_sdk/types/vonage_credential.rb +128 -0
- data/lib/vapi_server_sdk/types/vonage_phone_number.rb +194 -0
- data/lib/vapi_server_sdk/types/vonage_phone_number_fallback_destination.rb +100 -0
- data/lib/vapi_server_sdk/types/workflow_block.rb +187 -0
- data/lib/vapi_server_sdk/types/workflow_block_messages_item.rb +94 -0
- data/lib/vapi_server_sdk/types/workflow_block_steps_item.rb +94 -0
- data/lib/vapi_server_sdk.rb +110 -0
- metadata +697 -0
@@ -0,0 +1,552 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../requests"
|
4
|
+
require "date"
|
5
|
+
require_relative "types/blocks_list_response_item"
|
6
|
+
require "json"
|
7
|
+
require_relative "types/blocks_create_request"
|
8
|
+
require_relative "types/blocks_create_response"
|
9
|
+
require_relative "types/blocks_get_response"
|
10
|
+
require_relative "types/blocks_delete_response"
|
11
|
+
require_relative "types/update_block_dto_messages_item"
|
12
|
+
require_relative "../types/json_schema"
|
13
|
+
require_relative "types/update_block_dto_tool"
|
14
|
+
require_relative "types/update_block_dto_steps_item"
|
15
|
+
require_relative "types/blocks_update_response"
|
16
|
+
require "async"
|
17
|
+
|
18
|
+
module Vapi
|
19
|
+
class BlocksClient
|
20
|
+
# @return [Vapi::RequestClient]
|
21
|
+
attr_reader :request_client
|
22
|
+
|
23
|
+
# @param request_client [Vapi::RequestClient]
|
24
|
+
# @return [Vapi::BlocksClient]
|
25
|
+
def initialize(request_client:)
|
26
|
+
@request_client = request_client
|
27
|
+
end
|
28
|
+
|
29
|
+
# @param limit [Float] This is the maximum number of items to return. Defaults to 100.
|
30
|
+
# @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
|
31
|
+
# @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
|
32
|
+
# @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
|
33
|
+
# specified value.
|
34
|
+
# @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
|
35
|
+
# specified value.
|
36
|
+
# @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
|
37
|
+
# @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
|
38
|
+
# @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
|
39
|
+
# specified value.
|
40
|
+
# @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
|
41
|
+
# specified value.
|
42
|
+
# @param request_options [Vapi::RequestOptions]
|
43
|
+
# @return [Array<Vapi::Blocks::BlocksListResponseItem>]
|
44
|
+
# @example
|
45
|
+
# api = Vapi::Client.new(
|
46
|
+
# base_url: "https://api.example.com",
|
47
|
+
# environment: Vapi::Environment::DEFAULT,
|
48
|
+
# token: "YOUR_AUTH_TOKEN"
|
49
|
+
# )
|
50
|
+
# api.blocks.list
|
51
|
+
def list(limit: nil, created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil,
|
52
|
+
updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
|
53
|
+
response = @request_client.conn.get do |req|
|
54
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
55
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
56
|
+
req.headers = {
|
57
|
+
**(req.headers || {}),
|
58
|
+
**@request_client.get_headers,
|
59
|
+
**(request_options&.additional_headers || {})
|
60
|
+
}.compact
|
61
|
+
req.params = {
|
62
|
+
**(request_options&.additional_query_parameters || {}),
|
63
|
+
"limit": limit,
|
64
|
+
"createdAtGt": created_at_gt,
|
65
|
+
"createdAtLt": created_at_lt,
|
66
|
+
"createdAtGe": created_at_ge,
|
67
|
+
"createdAtLe": created_at_le,
|
68
|
+
"updatedAtGt": updated_at_gt,
|
69
|
+
"updatedAtLt": updated_at_lt,
|
70
|
+
"updatedAtGe": updated_at_ge,
|
71
|
+
"updatedAtLe": updated_at_le
|
72
|
+
}.compact
|
73
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
74
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
75
|
+
end
|
76
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block"
|
77
|
+
end
|
78
|
+
parsed_json = JSON.parse(response.body)
|
79
|
+
parsed_json&.map do |item|
|
80
|
+
item = item.to_json
|
81
|
+
Vapi::Blocks::BlocksListResponseItem.from_json(json_object: item)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
# @param request [Vapi::Blocks::BlocksCreateRequest]
|
86
|
+
# @param request_options [Vapi::RequestOptions]
|
87
|
+
# @return [Vapi::Blocks::BlocksCreateResponse]
|
88
|
+
# @example
|
89
|
+
# api = Vapi::Client.new(
|
90
|
+
# base_url: "https://api.example.com",
|
91
|
+
# environment: Vapi::Environment::DEFAULT,
|
92
|
+
# token: "YOUR_AUTH_TOKEN"
|
93
|
+
# )
|
94
|
+
# api.blocks.create
|
95
|
+
def create(request:, request_options: nil)
|
96
|
+
response = @request_client.conn.post do |req|
|
97
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
98
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
99
|
+
req.headers = {
|
100
|
+
**(req.headers || {}),
|
101
|
+
**@request_client.get_headers,
|
102
|
+
**(request_options&.additional_headers || {})
|
103
|
+
}.compact
|
104
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
105
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
106
|
+
end
|
107
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
108
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block"
|
109
|
+
end
|
110
|
+
Vapi::Blocks::BlocksCreateResponse.from_json(json_object: response.body)
|
111
|
+
end
|
112
|
+
|
113
|
+
# @param id [String]
|
114
|
+
# @param request_options [Vapi::RequestOptions]
|
115
|
+
# @return [Vapi::Blocks::BlocksGetResponse]
|
116
|
+
# @example
|
117
|
+
# api = Vapi::Client.new(
|
118
|
+
# base_url: "https://api.example.com",
|
119
|
+
# environment: Vapi::Environment::DEFAULT,
|
120
|
+
# token: "YOUR_AUTH_TOKEN"
|
121
|
+
# )
|
122
|
+
# api.blocks.get(id: "id")
|
123
|
+
def get(id:, request_options: nil)
|
124
|
+
response = @request_client.conn.get do |req|
|
125
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
126
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
127
|
+
req.headers = {
|
128
|
+
**(req.headers || {}),
|
129
|
+
**@request_client.get_headers,
|
130
|
+
**(request_options&.additional_headers || {})
|
131
|
+
}.compact
|
132
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
133
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
134
|
+
end
|
135
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
136
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
137
|
+
end
|
138
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
139
|
+
end
|
140
|
+
Vapi::Blocks::BlocksGetResponse.from_json(json_object: response.body)
|
141
|
+
end
|
142
|
+
|
143
|
+
# @param id [String]
|
144
|
+
# @param request_options [Vapi::RequestOptions]
|
145
|
+
# @return [Vapi::Blocks::BlocksDeleteResponse]
|
146
|
+
# @example
|
147
|
+
# api = Vapi::Client.new(
|
148
|
+
# base_url: "https://api.example.com",
|
149
|
+
# environment: Vapi::Environment::DEFAULT,
|
150
|
+
# token: "YOUR_AUTH_TOKEN"
|
151
|
+
# )
|
152
|
+
# api.blocks.delete(id: "id")
|
153
|
+
def delete(id:, request_options: nil)
|
154
|
+
response = @request_client.conn.delete do |req|
|
155
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
156
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
157
|
+
req.headers = {
|
158
|
+
**(req.headers || {}),
|
159
|
+
**@request_client.get_headers,
|
160
|
+
**(request_options&.additional_headers || {})
|
161
|
+
}.compact
|
162
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
163
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
164
|
+
end
|
165
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
166
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
167
|
+
end
|
168
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
169
|
+
end
|
170
|
+
Vapi::Blocks::BlocksDeleteResponse.from_json(json_object: response.body)
|
171
|
+
end
|
172
|
+
|
173
|
+
# @param id [String]
|
174
|
+
# @param messages [Array<Hash>] These are the pre-configured messages that will be spoken to the user while the
|
175
|
+
# block is running.Request of type Array<Vapi::Blocks::UpdateBlockDtoMessagesItem>, as a Hash
|
176
|
+
# @param input_schema [Hash] This is the input schema for the block. This is the input the block needs to
|
177
|
+
# run. It's given to the block as `steps[0].input`
|
178
|
+
# These are accessible as variables:
|
179
|
+
# - ({{input.propertyName}}) in context of the block execution (step)
|
180
|
+
# - ({{stepName.input.propertyName}}) in context of the workflowRequest of type Vapi::JsonSchema, as a Hash
|
181
|
+
# * :type (Vapi::JsonSchemaType)
|
182
|
+
# * :items (Hash{String => Object})
|
183
|
+
# * :properties (Hash{String => Object})
|
184
|
+
# * :description (String)
|
185
|
+
# * :required (Array<String>)
|
186
|
+
# @param output_schema [Hash] This is the output schema for the block. This is the output the block will
|
187
|
+
# return to the workflow (`{{stepName.output}}`).
|
188
|
+
# These are accessible as variables:
|
189
|
+
# - ({{output.propertyName}}) in context of the block execution (step)
|
190
|
+
# - ({{stepName.output.propertyName}}) in context of the workflow (read caveat #1)
|
191
|
+
# - ({{blockName.output.propertyName}}) in context of the workflow (read caveat
|
192
|
+
# #2)
|
193
|
+
# Caveats:
|
194
|
+
# 1. a workflow can execute a step multiple times. example, if a loop is used in
|
195
|
+
# the graph. {{stepName.output.propertyName}} will reference the latest usage of
|
196
|
+
# the step.
|
197
|
+
# 2. a workflow can execute a block multiple times. example, if a step is called
|
198
|
+
# multiple times or if a block is used in multiple steps.
|
199
|
+
# {{blockName.output.propertyName}} will reference the latest usage of the block.
|
200
|
+
# this liquid variable is just provided for convenience when creating blocks
|
201
|
+
# outside of a workflow with steps.Request of type Vapi::JsonSchema, as a Hash
|
202
|
+
# * :type (Vapi::JsonSchemaType)
|
203
|
+
# * :items (Hash{String => Object})
|
204
|
+
# * :properties (Hash{String => Object})
|
205
|
+
# * :description (String)
|
206
|
+
# * :required (Array<String>)
|
207
|
+
# @param tool [Vapi::Blocks::UpdateBlockDtoTool] This is the tool that the block will call. To use an existing tool, use
|
208
|
+
# `toolId`.
|
209
|
+
# @param steps [Array<Hash>] These are the steps in the workflow.Request of type Array<Vapi::Blocks::UpdateBlockDtoStepsItem>, as a Hash
|
210
|
+
# @param name [String] This is the name of the block. This is just for your reference.
|
211
|
+
# @param instruction [String] This is the instruction to the model.
|
212
|
+
# You can reference any variable in the context of the current block execution
|
213
|
+
# (step):
|
214
|
+
# - "{{input.your-property-name}}" for the current step's input
|
215
|
+
# - "{{your-step-name.output.your-property-name}}" for another step's output (in
|
216
|
+
# the same workflow; read caveat #1)
|
217
|
+
# - "{{your-step-name.input.your-property-name}}" for another step's input (in the
|
218
|
+
# same workflow; read caveat #1)
|
219
|
+
# - "{{your-block-name.output.your-property-name}}" for another block's output (in
|
220
|
+
# the same workflow; read caveat #2)
|
221
|
+
# - "{{your-block-name.input.your-property-name}}" for another block's input (in
|
222
|
+
# the same workflow; read caveat #2)
|
223
|
+
# - "{{workflow.input.your-property-name}}" for the current workflow's input
|
224
|
+
# - "{{global.your-property-name}}" for the global context
|
225
|
+
# This can be as simple or as complex as you want it to be.
|
226
|
+
# - "say hello and ask the user about their day!"
|
227
|
+
# - "collect the user's first and last name"
|
228
|
+
# - "user is {{input.firstName}} {{input.lastName}}. their age is {{input.age}}.
|
229
|
+
# ask them about their salary and if they might be interested in buying a house.
|
230
|
+
# we offer {{input.offer}}"
|
231
|
+
# Caveats:
|
232
|
+
# 1. a workflow can execute a step multiple times. example, if a loop is used in
|
233
|
+
# the graph. {{stepName.output/input.propertyName}} will reference the latest
|
234
|
+
# usage of the step.
|
235
|
+
# 2. a workflow can execute a block multiple times. example, if a step is called
|
236
|
+
# multiple times or if a block is used in multiple steps.
|
237
|
+
# {{blockName.output/input.propertyName}} will reference the latest usage of the
|
238
|
+
# block. this liquid variable is just provided for convenience when creating
|
239
|
+
# blocks outside of a workflow with steps.
|
240
|
+
# @param tool_id [String] This is the id of the tool that the block will call. To use a transient tool,
|
241
|
+
# use `tool`.
|
242
|
+
# @param request_options [Vapi::RequestOptions]
|
243
|
+
# @return [Vapi::Blocks::BlocksUpdateResponse]
|
244
|
+
# @example
|
245
|
+
# api = Vapi::Client.new(
|
246
|
+
# base_url: "https://api.example.com",
|
247
|
+
# environment: Vapi::Environment::DEFAULT,
|
248
|
+
# token: "YOUR_AUTH_TOKEN"
|
249
|
+
# )
|
250
|
+
# api.blocks.update(id: "id")
|
251
|
+
def update(id:, messages: nil, input_schema: nil, output_schema: nil, tool: nil, steps: nil, name: nil,
|
252
|
+
instruction: nil, tool_id: nil, request_options: nil)
|
253
|
+
response = @request_client.conn.patch do |req|
|
254
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
255
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
256
|
+
req.headers = {
|
257
|
+
**(req.headers || {}),
|
258
|
+
**@request_client.get_headers,
|
259
|
+
**(request_options&.additional_headers || {})
|
260
|
+
}.compact
|
261
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
262
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
263
|
+
end
|
264
|
+
req.body = {
|
265
|
+
**(request_options&.additional_body_parameters || {}),
|
266
|
+
messages: messages,
|
267
|
+
inputSchema: input_schema,
|
268
|
+
outputSchema: output_schema,
|
269
|
+
tool: tool,
|
270
|
+
steps: steps,
|
271
|
+
name: name,
|
272
|
+
instruction: instruction,
|
273
|
+
toolId: tool_id
|
274
|
+
}.compact
|
275
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
276
|
+
end
|
277
|
+
Vapi::Blocks::BlocksUpdateResponse.from_json(json_object: response.body)
|
278
|
+
end
|
279
|
+
end
|
280
|
+
|
281
|
+
class AsyncBlocksClient
|
282
|
+
# @return [Vapi::AsyncRequestClient]
|
283
|
+
attr_reader :request_client
|
284
|
+
|
285
|
+
# @param request_client [Vapi::AsyncRequestClient]
|
286
|
+
# @return [Vapi::AsyncBlocksClient]
|
287
|
+
def initialize(request_client:)
|
288
|
+
@request_client = request_client
|
289
|
+
end
|
290
|
+
|
291
|
+
# @param limit [Float] This is the maximum number of items to return. Defaults to 100.
|
292
|
+
# @param created_at_gt [DateTime] This will return items where the createdAt is greater than the specified value.
|
293
|
+
# @param created_at_lt [DateTime] This will return items where the createdAt is less than the specified value.
|
294
|
+
# @param created_at_ge [DateTime] This will return items where the createdAt is greater than or equal to the
|
295
|
+
# specified value.
|
296
|
+
# @param created_at_le [DateTime] This will return items where the createdAt is less than or equal to the
|
297
|
+
# specified value.
|
298
|
+
# @param updated_at_gt [DateTime] This will return items where the updatedAt is greater than the specified value.
|
299
|
+
# @param updated_at_lt [DateTime] This will return items where the updatedAt is less than the specified value.
|
300
|
+
# @param updated_at_ge [DateTime] This will return items where the updatedAt is greater than or equal to the
|
301
|
+
# specified value.
|
302
|
+
# @param updated_at_le [DateTime] This will return items where the updatedAt is less than or equal to the
|
303
|
+
# specified value.
|
304
|
+
# @param request_options [Vapi::RequestOptions]
|
305
|
+
# @return [Array<Vapi::Blocks::BlocksListResponseItem>]
|
306
|
+
# @example
|
307
|
+
# api = Vapi::Client.new(
|
308
|
+
# base_url: "https://api.example.com",
|
309
|
+
# environment: Vapi::Environment::DEFAULT,
|
310
|
+
# token: "YOUR_AUTH_TOKEN"
|
311
|
+
# )
|
312
|
+
# api.blocks.list
|
313
|
+
def list(limit: nil, created_at_gt: nil, created_at_lt: nil, created_at_ge: nil, created_at_le: nil,
|
314
|
+
updated_at_gt: nil, updated_at_lt: nil, updated_at_ge: nil, updated_at_le: nil, request_options: nil)
|
315
|
+
Async do
|
316
|
+
response = @request_client.conn.get do |req|
|
317
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
318
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
319
|
+
req.headers = {
|
320
|
+
**(req.headers || {}),
|
321
|
+
**@request_client.get_headers,
|
322
|
+
**(request_options&.additional_headers || {})
|
323
|
+
}.compact
|
324
|
+
req.params = {
|
325
|
+
**(request_options&.additional_query_parameters || {}),
|
326
|
+
"limit": limit,
|
327
|
+
"createdAtGt": created_at_gt,
|
328
|
+
"createdAtLt": created_at_lt,
|
329
|
+
"createdAtGe": created_at_ge,
|
330
|
+
"createdAtLe": created_at_le,
|
331
|
+
"updatedAtGt": updated_at_gt,
|
332
|
+
"updatedAtLt": updated_at_lt,
|
333
|
+
"updatedAtGe": updated_at_ge,
|
334
|
+
"updatedAtLe": updated_at_le
|
335
|
+
}.compact
|
336
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
337
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
338
|
+
end
|
339
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block"
|
340
|
+
end
|
341
|
+
parsed_json = JSON.parse(response.body)
|
342
|
+
parsed_json&.map do |item|
|
343
|
+
item = item.to_json
|
344
|
+
Vapi::Blocks::BlocksListResponseItem.from_json(json_object: item)
|
345
|
+
end
|
346
|
+
end
|
347
|
+
end
|
348
|
+
|
349
|
+
# @param request [Vapi::Blocks::BlocksCreateRequest]
|
350
|
+
# @param request_options [Vapi::RequestOptions]
|
351
|
+
# @return [Vapi::Blocks::BlocksCreateResponse]
|
352
|
+
# @example
|
353
|
+
# api = Vapi::Client.new(
|
354
|
+
# base_url: "https://api.example.com",
|
355
|
+
# environment: Vapi::Environment::DEFAULT,
|
356
|
+
# token: "YOUR_AUTH_TOKEN"
|
357
|
+
# )
|
358
|
+
# api.blocks.create
|
359
|
+
def create(request:, request_options: nil)
|
360
|
+
Async do
|
361
|
+
response = @request_client.conn.post do |req|
|
362
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
363
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
364
|
+
req.headers = {
|
365
|
+
**(req.headers || {}),
|
366
|
+
**@request_client.get_headers,
|
367
|
+
**(request_options&.additional_headers || {})
|
368
|
+
}.compact
|
369
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
370
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
371
|
+
end
|
372
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
373
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block"
|
374
|
+
end
|
375
|
+
Vapi::Blocks::BlocksCreateResponse.from_json(json_object: response.body)
|
376
|
+
end
|
377
|
+
end
|
378
|
+
|
379
|
+
# @param id [String]
|
380
|
+
# @param request_options [Vapi::RequestOptions]
|
381
|
+
# @return [Vapi::Blocks::BlocksGetResponse]
|
382
|
+
# @example
|
383
|
+
# api = Vapi::Client.new(
|
384
|
+
# base_url: "https://api.example.com",
|
385
|
+
# environment: Vapi::Environment::DEFAULT,
|
386
|
+
# token: "YOUR_AUTH_TOKEN"
|
387
|
+
# )
|
388
|
+
# api.blocks.get(id: "id")
|
389
|
+
def get(id:, request_options: nil)
|
390
|
+
Async do
|
391
|
+
response = @request_client.conn.get do |req|
|
392
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
393
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
394
|
+
req.headers = {
|
395
|
+
**(req.headers || {}),
|
396
|
+
**@request_client.get_headers,
|
397
|
+
**(request_options&.additional_headers || {})
|
398
|
+
}.compact
|
399
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
400
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
401
|
+
end
|
402
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
403
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
404
|
+
end
|
405
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
406
|
+
end
|
407
|
+
Vapi::Blocks::BlocksGetResponse.from_json(json_object: response.body)
|
408
|
+
end
|
409
|
+
end
|
410
|
+
|
411
|
+
# @param id [String]
|
412
|
+
# @param request_options [Vapi::RequestOptions]
|
413
|
+
# @return [Vapi::Blocks::BlocksDeleteResponse]
|
414
|
+
# @example
|
415
|
+
# api = Vapi::Client.new(
|
416
|
+
# base_url: "https://api.example.com",
|
417
|
+
# environment: Vapi::Environment::DEFAULT,
|
418
|
+
# token: "YOUR_AUTH_TOKEN"
|
419
|
+
# )
|
420
|
+
# api.blocks.delete(id: "id")
|
421
|
+
def delete(id:, request_options: nil)
|
422
|
+
Async do
|
423
|
+
response = @request_client.conn.delete do |req|
|
424
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
425
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
426
|
+
req.headers = {
|
427
|
+
**(req.headers || {}),
|
428
|
+
**@request_client.get_headers,
|
429
|
+
**(request_options&.additional_headers || {})
|
430
|
+
}.compact
|
431
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
432
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
433
|
+
end
|
434
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
435
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
436
|
+
end
|
437
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
438
|
+
end
|
439
|
+
Vapi::Blocks::BlocksDeleteResponse.from_json(json_object: response.body)
|
440
|
+
end
|
441
|
+
end
|
442
|
+
|
443
|
+
# @param id [String]
|
444
|
+
# @param messages [Array<Hash>] These are the pre-configured messages that will be spoken to the user while the
|
445
|
+
# block is running.Request of type Array<Vapi::Blocks::UpdateBlockDtoMessagesItem>, as a Hash
|
446
|
+
# @param input_schema [Hash] This is the input schema for the block. This is the input the block needs to
|
447
|
+
# run. It's given to the block as `steps[0].input`
|
448
|
+
# These are accessible as variables:
|
449
|
+
# - ({{input.propertyName}}) in context of the block execution (step)
|
450
|
+
# - ({{stepName.input.propertyName}}) in context of the workflowRequest of type Vapi::JsonSchema, as a Hash
|
451
|
+
# * :type (Vapi::JsonSchemaType)
|
452
|
+
# * :items (Hash{String => Object})
|
453
|
+
# * :properties (Hash{String => Object})
|
454
|
+
# * :description (String)
|
455
|
+
# * :required (Array<String>)
|
456
|
+
# @param output_schema [Hash] This is the output schema for the block. This is the output the block will
|
457
|
+
# return to the workflow (`{{stepName.output}}`).
|
458
|
+
# These are accessible as variables:
|
459
|
+
# - ({{output.propertyName}}) in context of the block execution (step)
|
460
|
+
# - ({{stepName.output.propertyName}}) in context of the workflow (read caveat #1)
|
461
|
+
# - ({{blockName.output.propertyName}}) in context of the workflow (read caveat
|
462
|
+
# #2)
|
463
|
+
# Caveats:
|
464
|
+
# 1. a workflow can execute a step multiple times. example, if a loop is used in
|
465
|
+
# the graph. {{stepName.output.propertyName}} will reference the latest usage of
|
466
|
+
# the step.
|
467
|
+
# 2. a workflow can execute a block multiple times. example, if a step is called
|
468
|
+
# multiple times or if a block is used in multiple steps.
|
469
|
+
# {{blockName.output.propertyName}} will reference the latest usage of the block.
|
470
|
+
# this liquid variable is just provided for convenience when creating blocks
|
471
|
+
# outside of a workflow with steps.Request of type Vapi::JsonSchema, as a Hash
|
472
|
+
# * :type (Vapi::JsonSchemaType)
|
473
|
+
# * :items (Hash{String => Object})
|
474
|
+
# * :properties (Hash{String => Object})
|
475
|
+
# * :description (String)
|
476
|
+
# * :required (Array<String>)
|
477
|
+
# @param tool [Vapi::Blocks::UpdateBlockDtoTool] This is the tool that the block will call. To use an existing tool, use
|
478
|
+
# `toolId`.
|
479
|
+
# @param steps [Array<Hash>] These are the steps in the workflow.Request of type Array<Vapi::Blocks::UpdateBlockDtoStepsItem>, as a Hash
|
480
|
+
# @param name [String] This is the name of the block. This is just for your reference.
|
481
|
+
# @param instruction [String] This is the instruction to the model.
|
482
|
+
# You can reference any variable in the context of the current block execution
|
483
|
+
# (step):
|
484
|
+
# - "{{input.your-property-name}}" for the current step's input
|
485
|
+
# - "{{your-step-name.output.your-property-name}}" for another step's output (in
|
486
|
+
# the same workflow; read caveat #1)
|
487
|
+
# - "{{your-step-name.input.your-property-name}}" for another step's input (in the
|
488
|
+
# same workflow; read caveat #1)
|
489
|
+
# - "{{your-block-name.output.your-property-name}}" for another block's output (in
|
490
|
+
# the same workflow; read caveat #2)
|
491
|
+
# - "{{your-block-name.input.your-property-name}}" for another block's input (in
|
492
|
+
# the same workflow; read caveat #2)
|
493
|
+
# - "{{workflow.input.your-property-name}}" for the current workflow's input
|
494
|
+
# - "{{global.your-property-name}}" for the global context
|
495
|
+
# This can be as simple or as complex as you want it to be.
|
496
|
+
# - "say hello and ask the user about their day!"
|
497
|
+
# - "collect the user's first and last name"
|
498
|
+
# - "user is {{input.firstName}} {{input.lastName}}. their age is {{input.age}}.
|
499
|
+
# ask them about their salary and if they might be interested in buying a house.
|
500
|
+
# we offer {{input.offer}}"
|
501
|
+
# Caveats:
|
502
|
+
# 1. a workflow can execute a step multiple times. example, if a loop is used in
|
503
|
+
# the graph. {{stepName.output/input.propertyName}} will reference the latest
|
504
|
+
# usage of the step.
|
505
|
+
# 2. a workflow can execute a block multiple times. example, if a step is called
|
506
|
+
# multiple times or if a block is used in multiple steps.
|
507
|
+
# {{blockName.output/input.propertyName}} will reference the latest usage of the
|
508
|
+
# block. this liquid variable is just provided for convenience when creating
|
509
|
+
# blocks outside of a workflow with steps.
|
510
|
+
# @param tool_id [String] This is the id of the tool that the block will call. To use a transient tool,
|
511
|
+
# use `tool`.
|
512
|
+
# @param request_options [Vapi::RequestOptions]
|
513
|
+
# @return [Vapi::Blocks::BlocksUpdateResponse]
|
514
|
+
# @example
|
515
|
+
# api = Vapi::Client.new(
|
516
|
+
# base_url: "https://api.example.com",
|
517
|
+
# environment: Vapi::Environment::DEFAULT,
|
518
|
+
# token: "YOUR_AUTH_TOKEN"
|
519
|
+
# )
|
520
|
+
# api.blocks.update(id: "id")
|
521
|
+
def update(id:, messages: nil, input_schema: nil, output_schema: nil, tool: nil, steps: nil, name: nil,
|
522
|
+
instruction: nil, tool_id: nil, request_options: nil)
|
523
|
+
Async do
|
524
|
+
response = @request_client.conn.patch do |req|
|
525
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
526
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
527
|
+
req.headers = {
|
528
|
+
**(req.headers || {}),
|
529
|
+
**@request_client.get_headers,
|
530
|
+
**(request_options&.additional_headers || {})
|
531
|
+
}.compact
|
532
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
533
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
534
|
+
end
|
535
|
+
req.body = {
|
536
|
+
**(request_options&.additional_body_parameters || {}),
|
537
|
+
messages: messages,
|
538
|
+
inputSchema: input_schema,
|
539
|
+
outputSchema: output_schema,
|
540
|
+
tool: tool,
|
541
|
+
steps: steps,
|
542
|
+
name: name,
|
543
|
+
instruction: instruction,
|
544
|
+
toolId: tool_id
|
545
|
+
}.compact
|
546
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/block/#{id}"
|
547
|
+
end
|
548
|
+
Vapi::Blocks::BlocksUpdateResponse.from_json(json_object: response.body)
|
549
|
+
end
|
550
|
+
end
|
551
|
+
end
|
552
|
+
end
|
@@ -0,0 +1,109 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "../../types/create_conversation_block_dto"
|
5
|
+
require_relative "../../types/create_tool_call_block_dto"
|
6
|
+
require_relative "../../types/create_workflow_block_dto"
|
7
|
+
|
8
|
+
module Vapi
|
9
|
+
class Blocks
|
10
|
+
class BlocksCreateRequest
|
11
|
+
# @return [Object]
|
12
|
+
attr_reader :member
|
13
|
+
# @return [String]
|
14
|
+
attr_reader :discriminant
|
15
|
+
|
16
|
+
private_class_method :new
|
17
|
+
alias kind_of? is_a?
|
18
|
+
|
19
|
+
# @param member [Object]
|
20
|
+
# @param discriminant [String]
|
21
|
+
# @return [Vapi::Blocks::BlocksCreateRequest]
|
22
|
+
def initialize(member:, discriminant:)
|
23
|
+
@member = member
|
24
|
+
@discriminant = discriminant
|
25
|
+
end
|
26
|
+
|
27
|
+
# Deserialize a JSON object to an instance of BlocksCreateRequest
|
28
|
+
#
|
29
|
+
# @param json_object [String]
|
30
|
+
# @return [Vapi::Blocks::BlocksCreateRequest]
|
31
|
+
def self.from_json(json_object:)
|
32
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
33
|
+
member = case struct.type
|
34
|
+
when "conversation"
|
35
|
+
Vapi::CreateConversationBlockDto.from_json(json_object: json_object)
|
36
|
+
when "tool-call"
|
37
|
+
Vapi::CreateToolCallBlockDto.from_json(json_object: json_object)
|
38
|
+
when "workflow"
|
39
|
+
Vapi::CreateWorkflowBlockDto.from_json(json_object: json_object)
|
40
|
+
else
|
41
|
+
Vapi::CreateConversationBlockDto.from_json(json_object: json_object)
|
42
|
+
end
|
43
|
+
new(member: member, discriminant: struct.type)
|
44
|
+
end
|
45
|
+
|
46
|
+
# For Union Types, to_json functionality is delegated to the wrapped member.
|
47
|
+
#
|
48
|
+
# @return [String]
|
49
|
+
def to_json(*_args)
|
50
|
+
case @discriminant
|
51
|
+
when "conversation"
|
52
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
53
|
+
when "tool-call"
|
54
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
55
|
+
when "workflow"
|
56
|
+
{ **@member.to_json, type: @discriminant }.to_json
|
57
|
+
else
|
58
|
+
{ "type": @discriminant, value: @member }.to_json
|
59
|
+
end
|
60
|
+
@member.to_json
|
61
|
+
end
|
62
|
+
|
63
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
64
|
+
# hash and check each fields type against the current object's property
|
65
|
+
# definitions.
|
66
|
+
#
|
67
|
+
# @param obj [Object]
|
68
|
+
# @return [Void]
|
69
|
+
def self.validate_raw(obj:)
|
70
|
+
case obj.type
|
71
|
+
when "conversation"
|
72
|
+
Vapi::CreateConversationBlockDto.validate_raw(obj: obj)
|
73
|
+
when "tool-call"
|
74
|
+
Vapi::CreateToolCallBlockDto.validate_raw(obj: obj)
|
75
|
+
when "workflow"
|
76
|
+
Vapi::CreateWorkflowBlockDto.validate_raw(obj: obj)
|
77
|
+
else
|
78
|
+
raise("Passed value matched no type within the union, validation failed.")
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# For Union Types, is_a? functionality is delegated to the wrapped member.
|
83
|
+
#
|
84
|
+
# @param obj [Object]
|
85
|
+
# @return [Boolean]
|
86
|
+
def is_a?(obj)
|
87
|
+
@member.is_a?(obj)
|
88
|
+
end
|
89
|
+
|
90
|
+
# @param member [Vapi::CreateConversationBlockDto]
|
91
|
+
# @return [Vapi::Blocks::BlocksCreateRequest]
|
92
|
+
def self.conversation(member:)
|
93
|
+
new(member: member, discriminant: "conversation")
|
94
|
+
end
|
95
|
+
|
96
|
+
# @param member [Vapi::CreateToolCallBlockDto]
|
97
|
+
# @return [Vapi::Blocks::BlocksCreateRequest]
|
98
|
+
def self.tool_call(member:)
|
99
|
+
new(member: member, discriminant: "tool-call")
|
100
|
+
end
|
101
|
+
|
102
|
+
# @param member [Vapi::CreateWorkflowBlockDto]
|
103
|
+
# @return [Vapi::Blocks::BlocksCreateRequest]
|
104
|
+
def self.workflow(member:)
|
105
|
+
new(member: member, discriminant: "workflow")
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|