ghostcrawl 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +46 -0
- data/README.md +127 -0
- data/_generated/ghostcrawl.rb +0 -0
- data/_generated/ghostcrawl_client.rb +27 -0
- data/_generated/models/audit_event_out.rb +802 -0
- data/_generated/models/audit_event_out_actor_ip_member1.rb +62 -0
- data/_generated/models/audit_event_out_actor_token_id_member1.rb +62 -0
- data/_generated/models/audit_event_out_actor_user_agent_member1.rb +62 -0
- data/_generated/models/audit_event_out_actor_user_id_member1.rb +62 -0
- data/_generated/models/audit_event_out_metadata.rb +62 -0
- data/_generated/models/audit_event_out_org_id_member1.rb +62 -0
- data/_generated/models/audit_event_out_target_id_member1.rb +62 -0
- data/_generated/models/audit_event_out_target_kind_member1.rb +62 -0
- data/_generated/models/audit_events_response.rb +173 -0
- data/_generated/models/audit_events_response_next_cursor_member1.rb +62 -0
- data/_generated/models/batch_scrape_request.rb +623 -0
- data/_generated/models/batch_scrape_request_behavior_actions_member1.rb +62 -0
- data/_generated/models/batch_scrape_request_behavior_actions_member2.rb +62 -0
- data/_generated/models/batch_scrape_request_extraction_strategy_member1.rb +62 -0
- data/_generated/models/batch_scrape_request_identity_country_member1.rb +62 -0
- data/_generated/models/batch_scrape_request_language_member1.rb +62 -0
- data/_generated/models/batch_scrape_request_output_format.rb +9 -0
- data/_generated/models/batch_scrape_request_profile_member1.rb +62 -0
- data/_generated/models/cdp_frame_request.rb +103 -0
- data/_generated/models/cdp_url_request.rb +82 -0
- data/_generated/models/checkout_request.rb +124 -0
- data/_generated/models/contact_request.rb +143 -0
- data/_generated/models/cookie_dict.rb +739 -0
- data/_generated/models/cookie_dict_domain_member1.rb +62 -0
- data/_generated/models/cookie_dict_expires_member1.rb +62 -0
- data/_generated/models/cookie_dict_http_only_member1.rb +62 -0
- data/_generated/models/cookie_dict_path_member1.rb +62 -0
- data/_generated/models/cookie_dict_same_site_member1.rb +62 -0
- data/_generated/models/cookie_dict_secure_member1.rb +62 -0
- data/_generated/models/cookie_dict_url_member1.rb +62 -0
- data/_generated/models/cookies_delete_body.rb +355 -0
- data/_generated/models/cookies_delete_body_domain_member1.rb +62 -0
- data/_generated/models/cookies_delete_body_name_member1.rb +62 -0
- data/_generated/models/cookies_delete_body_path_member1.rb +62 -0
- data/_generated/models/cookies_set_body.rb +102 -0
- data/_generated/models/deep_crawl_body.rb +339 -0
- data/_generated/models/deep_crawl_body_webhook_url_member1.rb +62 -0
- data/_generated/models/dom_snapshot_body.rb +82 -0
- data/_generated/models/download_body.rb +102 -0
- data/_generated/models/error_code.rb +31 -0
- data/_generated/models/eval_body.rb +102 -0
- data/_generated/models/extend_body.rb +155 -0
- data/_generated/models/extend_body_ttl_seconds_member1.rb +62 -0
- data/_generated/models/extract_request.rb +631 -0
- data/_generated/models/extract_request_behavior_actions_member1.rb +62 -0
- data/_generated/models/extract_request_behavior_actions_member2.rb +62 -0
- data/_generated/models/extract_request_engine.rb +12 -0
- data/_generated/models/extract_request_identity_country_member1.rb +62 -0
- data/_generated/models/extract_request_language_member1.rb +62 -0
- data/_generated/models/extract_request_prompt_member1.rb +62 -0
- data/_generated/models/extract_request_url_member1.rb +62 -0
- data/_generated/models/extract_request_urls_member1.rb +62 -0
- data/_generated/models/filter_spec.rb +62 -0
- data/_generated/models/h_t_t_p_validation_error.rb +84 -0
- data/_generated/models/har_body.rb +82 -0
- data/_generated/models/identity_payload.rb +144 -0
- data/_generated/models/identity_request.rb +833 -0
- data/_generated/models/identity_request_claim_browser_member1.rb +62 -0
- data/_generated/models/identity_request_claim_os_member1.rb +62 -0
- data/_generated/models/identity_request_device_model_member1.rb +62 -0
- data/_generated/models/identity_request_locale_member1.rb +62 -0
- data/_generated/models/identity_request_proxy_member1.rb +62 -0
- data/_generated/models/identity_request_source_member1.rb +62 -0
- data/_generated/models/identity_request_timezone_member1.rb +62 -0
- data/_generated/models/identity_request_viewport_member1.rb +62 -0
- data/_generated/models/identity_response.rb +357 -0
- data/_generated/models/identity_response_expires_at_member1.rb +62 -0
- data/_generated/models/identity_response_identity_id_member1.rb +62 -0
- data/_generated/models/identity_response_workspace_id_member1.rb +62 -0
- data/_generated/models/map_body.rb +238 -0
- data/_generated/models/map_body_search_member1.rb +62 -0
- data/_generated/models/map_response.rb +195 -0
- data/_generated/models/map_response_truncated_to_server_max_member1.rb +62 -0
- data/_generated/models/me_response.rb +233 -0
- data/_generated/models/me_response_created_at_member1.rb +62 -0
- data/_generated/models/models.rb +145 -0
- data/_generated/models/policy_upsert_request.rb +417 -0
- data/_generated/models/policy_upsert_request_max_crawl_pages_member1.rb +62 -0
- data/_generated/models/policy_upsert_request_max_llm_calls_member1.rb +62 -0
- data/_generated/models/policy_upsert_request_max_llm_tokens_member1.rb +62 -0
- data/_generated/models/problem_details.rb +226 -0
- data/_generated/models/profile_create_request.rb +175 -0
- data/_generated/models/profile_create_request_storage_state_id_member1.rb +62 -0
- data/_generated/models/profile_update_request.rb +246 -0
- data/_generated/models/profile_update_request_name_member1.rb +62 -0
- data/_generated/models/profile_update_request_storage_state_id_member1.rb +62 -0
- data/_generated/models/registry_token_request.rb +82 -0
- data/_generated/models/retry_delivery_response.rb +145 -0
- data/_generated/models/rotate_secret_response.rb +145 -0
- data/_generated/models/schedule_create_request.rb +256 -0
- data/_generated/models/schedule_create_request_job_params.rb +64 -0
- data/_generated/models/schedule_create_request_notify_webhook_member1.rb +62 -0
- data/_generated/models/scorer_spec.rb +102 -0
- data/_generated/models/scrape_request.rb +1142 -0
- data/_generated/models/scrape_request_batch_identity_mode.rb +10 -0
- data/_generated/models/scrape_request_behavior_actions_member1.rb +62 -0
- data/_generated/models/scrape_request_behavior_actions_member2.rb +62 -0
- data/_generated/models/scrape_request_engine.rb +12 -0
- data/_generated/models/scrape_request_format.rb +11 -0
- data/_generated/models/scrape_request_identity_country_member1.rb +62 -0
- data/_generated/models/scrape_request_identity_member1.rb +62 -0
- data/_generated/models/scrape_request_language_member1.rb +62 -0
- data/_generated/models/scrape_request_profile_member1.rb +62 -0
- data/_generated/models/scrape_request_proxy_member1.rb +62 -0
- data/_generated/models/scrape_request_screenshot_selector_member1.rb +62 -0
- data/_generated/models/scrape_request_session_member1.rb +62 -0
- data/_generated/models/scrape_request_url_member1.rb +62 -0
- data/_generated/models/scrape_request_urls_member1.rb +62 -0
- data/_generated/models/scroll_body.rb +284 -0
- data/_generated/models/scroll_body_direction.rb +11 -0
- data/_generated/models/scroll_body_distance_px_member1.rb +62 -0
- data/_generated/models/scroll_body_selector_member1.rb +62 -0
- data/_generated/models/search_request.rb +469 -0
- data/_generated/models/search_request_country_member1.rb +62 -0
- data/_generated/models/search_request_engine_member1.rb +62 -0
- data/_generated/models/search_request_freshness_member1.rb +62 -0
- data/_generated/models/search_request_vertical_member1.rb +62 -0
- data/_generated/models/session_create_request.rb +174 -0
- data/_generated/models/session_create_request_engine.rb +10 -0
- data/_generated/models/session_create_request_profile_member1.rb +62 -0
- data/_generated/models/storage_state_attach_request.rb +58 -0
- data/_generated/models/storage_state_detach_request.rb +58 -0
- data/_generated/models/takeover_action_body.rb +84 -0
- data/_generated/models/team_response.rb +142 -0
- data/_generated/models/tenant_context.rb +183 -0
- data/_generated/models/upload_body.rb +162 -0
- data/_generated/models/validation_error.rb +142 -0
- data/_generated/models/validation_error_ctx.rb +62 -0
- data/_generated/models/viewport_exact.rb +104 -0
- data/_generated/models/wait_body.rb +194 -0
- data/_generated/models/wait_body_selector_member1.rb +62 -0
- data/_generated/models/webhook_create_request.rb +125 -0
- data/_generated/models/webhook_create_response.rb +104 -0
- data/_generated/models/webhook_delivery_list_response.rb +195 -0
- data/_generated/models/webhook_delivery_list_response_next_cursor_member1.rb +62 -0
- data/_generated/models/webhook_delivery_public.rb +680 -0
- data/_generated/models/webhook_delivery_public_delivered_at_member1.rb +62 -0
- data/_generated/models/webhook_delivery_public_error_class_member1.rb +62 -0
- data/_generated/models/webhook_delivery_public_replay_of_member1.rb +62 -0
- data/_generated/models/webhook_delivery_public_response_body_preview_member1.rb +62 -0
- data/_generated/models/webhook_delivery_public_response_status_member1.rb +62 -0
- data/_generated/models/webhook_list_response.rb +195 -0
- data/_generated/models/webhook_list_response_next_cursor_member1.rb +62 -0
- data/_generated/models/webhook_public.rb +316 -0
- data/_generated/models/webhook_public_secret_rotated_at_member1.rb +62 -0
- data/_generated/v1/audit/audit.rb +0 -0
- data/_generated/v1/audit/audit_request_builder.rb +31 -0
- data/_generated/v1/audit/events/events.rb +0 -0
- data/_generated/v1/audit/events/events_request_builder.rb +93 -0
- data/_generated/v1/billing/billing.rb +0 -0
- data/_generated/v1/billing/billing_request_builder.rb +49 -0
- data/_generated/v1/billing/checkout/checkout.rb +0 -0
- data/_generated/v1/billing/checkout/checkout_request_builder.rb +74 -0
- data/_generated/v1/billing/portal/portal.rb +0 -0
- data/_generated/v1/billing/portal/portal_request_builder.rb +68 -0
- data/_generated/v1/billing/subscription/subscription.rb +0 -0
- data/_generated/v1/billing/subscription/subscription_request_builder.rb +68 -0
- data/_generated/v1/billing/usage/usage.rb +0 -0
- data/_generated/v1/billing/usage/usage_request_builder.rb +90 -0
- data/_generated/v1/binary/binary.rb +0 -0
- data/_generated/v1/binary/binary_request_builder.rb +31 -0
- data/_generated/v1/binary/download/download.rb +0 -0
- data/_generated/v1/binary/download/download_request_builder.rb +77 -0
- data/_generated/v1/budgets/budgets.rb +0 -0
- data/_generated/v1/budgets/budgets_request_builder.rb +37 -0
- data/_generated/v1/budgets/policy/item/item/item.rb +0 -0
- data/_generated/v1/budgets/policy/item/item/with_scope_item_request_builder.rb +74 -0
- data/_generated/v1/budgets/policy/item/item.rb +0 -0
- data/_generated/v1/budgets/policy/item/with_scope_type_item_request_builder.rb +43 -0
- data/_generated/v1/budgets/policy/policy.rb +0 -0
- data/_generated/v1/budgets/policy/policy_request_builder.rb +125 -0
- data/_generated/v1/budgets/usage/usage.rb +0 -0
- data/_generated/v1/budgets/usage/usage_request_builder.rb +77 -0
- data/_generated/v1/cdp/cdp.rb +0 -0
- data/_generated/v1/cdp/cdp_request_builder.rb +37 -0
- data/_generated/v1/cdp/frame/frame.rb +0 -0
- data/_generated/v1/cdp/frame/frame_request_builder.rb +74 -0
- data/_generated/v1/cdp/url/url.rb +0 -0
- data/_generated/v1/cdp/url/url_request_builder.rb +74 -0
- data/_generated/v1/contact/contact.rb +1 -0
- data/_generated/v1/contact/contact_post_response.rb +65 -0
- data/_generated/v1/contact/contact_request_builder.rb +71 -0
- data/_generated/v1/crawl/crawl.rb +0 -0
- data/_generated/v1/crawl/crawl_request_builder.rb +31 -0
- data/_generated/v1/crawl/deep/deep.rb +0 -0
- data/_generated/v1/crawl/deep/deep_request_builder.rb +86 -0
- data/_generated/v1/crawl/deep/item/item.rb +0 -0
- data/_generated/v1/crawl/deep/item/with_run_item_request_builder.rb +71 -0
- data/_generated/v1/crawl_runs/crawl_runs.rb +1 -0
- data/_generated/v1/crawl_runs/crawl_runs_post_request_body.rb +65 -0
- data/_generated/v1/crawl_runs/crawl_runs_request_builder.rb +133 -0
- data/_generated/v1/crawl_runs/item/cancel/cancel.rb +0 -0
- data/_generated/v1/crawl_runs/item/cancel/cancel_request_builder.rb +71 -0
- data/_generated/v1/crawl_runs/item/item.rb +0 -0
- data/_generated/v1/crawl_runs/item/resume/resume.rb +0 -0
- data/_generated/v1/crawl_runs/item/resume/resume_request_builder.rb +71 -0
- data/_generated/v1/crawl_runs/item/with_run_item_request_builder.rb +88 -0
- data/_generated/v1/datasets/datasets.rb +1 -0
- data/_generated/v1/datasets/datasets_post_request_body.rb +65 -0
- data/_generated/v1/datasets/datasets_request_builder.rb +125 -0
- data/_generated/v1/datasets/item/item.rb +0 -0
- data/_generated/v1/datasets/item/rows/append/append.rb +1 -0
- data/_generated/v1/datasets/item/rows/append/append_post_request_body.rb +74 -0
- data/_generated/v1/datasets/item/rows/append/append_request_builder.rb +79 -0
- data/_generated/v1/datasets/item/rows/rows.rb +0 -0
- data/_generated/v1/datasets/item/rows/rows_request_builder.rb +86 -0
- data/_generated/v1/datasets/item/with_name_item_request_builder.rb +104 -0
- data/_generated/v1/discovery/discovery.rb +0 -0
- data/_generated/v1/discovery/discovery_request_builder.rb +65 -0
- data/_generated/v1/engines/engines.rb +0 -0
- data/_generated/v1/engines/engines_request_builder.rb +31 -0
- data/_generated/v1/engines/manifest/manifest.rb +0 -0
- data/_generated/v1/engines/manifest/manifest_request_builder.rb +84 -0
- data/_generated/v1/extract/extract.rb +1 -0
- data/_generated/v1/extract/extract_post_response.rb +65 -0
- data/_generated/v1/extract/extract_request_builder.rb +79 -0
- data/_generated/v1/identity/identity.rb +0 -0
- data/_generated/v1/identity/identity_request_builder.rb +72 -0
- data/_generated/v1/kv/item/item.rb +1 -0
- data/_generated/v1/kv/item/with_key_item_request_builder.rb +133 -0
- data/_generated/v1/kv/item/with_key_put_request_body.rb +68 -0
- data/_generated/v1/kv/kv.rb +0 -0
- data/_generated/v1/kv/kv_request_builder.rb +37 -0
- data/_generated/v1/map/map.rb +0 -0
- data/_generated/v1/map/map_request_builder.rb +72 -0
- data/_generated/v1/me/export/export.rb +1 -0
- data/_generated/v1/me/export/export_get_response.rb +68 -0
- data/_generated/v1/me/export/export_request_builder.rb +68 -0
- data/_generated/v1/me/me.rb +0 -0
- data/_generated/v1/me/me_request_builder.rb +78 -0
- data/_generated/v1/me/usage/get_period_query_parameter_type.rb +13 -0
- data/_generated/v1/me/usage/usage.rb +2 -0
- data/_generated/v1/me/usage/usage_get_response.rb +68 -0
- data/_generated/v1/me/usage/usage_request_builder.rb +76 -0
- data/_generated/v1/page/cookies/cookies.rb +0 -0
- data/_generated/v1/page/cookies/cookies_request_builder.rb +150 -0
- data/_generated/v1/page/dom_snapshot/dom_snapshot.rb +0 -0
- data/_generated/v1/page/dom_snapshot/dom_snapshot_request_builder.rb +74 -0
- data/_generated/v1/page/download/download.rb +0 -0
- data/_generated/v1/page/download/download_request_builder.rb +74 -0
- data/_generated/v1/page/eval/eval.rb +0 -0
- data/_generated/v1/page/eval/eval_request_builder.rb +74 -0
- data/_generated/v1/page/har/har.rb +0 -0
- data/_generated/v1/page/har/har_request_builder.rb +74 -0
- data/_generated/v1/page/page.rb +0 -0
- data/_generated/v1/page/page_request_builder.rb +73 -0
- data/_generated/v1/page/scroll/scroll.rb +0 -0
- data/_generated/v1/page/scroll/scroll_request_builder.rb +74 -0
- data/_generated/v1/page/upload/upload.rb +0 -0
- data/_generated/v1/page/upload/upload_request_builder.rb +74 -0
- data/_generated/v1/page/wait/wait.rb +0 -0
- data/_generated/v1/page/wait/wait_request_builder.rb +74 -0
- data/_generated/v1/pricing/pricing.rb +0 -0
- data/_generated/v1/pricing/pricing_request_builder.rb +31 -0
- data/_generated/v1/pricing/public/public.rb +0 -0
- data/_generated/v1/pricing/public/public_request_builder.rb +65 -0
- data/_generated/v1/profiles/item/item.rb +0 -0
- data/_generated/v1/profiles/item/with_name_item_request_builder.rb +134 -0
- data/_generated/v1/profiles/profiles.rb +0 -0
- data/_generated/v1/profiles/profiles_request_builder.rb +126 -0
- data/_generated/v1/proxy_providers/proxy_providers.rb +0 -0
- data/_generated/v1/proxy_providers/proxy_providers_request_builder.rb +65 -0
- data/_generated/v1/queues/item/ack/ack.rb +1 -0
- data/_generated/v1/queues/item/ack/ack_post_request_body.rb +71 -0
- data/_generated/v1/queues/item/ack/ack_request_builder.rb +76 -0
- data/_generated/v1/queues/item/item.rb +0 -0
- data/_generated/v1/queues/item/pop/pop.rb +0 -0
- data/_generated/v1/queues/item/pop/pop_request_builder.rb +79 -0
- data/_generated/v1/queues/item/push/push.rb +1 -0
- data/_generated/v1/queues/item/push/push_post_request_body.rb +71 -0
- data/_generated/v1/queues/item/push/push_request_builder.rb +76 -0
- data/_generated/v1/queues/item/stats/stats.rb +0 -0
- data/_generated/v1/queues/item/stats/stats_request_builder.rb +71 -0
- data/_generated/v1/queues/item/with_name_item_request_builder.rb +52 -0
- data/_generated/v1/queues/queues.rb +0 -0
- data/_generated/v1/queues/queues_request_builder.rb +37 -0
- data/_generated/v1/recordings/item/item.rb +0 -0
- data/_generated/v1/recordings/item/recording_item_request_builder.rb +104 -0
- data/_generated/v1/recordings/item/visual/frames/frames.rb +0 -0
- data/_generated/v1/recordings/item/visual/frames/frames_request_builder.rb +93 -0
- data/_generated/v1/recordings/item/visual/start/start.rb +0 -0
- data/_generated/v1/recordings/item/visual/start/start_request_builder.rb +80 -0
- data/_generated/v1/recordings/item/visual/stop/stop.rb +0 -0
- data/_generated/v1/recordings/item/visual/stop/stop_request_builder.rb +80 -0
- data/_generated/v1/recordings/item/visual/visual.rb +0 -0
- data/_generated/v1/recordings/item/visual/visual_request_builder.rb +95 -0
- data/_generated/v1/recordings/recordings.rb +0 -0
- data/_generated/v1/recordings/recordings_request_builder.rb +90 -0
- data/_generated/v1/registry/registry.rb +0 -0
- data/_generated/v1/registry/registry_request_builder.rb +31 -0
- data/_generated/v1/registry/token/token.rb +0 -0
- data/_generated/v1/registry/token/token_request_builder.rb +74 -0
- data/_generated/v1/schedules/item/item.rb +0 -0
- data/_generated/v1/schedules/item/runs/runs.rb +0 -0
- data/_generated/v1/schedules/item/runs/runs_request_builder.rb +71 -0
- data/_generated/v1/schedules/item/with_schedule_item_request_builder.rb +104 -0
- data/_generated/v1/schedules/schedules.rb +0 -0
- data/_generated/v1/schedules/schedules_request_builder.rb +113 -0
- data/_generated/v1/scrape/batch/batch.rb +0 -0
- data/_generated/v1/scrape/batch/batch_request_builder.rb +82 -0
- data/_generated/v1/scrape/scrape.rb +0 -0
- data/_generated/v1/scrape/scrape_request_builder.rb +86 -0
- data/_generated/v1/screenshot_blobs/item/item.rb +0 -0
- data/_generated/v1/screenshot_blobs/item/with_ref_item_request_builder.rb +68 -0
- data/_generated/v1/screenshot_blobs/screenshot_blobs.rb +0 -0
- data/_generated/v1/screenshot_blobs/screenshot_blobs_request_builder.rb +37 -0
- data/_generated/v1/search/search.rb +0 -0
- data/_generated/v1/search/search_request_builder.rb +79 -0
- data/_generated/v1/sessions/create/create.rb +0 -0
- data/_generated/v1/sessions/create/create_request_builder.rb +74 -0
- data/_generated/v1/sessions/item/budget_stream/budget_stream.rb +0 -0
- data/_generated/v1/sessions/item/budget_stream/budget_stream_request_builder.rb +71 -0
- data/_generated/v1/sessions/item/extend/extend.rb +0 -0
- data/_generated/v1/sessions/item/extend/extend_request_builder.rb +77 -0
- data/_generated/v1/sessions/item/item.rb +0 -0
- data/_generated/v1/sessions/item/pin/pin.rb +0 -0
- data/_generated/v1/sessions/item/pin/pin_request_builder.rb +71 -0
- data/_generated/v1/sessions/item/profile_item_request_builder.rb +76 -0
- data/_generated/v1/sessions/item/recording/recording.rb +0 -0
- data/_generated/v1/sessions/item/recording/recording_request_builder.rb +43 -0
- data/_generated/v1/sessions/item/recording/start/start.rb +0 -0
- data/_generated/v1/sessions/item/recording/start/start_request_builder.rb +74 -0
- data/_generated/v1/sessions/item/recording/stop/stop.rb +0 -0
- data/_generated/v1/sessions/item/recording/stop/stop_request_builder.rb +74 -0
- data/_generated/v1/sessions/item/release/release.rb +0 -0
- data/_generated/v1/sessions/item/release/release_request_builder.rb +71 -0
- data/_generated/v1/sessions/item/takeover/takeover.rb +0 -0
- data/_generated/v1/sessions/item/takeover/takeover_request_builder.rb +77 -0
- data/_generated/v1/sessions/item/takeover_release/takeover_release.rb +0 -0
- data/_generated/v1/sessions/item/takeover_release/takeover_release_request_builder.rb +71 -0
- data/_generated/v1/sessions/item/takeover_token/takeover_token.rb +0 -0
- data/_generated/v1/sessions/item/takeover_token/takeover_token_request_builder.rb +71 -0
- data/_generated/v1/sessions/sessions.rb +0 -0
- data/_generated/v1/sessions/sessions_request_builder.rb +96 -0
- data/_generated/v1/storage_states/detach/detach.rb +0 -0
- data/_generated/v1/storage_states/detach/detach_request_builder.rb +74 -0
- data/_generated/v1/storage_states/item/attach/attach.rb +0 -0
- data/_generated/v1/storage_states/item/attach/attach_request_builder.rb +77 -0
- data/_generated/v1/storage_states/item/item.rb +0 -0
- data/_generated/v1/storage_states/item/with_id_or_name_item_request_builder.rb +104 -0
- data/_generated/v1/storage_states/storage_states.rb +1 -0
- data/_generated/v1/storage_states/storage_states_post_request_body.rb +65 -0
- data/_generated/v1/storage_states/storage_states_request_builder.rb +127 -0
- data/_generated/v1/updates/updates.rb +0 -0
- data/_generated/v1/updates/updates_request_builder.rb +75 -0
- data/_generated/v1/v1.rb +0 -0
- data/_generated/v1/v1_request_builder.rb +208 -0
- data/_generated/v1/webhooks/item/deliveries/deliveries.rb +0 -0
- data/_generated/v1/webhooks/item/deliveries/deliveries_request_builder.rb +97 -0
- data/_generated/v1/webhooks/item/deliveries/item/item.rb +0 -0
- data/_generated/v1/webhooks/item/deliveries/item/retry_escaped/retry_escaped.rb +0 -0
- data/_generated/v1/webhooks/item/deliveries/item/retry_escaped/retry_request_builder.rb +78 -0
- data/_generated/v1/webhooks/item/deliveries/item/with_delivery_item_request_builder.rb +40 -0
- data/_generated/v1/webhooks/item/item.rb +0 -0
- data/_generated/v1/webhooks/item/rotate_secret/rotate_secret.rb +0 -0
- data/_generated/v1/webhooks/item/rotate_secret/rotate_secret_request_builder.rb +72 -0
- data/_generated/v1/webhooks/item/with_webhook_item_request_builder.rb +111 -0
- data/_generated/v1/webhooks/webhooks.rb +0 -0
- data/_generated/v1/webhooks/webhooks_request_builder.rb +128 -0
- data/lib/ghostcrawl/client.rb +761 -0
- data/lib/ghostcrawl/error_codes.rb +104 -0
- data/lib/ghostcrawl/errors.rb +137 -0
- data/lib/ghostcrawl/version.rb +5 -0
- data/lib/ghostcrawl.rb +17 -0
- metadata +460 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../ghostcrawl'
|
|
3
|
+
require_relative '../../models/extract_request'
|
|
4
|
+
require_relative '../../models/h_t_t_p_validation_error'
|
|
5
|
+
require_relative '../../models/problem_details'
|
|
6
|
+
require_relative '../v1'
|
|
7
|
+
require_relative './extract'
|
|
8
|
+
|
|
9
|
+
module Ghostcrawl
|
|
10
|
+
module V1
|
|
11
|
+
module Extract
|
|
12
|
+
##
|
|
13
|
+
# Builds and executes requests for operations under #v1#extract
|
|
14
|
+
class ExtractRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new ExtractRequestBuilder and sets the default values.
|
|
18
|
+
## @param path_parameters Path parameters for the request
|
|
19
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
20
|
+
## @return a void
|
|
21
|
+
##
|
|
22
|
+
def initialize(path_parameters, request_adapter)
|
|
23
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/extract")
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## POST /v1/extract — structured extraction (deterministic default) + bring-your-own-model extraction.Two modes (selected by model_provider):DETERMINISTIC (model_provider absent — default): 1. The schema is validated (input guard). 2. The URL is validated against private/loopback/metadata targets. 3. The page is fetched and rendered. 4. Structured data is extracted via CSS/regex/keyword rules. 5. The result is validated against the schema — 422 on mismatch (field path only). Returns {"url","data","token_estimate"}.BRING-YOUR-OWN-MODEL (model_provider present): 1. Target URLs are resolved (urls or [url]). 2. The schema is validated if present. 3. At least one of prompt or schema is required — 400 prompt_or_schema_required otherwise. 4. Model credentials are validated — 400 invalid_model_provider on error (the message never echoes the key). 5. Every target URL is validated before fetching — 400 ssrf_blocked. 6. Each URL is fetched and converted to clean Markdown. 7. Your connected model performs the extraction. 8. With a schema present, the result is validated — 422 on mismatch. Returns {"urls","data","token_estimate"}.Security:- 401 without a valid Bearer token.- model_provider.api_key is request-scoped: never persisted, logged, or echoed.- Error responses never echo the schema body, fetched content, or credentials.
|
|
27
|
+
## @param body POST /v1/extract request body — schema-driven extraction (deterministic) + bring-your-own-model extraction.Two extraction modes: - Deterministic (default, model_provider absent): CSS/regex/keyword extraction. Requires 'schema'. Returns {"url","data","token_estimate"}. - Bring-your-own-model (model_provider present): GhostCrawl fetches and prepares clean Markdown; your connected model performs the semantic extraction (you are not billed for model inference here, only the request quota). Returns {"urls","data","token_estimate"}.Security notes:- The 'schema' field is validated before any fetch (fail-fast input guard).- URLs are validated against private, loopback, and metadata targets before any fetch.- Error responses never echo the schema body, fetched content, or model credentials.- model_provider.api_key is request-scoped only: never persisted, logged, or returned in any response body or error message.
|
|
28
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
29
|
+
## @return a Fiber of extract_post_response
|
|
30
|
+
##
|
|
31
|
+
def post(body, request_configuration=nil)
|
|
32
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
33
|
+
request_info = self.to_post_request_information(
|
|
34
|
+
body, request_configuration
|
|
35
|
+
)
|
|
36
|
+
error_mapping = Hash.new
|
|
37
|
+
error_mapping["400"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
38
|
+
error_mapping["401"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
39
|
+
error_mapping["402"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
40
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
41
|
+
error_mapping["429"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
42
|
+
error_mapping["500"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
43
|
+
error_mapping["503"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
44
|
+
error_mapping["504"] = lambda {|pn| Ghostcrawl::Models::ProblemDetails.create_from_discriminator_value(pn) }
|
|
45
|
+
return @request_adapter.send_async(request_info, lambda {|pn| Ghostcrawl::V1::Extract::ExtractPostResponse.create_from_discriminator_value(pn) }, error_mapping)
|
|
46
|
+
end
|
|
47
|
+
##
|
|
48
|
+
## POST /v1/extract — structured extraction (deterministic default) + bring-your-own-model extraction.Two modes (selected by model_provider):DETERMINISTIC (model_provider absent — default): 1. The schema is validated (input guard). 2. The URL is validated against private/loopback/metadata targets. 3. The page is fetched and rendered. 4. Structured data is extracted via CSS/regex/keyword rules. 5. The result is validated against the schema — 422 on mismatch (field path only). Returns {"url","data","token_estimate"}.BRING-YOUR-OWN-MODEL (model_provider present): 1. Target URLs are resolved (urls or [url]). 2. The schema is validated if present. 3. At least one of prompt or schema is required — 400 prompt_or_schema_required otherwise. 4. Model credentials are validated — 400 invalid_model_provider on error (the message never echoes the key). 5. Every target URL is validated before fetching — 400 ssrf_blocked. 6. Each URL is fetched and converted to clean Markdown. 7. Your connected model performs the extraction. 8. With a schema present, the result is validated — 422 on mismatch. Returns {"urls","data","token_estimate"}.Security:- 401 without a valid Bearer token.- model_provider.api_key is request-scoped: never persisted, logged, or echoed.- Error responses never echo the schema body, fetched content, or credentials.
|
|
49
|
+
## @param body POST /v1/extract request body — schema-driven extraction (deterministic) + bring-your-own-model extraction.Two extraction modes: - Deterministic (default, model_provider absent): CSS/regex/keyword extraction. Requires 'schema'. Returns {"url","data","token_estimate"}. - Bring-your-own-model (model_provider present): GhostCrawl fetches and prepares clean Markdown; your connected model performs the semantic extraction (you are not billed for model inference here, only the request quota). Returns {"urls","data","token_estimate"}.Security notes:- The 'schema' field is validated before any fetch (fail-fast input guard).- URLs are validated against private, loopback, and metadata targets before any fetch.- Error responses never echo the schema body, fetched content, or model credentials.- model_provider.api_key is request-scoped only: never persisted, logged, or returned in any response body or error message.
|
|
50
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
51
|
+
## @return a request_information
|
|
52
|
+
##
|
|
53
|
+
def to_post_request_information(body, request_configuration=nil)
|
|
54
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
55
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
56
|
+
unless request_configuration.nil?
|
|
57
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
58
|
+
request_info.add_request_options(request_configuration.options)
|
|
59
|
+
end
|
|
60
|
+
request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
|
|
61
|
+
request_info.url_template = @url_template
|
|
62
|
+
request_info.path_parameters = @path_parameters
|
|
63
|
+
request_info.http_method = :POST
|
|
64
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
65
|
+
return request_info
|
|
66
|
+
end
|
|
67
|
+
##
|
|
68
|
+
## Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
|
|
69
|
+
## @param raw_url The raw URL to use for the request builder.
|
|
70
|
+
## @return a extract_request_builder
|
|
71
|
+
##
|
|
72
|
+
def with_url(raw_url)
|
|
73
|
+
raise StandardError, 'raw_url cannot be null' if raw_url.nil?
|
|
74
|
+
return ExtractRequestBuilder.new(raw_url, @request_adapter)
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
end
|
|
File without changes
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../ghostcrawl'
|
|
3
|
+
require_relative '../../models/h_t_t_p_validation_error'
|
|
4
|
+
require_relative '../../models/identity_request'
|
|
5
|
+
require_relative '../../models/identity_response'
|
|
6
|
+
require_relative '../v1'
|
|
7
|
+
require_relative './identity'
|
|
8
|
+
|
|
9
|
+
module Ghostcrawl
|
|
10
|
+
module V1
|
|
11
|
+
module Identity
|
|
12
|
+
##
|
|
13
|
+
# Builds and executes requests for operations under #v1#identity
|
|
14
|
+
class IdentityRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new IdentityRequestBuilder and sets the default values.
|
|
18
|
+
## @param path_parameters Path parameters for the request
|
|
19
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
20
|
+
## @return a void
|
|
21
|
+
##
|
|
22
|
+
def initialize(path_parameters, request_adapter)
|
|
23
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/identity")
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## Create an encrypted identity payload.POST /v1/identity — requires Authorization: Bearer <token>. pool-first path: 1. Derive cohort key from request fields. 2. If cohort is poolable: attempt from → fetch row → PROFILE_VERSION check → mark served_at. On HIT: return encrypted blob. 3. On MISS, version mismatch, or inline viewport: fall through to materialize.Translates the public request (operating system, browser, device_model,viewport) to internal materialize inputs, encrypts the resultingidentity configuration, and returns an opaque encrypted envelope.The plaintext identity configuration is NEVER returned in the response.
|
|
27
|
+
## @param body Request body for POST /v1/identity. extension (single-endpoint-with-source): source="user" → BYO local path; payload carries ~14-field schema. source="gc_identity" → Cloud WSS paid tier; filter carries 7-field constraints. source=None → Legacy path (operating system and browser required).For legacy path with mobile operating system values (ios, android): device_model is required.For legacy path with desktop operating system values (macos, windows, linux): viewport is required.
|
|
28
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
29
|
+
## @return a Fiber of identity_response
|
|
30
|
+
##
|
|
31
|
+
def post(body, request_configuration=nil)
|
|
32
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
33
|
+
request_info = self.to_post_request_information(
|
|
34
|
+
body, request_configuration
|
|
35
|
+
)
|
|
36
|
+
error_mapping = Hash.new
|
|
37
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
38
|
+
return @request_adapter.send_async(request_info, lambda {|pn| Ghostcrawl::Models::IdentityResponse.create_from_discriminator_value(pn) }, error_mapping)
|
|
39
|
+
end
|
|
40
|
+
##
|
|
41
|
+
## Create an encrypted identity payload.POST /v1/identity — requires Authorization: Bearer <token>. pool-first path: 1. Derive cohort key from request fields. 2. If cohort is poolable: attempt from → fetch row → PROFILE_VERSION check → mark served_at. On HIT: return encrypted blob. 3. On MISS, version mismatch, or inline viewport: fall through to materialize.Translates the public request (operating system, browser, device_model,viewport) to internal materialize inputs, encrypts the resultingidentity configuration, and returns an opaque encrypted envelope.The plaintext identity configuration is NEVER returned in the response.
|
|
42
|
+
## @param body Request body for POST /v1/identity. extension (single-endpoint-with-source): source="user" → BYO local path; payload carries ~14-field schema. source="gc_identity" → Cloud WSS paid tier; filter carries 7-field constraints. source=None → Legacy path (operating system and browser required).For legacy path with mobile operating system values (ios, android): device_model is required.For legacy path with desktop operating system values (macos, windows, linux): viewport is required.
|
|
43
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
44
|
+
## @return a request_information
|
|
45
|
+
##
|
|
46
|
+
def to_post_request_information(body, request_configuration=nil)
|
|
47
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
48
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
49
|
+
unless request_configuration.nil?
|
|
50
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
51
|
+
request_info.add_request_options(request_configuration.options)
|
|
52
|
+
end
|
|
53
|
+
request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
|
|
54
|
+
request_info.url_template = @url_template
|
|
55
|
+
request_info.path_parameters = @path_parameters
|
|
56
|
+
request_info.http_method = :POST
|
|
57
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
58
|
+
return request_info
|
|
59
|
+
end
|
|
60
|
+
##
|
|
61
|
+
## Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
|
|
62
|
+
## @param raw_url The raw URL to use for the request builder.
|
|
63
|
+
## @return a identity_request_builder
|
|
64
|
+
##
|
|
65
|
+
def with_url(raw_url)
|
|
66
|
+
raise StandardError, 'raw_url cannot be null' if raw_url.nil?
|
|
67
|
+
return IdentityRequestBuilder.new(raw_url, @request_adapter)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require_relative 'with_key_put_request_body'
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../../ghostcrawl'
|
|
3
|
+
require_relative '../../../models/h_t_t_p_validation_error'
|
|
4
|
+
require_relative '../../v1'
|
|
5
|
+
require_relative '../kv'
|
|
6
|
+
require_relative './item'
|
|
7
|
+
|
|
8
|
+
module Ghostcrawl
|
|
9
|
+
module V1
|
|
10
|
+
module Kv
|
|
11
|
+
module Item
|
|
12
|
+
##
|
|
13
|
+
# Builds and executes requests for operations under #v1#kv#{key}
|
|
14
|
+
class WithKeyItemRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new WithKeyItemRequestBuilder and sets the default values.
|
|
18
|
+
## @param path_parameters Path parameters for the request
|
|
19
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
20
|
+
## @return a void
|
|
21
|
+
##
|
|
22
|
+
def initialize(path_parameters, request_adapter)
|
|
23
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/kv/{key}")
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## DELETE /v1/kv/{key} — remove a KV entry.Returns {deleted: true}. 404 on miss (anti-enum,). 403 without kv:write.
|
|
27
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
28
|
+
## @return a Fiber of binary
|
|
29
|
+
##
|
|
30
|
+
def delete(request_configuration=nil)
|
|
31
|
+
request_info = self.to_delete_request_information(
|
|
32
|
+
request_configuration
|
|
33
|
+
)
|
|
34
|
+
error_mapping = Hash.new
|
|
35
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
36
|
+
return @request_adapter.send_async(request_info, Binary, error_mapping)
|
|
37
|
+
end
|
|
38
|
+
##
|
|
39
|
+
## GET /v1/kv/{key} — read a KV entry.Returns {key, value, value_type}. For blobs, returns bytes withapplication/octet-stream content-type. 404 on miss (anti-enum,).
|
|
40
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
41
|
+
## @return a Fiber of binary
|
|
42
|
+
##
|
|
43
|
+
def get(request_configuration=nil)
|
|
44
|
+
request_info = self.to_get_request_information(
|
|
45
|
+
request_configuration
|
|
46
|
+
)
|
|
47
|
+
error_mapping = Hash.new
|
|
48
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
49
|
+
return @request_adapter.send_async(request_info, Binary, error_mapping)
|
|
50
|
+
end
|
|
51
|
+
##
|
|
52
|
+
## PUT /v1/kv/{key} — write or overwrite a KV entry.Body: {"value": <any>, "type": "json"|"text"|"blob", "ttl_at"?: <iso8601>}Returns {key, value_type, size}. 413 on oversize. 403 without kv:write scope.
|
|
53
|
+
## @param body The request body
|
|
54
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
55
|
+
## @return a Fiber of binary
|
|
56
|
+
##
|
|
57
|
+
def put(body, request_configuration=nil)
|
|
58
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
59
|
+
request_info = self.to_put_request_information(
|
|
60
|
+
body, request_configuration
|
|
61
|
+
)
|
|
62
|
+
error_mapping = Hash.new
|
|
63
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
64
|
+
return @request_adapter.send_async(request_info, Binary, error_mapping)
|
|
65
|
+
end
|
|
66
|
+
##
|
|
67
|
+
## DELETE /v1/kv/{key} — remove a KV entry.Returns {deleted: true}. 404 on miss (anti-enum,). 403 without kv:write.
|
|
68
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
69
|
+
## @return a request_information
|
|
70
|
+
##
|
|
71
|
+
def to_delete_request_information(request_configuration=nil)
|
|
72
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
73
|
+
unless request_configuration.nil?
|
|
74
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
75
|
+
request_info.add_request_options(request_configuration.options)
|
|
76
|
+
end
|
|
77
|
+
request_info.url_template = @url_template
|
|
78
|
+
request_info.path_parameters = @path_parameters
|
|
79
|
+
request_info.http_method = :DELETE
|
|
80
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
81
|
+
return request_info
|
|
82
|
+
end
|
|
83
|
+
##
|
|
84
|
+
## GET /v1/kv/{key} — read a KV entry.Returns {key, value, value_type}. For blobs, returns bytes withapplication/octet-stream content-type. 404 on miss (anti-enum,).
|
|
85
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
86
|
+
## @return a request_information
|
|
87
|
+
##
|
|
88
|
+
def to_get_request_information(request_configuration=nil)
|
|
89
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
90
|
+
unless request_configuration.nil?
|
|
91
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
92
|
+
request_info.add_request_options(request_configuration.options)
|
|
93
|
+
end
|
|
94
|
+
request_info.url_template = @url_template
|
|
95
|
+
request_info.path_parameters = @path_parameters
|
|
96
|
+
request_info.http_method = :GET
|
|
97
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
98
|
+
return request_info
|
|
99
|
+
end
|
|
100
|
+
##
|
|
101
|
+
## PUT /v1/kv/{key} — write or overwrite a KV entry.Body: {"value": <any>, "type": "json"|"text"|"blob", "ttl_at"?: <iso8601>}Returns {key, value_type, size}. 413 on oversize. 403 without kv:write scope.
|
|
102
|
+
## @param body The request body
|
|
103
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
104
|
+
## @return a request_information
|
|
105
|
+
##
|
|
106
|
+
def to_put_request_information(body, request_configuration=nil)
|
|
107
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
108
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
109
|
+
unless request_configuration.nil?
|
|
110
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
111
|
+
request_info.add_request_options(request_configuration.options)
|
|
112
|
+
end
|
|
113
|
+
request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
|
|
114
|
+
request_info.url_template = @url_template
|
|
115
|
+
request_info.path_parameters = @path_parameters
|
|
116
|
+
request_info.http_method = :PUT
|
|
117
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
118
|
+
return request_info
|
|
119
|
+
end
|
|
120
|
+
##
|
|
121
|
+
## Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
|
|
122
|
+
## @param raw_url The raw URL to use for the request builder.
|
|
123
|
+
## @return a with_key_item_request_builder
|
|
124
|
+
##
|
|
125
|
+
def with_url(raw_url)
|
|
126
|
+
raise StandardError, 'raw_url cannot be null' if raw_url.nil?
|
|
127
|
+
return WithKeyItemRequestBuilder.new(raw_url, @request_adapter)
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../../ghostcrawl'
|
|
3
|
+
require_relative '../../v1'
|
|
4
|
+
require_relative '../kv'
|
|
5
|
+
require_relative './item'
|
|
6
|
+
|
|
7
|
+
module Ghostcrawl
|
|
8
|
+
module V1
|
|
9
|
+
module Kv
|
|
10
|
+
module Item
|
|
11
|
+
class WithKeyPutRequestBody
|
|
12
|
+
include MicrosoftKiotaAbstractions::AdditionalDataHolder, MicrosoftKiotaAbstractions::Parsable
|
|
13
|
+
##
|
|
14
|
+
# Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
15
|
+
@additional_data
|
|
16
|
+
##
|
|
17
|
+
## Gets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
18
|
+
## @return a i_dictionary
|
|
19
|
+
##
|
|
20
|
+
def additional_data
|
|
21
|
+
return @additional_data
|
|
22
|
+
end
|
|
23
|
+
##
|
|
24
|
+
## Sets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
25
|
+
## @param value Value to set for the AdditionalData property.
|
|
26
|
+
## @return a void
|
|
27
|
+
##
|
|
28
|
+
def additional_data=(value)
|
|
29
|
+
@additional_data = value
|
|
30
|
+
end
|
|
31
|
+
##
|
|
32
|
+
## Instantiates a new WithKeyPutRequestBody and sets the default values.
|
|
33
|
+
## @return a void
|
|
34
|
+
##
|
|
35
|
+
def initialize()
|
|
36
|
+
@additional_data = Hash.new
|
|
37
|
+
end
|
|
38
|
+
##
|
|
39
|
+
## Creates a new instance of the appropriate class based on discriminator value
|
|
40
|
+
## @param parse_node The parse node to use to read the discriminator value and create the object
|
|
41
|
+
## @return a with_key_put_request_body
|
|
42
|
+
##
|
|
43
|
+
def self.create_from_discriminator_value(parse_node)
|
|
44
|
+
raise StandardError, 'parse_node cannot be null' if parse_node.nil?
|
|
45
|
+
return WithKeyPutRequestBody.new
|
|
46
|
+
end
|
|
47
|
+
##
|
|
48
|
+
## The deserialization information for the current model
|
|
49
|
+
## @return a i_dictionary
|
|
50
|
+
##
|
|
51
|
+
def get_field_deserializers()
|
|
52
|
+
return {
|
|
53
|
+
}
|
|
54
|
+
end
|
|
55
|
+
##
|
|
56
|
+
## Serializes information the current object
|
|
57
|
+
## @param writer Serialization writer to use to serialize this model
|
|
58
|
+
## @return a void
|
|
59
|
+
##
|
|
60
|
+
def serialize(writer)
|
|
61
|
+
raise StandardError, 'writer cannot be null' if writer.nil?
|
|
62
|
+
writer.write_additional_data(@additional_data)
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
File without changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../ghostcrawl'
|
|
3
|
+
require_relative '../v1'
|
|
4
|
+
require_relative './item/with_key_item_request_builder'
|
|
5
|
+
require_relative './kv'
|
|
6
|
+
|
|
7
|
+
module Ghostcrawl
|
|
8
|
+
module V1
|
|
9
|
+
module Kv
|
|
10
|
+
##
|
|
11
|
+
# Builds and executes requests for operations under #v1#kv
|
|
12
|
+
class KvRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
13
|
+
|
|
14
|
+
##
|
|
15
|
+
## Gets an item from the ghostcrawl.v1.kv.item collection
|
|
16
|
+
## @param key Unique identifier of the item
|
|
17
|
+
## @return a with_key_item_request_builder
|
|
18
|
+
##
|
|
19
|
+
def by_key(key)
|
|
20
|
+
raise StandardError, 'key cannot be null' if key.nil?
|
|
21
|
+
url_tpl_params = @path_parameters.clone
|
|
22
|
+
url_tpl_params["key"] = key
|
|
23
|
+
return Ghostcrawl::V1::Kv::Item::WithKeyItemRequestBuilder.new(url_tpl_params, @request_adapter)
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## Instantiates a new KvRequestBuilder and sets the default values.
|
|
27
|
+
## @param path_parameters Path parameters for the request
|
|
28
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
29
|
+
## @return a void
|
|
30
|
+
##
|
|
31
|
+
def initialize(path_parameters, request_adapter)
|
|
32
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/kv")
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
File without changes
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../ghostcrawl'
|
|
3
|
+
require_relative '../../models/h_t_t_p_validation_error'
|
|
4
|
+
require_relative '../../models/map_body'
|
|
5
|
+
require_relative '../../models/map_response'
|
|
6
|
+
require_relative '../v1'
|
|
7
|
+
require_relative './map'
|
|
8
|
+
|
|
9
|
+
module Ghostcrawl
|
|
10
|
+
module V1
|
|
11
|
+
module Map
|
|
12
|
+
##
|
|
13
|
+
# Builds and executes requests for operations under #v1#map
|
|
14
|
+
class MapRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new MapRequestBuilder and sets the default values.
|
|
18
|
+
## @param path_parameters Path parameters for the request
|
|
19
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
20
|
+
## @return a void
|
|
21
|
+
##
|
|
22
|
+
def initialize(path_parameters, request_adapter)
|
|
23
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/map")
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## POST /v1/map — sitemap URL discovery.1. The seed URL is validated against private/loopback/metadata targets.2. The request is quota-checked.3. URLs are discovered from the site's sitemaps.4. Results are filtered to the same registrable domain by default.5. An optional case-insensitive substring filter is applied to URLs.6. Results are capped at 10000 regardless of the requested limit.
|
|
27
|
+
## @param body Firecrawl-compatible /v1/map request body.camelCase field names per Firecrawl spec (noqa: N815 silences pydanticnaming convention warnings for intentional camelCase).
|
|
28
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
29
|
+
## @return a Fiber of map_response
|
|
30
|
+
##
|
|
31
|
+
def post(body, request_configuration=nil)
|
|
32
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
33
|
+
request_info = self.to_post_request_information(
|
|
34
|
+
body, request_configuration
|
|
35
|
+
)
|
|
36
|
+
error_mapping = Hash.new
|
|
37
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
38
|
+
return @request_adapter.send_async(request_info, lambda {|pn| Ghostcrawl::Models::MapResponse.create_from_discriminator_value(pn) }, error_mapping)
|
|
39
|
+
end
|
|
40
|
+
##
|
|
41
|
+
## POST /v1/map — sitemap URL discovery.1. The seed URL is validated against private/loopback/metadata targets.2. The request is quota-checked.3. URLs are discovered from the site's sitemaps.4. Results are filtered to the same registrable domain by default.5. An optional case-insensitive substring filter is applied to URLs.6. Results are capped at 10000 regardless of the requested limit.
|
|
42
|
+
## @param body Firecrawl-compatible /v1/map request body.camelCase field names per Firecrawl spec (noqa: N815 silences pydanticnaming convention warnings for intentional camelCase).
|
|
43
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
44
|
+
## @return a request_information
|
|
45
|
+
##
|
|
46
|
+
def to_post_request_information(body, request_configuration=nil)
|
|
47
|
+
raise StandardError, 'body cannot be null' if body.nil?
|
|
48
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
49
|
+
unless request_configuration.nil?
|
|
50
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
51
|
+
request_info.add_request_options(request_configuration.options)
|
|
52
|
+
end
|
|
53
|
+
request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
|
|
54
|
+
request_info.url_template = @url_template
|
|
55
|
+
request_info.path_parameters = @path_parameters
|
|
56
|
+
request_info.http_method = :POST
|
|
57
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
58
|
+
return request_info
|
|
59
|
+
end
|
|
60
|
+
##
|
|
61
|
+
## Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
|
|
62
|
+
## @param raw_url The raw URL to use for the request builder.
|
|
63
|
+
## @return a map_request_builder
|
|
64
|
+
##
|
|
65
|
+
def with_url(raw_url)
|
|
66
|
+
raise StandardError, 'raw_url cannot be null' if raw_url.nil?
|
|
67
|
+
return MapRequestBuilder.new(raw_url, @request_adapter)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require_relative 'export_get_response'
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../../ghostcrawl'
|
|
3
|
+
require_relative '../../v1'
|
|
4
|
+
require_relative '../me'
|
|
5
|
+
require_relative './export'
|
|
6
|
+
|
|
7
|
+
module Ghostcrawl
|
|
8
|
+
module V1
|
|
9
|
+
module Me
|
|
10
|
+
module Export
|
|
11
|
+
class ExportGetResponse
|
|
12
|
+
include MicrosoftKiotaAbstractions::AdditionalDataHolder, MicrosoftKiotaAbstractions::Parsable
|
|
13
|
+
##
|
|
14
|
+
# Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
15
|
+
@additional_data
|
|
16
|
+
##
|
|
17
|
+
## Gets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
18
|
+
## @return a i_dictionary
|
|
19
|
+
##
|
|
20
|
+
def additional_data
|
|
21
|
+
return @additional_data
|
|
22
|
+
end
|
|
23
|
+
##
|
|
24
|
+
## Sets the AdditionalData property value. Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
|
|
25
|
+
## @param value Value to set for the AdditionalData property.
|
|
26
|
+
## @return a void
|
|
27
|
+
##
|
|
28
|
+
def additional_data=(value)
|
|
29
|
+
@additional_data = value
|
|
30
|
+
end
|
|
31
|
+
##
|
|
32
|
+
## Instantiates a new ExportGetResponse and sets the default values.
|
|
33
|
+
## @return a void
|
|
34
|
+
##
|
|
35
|
+
def initialize()
|
|
36
|
+
@additional_data = Hash.new
|
|
37
|
+
end
|
|
38
|
+
##
|
|
39
|
+
## Creates a new instance of the appropriate class based on discriminator value
|
|
40
|
+
## @param parse_node The parse node to use to read the discriminator value and create the object
|
|
41
|
+
## @return a export_get_response
|
|
42
|
+
##
|
|
43
|
+
def self.create_from_discriminator_value(parse_node)
|
|
44
|
+
raise StandardError, 'parse_node cannot be null' if parse_node.nil?
|
|
45
|
+
return ExportGetResponse.new
|
|
46
|
+
end
|
|
47
|
+
##
|
|
48
|
+
## The deserialization information for the current model
|
|
49
|
+
## @return a i_dictionary
|
|
50
|
+
##
|
|
51
|
+
def get_field_deserializers()
|
|
52
|
+
return {
|
|
53
|
+
}
|
|
54
|
+
end
|
|
55
|
+
##
|
|
56
|
+
## Serializes information the current object
|
|
57
|
+
## @param writer Serialization writer to use to serialize this model
|
|
58
|
+
## @return a void
|
|
59
|
+
##
|
|
60
|
+
def serialize(writer)
|
|
61
|
+
raise StandardError, 'writer cannot be null' if writer.nil?
|
|
62
|
+
writer.write_additional_data(@additional_data)
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require_relative '../../../ghostcrawl'
|
|
3
|
+
require_relative '../../../models/h_t_t_p_validation_error'
|
|
4
|
+
require_relative '../../v1'
|
|
5
|
+
require_relative '../me'
|
|
6
|
+
require_relative './export'
|
|
7
|
+
|
|
8
|
+
module Ghostcrawl
|
|
9
|
+
module V1
|
|
10
|
+
module Me
|
|
11
|
+
module Export
|
|
12
|
+
##
|
|
13
|
+
# Builds and executes requests for operations under #v1#me#export
|
|
14
|
+
class ExportRequestBuilder < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new ExportRequestBuilder and sets the default values.
|
|
18
|
+
## @param path_parameters Path parameters for the request
|
|
19
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
20
|
+
## @return a void
|
|
21
|
+
##
|
|
22
|
+
def initialize(path_parameters, request_adapter)
|
|
23
|
+
super(path_parameters, request_adapter, "{+baseurl}/v1/me/export")
|
|
24
|
+
end
|
|
25
|
+
##
|
|
26
|
+
## GDPR self-service data export.Returns a JSON bundle of the caller's org data: dataset rows, KV entries,session summaries, API key prefixes (NEVER full keys), audit log rows, webhooksubscriptions. The bundle is org-scoped: the app.org_id GUC + explicit WHEREorg_id clauses prevent any other tenant's data from leaking.Bundle schema: { "org_id": "<uuid>", "exported_at": "<iso8601>", "datasets": [...], "kv_entries": [...], "sessions": [...], "api_keys": [...], # prefixes only (never plaintext) "audit_log": [...], # most-recent 500 rows "webhooks": [...], }
|
|
27
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
28
|
+
## @return a Fiber of export_get_response
|
|
29
|
+
##
|
|
30
|
+
def get(request_configuration=nil)
|
|
31
|
+
request_info = self.to_get_request_information(
|
|
32
|
+
request_configuration
|
|
33
|
+
)
|
|
34
|
+
error_mapping = Hash.new
|
|
35
|
+
error_mapping["422"] = lambda {|pn| Ghostcrawl::Models::HTTPValidationError.create_from_discriminator_value(pn) }
|
|
36
|
+
return @request_adapter.send_async(request_info, lambda {|pn| Ghostcrawl::V1::Me::Export::ExportGetResponse.create_from_discriminator_value(pn) }, error_mapping)
|
|
37
|
+
end
|
|
38
|
+
##
|
|
39
|
+
## GDPR self-service data export.Returns a JSON bundle of the caller's org data: dataset rows, KV entries,session summaries, API key prefixes (NEVER full keys), audit log rows, webhooksubscriptions. The bundle is org-scoped: the app.org_id GUC + explicit WHEREorg_id clauses prevent any other tenant's data from leaking.Bundle schema: { "org_id": "<uuid>", "exported_at": "<iso8601>", "datasets": [...], "kv_entries": [...], "sessions": [...], "api_keys": [...], # prefixes only (never plaintext) "audit_log": [...], # most-recent 500 rows "webhooks": [...], }
|
|
40
|
+
## @param request_configuration Configuration for the request such as headers, query parameters, and middleware options.
|
|
41
|
+
## @return a request_information
|
|
42
|
+
##
|
|
43
|
+
def to_get_request_information(request_configuration=nil)
|
|
44
|
+
request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
|
|
45
|
+
unless request_configuration.nil?
|
|
46
|
+
request_info.add_headers_from_raw_object(request_configuration.headers)
|
|
47
|
+
request_info.add_request_options(request_configuration.options)
|
|
48
|
+
end
|
|
49
|
+
request_info.url_template = @url_template
|
|
50
|
+
request_info.path_parameters = @path_parameters
|
|
51
|
+
request_info.http_method = :GET
|
|
52
|
+
request_info.headers.try_add('Accept', 'application/json')
|
|
53
|
+
return request_info
|
|
54
|
+
end
|
|
55
|
+
##
|
|
56
|
+
## Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
|
|
57
|
+
## @param raw_url The raw URL to use for the request builder.
|
|
58
|
+
## @return a export_request_builder
|
|
59
|
+
##
|
|
60
|
+
def with_url(raw_url)
|
|
61
|
+
raise StandardError, 'raw_url cannot be null' if raw_url.nil?
|
|
62
|
+
return ExportRequestBuilder.new(raw_url, @request_adapter)
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
File without changes
|