From e3e2c90d52935c64d4ebd28979d4cb0225b167cb Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Thu, 27 Nov 2025 16:25:31 -0300 Subject: [PATCH 1/8] Adds initial google engine --- src/README.md | 29 + .../google-search.communication.iml.json | 37 +- .../google-search.interface.iml.json | 889 +++++++++++++++++- .../google-search.mappable-params.iml.json | 179 +++- .../google-search.static-params.iml.json | 7 +- 5 files changed, 1123 insertions(+), 18 deletions(-) diff --git a/src/README.md b/src/README.md index e69de29..1eabb23 100644 --- a/src/README.md +++ b/src/README.md @@ -0,0 +1,29 @@ +# SearchApi + +[SearchApi](https://www.searchapi.io) provides real-time search engine results APIs. Access Google Search results programmatically with structured JSON responses. + +## Features + +- Real-time Google Search results +- Organic results, ads, shopping, local results, knowledge graph, and more +- AI Overview, related questions, and rich snippets +- Location and language targeting +- Device-specific results (desktop, mobile, tablet) + +## Getting Started + +1. Sign up at [searchapi.io](https://www.searchapi.io) to get your API key +2. Create a connection in Make using your API key +3. Use the Google Search module to query the API + +## Documentation + +For detailed API documentation and parameters, visit: +- [SearchApi Documentation](https://www.searchapi.io/docs/google) +- [API Parameters Reference](https://www.searchapi.io/docs/google#api-parameters) + +## Support + +- Website: [www.searchapi.io](https://www.searchapi.io) +- Documentation: [searchapi.io/docs](https://www.searchapi.io/docs) + diff --git a/src/modules/google-search/google-search.communication.iml.json b/src/modules/google-search/google-search.communication.iml.json index f074838..21891d8 100644 --- a/src/modules/google-search/google-search.communication.iml.json +++ b/src/modules/google-search/google-search.communication.iml.json @@ -1,10 +1,33 @@ { - // Request to API endpoint. - "url": "/", // Relative to base URL + "url": "/", "method": "GET", - "headers": {}, // Additional HTTP headers - "qs": { // Query string - "engine": "google", // Parameter "search" that is defined in Mappable parameters. - "q": "{{parameters.q}}" // Parameter "search" that is defined in Mappable parameters. + "qs": { + "engine": "{{parameters.engine}}", + "q": "{{ifempty(parameters.q, omit)}}", + "kgmid": "{{ifempty(parameters.kgmid, omit)}}", + "device": "{{ifempty(parameters.device, omit)}}", + "location": "{{ifempty(parameters.location, omit)}}", + "uule": "{{ifempty(parameters.uule, omit)}}", + "google_domain": "{{ifempty(parameters.google_domain, omit)}}", + "gl": "{{ifempty(parameters.gl, omit)}}", + "hl": "{{ifempty(parameters.hl, omit)}}", + "lr": "{{ifempty(parameters.lr, omit)}}", + "cr": "{{ifempty(parameters.cr, omit)}}", + "nfpr": "{{ifempty(parameters.nfpr, omit)}}", + "filter": "{{ifempty(parameters.filter, omit)}}", + "safe": "{{ifempty(parameters.safe, omit)}}", + "time_period": "{{ifempty(parameters.time_period, omit)}}", + "time_period_min": "{{ifempty(parameters.time_period_min, omit)}}", + "time_period_max": "{{ifempty(parameters.time_period_max, omit)}}", + "num": "{{ifempty(parameters.num, omit)}}", + "page": "{{ifempty(parameters.page, omit)}}", + "optimization_strategy": "{{ifempty(parameters.optimization_strategy, omit)}}", + "zero_retention": "{{if(parameters.zero_retention, 'true', omit)}}" + }, + "response": { + "output": "{{body}}", + "error": { + "message": "{{if(empty(parameters.q) && empty(parameters.kgmid), 'Either Search Query or Knowledge Graph ID is required.', body.error)}}" + } } -} \ No newline at end of file +} diff --git a/src/modules/google-search/google-search.interface.iml.json b/src/modules/google-search/google-search.interface.iml.json index 6fdcef8..f9df8ad 100644 --- a/src/modules/google-search/google-search.interface.iml.json +++ b/src/modules/google-search/google-search.interface.iml.json @@ -1,7 +1,890 @@ [ { - "name": "googleSearch", - "label": "Search Google", - "type": "json" + "name": "search_metadata", + "type": "collection", + "label": "Search Metadata", + "spec": [ + {"name": "id", "type": "text", "label": "ID"}, + {"name": "status", "type": "text", "label": "Status"}, + {"name": "created_at", "type": "date", "label": "Created At"}, + {"name": "request_time_taken", "type": "number", "label": "Request Time (s)"}, + {"name": "parsing_time_taken", "type": "number", "label": "Parsing Time (s)"}, + {"name": "total_time_taken", "type": "number", "label": "Total Time (s)"} + ] + }, + { + "name": "search_parameters", + "type": "collection", + "label": "Search Parameters", + "spec": [ + {"name": "engine", "type": "text", "label": "Engine"}, + {"name": "q", "type": "text", "label": "Query"}, + {"name": "kgmid", "type": "text", "label": "Knowledge Graph ID"}, + {"name": "location", "type": "text", "label": "Location"}, + {"name": "location_used", "type": "text", "label": "Location Used"}, + {"name": "uule", "type": "text", "label": "UULE"}, + {"name": "google_domain", "type": "text", "label": "Google Domain"}, + {"name": "hl", "type": "text", "label": "Language"}, + {"name": "gl", "type": "text", "label": "Country"}, + {"name": "lr", "type": "text", "label": "Language Restriction"}, + {"name": "cr", "type": "text", "label": "Country Restriction"}, + {"name": "device", "type": "text", "label": "Device"}, + {"name": "page", "type": "integer", "label": "Page"}, + {"name": "num", "type": "integer", "label": "Results Per Page"}, + {"name": "safe", "type": "text", "label": "SafeSearch"}, + {"name": "filter", "type": "text", "label": "Filter"}, + {"name": "nfpr", "type": "text", "label": "No Auto-Correction"}, + {"name": "time_period", "type": "text", "label": "Time Period"}, + {"name": "time_period_min", "type": "text", "label": "Time Period Min"}, + {"name": "time_period_max", "type": "text", "label": "Time Period Max"}, + {"name": "optimization_strategy", "type": "text", "label": "Optimization Strategy"} + ] + }, + { + "name": "search_information", + "type": "collection", + "label": "Search Information", + "spec": [ + {"name": "query_displayed", "type": "text", "label": "Query Displayed"}, + {"name": "total_results", "type": "integer", "label": "Total Results"}, + {"name": "page", "type": "integer", "label": "Page"}, + {"name": "time_taken_displayed", "type": "text", "label": "Time Taken"}, + {"name": "detected_location", "type": "text", "label": "Detected Location"}, + {"name": "did_you_mean", "type": "text", "label": "Did You Mean"} + ] + }, + { + "name": "ai_overview", + "type": "collection", + "label": "AI Overview", + "spec": [ + {"name": "markdown", "type": "text", "label": "Markdown"}, + { + "name": "text_blocks", + "type": "array", + "label": "Text Blocks", + "spec": { + "type": "collection", + "spec": [ + {"name": "text", "type": "text", "label": "Text"}, + {"name": "position", "type": "integer", "label": "Position"} + ] + } + }, + { + "name": "reference_links", + "type": "array", + "label": "Reference Links", + "spec": { + "type": "collection", + "spec": [ + {"name": "link", "type": "url", "label": "Link"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "source", "type": "text", "label": "Source"} + ] + } + }, + {"name": "error", "type": "text", "label": "Error"}, + {"name": "showing_results_for", "type": "text", "label": "Showing Results For"} + ] + }, + { + "name": "answer_box", + "type": "collection", + "label": "Answer Box", + "spec": [ + {"name": "type", "type": "text", "label": "Type"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "answer", "type": "text", "label": "Answer"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + }, + { + "name": "knowledge_graph", + "type": "collection", + "label": "Knowledge Graph", + "spec": [ + {"name": "kgmid", "type": "text", "label": "KGMID"}, + {"name": "knowledge_graph_type", "type": "text", "label": "Type"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "description", "type": "text", "label": "Description"}, + {"name": "website", "type": "url", "label": "Website"}, + {"name": "phone", "type": "text", "label": "Phone"}, + {"name": "address", "type": "text", "label": "Address"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "type", "type": "text", "label": "Business Type"}, + {"name": "image", "type": "url", "label": "Image"}, + { + "name": "source", + "type": "collection", + "label": "Source", + "spec": [ + {"name": "name", "type": "text", "label": "Name"}, + {"name": "link", "type": "url", "label": "Link"} + ] + }, + { + "name": "local_map", + "type": "collection", + "label": "Local Map", + "spec": [ + {"name": "link", "type": "url", "label": "Link"}, + {"name": "image", "type": "url", "label": "Image"}, + { + "name": "gps_coordinates", + "type": "collection", + "label": "GPS Coordinates", + "spec": [ + {"name": "latitude", "type": "number", "label": "Latitude"}, + {"name": "longitude", "type": "number", "label": "Longitude"} + ] + } + ] + } + ] + }, + { + "name": "organic_results", + "type": "array", + "label": "Organic Results", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "domain", "type": "text", "label": "Domain"}, + {"name": "displayed_link", "type": "text", "label": "Displayed Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "favicon", "type": "url", "label": "Favicon"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "snippet_highlighted_words", + "type": "array", + "label": "Highlighted Words", + "spec": {"type": "text"} + }, + { + "name": "sitelinks", + "type": "collection", + "label": "Sitelinks", + "spec": [ + { + "name": "inline", + "type": "array", + "label": "Inline", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"} + ] + } + }, + { + "name": "expanded", + "type": "array", + "label": "Expanded", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"} + ] + } + } + ] + }, + { + "name": "rich_snippet", + "type": "collection", + "label": "Rich Snippet", + "spec": [ + { + "name": "detected_extensions", + "type": "collection", + "label": "Detected Extensions", + "spec": [ + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "time", "type": "text", "label": "Time"} + ] + } + ] + }, + { + "name": "about_this_result", + "type": "collection", + "label": "About This Result", + "spec": [ + {"name": "about_page_link", "type": "url", "label": "About Page Link"} + ] + } + ] + } + }, + { + "name": "ads", + "type": "array", + "label": "Ads", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "block_position", "type": "text", "label": "Block Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "domain", "type": "text", "label": "Domain"}, + {"name": "displayed_link", "type": "text", "label": "Displayed Link"}, + {"name": "tracking_link", "type": "url", "label": "Tracking Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "phone", "type": "text", "label": "Phone"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "favicon", "type": "url", "label": "Favicon"}, + { + "name": "sitelinks", + "type": "collection", + "label": "Sitelinks", + "spec": [ + { + "name": "inline", + "type": "array", + "label": "Inline", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"} + ] + } + }, + { + "name": "expanded", + "type": "array", + "label": "Expanded", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"} + ] + } + } + ] + } + ] + } + }, + { + "name": "shopping_ads", + "type": "array", + "label": "Shopping Ads", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "block_position", "type": "text", "label": "Block Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "seller", "type": "text", "label": "Seller"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, + {"name": "original_price", "type": "text", "label": "Original Price"}, + {"name": "extracted_original_price", "type": "number", "label": "Extracted Original Price"}, + {"name": "deal", "type": "text", "label": "Deal"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "delivery", "type": "text", "label": "Delivery"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + {"name": "shopping_ads_more_link", "type": "url", "label": "Shopping Ads More Link"}, + { + "name": "local_ads", + "type": "collection", + "label": "Local Ads", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "badge", "type": "text", "label": "Badge"}, + { + "name": "ads", + "type": "array", + "label": "Ads", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "type", "type": "text", "label": "Type"}, + {"name": "address", "type": "text", "label": "Address"}, + {"name": "phone", "type": "text", "label": "Phone"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + } + ] + }, + { + "name": "local_map", + "type": "collection", + "label": "Local Map", + "spec": [ + {"name": "link", "type": "url", "label": "Link"}, + {"name": "image", "type": "url", "label": "Image"}, + { + "name": "gps_coordinates", + "type": "collection", + "label": "GPS Coordinates", + "spec": [ + {"name": "latitude", "type": "number", "label": "Latitude"}, + {"name": "longitude", "type": "number", "label": "Longitude"}, + {"name": "altitude", "type": "number", "label": "Altitude"} + ] + } + ] + }, + { + "name": "local_results", + "type": "array", + "label": "Local Results", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "ludocid", "type": "text", "label": "Place ID"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "type", "type": "text", "label": "Type"}, + {"name": "address", "type": "text", "label": "Address"}, + {"name": "phone", "type": "text", "label": "Phone"}, + {"name": "website", "type": "url", "label": "Website"}, + {"name": "description", "type": "text", "label": "Description"}, + {"name": "is_closed", "type": "boolean", "label": "Is Closed"}, + {"name": "image", "type": "url", "label": "Image"}, + { + "name": "service_options", + "type": "array", + "label": "Service Options", + "spec": {"type": "text"} + } + ] + } + }, + { + "name": "local_results_more_link", + "type": "collection", + "label": "Local Results More Link", + "spec": [ + {"name": "link", "type": "url", "label": "Link"} + ] + }, + { + "name": "related_questions", + "type": "array", + "label": "Related Questions", + "spec": { + "type": "collection", + "spec": [ + {"name": "question", "type": "text", "label": "Question"}, + {"name": "answer", "type": "text", "label": "Answer"}, + {"name": "answer_highlight", "type": "text", "label": "Answer Highlight"}, + {"name": "date", "type": "text", "label": "Date"}, + { + "name": "source", + "type": "collection", + "label": "Source", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "domain", "type": "text", "label": "Domain"}, + {"name": "snippet", "type": "text", "label": "Snippet"} + ] + } + ] + } + }, + { + "name": "related_searches", + "type": "array", + "label": "Related Searches", + "spec": { + "type": "collection", + "spec": [ + {"name": "query", "type": "text", "label": "Query"}, + {"name": "link", "type": "url", "label": "Link"} + ] + } + }, + { + "name": "top_stories", + "type": "array", + "label": "Top Stories", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + {"name": "top_stories_more_link", "type": "url", "label": "Top Stories More Link"}, + { + "name": "inline_videos", + "type": "array", + "label": "Inline Videos", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "channel", "type": "text", "label": "Channel"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "length", "type": "text", "label": "Length"}, + {"name": "is_live", "type": "boolean", "label": "Is Live"}, + {"name": "image", "type": "url", "label": "Image"} + ] + } + }, + {"name": "inline_videos_more_link", "type": "url", "label": "Inline Videos More Link"}, + { + "name": "inline_images", + "type": "collection", + "label": "Inline Images", + "spec": [ + { + "name": "images", + "type": "array", + "label": "Images", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "source", + "type": "collection", + "label": "Source", + "spec": [ + {"name": "name", "type": "text", "label": "Name"}, + {"name": "link", "type": "url", "label": "Link"} + ] + }, + { + "name": "original", + "type": "collection", + "label": "Original", + "spec": [ + {"name": "link", "type": "url", "label": "Link"}, + {"name": "width", "type": "integer", "label": "Width"}, + {"name": "height", "type": "integer", "label": "Height"} + ] + } + ] + } + } + ] + }, + { + "name": "inline_tweets", + "type": "collection", + "label": "Inline Tweets", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + { + "name": "tweets", + "type": "array", + "label": "Tweets", + "spec": { + "type": "collection", + "spec": [ + {"name": "tweet_id", "type": "text", "label": "Tweet ID"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "date", "type": "text", "label": "Date"}, + { + "name": "author", + "type": "collection", + "label": "Author", + "spec": [ + {"name": "name", "type": "text", "label": "Name"}, + {"name": "screen_name", "type": "text", "label": "Screen Name"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + ] + } + } + ] + }, + { + "name": "inline_shopping", + "type": "array", + "label": "Inline Shopping", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "seller", "type": "text", "label": "Seller"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "jobs", + "type": "array", + "label": "Jobs", + "spec": { + "type": "collection", + "spec": [ + {"name": "position", "type": "integer", "label": "Position"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "company_name", "type": "text", "label": "Company"}, + {"name": "location", "type": "text", "label": "Location"}, + {"name": "via", "type": "text", "label": "Via"}, + {"name": "description", "type": "text", "label": "Description"}, + {"name": "apply_link", "type": "url", "label": "Apply Link"}, + {"name": "sharing_link", "type": "url", "label": "Sharing Link"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "detected_extensions", + "type": "collection", + "label": "Detected Extensions", + "spec": [ + {"name": "schedule", "type": "text", "label": "Schedule"}, + {"name": "posted_at", "type": "text", "label": "Posted At"}, + {"name": "salary", "type": "text", "label": "Salary"}, + {"name": "work_from_home", "type": "boolean", "label": "Work From Home"} + ] + }, + { + "name": "extensions", + "type": "array", + "label": "Extensions", + "spec": {"type": "text"} + } + ] + } + }, + { + "name": "events", + "type": "array", + "label": "Events", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "time", "type": "text", "label": "Time"}, + {"name": "location", "type": "text", "label": "Location"}, + {"name": "address", "type": "text", "label": "Address"}, + {"name": "price", "type": "number", "label": "Price"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "weather_result", + "type": "collection", + "label": "Weather Result", + "spec": [ + {"name": "location", "type": "text", "label": "Location"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "weather", "type": "text", "label": "Weather"}, + {"name": "precipitation", "type": "text", "label": "Precipitation"}, + {"name": "humidity", "type": "text", "label": "Humidity"}, + {"name": "unit", "type": "text", "label": "Unit"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "temperature", + "type": "collection", + "label": "Temperature", + "spec": [ + {"name": "fahrenheit", "type": "integer", "label": "Fahrenheit"}, + {"name": "celsius", "type": "integer", "label": "Celsius"} + ] + }, + { + "name": "wind", + "type": "collection", + "label": "Wind", + "spec": [ + {"name": "kmh", "type": "number", "label": "km/h"}, + {"name": "mph", "type": "number", "label": "mph"} + ] + }, + { + "name": "forecast", + "type": "array", + "label": "Forecast", + "spec": { + "type": "collection", + "spec": [ + {"name": "day", "type": "text", "label": "Day"}, + {"name": "weather", "type": "text", "label": "Weather"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "temperature", + "type": "collection", + "label": "Temperature", + "spec": [ + {"name": "high", "type": "integer", "label": "High"}, + {"name": "low", "type": "integer", "label": "Low"} + ] + } + ] + } + } + ] + }, + { + "name": "sports_results", + "type": "collection", + "label": "Sports Results", + "spec": [ + {"name": "type", "type": "text", "label": "Type"}, + {"name": "title", "type": "text", "label": "Title"}, + {"name": "subtitle", "type": "text", "label": "Subtitle"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + }, + { + "name": "salary_estimates", + "type": "array", + "label": "Salary Estimates", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "location", "type": "text", "label": "Location"}, + {"name": "source", "type": "text", "label": "Source"}, + { + "name": "salary", + "type": "collection", + "label": "Salary", + "spec": [ + {"name": "text", "type": "text", "label": "Text"}, + {"name": "range", "type": "text", "label": "Range"}, + {"name": "range_from", "type": "number", "label": "Range From"}, + {"name": "range_to", "type": "number", "label": "Range To"}, + {"name": "frequency", "type": "text", "label": "Frequency"} + ] + } + ] + } + }, + { + "name": "discussions_and_forums", + "type": "array", + "label": "Discussions and Forums", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "posts", "type": "text", "label": "Posts"}, + {"name": "community", "type": "text", "label": "Community"}, + {"name": "favicon", "type": "url", "label": "Favicon"} + ] + } + }, + { + "name": "scholarly_articles", + "type": "collection", + "label": "Scholarly Articles", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + { + "name": "articles", + "type": "array", + "label": "Articles", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "author", "type": "text", "label": "Author"}, + {"name": "cited_by", "type": "integer", "label": "Cited By"} + ] + } + } + ] + }, + { + "name": "inline_recipes", + "type": "array", + "label": "Inline Recipes", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "duration", "type": "text", "label": "Duration"}, + {"name": "ingredients_count", "type": "integer", "label": "Ingredients Count"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, + { + "name": "ingredients", + "type": "array", + "label": "Ingredients", + "spec": {"type": "text"} + } + ] + } + }, + { + "name": "courses", + "type": "array", + "label": "Courses", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "provider", "type": "text", "label": "Provider"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "duration", "type": "text", "label": "Duration"}, + {"name": "level", "type": "text", "label": "Level"}, + {"name": "description", "type": "text", "label": "Description"}, + {"name": "instructor", "type": "text", "label": "Instructor"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "perspectives", + "type": "array", + "label": "Perspectives", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "author", "type": "text", "label": "Author"}, + {"name": "source", "type": "text", "label": "Source"}, + {"name": "date", "type": "text", "label": "Date"}, + {"name": "snippet", "type": "text", "label": "Snippet"}, + {"name": "reactions", "type": "text", "label": "Reactions"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "things_to_do", + "type": "array", + "label": "Things To Do", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "rating", "type": "number", "label": "Rating"}, + {"name": "reviews", "type": "integer", "label": "Reviews"}, + {"name": "attraction", "type": "text", "label": "Attraction"}, + {"name": "price", "type": "text", "label": "Price"}, + {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + {"name": "things_to_do_more_link", "type": "url", "label": "Things To Do More Link"}, + { + "name": "popular_destinations", + "type": "array", + "label": "Popular Destinations", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "description", "type": "text", "label": "Description"}, + {"name": "flight_price", "type": "text", "label": "Flight Price"}, + {"name": "extracted_flight_price", "type": "number", "label": "Extracted Flight Price"}, + {"name": "hotel_price", "type": "text", "label": "Hotel Price"}, + {"name": "extracted_hotel_price", "type": "number", "label": "Extracted Hotel Price"}, + {"name": "flight_duration", "type": "text", "label": "Flight Duration"}, + {"name": "drive_duration", "type": "text", "label": "Drive Duration"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "universities", + "type": "array", + "label": "Universities", + "spec": { + "type": "collection", + "spec": [ + {"name": "title", "type": "text", "label": "Title"}, + {"name": "link", "type": "url", "label": "Link"}, + {"name": "city", "type": "text", "label": "City"}, + {"name": "education_type", "type": "text", "label": "Education Type"}, + {"name": "education_duration", "type": "text", "label": "Education Duration"}, + {"name": "thumbnail", "type": "url", "label": "Thumbnail"} + ] + } + }, + { + "name": "pagination", + "type": "collection", + "label": "Pagination", + "spec": [ + {"name": "current", "type": "integer", "label": "Current Page"}, + {"name": "previous", "type": "url", "label": "Previous"}, + {"name": "next", "type": "url", "label": "Next"}, + { + "name": "other_pages", + "type": "array", + "label": "Other Pages", + "spec": { + "type": "collection", + "spec": [ + {"name": "page", "type": "integer", "label": "Page"}, + {"name": "link", "type": "url", "label": "Link"} + ] + } + } + ] } ] diff --git a/src/modules/google-search/google-search.mappable-params.iml.json b/src/modules/google-search/google-search.mappable-params.iml.json index 5db7c3a..d7c90be 100644 --- a/src/modules/google-search/google-search.mappable-params.iml.json +++ b/src/modules/google-search/google-search.mappable-params.iml.json @@ -1,10 +1,175 @@ -// Defines "search" and "limit" as module input parameters. [ { - "name": "q", - "type": "text", - "label": "Query", - "help": "The string to use in the fulltext search. For example, `John Doe`.", - "required": true + "name": "q", + "type": "text", + "label": "Search Query", + "help": "Search terms. Supports operators like `site:`, `inurl:`, `intitle:`, `AND`, `OR`. Either Query or Knowledge Graph ID is required.", + "required": false + }, + { + "name": "kgmid", + "type": "text", + "label": "Knowledge Graph ID", + "help": "Knowledge Graph identifier. Format: `/m/` for locations (e.g., `/m/02_286` for New York) or `/g/` for entities (e.g., `/g/11f555cn8l` for TikTok). Either Query or Knowledge Graph ID is required.", + "required": false + }, + { + "name": "device", + "type": "select", + "label": "Device", + "help": "Device type for the search.", + "default": "desktop", + "options": [ + {"label": "Desktop", "value": "desktop"}, + {"label": "Mobile", "value": "mobile"}, + {"label": "Tablet", "value": "tablet"} + ] + }, + { + "name": "location", + "type": "text", + "label": "Location", + "help": "Canonical location for the search (e.g., `New York` or `London`). Cannot be used with UULE." + }, + { + "name": "uule", + "type": "text", + "label": "UULE", + "help": "Google-encoded location. Cannot be used with Location parameter." + }, + { + "name": "google_domain", + "type": "text", + "label": "Google Domain", + "help": "Google domain for the search (e.g., `google.com`, `google.co.uk`).", + "default": "google.com" + }, + { + "name": "gl", + "type": "text", + "label": "Country (gl)", + "help": "Country code for the search (e.g., `us`, `uk`, `de`).", + "default": "us" + }, + { + "name": "hl", + "type": "text", + "label": "Language (hl)", + "help": "Interface language code (e.g., `en`, `es`, `fr`).", + "default": "en" + }, + { + "name": "lr", + "type": "text", + "label": "Language Restriction (lr)", + "help": "Restrict results to documents in specific languages. Format: `lang_xx` (e.g., `lang_en`). Multiple: `lang_it|lang_de`." + }, + { + "name": "cr", + "type": "text", + "label": "Country Restriction (cr)", + "help": "Restrict results to documents from specific countries. Based on TLD or server IP location." + }, + { + "name": "nfpr", + "type": "select", + "label": "Disable Auto-Correction", + "help": "Exclude auto-corrected spelling results.", + "default": "0", + "options": [ + {"label": "Include auto-corrected results", "value": "0"}, + {"label": "Exclude auto-corrected results", "value": "1"} + ] + }, + { + "name": "filter", + "type": "select", + "label": "Content Filter", + "help": "Enable or disable Duplicate Content and Host Crowding filters.", + "default": "1", + "options": [ + {"label": "Enabled", "value": "1"}, + {"label": "Disabled", "value": "0"} + ] + }, + { + "name": "safe", + "type": "select", + "label": "SafeSearch", + "help": "Filter adult content from results.", + "default": "off", + "options": [ + {"label": "Off", "value": "off"}, + {"label": "Active", "value": "active"} + ] + }, + { + "name": "time_period", + "type": "select", + "label": "Time Period", + "help": "Restrict results by date. Use custom dates with Time Period Min/Max.", + "options": [ + {"label": "Any time", "value": ""}, + {"label": "Last hour", "value": "last_hour"}, + {"label": "Last 24 hours", "value": "last_day"}, + {"label": "Last week", "value": "last_week"}, + {"label": "Last month", "value": "last_month"}, + {"label": "Last year", "value": "last_year"} + ] + }, + { + "name": "time_period_min", + "type": "text", + "label": "Time Period Min", + "help": "Start date for custom time period. Format: `MM/DD/YYYY`.", + "validate": { + "pattern": "^$|^(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01])/(19|20)\\d\\d$" + } + }, + { + "name": "time_period_max", + "type": "text", + "label": "Time Period Max", + "help": "End date for custom time period. Format: `MM/DD/YYYY`.", + "validate": { + "pattern": "^$|^(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01])/(19|20)\\d\\d$" + } + }, + { + "name": "num", + "type": "uinteger", + "label": "Results Per Page", + "help": "Number of results per page.", + "default": "10", + "validate": { + "min": 1 + } + }, + { + "name": "page", + "type": "uinteger", + "label": "Page", + "help": "Page number of results to return.", + "default": "1", + "validate": { + "min": 1 + } + }, + { + "name": "optimization_strategy", + "type": "select", + "label": "Optimization Strategy", + "help": "Controls how the search request is optimized.", + "default": "performance", + "options": [ + {"label": "Performance", "value": "performance"}, + {"label": "Ads (higher ad collection, slower)", "value": "ads"} + ] + }, + { + "name": "zero_retention", + "type": "boolean", + "label": "Zero Data Retention", + "help": "Disable all logging and storage. Enterprise only." } -] \ No newline at end of file +] diff --git a/src/modules/google-search/google-search.static-params.iml.json b/src/modules/google-search/google-search.static-params.iml.json index 32960f8..1676203 100644 --- a/src/modules/google-search/google-search.static-params.iml.json +++ b/src/modules/google-search/google-search.static-params.iml.json @@ -1,2 +1,7 @@ [ -] \ No newline at end of file + { + "name": "engine", + "type": "hidden", + "default": "google" + } +] From f879f185510faf8bbdd1bfa5b81b4ebca6305732 Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Fri, 5 Dec 2025 08:13:48 -0300 Subject: [PATCH 2/8] creating the generic make api call --- src/README.md | 3 + src/makecomapp.json | 24 +- .../google-search.communication.iml.json | 33 - .../google-search.interface.iml.json | 890 ------------------ .../google-search.mappable-params.iml.json | 175 ---- .../google-search.scope.iml.json | 3 - .../google-search.static-params.iml.json | 7 - src/modules/groups.json | 2 +- .../make-api-call.communication.iml.json | 8 + .../make-api-call.interface.iml.json | 7 + .../make-api-call.mappable-params.iml.json | 32 + .../make-api-call.samples.iml.json} | 0 .../make-api-call.scope.iml.json | 1 + .../make-api-call.static-params.iml.json | 1 + 14 files changed, 65 insertions(+), 1121 deletions(-) delete mode 100644 src/modules/google-search/google-search.communication.iml.json delete mode 100644 src/modules/google-search/google-search.interface.iml.json delete mode 100644 src/modules/google-search/google-search.mappable-params.iml.json delete mode 100644 src/modules/google-search/google-search.scope.iml.json delete mode 100644 src/modules/google-search/google-search.static-params.iml.json create mode 100644 src/modules/make-api-call/make-api-call.communication.iml.json create mode 100644 src/modules/make-api-call/make-api-call.interface.iml.json create mode 100644 src/modules/make-api-call/make-api-call.mappable-params.iml.json rename src/modules/{google-search/google-search.samples.iml.json => make-api-call/make-api-call.samples.iml.json} (100%) create mode 100644 src/modules/make-api-call/make-api-call.scope.iml.json create mode 100644 src/modules/make-api-call/make-api-call.static-params.iml.json diff --git a/src/README.md b/src/README.md index 1eabb23..0ac99c2 100644 --- a/src/README.md +++ b/src/README.md @@ -27,3 +27,6 @@ For detailed API documentation and parameters, visit: - Website: [www.searchapi.io](https://www.searchapi.io) - Documentation: [searchapi.io/docs](https://www.searchapi.io/docs) + + + diff --git a/src/makecomapp.json b/src/makecomapp.json index f74d68d..064fe06 100644 --- a/src/makecomapp.json +++ b/src/makecomapp.json @@ -19,19 +19,19 @@ } }, "module": { - "googleSearch": { - "label": "Google Search", - "description": "Search on google", - "moduleType": "search", + "makeApiCall": { + "label": "Make an API Call", + "description": "Make a request to any SearchAPI endpoint", + "moduleType": "action", "connection": "connection1", "altConnection": null, "codeFiles": { - "communication": "modules/google-search/google-search.communication.iml.json", - "staticParams": "modules/google-search/google-search.static-params.iml.json", - "mappableParams": "modules/google-search/google-search.mappable-params.iml.json", - "interface": "modules/google-search/google-search.interface.iml.json", - "samples": "modules/google-search/google-search.samples.iml.json", - "scope": "modules/google-search/google-search.scope.iml.json" + "communication": "modules/make-api-call/make-api-call.communication.iml.json", + "staticParams": "modules/make-api-call/make-api-call.static-params.iml.json", + "mappableParams": "modules/make-api-call/make-api-call.mappable-params.iml.json", + "interface": "modules/make-api-call/make-api-call.interface.iml.json", + "samples": "modules/make-api-call/make-api-call.samples.iml.json", + "scope": "modules/make-api-call/make-api-call.scope.iml.json" } } }, @@ -54,8 +54,8 @@ ], "module": [ { - "local": "googleSearch", - "remote": "googleSearch" + "local": "makeApiCall", + "remote": "makeApiCall" } ], "function": [], diff --git a/src/modules/google-search/google-search.communication.iml.json b/src/modules/google-search/google-search.communication.iml.json deleted file mode 100644 index 21891d8..0000000 --- a/src/modules/google-search/google-search.communication.iml.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "url": "/", - "method": "GET", - "qs": { - "engine": "{{parameters.engine}}", - "q": "{{ifempty(parameters.q, omit)}}", - "kgmid": "{{ifempty(parameters.kgmid, omit)}}", - "device": "{{ifempty(parameters.device, omit)}}", - "location": "{{ifempty(parameters.location, omit)}}", - "uule": "{{ifempty(parameters.uule, omit)}}", - "google_domain": "{{ifempty(parameters.google_domain, omit)}}", - "gl": "{{ifempty(parameters.gl, omit)}}", - "hl": "{{ifempty(parameters.hl, omit)}}", - "lr": "{{ifempty(parameters.lr, omit)}}", - "cr": "{{ifempty(parameters.cr, omit)}}", - "nfpr": "{{ifempty(parameters.nfpr, omit)}}", - "filter": "{{ifempty(parameters.filter, omit)}}", - "safe": "{{ifempty(parameters.safe, omit)}}", - "time_period": "{{ifempty(parameters.time_period, omit)}}", - "time_period_min": "{{ifempty(parameters.time_period_min, omit)}}", - "time_period_max": "{{ifempty(parameters.time_period_max, omit)}}", - "num": "{{ifempty(parameters.num, omit)}}", - "page": "{{ifempty(parameters.page, omit)}}", - "optimization_strategy": "{{ifempty(parameters.optimization_strategy, omit)}}", - "zero_retention": "{{if(parameters.zero_retention, 'true', omit)}}" - }, - "response": { - "output": "{{body}}", - "error": { - "message": "{{if(empty(parameters.q) && empty(parameters.kgmid), 'Either Search Query or Knowledge Graph ID is required.', body.error)}}" - } - } -} diff --git a/src/modules/google-search/google-search.interface.iml.json b/src/modules/google-search/google-search.interface.iml.json deleted file mode 100644 index f9df8ad..0000000 --- a/src/modules/google-search/google-search.interface.iml.json +++ /dev/null @@ -1,890 +0,0 @@ -[ - { - "name": "search_metadata", - "type": "collection", - "label": "Search Metadata", - "spec": [ - {"name": "id", "type": "text", "label": "ID"}, - {"name": "status", "type": "text", "label": "Status"}, - {"name": "created_at", "type": "date", "label": "Created At"}, - {"name": "request_time_taken", "type": "number", "label": "Request Time (s)"}, - {"name": "parsing_time_taken", "type": "number", "label": "Parsing Time (s)"}, - {"name": "total_time_taken", "type": "number", "label": "Total Time (s)"} - ] - }, - { - "name": "search_parameters", - "type": "collection", - "label": "Search Parameters", - "spec": [ - {"name": "engine", "type": "text", "label": "Engine"}, - {"name": "q", "type": "text", "label": "Query"}, - {"name": "kgmid", "type": "text", "label": "Knowledge Graph ID"}, - {"name": "location", "type": "text", "label": "Location"}, - {"name": "location_used", "type": "text", "label": "Location Used"}, - {"name": "uule", "type": "text", "label": "UULE"}, - {"name": "google_domain", "type": "text", "label": "Google Domain"}, - {"name": "hl", "type": "text", "label": "Language"}, - {"name": "gl", "type": "text", "label": "Country"}, - {"name": "lr", "type": "text", "label": "Language Restriction"}, - {"name": "cr", "type": "text", "label": "Country Restriction"}, - {"name": "device", "type": "text", "label": "Device"}, - {"name": "page", "type": "integer", "label": "Page"}, - {"name": "num", "type": "integer", "label": "Results Per Page"}, - {"name": "safe", "type": "text", "label": "SafeSearch"}, - {"name": "filter", "type": "text", "label": "Filter"}, - {"name": "nfpr", "type": "text", "label": "No Auto-Correction"}, - {"name": "time_period", "type": "text", "label": "Time Period"}, - {"name": "time_period_min", "type": "text", "label": "Time Period Min"}, - {"name": "time_period_max", "type": "text", "label": "Time Period Max"}, - {"name": "optimization_strategy", "type": "text", "label": "Optimization Strategy"} - ] - }, - { - "name": "search_information", - "type": "collection", - "label": "Search Information", - "spec": [ - {"name": "query_displayed", "type": "text", "label": "Query Displayed"}, - {"name": "total_results", "type": "integer", "label": "Total Results"}, - {"name": "page", "type": "integer", "label": "Page"}, - {"name": "time_taken_displayed", "type": "text", "label": "Time Taken"}, - {"name": "detected_location", "type": "text", "label": "Detected Location"}, - {"name": "did_you_mean", "type": "text", "label": "Did You Mean"} - ] - }, - { - "name": "ai_overview", - "type": "collection", - "label": "AI Overview", - "spec": [ - {"name": "markdown", "type": "text", "label": "Markdown"}, - { - "name": "text_blocks", - "type": "array", - "label": "Text Blocks", - "spec": { - "type": "collection", - "spec": [ - {"name": "text", "type": "text", "label": "Text"}, - {"name": "position", "type": "integer", "label": "Position"} - ] - } - }, - { - "name": "reference_links", - "type": "array", - "label": "Reference Links", - "spec": { - "type": "collection", - "spec": [ - {"name": "link", "type": "url", "label": "Link"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "source", "type": "text", "label": "Source"} - ] - } - }, - {"name": "error", "type": "text", "label": "Error"}, - {"name": "showing_results_for", "type": "text", "label": "Showing Results For"} - ] - }, - { - "name": "answer_box", - "type": "collection", - "label": "Answer Box", - "spec": [ - {"name": "type", "type": "text", "label": "Type"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "answer", "type": "text", "label": "Answer"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - }, - { - "name": "knowledge_graph", - "type": "collection", - "label": "Knowledge Graph", - "spec": [ - {"name": "kgmid", "type": "text", "label": "KGMID"}, - {"name": "knowledge_graph_type", "type": "text", "label": "Type"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "description", "type": "text", "label": "Description"}, - {"name": "website", "type": "url", "label": "Website"}, - {"name": "phone", "type": "text", "label": "Phone"}, - {"name": "address", "type": "text", "label": "Address"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "type", "type": "text", "label": "Business Type"}, - {"name": "image", "type": "url", "label": "Image"}, - { - "name": "source", - "type": "collection", - "label": "Source", - "spec": [ - {"name": "name", "type": "text", "label": "Name"}, - {"name": "link", "type": "url", "label": "Link"} - ] - }, - { - "name": "local_map", - "type": "collection", - "label": "Local Map", - "spec": [ - {"name": "link", "type": "url", "label": "Link"}, - {"name": "image", "type": "url", "label": "Image"}, - { - "name": "gps_coordinates", - "type": "collection", - "label": "GPS Coordinates", - "spec": [ - {"name": "latitude", "type": "number", "label": "Latitude"}, - {"name": "longitude", "type": "number", "label": "Longitude"} - ] - } - ] - } - ] - }, - { - "name": "organic_results", - "type": "array", - "label": "Organic Results", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "domain", "type": "text", "label": "Domain"}, - {"name": "displayed_link", "type": "text", "label": "Displayed Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "favicon", "type": "url", "label": "Favicon"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "snippet_highlighted_words", - "type": "array", - "label": "Highlighted Words", - "spec": {"type": "text"} - }, - { - "name": "sitelinks", - "type": "collection", - "label": "Sitelinks", - "spec": [ - { - "name": "inline", - "type": "array", - "label": "Inline", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"} - ] - } - }, - { - "name": "expanded", - "type": "array", - "label": "Expanded", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"} - ] - } - } - ] - }, - { - "name": "rich_snippet", - "type": "collection", - "label": "Rich Snippet", - "spec": [ - { - "name": "detected_extensions", - "type": "collection", - "label": "Detected Extensions", - "spec": [ - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "time", "type": "text", "label": "Time"} - ] - } - ] - }, - { - "name": "about_this_result", - "type": "collection", - "label": "About This Result", - "spec": [ - {"name": "about_page_link", "type": "url", "label": "About Page Link"} - ] - } - ] - } - }, - { - "name": "ads", - "type": "array", - "label": "Ads", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "block_position", "type": "text", "label": "Block Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "domain", "type": "text", "label": "Domain"}, - {"name": "displayed_link", "type": "text", "label": "Displayed Link"}, - {"name": "tracking_link", "type": "url", "label": "Tracking Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "phone", "type": "text", "label": "Phone"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "favicon", "type": "url", "label": "Favicon"}, - { - "name": "sitelinks", - "type": "collection", - "label": "Sitelinks", - "spec": [ - { - "name": "inline", - "type": "array", - "label": "Inline", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"} - ] - } - }, - { - "name": "expanded", - "type": "array", - "label": "Expanded", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"} - ] - } - } - ] - } - ] - } - }, - { - "name": "shopping_ads", - "type": "array", - "label": "Shopping Ads", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "block_position", "type": "text", "label": "Block Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "seller", "type": "text", "label": "Seller"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, - {"name": "original_price", "type": "text", "label": "Original Price"}, - {"name": "extracted_original_price", "type": "number", "label": "Extracted Original Price"}, - {"name": "deal", "type": "text", "label": "Deal"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "delivery", "type": "text", "label": "Delivery"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - {"name": "shopping_ads_more_link", "type": "url", "label": "Shopping Ads More Link"}, - { - "name": "local_ads", - "type": "collection", - "label": "Local Ads", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "badge", "type": "text", "label": "Badge"}, - { - "name": "ads", - "type": "array", - "label": "Ads", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "type", "type": "text", "label": "Type"}, - {"name": "address", "type": "text", "label": "Address"}, - {"name": "phone", "type": "text", "label": "Phone"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - } - ] - }, - { - "name": "local_map", - "type": "collection", - "label": "Local Map", - "spec": [ - {"name": "link", "type": "url", "label": "Link"}, - {"name": "image", "type": "url", "label": "Image"}, - { - "name": "gps_coordinates", - "type": "collection", - "label": "GPS Coordinates", - "spec": [ - {"name": "latitude", "type": "number", "label": "Latitude"}, - {"name": "longitude", "type": "number", "label": "Longitude"}, - {"name": "altitude", "type": "number", "label": "Altitude"} - ] - } - ] - }, - { - "name": "local_results", - "type": "array", - "label": "Local Results", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "ludocid", "type": "text", "label": "Place ID"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "type", "type": "text", "label": "Type"}, - {"name": "address", "type": "text", "label": "Address"}, - {"name": "phone", "type": "text", "label": "Phone"}, - {"name": "website", "type": "url", "label": "Website"}, - {"name": "description", "type": "text", "label": "Description"}, - {"name": "is_closed", "type": "boolean", "label": "Is Closed"}, - {"name": "image", "type": "url", "label": "Image"}, - { - "name": "service_options", - "type": "array", - "label": "Service Options", - "spec": {"type": "text"} - } - ] - } - }, - { - "name": "local_results_more_link", - "type": "collection", - "label": "Local Results More Link", - "spec": [ - {"name": "link", "type": "url", "label": "Link"} - ] - }, - { - "name": "related_questions", - "type": "array", - "label": "Related Questions", - "spec": { - "type": "collection", - "spec": [ - {"name": "question", "type": "text", "label": "Question"}, - {"name": "answer", "type": "text", "label": "Answer"}, - {"name": "answer_highlight", "type": "text", "label": "Answer Highlight"}, - {"name": "date", "type": "text", "label": "Date"}, - { - "name": "source", - "type": "collection", - "label": "Source", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "domain", "type": "text", "label": "Domain"}, - {"name": "snippet", "type": "text", "label": "Snippet"} - ] - } - ] - } - }, - { - "name": "related_searches", - "type": "array", - "label": "Related Searches", - "spec": { - "type": "collection", - "spec": [ - {"name": "query", "type": "text", "label": "Query"}, - {"name": "link", "type": "url", "label": "Link"} - ] - } - }, - { - "name": "top_stories", - "type": "array", - "label": "Top Stories", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - {"name": "top_stories_more_link", "type": "url", "label": "Top Stories More Link"}, - { - "name": "inline_videos", - "type": "array", - "label": "Inline Videos", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "channel", "type": "text", "label": "Channel"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "length", "type": "text", "label": "Length"}, - {"name": "is_live", "type": "boolean", "label": "Is Live"}, - {"name": "image", "type": "url", "label": "Image"} - ] - } - }, - {"name": "inline_videos_more_link", "type": "url", "label": "Inline Videos More Link"}, - { - "name": "inline_images", - "type": "collection", - "label": "Inline Images", - "spec": [ - { - "name": "images", - "type": "array", - "label": "Images", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "source", - "type": "collection", - "label": "Source", - "spec": [ - {"name": "name", "type": "text", "label": "Name"}, - {"name": "link", "type": "url", "label": "Link"} - ] - }, - { - "name": "original", - "type": "collection", - "label": "Original", - "spec": [ - {"name": "link", "type": "url", "label": "Link"}, - {"name": "width", "type": "integer", "label": "Width"}, - {"name": "height", "type": "integer", "label": "Height"} - ] - } - ] - } - } - ] - }, - { - "name": "inline_tweets", - "type": "collection", - "label": "Inline Tweets", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - { - "name": "tweets", - "type": "array", - "label": "Tweets", - "spec": { - "type": "collection", - "spec": [ - {"name": "tweet_id", "type": "text", "label": "Tweet ID"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "date", "type": "text", "label": "Date"}, - { - "name": "author", - "type": "collection", - "label": "Author", - "spec": [ - {"name": "name", "type": "text", "label": "Name"}, - {"name": "screen_name", "type": "text", "label": "Screen Name"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - ] - } - } - ] - }, - { - "name": "inline_shopping", - "type": "array", - "label": "Inline Shopping", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "seller", "type": "text", "label": "Seller"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "jobs", - "type": "array", - "label": "Jobs", - "spec": { - "type": "collection", - "spec": [ - {"name": "position", "type": "integer", "label": "Position"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "company_name", "type": "text", "label": "Company"}, - {"name": "location", "type": "text", "label": "Location"}, - {"name": "via", "type": "text", "label": "Via"}, - {"name": "description", "type": "text", "label": "Description"}, - {"name": "apply_link", "type": "url", "label": "Apply Link"}, - {"name": "sharing_link", "type": "url", "label": "Sharing Link"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "detected_extensions", - "type": "collection", - "label": "Detected Extensions", - "spec": [ - {"name": "schedule", "type": "text", "label": "Schedule"}, - {"name": "posted_at", "type": "text", "label": "Posted At"}, - {"name": "salary", "type": "text", "label": "Salary"}, - {"name": "work_from_home", "type": "boolean", "label": "Work From Home"} - ] - }, - { - "name": "extensions", - "type": "array", - "label": "Extensions", - "spec": {"type": "text"} - } - ] - } - }, - { - "name": "events", - "type": "array", - "label": "Events", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "time", "type": "text", "label": "Time"}, - {"name": "location", "type": "text", "label": "Location"}, - {"name": "address", "type": "text", "label": "Address"}, - {"name": "price", "type": "number", "label": "Price"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "weather_result", - "type": "collection", - "label": "Weather Result", - "spec": [ - {"name": "location", "type": "text", "label": "Location"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "weather", "type": "text", "label": "Weather"}, - {"name": "precipitation", "type": "text", "label": "Precipitation"}, - {"name": "humidity", "type": "text", "label": "Humidity"}, - {"name": "unit", "type": "text", "label": "Unit"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "temperature", - "type": "collection", - "label": "Temperature", - "spec": [ - {"name": "fahrenheit", "type": "integer", "label": "Fahrenheit"}, - {"name": "celsius", "type": "integer", "label": "Celsius"} - ] - }, - { - "name": "wind", - "type": "collection", - "label": "Wind", - "spec": [ - {"name": "kmh", "type": "number", "label": "km/h"}, - {"name": "mph", "type": "number", "label": "mph"} - ] - }, - { - "name": "forecast", - "type": "array", - "label": "Forecast", - "spec": { - "type": "collection", - "spec": [ - {"name": "day", "type": "text", "label": "Day"}, - {"name": "weather", "type": "text", "label": "Weather"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "temperature", - "type": "collection", - "label": "Temperature", - "spec": [ - {"name": "high", "type": "integer", "label": "High"}, - {"name": "low", "type": "integer", "label": "Low"} - ] - } - ] - } - } - ] - }, - { - "name": "sports_results", - "type": "collection", - "label": "Sports Results", - "spec": [ - {"name": "type", "type": "text", "label": "Type"}, - {"name": "title", "type": "text", "label": "Title"}, - {"name": "subtitle", "type": "text", "label": "Subtitle"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - }, - { - "name": "salary_estimates", - "type": "array", - "label": "Salary Estimates", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "location", "type": "text", "label": "Location"}, - {"name": "source", "type": "text", "label": "Source"}, - { - "name": "salary", - "type": "collection", - "label": "Salary", - "spec": [ - {"name": "text", "type": "text", "label": "Text"}, - {"name": "range", "type": "text", "label": "Range"}, - {"name": "range_from", "type": "number", "label": "Range From"}, - {"name": "range_to", "type": "number", "label": "Range To"}, - {"name": "frequency", "type": "text", "label": "Frequency"} - ] - } - ] - } - }, - { - "name": "discussions_and_forums", - "type": "array", - "label": "Discussions and Forums", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "posts", "type": "text", "label": "Posts"}, - {"name": "community", "type": "text", "label": "Community"}, - {"name": "favicon", "type": "url", "label": "Favicon"} - ] - } - }, - { - "name": "scholarly_articles", - "type": "collection", - "label": "Scholarly Articles", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - { - "name": "articles", - "type": "array", - "label": "Articles", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "author", "type": "text", "label": "Author"}, - {"name": "cited_by", "type": "integer", "label": "Cited By"} - ] - } - } - ] - }, - { - "name": "inline_recipes", - "type": "array", - "label": "Inline Recipes", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "duration", "type": "text", "label": "Duration"}, - {"name": "ingredients_count", "type": "integer", "label": "Ingredients Count"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"}, - { - "name": "ingredients", - "type": "array", - "label": "Ingredients", - "spec": {"type": "text"} - } - ] - } - }, - { - "name": "courses", - "type": "array", - "label": "Courses", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "provider", "type": "text", "label": "Provider"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "duration", "type": "text", "label": "Duration"}, - {"name": "level", "type": "text", "label": "Level"}, - {"name": "description", "type": "text", "label": "Description"}, - {"name": "instructor", "type": "text", "label": "Instructor"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "perspectives", - "type": "array", - "label": "Perspectives", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "author", "type": "text", "label": "Author"}, - {"name": "source", "type": "text", "label": "Source"}, - {"name": "date", "type": "text", "label": "Date"}, - {"name": "snippet", "type": "text", "label": "Snippet"}, - {"name": "reactions", "type": "text", "label": "Reactions"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "things_to_do", - "type": "array", - "label": "Things To Do", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "rating", "type": "number", "label": "Rating"}, - {"name": "reviews", "type": "integer", "label": "Reviews"}, - {"name": "attraction", "type": "text", "label": "Attraction"}, - {"name": "price", "type": "text", "label": "Price"}, - {"name": "extracted_price", "type": "number", "label": "Extracted Price"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - {"name": "things_to_do_more_link", "type": "url", "label": "Things To Do More Link"}, - { - "name": "popular_destinations", - "type": "array", - "label": "Popular Destinations", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "description", "type": "text", "label": "Description"}, - {"name": "flight_price", "type": "text", "label": "Flight Price"}, - {"name": "extracted_flight_price", "type": "number", "label": "Extracted Flight Price"}, - {"name": "hotel_price", "type": "text", "label": "Hotel Price"}, - {"name": "extracted_hotel_price", "type": "number", "label": "Extracted Hotel Price"}, - {"name": "flight_duration", "type": "text", "label": "Flight Duration"}, - {"name": "drive_duration", "type": "text", "label": "Drive Duration"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "universities", - "type": "array", - "label": "Universities", - "spec": { - "type": "collection", - "spec": [ - {"name": "title", "type": "text", "label": "Title"}, - {"name": "link", "type": "url", "label": "Link"}, - {"name": "city", "type": "text", "label": "City"}, - {"name": "education_type", "type": "text", "label": "Education Type"}, - {"name": "education_duration", "type": "text", "label": "Education Duration"}, - {"name": "thumbnail", "type": "url", "label": "Thumbnail"} - ] - } - }, - { - "name": "pagination", - "type": "collection", - "label": "Pagination", - "spec": [ - {"name": "current", "type": "integer", "label": "Current Page"}, - {"name": "previous", "type": "url", "label": "Previous"}, - {"name": "next", "type": "url", "label": "Next"}, - { - "name": "other_pages", - "type": "array", - "label": "Other Pages", - "spec": { - "type": "collection", - "spec": [ - {"name": "page", "type": "integer", "label": "Page"}, - {"name": "link", "type": "url", "label": "Link"} - ] - } - } - ] - } -] diff --git a/src/modules/google-search/google-search.mappable-params.iml.json b/src/modules/google-search/google-search.mappable-params.iml.json deleted file mode 100644 index d7c90be..0000000 --- a/src/modules/google-search/google-search.mappable-params.iml.json +++ /dev/null @@ -1,175 +0,0 @@ -[ - { - "name": "q", - "type": "text", - "label": "Search Query", - "help": "Search terms. Supports operators like `site:`, `inurl:`, `intitle:`, `AND`, `OR`. Either Query or Knowledge Graph ID is required.", - "required": false - }, - { - "name": "kgmid", - "type": "text", - "label": "Knowledge Graph ID", - "help": "Knowledge Graph identifier. Format: `/m/` for locations (e.g., `/m/02_286` for New York) or `/g/` for entities (e.g., `/g/11f555cn8l` for TikTok). Either Query or Knowledge Graph ID is required.", - "required": false - }, - { - "name": "device", - "type": "select", - "label": "Device", - "help": "Device type for the search.", - "default": "desktop", - "options": [ - {"label": "Desktop", "value": "desktop"}, - {"label": "Mobile", "value": "mobile"}, - {"label": "Tablet", "value": "tablet"} - ] - }, - { - "name": "location", - "type": "text", - "label": "Location", - "help": "Canonical location for the search (e.g., `New York` or `London`). Cannot be used with UULE." - }, - { - "name": "uule", - "type": "text", - "label": "UULE", - "help": "Google-encoded location. Cannot be used with Location parameter." - }, - { - "name": "google_domain", - "type": "text", - "label": "Google Domain", - "help": "Google domain for the search (e.g., `google.com`, `google.co.uk`).", - "default": "google.com" - }, - { - "name": "gl", - "type": "text", - "label": "Country (gl)", - "help": "Country code for the search (e.g., `us`, `uk`, `de`).", - "default": "us" - }, - { - "name": "hl", - "type": "text", - "label": "Language (hl)", - "help": "Interface language code (e.g., `en`, `es`, `fr`).", - "default": "en" - }, - { - "name": "lr", - "type": "text", - "label": "Language Restriction (lr)", - "help": "Restrict results to documents in specific languages. Format: `lang_xx` (e.g., `lang_en`). Multiple: `lang_it|lang_de`." - }, - { - "name": "cr", - "type": "text", - "label": "Country Restriction (cr)", - "help": "Restrict results to documents from specific countries. Based on TLD or server IP location." - }, - { - "name": "nfpr", - "type": "select", - "label": "Disable Auto-Correction", - "help": "Exclude auto-corrected spelling results.", - "default": "0", - "options": [ - {"label": "Include auto-corrected results", "value": "0"}, - {"label": "Exclude auto-corrected results", "value": "1"} - ] - }, - { - "name": "filter", - "type": "select", - "label": "Content Filter", - "help": "Enable or disable Duplicate Content and Host Crowding filters.", - "default": "1", - "options": [ - {"label": "Enabled", "value": "1"}, - {"label": "Disabled", "value": "0"} - ] - }, - { - "name": "safe", - "type": "select", - "label": "SafeSearch", - "help": "Filter adult content from results.", - "default": "off", - "options": [ - {"label": "Off", "value": "off"}, - {"label": "Active", "value": "active"} - ] - }, - { - "name": "time_period", - "type": "select", - "label": "Time Period", - "help": "Restrict results by date. Use custom dates with Time Period Min/Max.", - "options": [ - {"label": "Any time", "value": ""}, - {"label": "Last hour", "value": "last_hour"}, - {"label": "Last 24 hours", "value": "last_day"}, - {"label": "Last week", "value": "last_week"}, - {"label": "Last month", "value": "last_month"}, - {"label": "Last year", "value": "last_year"} - ] - }, - { - "name": "time_period_min", - "type": "text", - "label": "Time Period Min", - "help": "Start date for custom time period. Format: `MM/DD/YYYY`.", - "validate": { - "pattern": "^$|^(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01])/(19|20)\\d\\d$" - } - }, - { - "name": "time_period_max", - "type": "text", - "label": "Time Period Max", - "help": "End date for custom time period. Format: `MM/DD/YYYY`.", - "validate": { - "pattern": "^$|^(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01])/(19|20)\\d\\d$" - } - }, - { - "name": "num", - "type": "uinteger", - "label": "Results Per Page", - "help": "Number of results per page.", - "default": "10", - "validate": { - "min": 1 - } - }, - { - "name": "page", - "type": "uinteger", - "label": "Page", - "help": "Page number of results to return.", - "default": "1", - "validate": { - "min": 1 - } - }, - { - "name": "optimization_strategy", - "type": "select", - "label": "Optimization Strategy", - "help": "Controls how the search request is optimized.", - "default": "performance", - "options": [ - {"label": "Performance", "value": "performance"}, - {"label": "Ads (higher ad collection, slower)", "value": "ads"} - ] - }, - { - "name": "zero_retention", - "type": "boolean", - "label": "Zero Data Retention", - "help": "Disable all logging and storage. Enterprise only." - } -] diff --git a/src/modules/google-search/google-search.scope.iml.json b/src/modules/google-search/google-search.scope.iml.json deleted file mode 100644 index fdfeaea..0000000 --- a/src/modules/google-search/google-search.scope.iml.json +++ /dev/null @@ -1,3 +0,0 @@ -// Code below is relevant only if an OAuth type connection is associated with the module. In other cases, it is ignored. -[ -] \ No newline at end of file diff --git a/src/modules/google-search/google-search.static-params.iml.json b/src/modules/google-search/google-search.static-params.iml.json deleted file mode 100644 index 1676203..0000000 --- a/src/modules/google-search/google-search.static-params.iml.json +++ /dev/null @@ -1,7 +0,0 @@ -[ - { - "name": "engine", - "type": "hidden", - "default": "google" - } -] diff --git a/src/modules/groups.json b/src/modules/groups.json index 75fe7b4..43c047d 100644 --- a/src/modules/groups.json +++ b/src/modules/groups.json @@ -2,7 +2,7 @@ { "label": "Other", "modules": [ - "googleSearch" + "makeApiCall" ] } ] \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.communication.iml.json b/src/modules/make-api-call/make-api-call.communication.iml.json new file mode 100644 index 0000000..097f43f --- /dev/null +++ b/src/modules/make-api-call/make-api-call.communication.iml.json @@ -0,0 +1,8 @@ +{ + "url": "/", + "method": "GET", + "qs": "{{merge(object('engine', parameters.engine), toCollection(parameters.parameters, 'key', 'value'))}}", + "response": { + "output": "{{body}}" + } +} diff --git a/src/modules/make-api-call/make-api-call.interface.iml.json b/src/modules/make-api-call/make-api-call.interface.iml.json new file mode 100644 index 0000000..7a69f31 --- /dev/null +++ b/src/modules/make-api-call/make-api-call.interface.iml.json @@ -0,0 +1,7 @@ +[ + { + "name": "data", + "type": "any", + "label": "Data" + } +] diff --git a/src/modules/make-api-call/make-api-call.mappable-params.iml.json b/src/modules/make-api-call/make-api-call.mappable-params.iml.json new file mode 100644 index 0000000..324fdee --- /dev/null +++ b/src/modules/make-api-call/make-api-call.mappable-params.iml.json @@ -0,0 +1,32 @@ +[ + { + "name": "engine", + "type": "text", + "label": "Engine", + "help": "The search engine to use (e.g. `google`, `google_images`, `google_news`, `bing`, `youtube`, `amazon`). See [SearchAPI documentation](https://www.searchapi.io/docs) for all available engines.", + "required": true + }, + { + "name": "parameters", + "type": "array", + "label": "Query Parameters", + "help": "Additional query parameters to send with the request.", + "spec": { + "type": "collection", + "spec": [ + { + "name": "key", + "type": "text", + "label": "Key", + "required": true + }, + { + "name": "value", + "type": "text", + "label": "Value", + "required": true + } + ] + } + } +] diff --git a/src/modules/google-search/google-search.samples.iml.json b/src/modules/make-api-call/make-api-call.samples.iml.json similarity index 100% rename from src/modules/google-search/google-search.samples.iml.json rename to src/modules/make-api-call/make-api-call.samples.iml.json diff --git a/src/modules/make-api-call/make-api-call.scope.iml.json b/src/modules/make-api-call/make-api-call.scope.iml.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/src/modules/make-api-call/make-api-call.scope.iml.json @@ -0,0 +1 @@ +[] diff --git a/src/modules/make-api-call/make-api-call.static-params.iml.json b/src/modules/make-api-call/make-api-call.static-params.iml.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/src/modules/make-api-call/make-api-call.static-params.iml.json @@ -0,0 +1 @@ +[] From 0a621e20247a219a3506221aa9ac301f1d437098 Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Sat, 6 Dec 2025 12:01:06 -0300 Subject: [PATCH 3/8] make api call working --- src/makecomapp.json | 5 +++-- .../make-api-call.communication.iml.json | 17 ++++++++++------- .../make-api-call/make-api-call.scope.iml.json | 1 + 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/makecomapp.json b/src/makecomapp.json index 064fe06..8a0d65f 100644 --- a/src/makecomapp.json +++ b/src/makecomapp.json @@ -9,7 +9,7 @@ "components": { "connection": { "connection1": { - "label": "Unnamed", + "label": "SearchAPI Connection", "connectionType": "basic", "codeFiles": { "communication": "connections/connection1/connection1.communication.iml.json", @@ -32,7 +32,8 @@ "interface": "modules/make-api-call/make-api-call.interface.iml.json", "samples": "modules/make-api-call/make-api-call.samples.iml.json", "scope": "modules/make-api-call/make-api-call.scope.iml.json" - } + }, + "actionCrud": "read" } }, "function": {}, diff --git a/src/modules/make-api-call/make-api-call.communication.iml.json b/src/modules/make-api-call/make-api-call.communication.iml.json index 097f43f..651c36e 100644 --- a/src/modules/make-api-call/make-api-call.communication.iml.json +++ b/src/modules/make-api-call/make-api-call.communication.iml.json @@ -1,8 +1,11 @@ { - "url": "/", - "method": "GET", - "qs": "{{merge(object('engine', parameters.engine), toCollection(parameters.parameters, 'key', 'value'))}}", - "response": { - "output": "{{body}}" - } -} + "url": "/", + "method": "GET", + "qs": { + "engine": "{{parameters.engine}}", + "{{...}}": "{{toCollection(ifempty(parameters.parameters, emptyarray), 'key', 'value')}}" + }, + "response": { + "output": "{{body}}" + } +} \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.scope.iml.json b/src/modules/make-api-call/make-api-call.scope.iml.json index fe51488..fb5c297 100644 --- a/src/modules/make-api-call/make-api-call.scope.iml.json +++ b/src/modules/make-api-call/make-api-call.scope.iml.json @@ -1 +1,2 @@ +// Code below is relevant only if an OAuth type connection is associated with the module. In other cases, it is ignored. [] From be61ba8b4062858db791935e26b4446456ddeac9 Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Tue, 9 Dec 2025 14:26:52 -0300 Subject: [PATCH 4/8] update interface --- .../make-api-call.interface.iml.json | 59 ++++++++++++++++++- 1 file changed, 56 insertions(+), 3 deletions(-) diff --git a/src/modules/make-api-call/make-api-call.interface.iml.json b/src/modules/make-api-call/make-api-call.interface.iml.json index 7a69f31..533ccde 100644 --- a/src/modules/make-api-call/make-api-call.interface.iml.json +++ b/src/modules/make-api-call/make-api-call.interface.iml.json @@ -1,7 +1,60 @@ [ { - "name": "data", - "type": "any", - "label": "Data" + "name": "search_metadata", + "type": "collection", + "label": "Search Metadata", + "spec": [ + { + "name": "id", + "type": "text", + "label": "ID" + }, + { + "name": "status", + "type": "text", + "label": "Status" + }, + { + "name": "created_at", + "type": "date", + "label": "Created At" + }, + { + "name": "request_time_taken", + "type": "number", + "label": "Request Time Taken" + }, + { + "name": "parsing_time_taken", + "type": "number", + "label": "Parsing Time Taken" + }, + { + "name": "total_time_taken", + "type": "number", + "label": "Total Time Taken" + }, + { + "name": "request_url", + "type": "url", + "label": "Request URL" + }, + { + "name": "html_url", + "type": "url", + "label": "HTML URL" + }, + { + "name": "json_url", + "type": "url", + "label": "JSON URL" + } + ] + }, + { + "name": "search_parameters", + "type": "collection", + "label": "Search Parameters", + "spec": [] } ] From e8c22e1cb00a0f5bfb2e49d711eb796bd239358c Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Sun, 15 Mar 2026 11:39:10 -0300 Subject: [PATCH 5/8] sync changes --- .DS_Store | Bin 0 -> 6148 bytes .../connection1.communication.iml.json | 12 +-- src/general/base.iml.json | 8 +- src/makecomapp.json | 44 +++++++- src/modules/groups.json | 4 +- ...make-api-call-final.communication.iml.json | 1 + .../make-api-call-final.interface.iml.json | 1 + ...ke-api-call-final.mappable-params.iml.json | 1 + .../make-api-call-final.samples.iml.json | 1 + .../make-api-call-final.scope.iml.json | 2 + ...make-api-call-final.static-params.iml.json | 1 + ...-api-call-universal.communication.iml.json | 19 ++++ ...make-api-call-universal.interface.iml.json | 17 +++ ...pi-call-universal.mappable-params.iml.json | 98 ++++++++++++++++++ .../make-api-call-universal.samples.iml.json | 1 + .../make-api-call-universal.scope.iml.json | 3 + ...-api-call-universal.static-params.iml.json | 2 + .../make-api-call.communication.iml.json | 20 ++-- .../make-api-call.interface.iml.json | 61 +---------- .../make-api-call.mappable-params.iml.json | 49 ++++----- .../make-api-call.scope.iml.json | 3 +- .../make-api-call.static-params.iml.json | 3 +- 22 files changed, 235 insertions(+), 116 deletions(-) create mode 100644 .DS_Store create mode 100644 src/modules/make-api-call-final/make-api-call-final.communication.iml.json create mode 100644 src/modules/make-api-call-final/make-api-call-final.interface.iml.json create mode 100644 src/modules/make-api-call-final/make-api-call-final.mappable-params.iml.json create mode 100644 src/modules/make-api-call-final/make-api-call-final.samples.iml.json create mode 100644 src/modules/make-api-call-final/make-api-call-final.scope.iml.json create mode 100644 src/modules/make-api-call-final/make-api-call-final.static-params.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.communication.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.interface.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.mappable-params.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.samples.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.scope.iml.json create mode 100644 src/modules/make-api-call-universal/make-api-call-universal.static-params.iml.json diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..793955fef14b7f85977458953c5e419637d0ed86 GIT binary patch literal 6148 zcmeHKy-EW?5S}#$IkbtLAi^Qo3c(jR!wDh?LV~4eevD$mh5Xc>y>DY{Vdo=Q*$KXZ zwcpIH$t`z^m59#3&bK!|J9A&S-7FEA#;jW>su59$!5Az z--sGr@NV%@joYCB{q*UQrgkTBK68DO_vL$deLim8&ZLKV?l4_cFY|kKs~Oh~QFlT; za509S(!{Gzv{e?9?_>37eE4)FeH7Np_w!Yp*O%iFGko}e4&$@lQGv3`GG ze~-C$!9>yP*L%RCD*uE5oY^elibd7RfHI&A%o*VQA;Msc9cC6~>wuCg05E`A1ampV zfe{;kvBS(FED&Q;fi~5+D~7S@utzQ~c9>bT>13ob)^U}MyP+7V4tpfwWMYe|l>ueI zXP{yqYkdCieSZJ Date: Mon, 16 Mar 2026 01:04:41 -0300 Subject: [PATCH 6/8] Add engine selector with help text and connection to universal module - Add engine select parameter with 8 engines and per-engine doc links - Engine parameters use nested key-value array spread into query string - Wire connection1 to universal module for API key auth - Add help text to connection API key field - Update module description Co-Authored-By: Claude Opus 4.6 (1M context) --- .../connection1.communication.iml.json | 6 +- .../connection1/connection1.params.iml.json | 3 +- src/general/base.iml.json | 2 +- src/makecomapp.json | 4 +- src/modules/groups.json | 2 +- ...-api-call-universal.communication.iml.json | 8 +- ...pi-call-universal.mappable-params.iml.json | 3457 ++++++++++++++++- 7 files changed, 3371 insertions(+), 111 deletions(-) diff --git a/src/connections/connection1/connection1.communication.iml.json b/src/connections/connection1/connection1.communication.iml.json index 6811893..b4ccb6c 100644 --- a/src/connections/connection1/connection1.communication.iml.json +++ b/src/connections/connection1/connection1.communication.iml.json @@ -1,16 +1,12 @@ { // Request - "url": "https://www.example.com/api/whoami", // Absolute URL to the API endpoint which validates credentials + "url": "https://www.searchapi.io/api/v1/me", // Absolute URL to the API endpoint which validates credentials "headers": { // Additional HTTP headers "Authorization": "Bearer {{parameters.apiKey}}" // Authorizes user by API key, provided by user during the connection creation. }, // Response handling "response": { - "metadata": { // Adds authorized user details to the connection label. - "type": "email", // Type of the parameter. Can be "text" or "email". - "value": "{{body.email}}" // The value in "email" will be displayed in connection's label. - }, "error": { // Error handling "message": "[{{statusCode}}] {{body.error}}" // On error, returns error message as "[statusCode] error text". } diff --git a/src/connections/connection1/connection1.params.iml.json b/src/connections/connection1/connection1.params.iml.json index 897c0c3..0e21c4e 100644 --- a/src/connections/connection1/connection1.params.iml.json +++ b/src/connections/connection1/connection1.params.iml.json @@ -4,6 +4,7 @@ "type": "password", "label": "API Key", "required": true, - "editable": true + "editable": true, + "help": "Your SearchAPI API key. Find it at https://www.searchapi.io/ after login." } ] \ No newline at end of file diff --git a/src/general/base.iml.json b/src/general/base.iml.json index 64efe7b..16722d1 100644 --- a/src/general/base.iml.json +++ b/src/general/base.iml.json @@ -1,6 +1,6 @@ { // Default request configuration - "baseUrl": "https://www.example.com/api/v2", // Default base URL for all modules and RPCs. + "baseUrl": "https://www.searchapi.io/api/v1", // Default base URL for all modules and RPCs. "headers": { // Default HTTP headers for all modules and RPCs. "Authorization": "Bearer {{connection.apiKey}}" // Authorization by API key, which user will provide in the connection as parameter. }, diff --git a/src/makecomapp.json b/src/makecomapp.json index 6637be3..f061ae6 100644 --- a/src/makecomapp.json +++ b/src/makecomapp.json @@ -52,9 +52,9 @@ }, "makeApiCallUniversal": { "label": "Make an Api Call", - "description": "This module can be used to make any request to searchapi. \n\nUse it if the desired engine does not have it's own module.", + "description": "Search any engine via SearchAPI.io. Select your engine, then add parameters from the docs.", "moduleType": "universal", - "connection": null, + "connection": "connection1", "altConnection": null, "codeFiles": { "communication": "modules/make-api-call-universal/make-api-call-universal.communication.iml.json", diff --git a/src/modules/groups.json b/src/modules/groups.json index ac65b87..69127b7 100644 --- a/src/modules/groups.json +++ b/src/modules/groups.json @@ -1,6 +1,6 @@ [ { - "label": "Other", + "label": "SearchAPI", "modules": [ "makeApiCall", "makeApiCallUniversal", diff --git a/src/modules/make-api-call-universal/make-api-call-universal.communication.iml.json b/src/modules/make-api-call-universal/make-api-call-universal.communication.iml.json index 7075ce8..b0f6cc0 100644 --- a/src/modules/make-api-call-universal/make-api-call-universal.communication.iml.json +++ b/src/modules/make-api-call-universal/make-api-call-universal.communication.iml.json @@ -1,11 +1,11 @@ { "qs": { - "{{...}}": "{{toCollection(parameters.qs, 'key', 'value')}}" + "engine": "{{parameters.engine}}", + "{{...}}": "{{toCollection(parameters.params, 'key', 'value')}}" }, - "url": "https://www.example.com/api{{parameters.url}}", // Defines the fixed base URL and maps the relative path URL from the user. - "body": "{{parameters.body}}", + "url": "https://www.searchapi.io/api/v1/search", "type": "text", - "method": "{{parameters.method}}", + "method": "GET", "headers": { "{{...}}": "{{toCollection(parameters.headers, 'key', 'value')}}" }, diff --git a/src/modules/make-api-call-universal/make-api-call-universal.mappable-params.iml.json b/src/modules/make-api-call-universal/make-api-call-universal.mappable-params.iml.json index 9bbffe8..2ba7c16 100644 --- a/src/modules/make-api-call-universal/make-api-call-universal.mappable-params.iml.json +++ b/src/modules/make-api-call-universal/make-api-call-universal.mappable-params.iml.json @@ -1,98 +1,3361 @@ [ - { - "help": "Enter the part of the URL that comes after `https://www.example.com/api`. For example, `/v2/users`.", // Gives instructions to the user about the relative path. - "name": "url", // Makes value accesible via "{{parameters.url}}"". - "type": "text", - "label": "URL", - "required": true - }, - { - "name": "method", // Allows the user to select the method by themselves. - "type": "select", - "label": "Method", - "default": "GET", - "options": [ - { - "label": "GET", - "value": "GET" - }, - { - "label": "POST", - "value": "POST" - }, - { - "label": "PUT", - "value": "PUT" - }, - { - "label": "PATCH", - "value": "PATCH" - }, - { - "label": "DELETE", - "value": "DELETE" - } - ], - "required": true - }, - { - "name": "headers", // Allows the user to add headers by themselves. - "label": "Headers", - "help": "You don't have to add authorization headers; we already did that for you.", - "type": "array", - "spec": { - "label": "Header", - "type": "collection", - "spec": [ - { - "name": "key", - "label": "Key", - "type": "text" - }, - { - "name": "value", - "label": "Value", - "type": "text" - } - ] - }, - "labels": { - "add": "Add header" - }, - "default": [ - { - "key": "Content-Type", - "value": "application/json" - } - ] - }, - { - "name": "qs", // Allows the user to set Query String by themselves. - "label": "Query String", - "type": "array", - "spec": { - "label": "Parameter", - "type": "collection", - "spec": [ - { - "name": "key", - "label": "Key", - "type": "text" - }, - { - "name": "value", - "label": "Value", - "type": "text" - } - ] - }, - "labels": { - "add": "Add parameter" - } - }, - { - "name": "body", // Allows the user to set Body by themselves. - "type": "any", - "label": "Body" - } -] \ No newline at end of file + { + "name": "engine", + "label": "Engine", + "type": "select", + "required": true, + "default": "google", + "editable": true, + "help": "Select a search engine. Each engine has its own parameters. You must go to the engine documentation to see all available parameters.", + "options": [ + { + "label": "Google", + "value": "google", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google as key-value pairs. See all available parameters at [Google Docs](https://www.searchapi.io/docs/google).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Light", + "value": "google_light", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Light as key-value pairs. See all available parameters at [Google Light Docs](https://www.searchapi.io/docs/google-light-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Ads Advertiser Info", + "value": "google_ads_advertiser_info", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Ads Advertiser Info as key-value pairs. See all available parameters at [Google Ads Advertiser Info Docs](https://www.searchapi.io/docs/google-ads-advertiser-info-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google AI Overview", + "value": "google_ai_overview", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google AI Overview as key-value pairs. See all available parameters at [Google AI Overview Docs](https://www.searchapi.io/docs/google-ai-overview-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Related Questions", + "value": "google_related_questions", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Related Questions as key-value pairs. See all available parameters at [Google Related Questions Docs](https://www.searchapi.io/docs/google-related-questions-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google About This Domain", + "value": "google_about_this_domain", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google About This Domain as key-value pairs. See all available parameters at [Google About This Domain Docs](https://www.searchapi.io/docs/google-about-this-domain-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Rank Tracking", + "value": "google_rank_tracking", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Rank Tracking as key-value pairs. See all available parameters at [Google Rank Tracking Docs](https://www.searchapi.io/docs/google-rank-tracking-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google AI Mode", + "value": "google_ai_mode", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google AI Mode as key-value pairs. See all available parameters at [Google AI Mode Docs](https://www.searchapi.io/docs/google-ai-mode-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Ads Transparency", + "value": "google_ads_transparency_center", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Ads Transparency as key-value pairs. See all available parameters at [Google Ads Transparency Docs](https://www.searchapi.io/docs/google-ads-transparency-center-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Ads Transparency Center Advertiser Search", + "value": "google_ads_transparency_center_advertiser_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Ads Transparency Center Advertiser Search as key-value pairs. See all available parameters at [Google Ads Transparency Center Advertiser Search Docs](https://www.searchapi.io/docs/google-ads-transparency-center-advertiser-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Ads Transparency Center Ad Details", + "value": "google_ads_transparency_center_ad_details", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Ads Transparency Center Ad Details as key-value pairs. See all available parameters at [Google Ads Transparency Center Ad Details Docs](https://www.searchapi.io/docs/google-ads-transparency-center-ad-details-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Maps", + "value": "google_maps", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Maps as key-value pairs. See all available parameters at [Google Maps Docs](https://www.searchapi.io/docs/google-maps).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Maps Place", + "value": "google_maps_place", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Maps Place as key-value pairs. See all available parameters at [Google Maps Place Docs](https://www.searchapi.io/docs/google-maps-place).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Maps Reviews", + "value": "google_maps_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Maps Reviews as key-value pairs. See all available parameters at [Google Maps Reviews Docs](https://www.searchapi.io/docs/google-maps-reviews).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Maps Photos", + "value": "google_maps_photos", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Maps Photos as key-value pairs. See all available parameters at [Google Maps Photos Docs](https://www.searchapi.io/docs/google-maps-photos).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Maps Directions", + "value": "google_maps_directions", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Maps Directions as key-value pairs. See all available parameters at [Google Maps Directions Docs](https://www.searchapi.io/docs/google-maps-directions-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Shopping", + "value": "google_shopping", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Shopping as key-value pairs. See all available parameters at [Google Shopping Docs](https://www.searchapi.io/docs/google-shopping).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Product", + "value": "google_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Product as key-value pairs. See all available parameters at [Google Product Docs](https://www.searchapi.io/docs/google-product).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Product Page", + "value": "google_product_page", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Product Page as key-value pairs. See all available parameters at [Google Product Page Docs](https://www.searchapi.io/docs/google-product-page).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Product Offers", + "value": "google_product_offers", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Product Offers as key-value pairs. See all available parameters at [Google Product Offers Docs](https://www.searchapi.io/docs/google-product-offers).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Product Specs", + "value": "google_product_specs", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Product Specs as key-value pairs. See all available parameters at [Google Product Specs Docs](https://www.searchapi.io/docs/google-product-specifications).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Product Reviews", + "value": "google_product_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Product Reviews as key-value pairs. See all available parameters at [Google Product Reviews Docs](https://www.searchapi.io/docs/google-product-reviews).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Shopping Filters", + "value": "google_shopping_filters", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Shopping Filters as key-value pairs. See all available parameters at [Google Shopping Filters Docs](https://www.searchapi.io/docs/google-shopping-filters).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Shopping Autocomplete", + "value": "google_shopping_autocomplete", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Shopping Autocomplete as key-value pairs. See all available parameters at [Google Shopping Autocomplete Docs](https://www.searchapi.io/docs/google-shopping-autocomplete-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Flights", + "value": "google_flights", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Flights as key-value pairs. See all available parameters at [Google Flights Docs](https://www.searchapi.io/docs/google-flights-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Flights Calendar", + "value": "google_flights_calendar", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Flights Calendar as key-value pairs. See all available parameters at [Google Flights Calendar Docs](https://www.searchapi.io/docs/google-flights-calendar-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Flights Location Search", + "value": "google_flights_location_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Flights Location Search as key-value pairs. See all available parameters at [Google Flights Location Search Docs](https://www.searchapi.io/docs/google-flights-location-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Hotels", + "value": "google_hotels", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Hotels as key-value pairs. See all available parameters at [Google Hotels Docs](https://www.searchapi.io/docs/google-hotels-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Hotels Property", + "value": "google_hotels_property", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Hotels Property as key-value pairs. See all available parameters at [Google Hotels Property Docs](https://www.searchapi.io/docs/google-hotels-property-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Hotels Autocomplete", + "value": "google_hotels_autocomplete", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Hotels Autocomplete as key-value pairs. See all available parameters at [Google Hotels Autocomplete Docs](https://www.searchapi.io/docs/google-hotels-autocomplete-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Travel Explore", + "value": "google_travel_explore", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Travel Explore as key-value pairs. See all available parameters at [Google Travel Explore Docs](https://www.searchapi.io/docs/google-travel-explore-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Videos", + "value": "google_videos", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Videos as key-value pairs. See all available parameters at [Google Videos Docs](https://www.searchapi.io/docs/google-videos).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Videos Light", + "value": "google_videos_light", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Videos Light as key-value pairs. See all available parameters at [Google Videos Light Docs](https://www.searchapi.io/docs/google-videos-light-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Shorts", + "value": "google_shorts", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Shorts as key-value pairs. See all available parameters at [Google Shorts Docs](https://www.searchapi.io/docs/google-shorts-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Images", + "value": "google_images", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Images as key-value pairs. See all available parameters at [Google Images Docs](https://www.searchapi.io/docs/google-images).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Images Light", + "value": "google_images_light", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Images Light as key-value pairs. See all available parameters at [Google Images Light Docs](https://www.searchapi.io/docs/google-images-light-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Lens", + "value": "google_lens", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Lens as key-value pairs. See all available parameters at [Google Lens Docs](https://www.searchapi.io/docs/google-lens).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google News", + "value": "google_news", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google News as key-value pairs. See all available parameters at [Google News Docs](https://www.searchapi.io/docs/google-news).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google News Light", + "value": "google_news_light", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google News Light as key-value pairs. See all available parameters at [Google News Light Docs](https://www.searchapi.io/docs/google-news-light-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google News Portal", + "value": "google_news_portal", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google News Portal as key-value pairs. See all available parameters at [Google News Portal Docs](https://www.searchapi.io/docs/google-news-portal-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Jobs", + "value": "google_jobs", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Jobs as key-value pairs. See all available parameters at [Google Jobs Docs](https://www.searchapi.io/docs/google-jobs).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Events", + "value": "google_events", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Events as key-value pairs. See all available parameters at [Google Events Docs](https://www.searchapi.io/docs/google-events-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Autocomplete", + "value": "google_autocomplete", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Autocomplete as key-value pairs. See all available parameters at [Google Autocomplete Docs](https://www.searchapi.io/docs/google-autocomplete).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Trends", + "value": "google_trends", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Trends as key-value pairs. See all available parameters at [Google Trends Docs](https://www.searchapi.io/docs/google-trends).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Trending Now", + "value": "google_trends_trending_now", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Trending Now as key-value pairs. See all available parameters at [Google Trending Now Docs](https://www.searchapi.io/docs/google-trends-trending-now-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Trending Now News", + "value": "google_trends_trending_now_news", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Trending Now News as key-value pairs. See all available parameters at [Google Trending Now News Docs](https://www.searchapi.io/docs/google-trends-trending-now-news-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Trends Autocomplete", + "value": "google_trends_autocomplete", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Trends Autocomplete as key-value pairs. See all available parameters at [Google Trends Autocomplete Docs](https://www.searchapi.io/docs/google-trends-autocomplete).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Scholar", + "value": "google_scholar", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Scholar as key-value pairs. See all available parameters at [Google Scholar Docs](https://www.searchapi.io/docs/google-scholar).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Scholar Author", + "value": "google_scholar_author", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Scholar Author as key-value pairs. See all available parameters at [Google Scholar Author Docs](https://www.searchapi.io/docs/google-scholar-author).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Scholar Cite", + "value": "google_scholar_cite", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Scholar Cite as key-value pairs. See all available parameters at [Google Scholar Cite Docs](https://www.searchapi.io/docs/google-scholar-cite).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Forums", + "value": "google_forums", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Forums as key-value pairs. See all available parameters at [Google Forums Docs](https://www.searchapi.io/docs/google-forums-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Finance", + "value": "google_finance", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Finance as key-value pairs. See all available parameters at [Google Finance Docs](https://www.searchapi.io/docs/google-finance).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Patents", + "value": "google_patents", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Patents as key-value pairs. See all available parameters at [Google Patents Docs](https://www.searchapi.io/docs/google-patents).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Patents Details", + "value": "google_patents_details", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Patents Details as key-value pairs. See all available parameters at [Google Patents Details Docs](https://www.searchapi.io/docs/google-patents-details).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Books", + "value": "google_books", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Books as key-value pairs. See all available parameters at [Google Books Docs](https://www.searchapi.io/docs/google-books-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Local", + "value": "google_local", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Local as key-value pairs. See all available parameters at [Google Local Docs](https://www.searchapi.io/docs/google-local-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Place", + "value": "google_place", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Place as key-value pairs. See all available parameters at [Google Place Docs](https://www.searchapi.io/docs/google-place-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Airbnb", + "value": "airbnb", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Airbnb as key-value pairs. See all available parameters at [Airbnb Docs](https://www.searchapi.io/docs/airbnb-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Airbnb Property", + "value": "airbnb_property", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Airbnb Property as key-value pairs. See all available parameters at [Airbnb Property Docs](https://www.searchapi.io/docs/airbnb-property-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Airbnb Property Reviews", + "value": "airbnb_property_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Airbnb Property Reviews as key-value pairs. See all available parameters at [Airbnb Property Reviews Docs](https://www.searchapi.io/docs/airbnb-property-reviews-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Bing", + "value": "bing", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Bing as key-value pairs. See all available parameters at [Bing Docs](https://www.searchapi.io/docs/bing).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Bing Images", + "value": "bing_images", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Bing Images as key-value pairs. See all available parameters at [Bing Images Docs](https://www.searchapi.io/docs/bing-images-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Bing Videos", + "value": "bing_videos", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Bing Videos as key-value pairs. See all available parameters at [Bing Videos Docs](https://www.searchapi.io/docs/bing-videos-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Bing News", + "value": "bing_news", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Bing News as key-value pairs. See all available parameters at [Bing News Docs](https://www.searchapi.io/docs/bing-news).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Bing Shopping", + "value": "bing_shopping", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Bing Shopping as key-value pairs. See all available parameters at [Bing Shopping Docs](https://www.searchapi.io/docs/bing-shopping-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Baidu", + "value": "baidu", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Baidu as key-value pairs. See all available parameters at [Baidu Docs](https://www.searchapi.io/docs/baidu).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Naver", + "value": "naver", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Naver as key-value pairs. See all available parameters at [Naver Docs](https://www.searchapi.io/docs/naver-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Yahoo Search", + "value": "yahoo", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Yahoo Search as key-value pairs. See all available parameters at [Yahoo Search Docs](https://www.searchapi.io/docs/yahoo-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Meta Ad Library", + "value": "meta_ad_library", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Meta Ad Library as key-value pairs. See all available parameters at [Meta Ad Library Docs](https://www.searchapi.io/docs/meta-ad-library-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Meta Ad Library Page Search", + "value": "meta_ad_library_page_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Meta Ad Library Page Search as key-value pairs. See all available parameters at [Meta Ad Library Page Search Docs](https://www.searchapi.io/docs/meta-ad-library-page-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Meta Ad Library Ad Details", + "value": "meta_ad_library_ad_details", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Meta Ad Library Ad Details as key-value pairs. See all available parameters at [Meta Ad Library Ad Details Docs](https://www.searchapi.io/docs/meta-ad-library-ad-details-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Meta Ad Library Page Info", + "value": "meta_ad_library_page_info", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Meta Ad Library Page Info as key-value pairs. See all available parameters at [Meta Ad Library Page Info Docs](https://www.searchapi.io/docs/meta-ad-library-page-info-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Linkedin Ad Library", + "value": "linkedin_ad_library", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Linkedin Ad Library as key-value pairs. See all available parameters at [Linkedin Ad Library Docs](https://www.searchapi.io/docs/linkedin-ad-library-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Amazon Search", + "value": "amazon_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Amazon Search as key-value pairs. See all available parameters at [Amazon Search Docs](https://www.searchapi.io/docs/amazon-search).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Amazon Product", + "value": "amazon_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Amazon Product as key-value pairs. See all available parameters at [Amazon Product Docs](https://www.searchapi.io/docs/amazon-product).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Amazon Offers", + "value": "amazon_offers", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Amazon Offers as key-value pairs. See all available parameters at [Amazon Offers Docs](https://www.searchapi.io/docs/amazon-offers-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Shein Search", + "value": "shein_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Shein Search as key-value pairs. See all available parameters at [Shein Search Docs](https://www.searchapi.io/docs/shein-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Shein Product", + "value": "shein_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Shein Product as key-value pairs. See all available parameters at [Shein Product Docs](https://www.searchapi.io/docs/shein-product-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "eBay Search", + "value": "ebay_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for eBay Search as key-value pairs. See all available parameters at [eBay Search Docs](https://www.searchapi.io/docs/ebay-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "eBay Product", + "value": "ebay_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for eBay Product as key-value pairs. See all available parameters at [eBay Product Docs](https://www.searchapi.io/docs/ebay-product-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Play Store", + "value": "google_play_store", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Play Store as key-value pairs. See all available parameters at [Google Play Store Docs](https://www.searchapi.io/docs/google-play-store).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Google Play Product", + "value": "google_play_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Google Play Product as key-value pairs. See all available parameters at [Google Play Product Docs](https://www.searchapi.io/docs/google-play-product).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Apple App Store", + "value": "apple_app_store", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Apple App Store as key-value pairs. See all available parameters at [Apple App Store Docs](https://www.searchapi.io/docs/apple-app-store).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Apple Product", + "value": "apple_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Apple Product as key-value pairs. See all available parameters at [Apple Product Docs](https://www.searchapi.io/docs/apple-product-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Apple Product Reviews", + "value": "apple_product_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Apple Product Reviews as key-value pairs. See all available parameters at [Apple Product Reviews Docs](https://www.searchapi.io/docs/apple-app-store-reviews-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Apple Top Charts", + "value": "apple_app_store_top_charts", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Apple Top Charts as key-value pairs. See all available parameters at [Apple Top Charts Docs](https://www.searchapi.io/docs/apple-app-store-top-charts-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Yandex", + "value": "yandex", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Yandex as key-value pairs. See all available parameters at [Yandex Docs](https://www.searchapi.io/docs/yandex-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Yandex Reverse Image", + "value": "yandex_reverse_image", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Yandex Reverse Image as key-value pairs. See all available parameters at [Yandex Reverse Image Docs](https://www.searchapi.io/docs/yandex-reverse-image-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "DuckDuckGo", + "value": "duckduckgo", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for DuckDuckGo as key-value pairs. See all available parameters at [DuckDuckGo Docs](https://www.searchapi.io/docs/duckduckgo-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "DuckDuckGo Light", + "value": "duckduckgo_light", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for DuckDuckGo Light as key-value pairs. See all available parameters at [DuckDuckGo Light Docs](https://www.searchapi.io/docs/duckduckgo-light-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Walmart Search", + "value": "walmart_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Walmart Search as key-value pairs. See all available parameters at [Walmart Search Docs](https://www.searchapi.io/docs/walmart-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Walmart Product", + "value": "walmart_product", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Walmart Product as key-value pairs. See all available parameters at [Walmart Product Docs](https://www.searchapi.io/docs/walmart-product-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Walmart Reviews", + "value": "walmart_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Walmart Reviews as key-value pairs. See all available parameters at [Walmart Reviews Docs](https://www.searchapi.io/docs/walmart-reviews-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube", + "value": "youtube", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube as key-value pairs. See all available parameters at [YouTube Docs](https://www.searchapi.io/docs/youtube).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Transcripts", + "value": "youtube_transcripts", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Transcripts as key-value pairs. See all available parameters at [YouTube Transcripts Docs](https://www.searchapi.io/docs/youtube-transcripts).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Video", + "value": "youtube_video", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Video as key-value pairs. See all available parameters at [YouTube Video Docs](https://www.searchapi.io/docs/youtube-video).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Comments", + "value": "youtube_comments", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Comments as key-value pairs. See all available parameters at [YouTube Comments Docs](https://www.searchapi.io/docs/youtube-comments).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Channel", + "value": "youtube_channel", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Channel as key-value pairs. See all available parameters at [YouTube Channel Docs](https://www.searchapi.io/docs/youtube-channel).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Channel Videos", + "value": "youtube_channel_videos", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Channel Videos as key-value pairs. See all available parameters at [YouTube Channel Videos Docs](https://www.searchapi.io/docs/youtube-channel-videos-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "YouTube Trends", + "value": "youtube_trends", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for YouTube Trends as key-value pairs. See all available parameters at [YouTube Trends Docs](https://www.searchapi.io/docs/youtube-trends).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Reddit Ad Library", + "value": "reddit_ad_library", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Reddit Ad Library as key-value pairs. See all available parameters at [Reddit Ad Library Docs](https://www.searchapi.io/docs/reddit-ad-library-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "TikTok Ads Library", + "value": "tiktok_ads_library", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for TikTok Ads Library as key-value pairs. See all available parameters at [TikTok Ads Library Docs](https://www.searchapi.io/docs/tiktok-ads-library-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Tiktok Ads Advertiser Search", + "value": "tiktok_ads_library_advertiser_search", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Tiktok Ads Advertiser Search as key-value pairs. See all available parameters at [Tiktok Ads Advertiser Search Docs](https://www.searchapi.io/docs/tiktok-ads-library-advertiser-search-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "TikTok Profile", + "value": "tiktok_profile", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for TikTok Profile as key-value pairs. See all available parameters at [TikTok Profile Docs](https://www.searchapi.io/docs/tiktok-profile-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Facebook Business Page", + "value": "facebook_business_page", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Facebook Business Page as key-value pairs. See all available parameters at [Facebook Business Page Docs](https://www.searchapi.io/docs/facebook-business-page-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Facebook Business Page Reviews", + "value": "facebook_business_page_reviews", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Facebook Business Page Reviews as key-value pairs. See all available parameters at [Facebook Business Page Reviews Docs](https://www.searchapi.io/docs/facebook-business-page-reviews-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Instagram Profile", + "value": "instagram_profile", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Instagram Profile as key-value pairs. See all available parameters at [Instagram Profile Docs](https://www.searchapi.io/docs/instagram-profile-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + }, + { + "label": "Tripadvisor", + "value": "tripadvisor", + "nested": [ + { + "name": "params", + "label": "Engine Parameters", + "type": "array", + "help": "Add parameters for Tripadvisor as key-value pairs. See all available parameters at [Tripadvisor Docs](https://www.searchapi.io/docs/tripadvisor-api).", + "spec": { + "label": "Parameter", + "type": "collection", + "spec": [ + { + "name": "key", + "label": "Key", + "type": "text" + }, + { + "name": "value", + "label": "Value", + "type": "text" + } + ] + }, + "labels": { + "add": "Add parameter" + } + } + ] + } + ] + } +] From cc5f05964d8208ecf9cfce61bab8829f0463f10d Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Mon, 16 Mar 2026 01:09:04 -0300 Subject: [PATCH 7/8] Fix wrong searchapi name --- src/connections/connection1/connection1.params.iml.json | 2 +- src/makecomapp.json | 6 +++--- src/modules/groups.json | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/connections/connection1/connection1.params.iml.json b/src/connections/connection1/connection1.params.iml.json index 0e21c4e..af2eea7 100644 --- a/src/connections/connection1/connection1.params.iml.json +++ b/src/connections/connection1/connection1.params.iml.json @@ -5,6 +5,6 @@ "label": "API Key", "required": true, "editable": true, - "help": "Your SearchAPI API key. Find it at https://www.searchapi.io/ after login." + "help": "Your SearchApi API key. Find it at https://www.searchapi.io/ after login." } ] \ No newline at end of file diff --git a/src/makecomapp.json b/src/makecomapp.json index f061ae6..3d0092e 100644 --- a/src/makecomapp.json +++ b/src/makecomapp.json @@ -9,7 +9,7 @@ "components": { "connection": { "connection1": { - "label": "SearchAPI Connection", + "label": "SearchApi Connection", "connectionType": "basic", "codeFiles": { "communication": "connections/connection1/connection1.communication.iml.json", @@ -21,7 +21,7 @@ "module": { "makeApiCall": { "label": "Make an API Call", - "description": "Make a request to any SearchAPI endpoint", + "description": "Make a request to any SearchApi endpoint", "moduleType": "action", "actionCrud": "read", "connection": "connection1", @@ -52,7 +52,7 @@ }, "makeApiCallUniversal": { "label": "Make an Api Call", - "description": "Search any engine via SearchAPI.io. Select your engine, then add parameters from the docs.", + "description": "Search any engine via SearchApi.io. Select your engine, then add parameters from the docs.", "moduleType": "universal", "connection": "connection1", "altConnection": null, diff --git a/src/modules/groups.json b/src/modules/groups.json index 69127b7..77e9684 100644 --- a/src/modules/groups.json +++ b/src/modules/groups.json @@ -1,6 +1,6 @@ [ { - "label": "SearchAPI", + "label": "SearchApi", "modules": [ "makeApiCall", "makeApiCallUniversal", From 041523b5ae36320f55b46b8995d1b71ba5bad9c5 Mon Sep 17 00:00:00 2001 From: Pedro Santos Date: Mon, 16 Mar 2026 11:02:40 -0300 Subject: [PATCH 8/8] Keeping things simple --- src/makecomapp.json | 41 +------------------ src/modules/groups.json | 14 +++---- ...make-api-call-final.communication.iml.json | 1 - .../make-api-call-final.interface.iml.json | 1 - ...ke-api-call-final.mappable-params.iml.json | 1 - .../make-api-call-final.samples.iml.json | 1 - .../make-api-call-final.scope.iml.json | 2 - ...make-api-call-final.static-params.iml.json | 1 - .../make-api-call.communication.iml.json | 13 ------ .../make-api-call.interface.iml.json | 3 -- .../make-api-call.mappable-params.iml.json | 19 --------- .../make-api-call.samples.iml.json | 1 - .../make-api-call.scope.iml.json | 3 -- .../make-api-call.static-params.iml.json | 2 - 14 files changed, 7 insertions(+), 96 deletions(-) delete mode 100644 src/modules/make-api-call-final/make-api-call-final.communication.iml.json delete mode 100644 src/modules/make-api-call-final/make-api-call-final.interface.iml.json delete mode 100644 src/modules/make-api-call-final/make-api-call-final.mappable-params.iml.json delete mode 100644 src/modules/make-api-call-final/make-api-call-final.samples.iml.json delete mode 100644 src/modules/make-api-call-final/make-api-call-final.scope.iml.json delete mode 100644 src/modules/make-api-call-final/make-api-call-final.static-params.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.communication.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.interface.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.mappable-params.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.samples.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.scope.iml.json delete mode 100644 src/modules/make-api-call/make-api-call.static-params.iml.json diff --git a/src/makecomapp.json b/src/makecomapp.json index 3d0092e..2beb499 100644 --- a/src/makecomapp.json +++ b/src/makecomapp.json @@ -19,39 +19,8 @@ } }, "module": { - "makeApiCall": { - "label": "Make an API Call", - "description": "Make a request to any SearchApi endpoint", - "moduleType": "action", - "actionCrud": "read", - "connection": "connection1", - "altConnection": null, - "codeFiles": { - "communication": "modules/make-api-call/make-api-call.communication.iml.json", - "staticParams": "modules/make-api-call/make-api-call.static-params.iml.json", - "mappableParams": "modules/make-api-call/make-api-call.mappable-params.iml.json", - "interface": "modules/make-api-call/make-api-call.interface.iml.json", - "samples": "modules/make-api-call/make-api-call.samples.iml.json", - "scope": "modules/make-api-call/make-api-call.scope.iml.json" - } - }, - "makeApiCallFinal": { - "label": "Make an Api Call", - "description": "Use this module if your desired engine is not an app module.", - "moduleType": "universal", - "connection": null, - "altConnection": null, - "codeFiles": { - "communication": "modules/make-api-call-final/make-api-call-final.communication.iml.json", - "staticParams": "modules/make-api-call-final/make-api-call-final.static-params.iml.json", - "mappableParams": "modules/make-api-call-final/make-api-call-final.mappable-params.iml.json", - "interface": "modules/make-api-call-final/make-api-call-final.interface.iml.json", - "samples": "modules/make-api-call-final/make-api-call-final.samples.iml.json", - "scope": "modules/make-api-call-final/make-api-call-final.scope.iml.json" - } - }, "makeApiCallUniversal": { - "label": "Make an Api Call", + "label": "Make an API Call", "description": "Search any engine via SearchApi.io. Select your engine, then add parameters from the docs.", "moduleType": "universal", "connection": "connection1", @@ -84,14 +53,6 @@ } ], "module": [ - { - "local": "makeApiCall", - "remote": "makeApiCall" - }, - { - "local": "makeApiCallFinal", - "remote": "makeApiCallFinal" - }, { "local": "makeApiCallUniversal", "remote": "makeApiCallUniversal" diff --git a/src/modules/groups.json b/src/modules/groups.json index 77e9684..d025e53 100644 --- a/src/modules/groups.json +++ b/src/modules/groups.json @@ -1,10 +1,8 @@ [ - { - "label": "SearchApi", - "modules": [ - "makeApiCall", - "makeApiCallUniversal", - "makeApiCallFinal" - ] - } + { + "label": "SearchApi", + "modules": [ + "makeApiCallUniversal" + ] + } ] \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.communication.iml.json b/src/modules/make-api-call-final/make-api-call-final.communication.iml.json deleted file mode 100644 index 9e26dfe..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.communication.iml.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.interface.iml.json b/src/modules/make-api-call-final/make-api-call-final.interface.iml.json deleted file mode 100644 index 0637a08..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.interface.iml.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.mappable-params.iml.json b/src/modules/make-api-call-final/make-api-call-final.mappable-params.iml.json deleted file mode 100644 index 0637a08..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.mappable-params.iml.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.samples.iml.json b/src/modules/make-api-call-final/make-api-call-final.samples.iml.json deleted file mode 100644 index 9e26dfe..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.samples.iml.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.scope.iml.json b/src/modules/make-api-call-final/make-api-call-final.scope.iml.json deleted file mode 100644 index 8c52299..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.scope.iml.json +++ /dev/null @@ -1,2 +0,0 @@ -// Code below is relevant only if an OAuth type connection is associated with the module. In other cases, it is ignored. -[] \ No newline at end of file diff --git a/src/modules/make-api-call-final/make-api-call-final.static-params.iml.json b/src/modules/make-api-call-final/make-api-call-final.static-params.iml.json deleted file mode 100644 index 0637a08..0000000 --- a/src/modules/make-api-call-final/make-api-call-final.static-params.iml.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.communication.iml.json b/src/modules/make-api-call/make-api-call.communication.iml.json deleted file mode 100644 index 535fb7e..0000000 --- a/src/modules/make-api-call/make-api-call.communication.iml.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - // Request to API endpoint with parameter "id" defined in Mappable parameters. - "url": "/users/{{parameters.id}}", // Relative to base URL - "method": "PUT", - "headers": {}, // Additional HTTP headers - "qs": {}, // Query string - "body": "{{omit(parameters, 'id')}}", // Request body omitting the ID that is already being sent in URL. - - // Response handling - "response": { - "output": "{{undefined}}" // Returns no output bundle as no API output is expected. - } -} \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.interface.iml.json b/src/modules/make-api-call/make-api-call.interface.iml.json deleted file mode 100644 index 7c06576..0000000 --- a/src/modules/make-api-call/make-api-call.interface.iml.json +++ /dev/null @@ -1,3 +0,0 @@ -// Expects an empty API response. -[ -] \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.mappable-params.iml.json b/src/modules/make-api-call/make-api-call.mappable-params.iml.json deleted file mode 100644 index 88031d0..0000000 --- a/src/modules/make-api-call/make-api-call.mappable-params.iml.json +++ /dev/null @@ -1,19 +0,0 @@ -// Defines "id", "email" and "name" as module input parameters. -[ - { - "name": "id", // Makes value accesible via "{{parameters.id}}". - "type": "uinteger", // Sends the value as unsigned integer. - "label": "User ID", // Sets the user friendly label visible in the module. - "required": true // Sets the parameter as mandatory. - }, - { - "name": "email", - "type": "email", - "label": "Email address" - }, - { - "name": "name", - "type": "text", - "label": "Name" - } -] \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.samples.iml.json b/src/modules/make-api-call/make-api-call.samples.iml.json deleted file mode 100644 index 9e26dfe..0000000 --- a/src/modules/make-api-call/make-api-call.samples.iml.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.scope.iml.json b/src/modules/make-api-call/make-api-call.scope.iml.json deleted file mode 100644 index fdfeaea..0000000 --- a/src/modules/make-api-call/make-api-call.scope.iml.json +++ /dev/null @@ -1,3 +0,0 @@ -// Code below is relevant only if an OAuth type connection is associated with the module. In other cases, it is ignored. -[ -] \ No newline at end of file diff --git a/src/modules/make-api-call/make-api-call.static-params.iml.json b/src/modules/make-api-call/make-api-call.static-params.iml.json deleted file mode 100644 index 32960f8..0000000 --- a/src/modules/make-api-call/make-api-call.static-params.iml.json +++ /dev/null @@ -1,2 +0,0 @@ -[ -] \ No newline at end of file