studyfetch-sdk 0.1.0a15__tar.gz → 0.1.0a17__tar.gz
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.
- studyfetch_sdk-0.1.0a17/.release-please-manifest.json +3 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/CHANGELOG.md +16 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/PKG-INFO +1 -1
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/api.md +8 -4
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/pyproject.toml +1 -1
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_version.py +1 -1
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/upload/component.py +17 -21
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_create_params.py +0 -3
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/__init__.py +2 -0
- studyfetch_sdk-0.1.0a17/src/studyfetch_sdk/types/v1/upload/component_complete_upload_response.py +16 -0
- studyfetch_sdk-0.1.0a17/src/studyfetch_sdk/types/v1/upload/file_upload_response.py +24 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/upload/test_component.py +20 -18
- studyfetch_sdk-0.1.0a15/.release-please-manifest.json +0 -3
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/.gitignore +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/CONTRIBUTING.md +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/LICENSE +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/README.md +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/SECURITY.md +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/bin/check-release-environment +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/bin/publish-pypi +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/examples/.keep +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/mypy.ini +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/noxfile.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/release-please-config.json +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/requirements-dev.lock +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/requirements.lock +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_base_client.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_client.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_compat.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_constants.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_exceptions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_files.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_models.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_qs.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_resource.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_streaming.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_types.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_logs.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_proxy.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_reflection.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_resources_proxy.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_streams.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_sync.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_transform.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_typing.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_utils.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/lib/.keep +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/py.typed +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/assignment_grader.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/audio_recaps/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/audio_recaps/audio_recaps.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/audio_recaps/sections.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/chat.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/sessions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/test.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/components.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/embed/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/embed/component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/embed/embed.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/explainers.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/flashcards.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/folders.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/materials/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/materials/bulk.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/materials/materials.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/materials/test.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/materials/upload.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/scenarios.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/sessions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/submissions/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/submissions/submissions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/scenarios/submissions/user.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/tests/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/tests/component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/tests/tests.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/upload/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/upload/upload.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/usage/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/usage/analyst.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/usage/usage.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/v1.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/assignment_grader_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/assignment_grader_get_all_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/assignment_grader_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/audio_recaps/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/chat/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/chat/session_retrieve_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/chat_get_session_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/chat_send_message_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/chat_stream_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_generate_embed_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_generate_embed_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_list_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_list_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/component_update_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/embed/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/embed/component_interact_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/embed/component_retrieve_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/embed_get_theme_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/embed_verify_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/explainer_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/explainer_handle_webhook_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_batch_process_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_batch_process_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_get_algorithm_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_get_all_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_get_due_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_get_stats_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_get_types_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/flashcard_rate_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/folder_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/folder_list_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/folder_update_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material_get_download_url_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material_list_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material_list_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/material_search_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/materials/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/materials/upload_upload_file_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/materials/upload_upload_from_url_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenario_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenario_submit_answer_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenario_update_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenarios/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenarios/component_update_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/scenarios/submissions/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/test_create_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/test_retake_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/test_submit_answer_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/test_submit_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/tests/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/component_complete_upload_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/component_get_presigned_url_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/component_get_presigned_url_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/component_upload_file_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/component_upload_url_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/usage/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/usage/analyst_list_events_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/usage_get_stats_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/usage_get_summary_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/usage_list_events_params.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/audio_recaps/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/audio_recaps/test_sections.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/chat/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/chat/test_sessions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/chat/test_test.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/embed/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/embed/test_component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/materials/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/materials/test_bulk.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/materials/test_test.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/materials/test_upload.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/scenarios/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/scenarios/submissions/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/scenarios/submissions/test_user.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/scenarios/test_component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/scenarios/test_sessions.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_assignment_grader.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_audio_recaps.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_chat.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_components.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_embed.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_explainers.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_flashcards.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_folders.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_materials.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_scenarios.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_tests.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/test_usage.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/tests/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/tests/test_component.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/upload/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/usage/__init__.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/usage/test_analyst.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/conftest.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/sample_file.txt +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_client.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_deepcopy.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_extract_files.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_files.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_models.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_qs.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_required_args.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_response.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_streaming.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_transform.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_utils/test_proxy.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/test_utils/test_typing.py +0 -0
- {studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/utils.py +0 -0
@@ -1,5 +1,21 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.1.0-alpha.17 (2025-07-21)
|
4
|
+
|
5
|
+
Full Changelog: [v0.1.0-alpha.16...v0.1.0-alpha.17](https://github.com/GoStudyFetchGo/studyfetch-sdk-python/compare/v0.1.0-alpha.16...v0.1.0-alpha.17)
|
6
|
+
|
7
|
+
### Features
|
8
|
+
|
9
|
+
* **api:** manual updates ([988f04e](https://github.com/GoStudyFetchGo/studyfetch-sdk-python/commit/988f04eb38099bae594ad0665d4f06188b5aa9de))
|
10
|
+
|
11
|
+
## 0.1.0-alpha.16 (2025-07-21)
|
12
|
+
|
13
|
+
Full Changelog: [v0.1.0-alpha.15...v0.1.0-alpha.16](https://github.com/GoStudyFetchGo/studyfetch-sdk-python/compare/v0.1.0-alpha.15...v0.1.0-alpha.16)
|
14
|
+
|
15
|
+
### Features
|
16
|
+
|
17
|
+
* **api:** api update ([ccd825b](https://github.com/GoStudyFetchGo/studyfetch-sdk-python/commit/ccd825b3f13bcf8d567a13ca1b5b057889d95037))
|
18
|
+
|
3
19
|
## 0.1.0-alpha.15 (2025-07-21)
|
4
20
|
|
5
21
|
Full Changelog: [v0.1.0-alpha.14...v0.1.0-alpha.15](https://github.com/GoStudyFetchGo/studyfetch-sdk-python/compare/v0.1.0-alpha.14...v0.1.0-alpha.15)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: studyfetch_sdk
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.0a17
|
4
4
|
Summary: The official Python library for the studyfetch-sdk API
|
5
5
|
Project-URL: Homepage, https://github.com/GoStudyFetchGo/studyfetch-sdk-python
|
6
6
|
Project-URL: Repository, https://github.com/GoStudyFetchGo/studyfetch-sdk-python
|
@@ -245,15 +245,19 @@ Methods:
|
|
245
245
|
Types:
|
246
246
|
|
247
247
|
```python
|
248
|
-
from studyfetch_sdk.types.v1.upload import
|
248
|
+
from studyfetch_sdk.types.v1.upload import (
|
249
|
+
FileUploadResponse,
|
250
|
+
ComponentCompleteUploadResponse,
|
251
|
+
ComponentGetPresignedURLResponse,
|
252
|
+
)
|
249
253
|
```
|
250
254
|
|
251
255
|
Methods:
|
252
256
|
|
253
|
-
- <code title="post /api/v1/upload/component/{componentId}/complete">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">complete_upload</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_complete_upload_params.py">params</a>) ->
|
257
|
+
- <code title="post /api/v1/upload/component/{componentId}/complete">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">complete_upload</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_complete_upload_params.py">params</a>) -> <a href="./src/studyfetch_sdk/types/v1/upload/component_complete_upload_response.py">ComponentCompleteUploadResponse</a></code>
|
254
258
|
- <code title="post /api/v1/upload/component/{componentId}/presigned-url">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">get_presigned_url</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_get_presigned_url_params.py">params</a>) -> <a href="./src/studyfetch_sdk/types/v1/upload/component_get_presigned_url_response.py">ComponentGetPresignedURLResponse</a></code>
|
255
|
-
- <code title="post /api/v1/upload/component/{componentId}/file">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">upload_file</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_upload_file_params.py">params</a>) ->
|
256
|
-
- <code title="post /api/v1/upload/component/{componentId}/url">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">upload_url</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_upload_url_params.py">params</a>) ->
|
259
|
+
- <code title="post /api/v1/upload/component/{componentId}/file">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">upload_file</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_upload_file_params.py">params</a>) -> <a href="./src/studyfetch_sdk/types/v1/upload/file_upload_response.py">FileUploadResponse</a></code>
|
260
|
+
- <code title="post /api/v1/upload/component/{componentId}/url">client.v1.upload.component.<a href="./src/studyfetch_sdk/resources/v1/upload/component.py">upload_url</a>(component_id, \*\*<a href="src/studyfetch_sdk/types/v1/upload/component_upload_url_params.py">params</a>) -> <a href="./src/studyfetch_sdk/types/v1/upload/file_upload_response.py">FileUploadResponse</a></code>
|
257
261
|
|
258
262
|
## AssignmentGrader
|
259
263
|
|
@@ -6,7 +6,7 @@ from typing import Mapping, cast
|
|
6
6
|
|
7
7
|
import httpx
|
8
8
|
|
9
|
-
from ...._types import NOT_GIVEN, Body, Query, Headers,
|
9
|
+
from ...._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes
|
10
10
|
from ...._utils import extract_files, maybe_transform, deepcopy_minimal, async_maybe_transform
|
11
11
|
from ...._compat import cached_property
|
12
12
|
from ...._resource import SyncAPIResource, AsyncAPIResource
|
@@ -23,6 +23,8 @@ from ....types.v1.upload import (
|
|
23
23
|
component_complete_upload_params,
|
24
24
|
component_get_presigned_url_params,
|
25
25
|
)
|
26
|
+
from ....types.v1.upload.file_upload_response import FileUploadResponse
|
27
|
+
from ....types.v1.upload.component_complete_upload_response import ComponentCompleteUploadResponse
|
26
28
|
from ....types.v1.upload.component_get_presigned_url_response import ComponentGetPresignedURLResponse
|
27
29
|
|
28
30
|
__all__ = ["ComponentResource", "AsyncComponentResource"]
|
@@ -61,7 +63,7 @@ class ComponentResource(SyncAPIResource):
|
|
61
63
|
extra_query: Query | None = None,
|
62
64
|
extra_body: Body | None = None,
|
63
65
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
64
|
-
) ->
|
66
|
+
) -> ComponentCompleteUploadResponse:
|
65
67
|
"""
|
66
68
|
Complete a file upload after using presigned URL
|
67
69
|
|
@@ -82,7 +84,6 @@ class ComponentResource(SyncAPIResource):
|
|
82
84
|
"""
|
83
85
|
if not component_id:
|
84
86
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
85
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
86
87
|
return self._post(
|
87
88
|
f"/api/v1/upload/component/{component_id}/complete",
|
88
89
|
body=maybe_transform(
|
@@ -96,7 +97,7 @@ class ComponentResource(SyncAPIResource):
|
|
96
97
|
options=make_request_options(
|
97
98
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
98
99
|
),
|
99
|
-
cast_to=
|
100
|
+
cast_to=ComponentCompleteUploadResponse,
|
100
101
|
)
|
101
102
|
|
102
103
|
def get_presigned_url(
|
@@ -166,7 +167,7 @@ class ComponentResource(SyncAPIResource):
|
|
166
167
|
extra_query: Query | None = None,
|
167
168
|
extra_body: Body | None = None,
|
168
169
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
169
|
-
) ->
|
170
|
+
) -> FileUploadResponse:
|
170
171
|
"""
|
171
172
|
Upload a file to a component
|
172
173
|
|
@@ -187,7 +188,6 @@ class ComponentResource(SyncAPIResource):
|
|
187
188
|
"""
|
188
189
|
if not component_id:
|
189
190
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
190
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
191
191
|
body = deepcopy_minimal(
|
192
192
|
{
|
193
193
|
"file": file,
|
@@ -199,7 +199,7 @@ class ComponentResource(SyncAPIResource):
|
|
199
199
|
# It should be noted that the actual Content-Type header that will be
|
200
200
|
# sent to the server will contain a `boundary` parameter, e.g.
|
201
201
|
# multipart/form-data; boundary=---abc--
|
202
|
-
extra_headers
|
202
|
+
extra_headers = {"Content-Type": "multipart/form-data", **(extra_headers or {})}
|
203
203
|
return self._post(
|
204
204
|
f"/api/v1/upload/component/{component_id}/file",
|
205
205
|
body=maybe_transform(body, component_upload_file_params.ComponentUploadFileParams),
|
@@ -207,7 +207,7 @@ class ComponentResource(SyncAPIResource):
|
|
207
207
|
options=make_request_options(
|
208
208
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
209
209
|
),
|
210
|
-
cast_to=
|
210
|
+
cast_to=FileUploadResponse,
|
211
211
|
)
|
212
212
|
|
213
213
|
def upload_url(
|
@@ -224,7 +224,7 @@ class ComponentResource(SyncAPIResource):
|
|
224
224
|
extra_query: Query | None = None,
|
225
225
|
extra_body: Body | None = None,
|
226
226
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
227
|
-
) ->
|
227
|
+
) -> FileUploadResponse:
|
228
228
|
"""
|
229
229
|
Upload a file from URL to a component
|
230
230
|
|
@@ -247,7 +247,6 @@ class ComponentResource(SyncAPIResource):
|
|
247
247
|
"""
|
248
248
|
if not component_id:
|
249
249
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
250
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
251
250
|
return self._post(
|
252
251
|
f"/api/v1/upload/component/{component_id}/url",
|
253
252
|
body=maybe_transform(
|
@@ -262,7 +261,7 @@ class ComponentResource(SyncAPIResource):
|
|
262
261
|
options=make_request_options(
|
263
262
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
264
263
|
),
|
265
|
-
cast_to=
|
264
|
+
cast_to=FileUploadResponse,
|
266
265
|
)
|
267
266
|
|
268
267
|
|
@@ -299,7 +298,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
299
298
|
extra_query: Query | None = None,
|
300
299
|
extra_body: Body | None = None,
|
301
300
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
302
|
-
) ->
|
301
|
+
) -> ComponentCompleteUploadResponse:
|
303
302
|
"""
|
304
303
|
Complete a file upload after using presigned URL
|
305
304
|
|
@@ -320,7 +319,6 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
320
319
|
"""
|
321
320
|
if not component_id:
|
322
321
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
323
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
324
322
|
return await self._post(
|
325
323
|
f"/api/v1/upload/component/{component_id}/complete",
|
326
324
|
body=await async_maybe_transform(
|
@@ -334,7 +332,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
334
332
|
options=make_request_options(
|
335
333
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
336
334
|
),
|
337
|
-
cast_to=
|
335
|
+
cast_to=ComponentCompleteUploadResponse,
|
338
336
|
)
|
339
337
|
|
340
338
|
async def get_presigned_url(
|
@@ -404,7 +402,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
404
402
|
extra_query: Query | None = None,
|
405
403
|
extra_body: Body | None = None,
|
406
404
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
407
|
-
) ->
|
405
|
+
) -> FileUploadResponse:
|
408
406
|
"""
|
409
407
|
Upload a file to a component
|
410
408
|
|
@@ -425,7 +423,6 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
425
423
|
"""
|
426
424
|
if not component_id:
|
427
425
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
428
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
429
426
|
body = deepcopy_minimal(
|
430
427
|
{
|
431
428
|
"file": file,
|
@@ -437,7 +434,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
437
434
|
# It should be noted that the actual Content-Type header that will be
|
438
435
|
# sent to the server will contain a `boundary` parameter, e.g.
|
439
436
|
# multipart/form-data; boundary=---abc--
|
440
|
-
extra_headers
|
437
|
+
extra_headers = {"Content-Type": "multipart/form-data", **(extra_headers or {})}
|
441
438
|
return await self._post(
|
442
439
|
f"/api/v1/upload/component/{component_id}/file",
|
443
440
|
body=await async_maybe_transform(body, component_upload_file_params.ComponentUploadFileParams),
|
@@ -445,7 +442,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
445
442
|
options=make_request_options(
|
446
443
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
447
444
|
),
|
448
|
-
cast_to=
|
445
|
+
cast_to=FileUploadResponse,
|
449
446
|
)
|
450
447
|
|
451
448
|
async def upload_url(
|
@@ -462,7 +459,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
462
459
|
extra_query: Query | None = None,
|
463
460
|
extra_body: Body | None = None,
|
464
461
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
465
|
-
) ->
|
462
|
+
) -> FileUploadResponse:
|
466
463
|
"""
|
467
464
|
Upload a file from URL to a component
|
468
465
|
|
@@ -485,7 +482,6 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
485
482
|
"""
|
486
483
|
if not component_id:
|
487
484
|
raise ValueError(f"Expected a non-empty value for `component_id` but received {component_id!r}")
|
488
|
-
extra_headers = {"Accept": "*/*", **(extra_headers or {})}
|
489
485
|
return await self._post(
|
490
486
|
f"/api/v1/upload/component/{component_id}/url",
|
491
487
|
body=await async_maybe_transform(
|
@@ -500,7 +496,7 @@ class AsyncComponentResource(AsyncAPIResource):
|
|
500
496
|
options=make_request_options(
|
501
497
|
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
502
498
|
),
|
503
|
-
cast_to=
|
499
|
+
cast_to=FileUploadResponse,
|
504
500
|
)
|
505
501
|
|
506
502
|
|
@@ -91,9 +91,6 @@ class ConfigFlashcardsConfigDto(TypedDict, total=False):
|
|
91
91
|
difficulty: Literal["easy", "medium", "hard", "mixed"]
|
92
92
|
"""Difficulty level"""
|
93
93
|
|
94
|
-
enable_spaced_repetition: Annotated[bool, PropertyInfo(alias="enableSpacedRepetition")]
|
95
|
-
"""Enable spaced repetition"""
|
96
|
-
|
97
94
|
folders: List[str]
|
98
95
|
"""Folder IDs"""
|
99
96
|
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/types/v1/upload/__init__.py
RENAMED
@@ -2,8 +2,10 @@
|
|
2
2
|
|
3
3
|
from __future__ import annotations
|
4
4
|
|
5
|
+
from .file_upload_response import FileUploadResponse as FileUploadResponse
|
5
6
|
from .component_upload_url_params import ComponentUploadURLParams as ComponentUploadURLParams
|
6
7
|
from .component_upload_file_params import ComponentUploadFileParams as ComponentUploadFileParams
|
7
8
|
from .component_complete_upload_params import ComponentCompleteUploadParams as ComponentCompleteUploadParams
|
9
|
+
from .component_complete_upload_response import ComponentCompleteUploadResponse as ComponentCompleteUploadResponse
|
8
10
|
from .component_get_presigned_url_params import ComponentGetPresignedURLParams as ComponentGetPresignedURLParams
|
9
11
|
from .component_get_presigned_url_response import ComponentGetPresignedURLResponse as ComponentGetPresignedURLResponse
|
studyfetch_sdk-0.1.0a17/src/studyfetch_sdk/types/v1/upload/component_complete_upload_response.py
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
2
|
+
|
3
|
+
from ...._models import BaseModel
|
4
|
+
|
5
|
+
__all__ = ["ComponentCompleteUploadResponse"]
|
6
|
+
|
7
|
+
|
8
|
+
class ComponentCompleteUploadResponse(BaseModel):
|
9
|
+
id: str
|
10
|
+
"""The ID of the uploaded material"""
|
11
|
+
|
12
|
+
name: str
|
13
|
+
"""The name of the material"""
|
14
|
+
|
15
|
+
status: str
|
16
|
+
"""The status of the material"""
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
2
|
+
|
3
|
+
from pydantic import Field as FieldInfo
|
4
|
+
|
5
|
+
from ...._models import BaseModel
|
6
|
+
|
7
|
+
__all__ = ["FileUploadResponse"]
|
8
|
+
|
9
|
+
|
10
|
+
class FileUploadResponse(BaseModel):
|
11
|
+
id: str
|
12
|
+
"""The ID of the uploaded material"""
|
13
|
+
|
14
|
+
content_type: str = FieldInfo(alias="contentType")
|
15
|
+
"""The content type of the material"""
|
16
|
+
|
17
|
+
name: str
|
18
|
+
"""The name of the material"""
|
19
|
+
|
20
|
+
s3_key: str = FieldInfo(alias="s3Key")
|
21
|
+
"""The S3 key of the uploaded file"""
|
22
|
+
|
23
|
+
status: str
|
24
|
+
"""The status of the material"""
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/tests/api_resources/v1/upload/test_component.py
RENAMED
@@ -10,6 +10,8 @@ import pytest
|
|
10
10
|
from tests.utils import assert_matches_type
|
11
11
|
from studyfetch_sdk import StudyfetchSDK, AsyncStudyfetchSDK
|
12
12
|
from studyfetch_sdk.types.v1.upload import (
|
13
|
+
FileUploadResponse,
|
14
|
+
ComponentCompleteUploadResponse,
|
13
15
|
ComponentGetPresignedURLResponse,
|
14
16
|
)
|
15
17
|
|
@@ -28,7 +30,7 @@ class TestComponent:
|
|
28
30
|
organization_id="507f1f77bcf86cd799439011",
|
29
31
|
s3_key="organizations/507f1f77bcf86cd799439011/materials/document.pdf",
|
30
32
|
)
|
31
|
-
|
33
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
32
34
|
|
33
35
|
@pytest.mark.skip()
|
34
36
|
@parametrize
|
@@ -43,7 +45,7 @@ class TestComponent:
|
|
43
45
|
assert response.is_closed is True
|
44
46
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
45
47
|
component = response.parse()
|
46
|
-
|
48
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
47
49
|
|
48
50
|
@pytest.mark.skip()
|
49
51
|
@parametrize
|
@@ -58,7 +60,7 @@ class TestComponent:
|
|
58
60
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
59
61
|
|
60
62
|
component = response.parse()
|
61
|
-
|
63
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
62
64
|
|
63
65
|
assert cast(Any, response.is_closed) is True
|
64
66
|
|
@@ -140,7 +142,7 @@ class TestComponent:
|
|
140
142
|
folder_id="507f1f77bcf86cd799439012",
|
141
143
|
organization_id="507f1f77bcf86cd799439011",
|
142
144
|
)
|
143
|
-
|
145
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
144
146
|
|
145
147
|
@pytest.mark.skip()
|
146
148
|
@parametrize
|
@@ -155,7 +157,7 @@ class TestComponent:
|
|
155
157
|
assert response.is_closed is True
|
156
158
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
157
159
|
component = response.parse()
|
158
|
-
|
160
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
159
161
|
|
160
162
|
@pytest.mark.skip()
|
161
163
|
@parametrize
|
@@ -170,7 +172,7 @@ class TestComponent:
|
|
170
172
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
171
173
|
|
172
174
|
component = response.parse()
|
173
|
-
|
175
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
174
176
|
|
175
177
|
assert cast(Any, response.is_closed) is True
|
176
178
|
|
@@ -195,7 +197,7 @@ class TestComponent:
|
|
195
197
|
organization_id="507f1f77bcf86cd799439011",
|
196
198
|
url="https://example.com/document.pdf",
|
197
199
|
)
|
198
|
-
|
200
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
199
201
|
|
200
202
|
@pytest.mark.skip()
|
201
203
|
@parametrize
|
@@ -211,7 +213,7 @@ class TestComponent:
|
|
211
213
|
assert response.is_closed is True
|
212
214
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
213
215
|
component = response.parse()
|
214
|
-
|
216
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
215
217
|
|
216
218
|
@pytest.mark.skip()
|
217
219
|
@parametrize
|
@@ -227,7 +229,7 @@ class TestComponent:
|
|
227
229
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
228
230
|
|
229
231
|
component = response.parse()
|
230
|
-
|
232
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
231
233
|
|
232
234
|
assert cast(Any, response.is_closed) is True
|
233
235
|
|
@@ -258,7 +260,7 @@ class TestAsyncComponent:
|
|
258
260
|
organization_id="507f1f77bcf86cd799439011",
|
259
261
|
s3_key="organizations/507f1f77bcf86cd799439011/materials/document.pdf",
|
260
262
|
)
|
261
|
-
|
263
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
262
264
|
|
263
265
|
@pytest.mark.skip()
|
264
266
|
@parametrize
|
@@ -273,7 +275,7 @@ class TestAsyncComponent:
|
|
273
275
|
assert response.is_closed is True
|
274
276
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
275
277
|
component = await response.parse()
|
276
|
-
|
278
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
277
279
|
|
278
280
|
@pytest.mark.skip()
|
279
281
|
@parametrize
|
@@ -288,7 +290,7 @@ class TestAsyncComponent:
|
|
288
290
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
289
291
|
|
290
292
|
component = await response.parse()
|
291
|
-
|
293
|
+
assert_matches_type(ComponentCompleteUploadResponse, component, path=["response"])
|
292
294
|
|
293
295
|
assert cast(Any, response.is_closed) is True
|
294
296
|
|
@@ -370,7 +372,7 @@ class TestAsyncComponent:
|
|
370
372
|
folder_id="507f1f77bcf86cd799439012",
|
371
373
|
organization_id="507f1f77bcf86cd799439011",
|
372
374
|
)
|
373
|
-
|
375
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
374
376
|
|
375
377
|
@pytest.mark.skip()
|
376
378
|
@parametrize
|
@@ -385,7 +387,7 @@ class TestAsyncComponent:
|
|
385
387
|
assert response.is_closed is True
|
386
388
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
387
389
|
component = await response.parse()
|
388
|
-
|
390
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
389
391
|
|
390
392
|
@pytest.mark.skip()
|
391
393
|
@parametrize
|
@@ -400,7 +402,7 @@ class TestAsyncComponent:
|
|
400
402
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
401
403
|
|
402
404
|
component = await response.parse()
|
403
|
-
|
405
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
404
406
|
|
405
407
|
assert cast(Any, response.is_closed) is True
|
406
408
|
|
@@ -425,7 +427,7 @@ class TestAsyncComponent:
|
|
425
427
|
organization_id="507f1f77bcf86cd799439011",
|
426
428
|
url="https://example.com/document.pdf",
|
427
429
|
)
|
428
|
-
|
430
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
429
431
|
|
430
432
|
@pytest.mark.skip()
|
431
433
|
@parametrize
|
@@ -441,7 +443,7 @@ class TestAsyncComponent:
|
|
441
443
|
assert response.is_closed is True
|
442
444
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
443
445
|
component = await response.parse()
|
444
|
-
|
446
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
445
447
|
|
446
448
|
@pytest.mark.skip()
|
447
449
|
@parametrize
|
@@ -457,7 +459,7 @@ class TestAsyncComponent:
|
|
457
459
|
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
458
460
|
|
459
461
|
component = await response.parse()
|
460
|
-
|
462
|
+
assert_matches_type(FileUploadResponse, component, path=["response"])
|
461
463
|
|
462
464
|
assert cast(Any, response.is_closed) is True
|
463
465
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_reflection.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/_utils/_resources_proxy.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/__init__.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/__init__.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/chat.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/sessions.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/chat/test.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/components.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/embed/embed.py
RENAMED
File without changes
|
{studyfetch_sdk-0.1.0a15 → studyfetch_sdk-0.1.0a17}/src/studyfetch_sdk/resources/v1/explainers.py
RENAMED
File without changes
|