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
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: b334d27abef5ab1cffd761032b5dbb056e1c28351bfc7fc12000d679f6b64a25
|
|
4
|
+
data.tar.gz: 357cca4fb48f3d8b0cd65b331ddafb0470f043db1f1b0218f2736f80fc355a51
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: b6cdb4008a92220a153933750191377e527670f327d870f6650b3e1177fc53a293f0dd494d9da8a8d2328a589ca537fc91acddf07afeb0a976902502e1096b27
|
|
7
|
+
data.tar.gz: 33426ca08edc9eb51242a7be7d9114fc1c2d46743740d321f46c5c49d2e49d04f2491c68ed109688f2645a70c455c343aeecba44f62a199366e1703bbd4b810e
|
data/LICENSE
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
GhostCrawl Software License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 GhostCrawl, LLC. All rights reserved.
|
|
4
|
+
|
|
5
|
+
This software — including the GhostCrawl SDKs, command-line interface, example
|
|
6
|
+
code, documentation, and the GhostCrawl self-host image (collectively, the
|
|
7
|
+
"Software") — is the proprietary property of GhostCrawl, LLC ("GhostCrawl") and
|
|
8
|
+
its licensors. It is licensed, not sold.
|
|
9
|
+
|
|
10
|
+
1. LICENSE GRANT. Subject to your continuous compliance with this License and the
|
|
11
|
+
GhostCrawl Terms of Service (https://docs.ghostcrawl.io/legal/terms),
|
|
12
|
+
GhostCrawl grants you a limited, revocable, non-exclusive, non-transferable,
|
|
13
|
+
and non-sublicensable license to install and use the Software, including
|
|
14
|
+
within your own applications, solely to access and use the GhostCrawl service
|
|
15
|
+
under a valid GhostCrawl account.
|
|
16
|
+
|
|
17
|
+
2. RESTRICTIONS. Except as expressly permitted in Section 1, you may not, in
|
|
18
|
+
whole or in part: (a) copy the Software except as strictly necessary to use it
|
|
19
|
+
as permitted; (b) modify, adapt, translate, or create derivative works of the
|
|
20
|
+
Software; (c) distribute, publish, sublicense, sell, resell, rent, lease,
|
|
21
|
+
lend, or otherwise transfer the Software, or make it available to any third
|
|
22
|
+
party, including as a hosted or managed service; (d) reverse engineer,
|
|
23
|
+
decompile, disassemble, or otherwise attempt to derive the source code,
|
|
24
|
+
structure, or internal design of any compiled component of the Software;
|
|
25
|
+
(e) circumvent, disable, or tamper with any license, authentication,
|
|
26
|
+
usage-metering, watermarking, or security mechanism; or (f) remove, alter, or
|
|
27
|
+
obscure any proprietary, copyright, or attribution notice.
|
|
28
|
+
|
|
29
|
+
3. OWNERSHIP. GhostCrawl and its licensors retain all right, title, and interest
|
|
30
|
+
in and to the Software and all intellectual property rights therein. No rights
|
|
31
|
+
are granted to you except as expressly set out in this License. All rights
|
|
32
|
+
reserved.
|
|
33
|
+
|
|
34
|
+
4. TERMINATION. This License terminates automatically, without notice, if you
|
|
35
|
+
breach any of its terms or cease to maintain a valid GhostCrawl account where
|
|
36
|
+
one is required. Upon termination you must cease all use of the Software and
|
|
37
|
+
destroy all copies in your possession or control.
|
|
38
|
+
|
|
39
|
+
5. NO WARRANTY; LIMITATION OF LIABILITY. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT
|
|
40
|
+
WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. TO THE MAXIMUM EXTENT PERMITTED BY
|
|
41
|
+
LAW, GHOSTCRAWL AND ITS LICENSORS WILL NOT BE LIABLE FOR ANY CLAIM, DAMAGES, OR
|
|
42
|
+
OTHER LIABILITY ARISING FROM OR IN CONNECTION WITH THE SOFTWARE OR ITS USE. The
|
|
43
|
+
GhostCrawl Terms of Service and Acceptable Use Policy
|
|
44
|
+
(https://docs.ghostcrawl.io/legal/terms) are incorporated by reference.
|
|
45
|
+
|
|
46
|
+
For licensing inquiries, contact legal@ghostcrawl.io.
|
data/README.md
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# ghostcrawl — Ruby SDK
|
|
2
|
+
|
|
3
|
+
The official Ruby client for the [GhostCrawl](https://ghostcrawl.io) API.
|
|
4
|
+
Collect web data at scale — scrape, crawl, search, and extract structured data.
|
|
5
|
+
|
|
6
|
+
## Install
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
gem install ghostcrawl
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Or in your `Gemfile`:
|
|
13
|
+
|
|
14
|
+
```ruby
|
|
15
|
+
gem "ghostcrawl", "~> 2.1"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Requires Ruby 3.0+. No runtime dependencies — uses stdlib `net/http` only.
|
|
19
|
+
|
|
20
|
+
## Quickstart
|
|
21
|
+
|
|
22
|
+
```ruby
|
|
23
|
+
require "ghostcrawl"
|
|
24
|
+
|
|
25
|
+
# Token from constructor or GHOSTCRAWL_API_KEY env var
|
|
26
|
+
client = Ghostcrawl::Client.new(token: "gck_live_YOUR_KEY")
|
|
27
|
+
|
|
28
|
+
# Scrape a URL
|
|
29
|
+
result = client.scrape(url: "https://example.com", format: "markdown")
|
|
30
|
+
puts result["content"]
|
|
31
|
+
|
|
32
|
+
# Start a crawl run
|
|
33
|
+
run = client.crawl_runs.start(url: "https://example.com", max_depth: 2, max_pages: 50)
|
|
34
|
+
puts "run_id: #{run["run_id"]}"
|
|
35
|
+
|
|
36
|
+
# Web search
|
|
37
|
+
results = client.search(query: "latest AI research", engine: "google", limit: 10)
|
|
38
|
+
puts results["results"].length
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Authentication
|
|
42
|
+
|
|
43
|
+
```ruby
|
|
44
|
+
# Option 1: pass token directly
|
|
45
|
+
client = Ghostcrawl::Client.new(token: "gck_live_YOUR_KEY")
|
|
46
|
+
|
|
47
|
+
# Option 2: set environment variable (recommended for production)
|
|
48
|
+
# export GHOSTCRAWL_API_KEY=gck_live_YOUR_KEY
|
|
49
|
+
client = Ghostcrawl::Client.new
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Every request sends `Authorization: Bearer <token>`. This is the only auth scheme the API accepts.
|
|
53
|
+
|
|
54
|
+
## Extract structured data
|
|
55
|
+
|
|
56
|
+
```ruby
|
|
57
|
+
require "ghostcrawl"
|
|
58
|
+
|
|
59
|
+
client = Ghostcrawl::Client.new(token: "gck_live_YOUR_KEY")
|
|
60
|
+
|
|
61
|
+
data = client.extract(
|
|
62
|
+
url: "https://example.com/product",
|
|
63
|
+
schema: {
|
|
64
|
+
type: "object",
|
|
65
|
+
properties: {
|
|
66
|
+
name: { type: "string" },
|
|
67
|
+
price: { type: "number" },
|
|
68
|
+
description: { type: "string" }
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
)
|
|
72
|
+
puts "#{data["name"]} — $#{data["price"]}"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Error handling
|
|
76
|
+
|
|
77
|
+
```ruby
|
|
78
|
+
require "ghostcrawl"
|
|
79
|
+
|
|
80
|
+
client = Ghostcrawl::Client.new(token: "gck_live_YOUR_KEY")
|
|
81
|
+
|
|
82
|
+
begin
|
|
83
|
+
result = client.scrape(url: "https://example.com")
|
|
84
|
+
rescue Ghostcrawl::AuthenticationError
|
|
85
|
+
puts "Invalid API key — check your token"
|
|
86
|
+
rescue Ghostcrawl::PaymentRequiredError
|
|
87
|
+
puts "Usage limit reached — upgrade your plan"
|
|
88
|
+
rescue Ghostcrawl::RateLimitError
|
|
89
|
+
puts "Rate limit reached — retry after a short delay"
|
|
90
|
+
rescue Ghostcrawl::APIError => e
|
|
91
|
+
puts "Server error: #{e.status_code}"
|
|
92
|
+
rescue Ghostcrawl::GhostcrawlError => e
|
|
93
|
+
puts "API error: #{e.message} (#{e.status_code})"
|
|
94
|
+
end
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Self-hosted
|
|
98
|
+
|
|
99
|
+
```ruby
|
|
100
|
+
client = Ghostcrawl::Client.new(
|
|
101
|
+
token: "gck_live_YOUR_KEY",
|
|
102
|
+
base_url: "http://localhost:8080"
|
|
103
|
+
)
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## All resources
|
|
107
|
+
|
|
108
|
+
| Resource | Method / accessor | Key operations |
|
|
109
|
+
|----------|------------------|----------------|
|
|
110
|
+
| Scraping | `client.scrape(url:)` | Render and return page content |
|
|
111
|
+
| Web search | `client.search(query:)` | Search Google, Bing, DuckDuckGo |
|
|
112
|
+
| Data extraction | `client.extract(url:, schema:)` | Structured JSON from any page |
|
|
113
|
+
| Deep crawl | `client.crawl(url:)` | Crawl a site depth-first |
|
|
114
|
+
| URL map | `client.map(url:)` | Discover all reachable URLs |
|
|
115
|
+
| Account | `client.me` | Get account info and usage |
|
|
116
|
+
| Crawl runs | `client.crawl_runs` | start, list, get\_run, cancel |
|
|
117
|
+
| Sessions | `client.sessions` | create, list, extend, release |
|
|
118
|
+
| Profiles | `client.profiles` | list, get\_profile, create, update, delete |
|
|
119
|
+
| Webhooks | `client.webhooks` | list, get\_webhook, create, delete, rotate\_secret |
|
|
120
|
+
| Schedules | `client.schedules` | list, get\_schedule, create, delete |
|
|
121
|
+
| Datasets | `client.datasets` | list, get\_dataset, create, delete, rows, append |
|
|
122
|
+
| Recordings | `client.recordings` | list, get\_recording, delete |
|
|
123
|
+
| Key-Value Store | `client.kv` | get, set, delete |
|
|
124
|
+
|
|
125
|
+
## License
|
|
126
|
+
|
|
127
|
+
Proprietary — GhostCrawl Software License. See [LICENSE](LICENSE).
|
|
File without changes
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
require 'microsoft_kiota_abstractions'
|
|
2
|
+
require 'microsoft_kiota_serialization_json'
|
|
3
|
+
require_relative './ghostcrawl'
|
|
4
|
+
require_relative './v1/v1_request_builder'
|
|
5
|
+
|
|
6
|
+
module Ghostcrawl
|
|
7
|
+
##
|
|
8
|
+
# The main entry point of the SDK, exposes the configuration and the fluent API.
|
|
9
|
+
class GhostcrawlClient < MicrosoftKiotaAbstractions::BaseRequestBuilder
|
|
10
|
+
|
|
11
|
+
##
|
|
12
|
+
# The v1 property
|
|
13
|
+
def v1()
|
|
14
|
+
return Ghostcrawl::V1::V1RequestBuilder.new(@path_parameters, @request_adapter)
|
|
15
|
+
end
|
|
16
|
+
##
|
|
17
|
+
## Instantiates a new GhostcrawlClient and sets the default values.
|
|
18
|
+
## @param request_adapter The request adapter to use to execute the requests.
|
|
19
|
+
## @return a void
|
|
20
|
+
##
|
|
21
|
+
def initialize(request_adapter)
|
|
22
|
+
super(Hash.new, request_adapter, "{+baseurl}")
|
|
23
|
+
MicrosoftKiotaAbstractions::ApiClientBuilder.register_default_serializer(MicrosoftKiotaSerializationJson::JsonSerializationWriterFactory)
|
|
24
|
+
MicrosoftKiotaAbstractions::ApiClientBuilder.register_default_deserializer(MicrosoftKiotaSerializationJson::JsonParseNodeFactory)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|