Back to skills
SKILL.md
Serpapi Upgrade Migration
BSecurity'Migrate between SerpApi client versions and handle package changes. Use when upgrading from google-search-results to serpapi package, or handling API response schema changes. Trigger: \"upgrade serpapi\", \"serpapi migration\", \"serpapi new package\". '
- 3 stars
- 0 votes
- 0 copies
- 3 views
- Added September 12, 2026
Works with
Security analysis
88/100- Installs packages at runtime which could introduce malicious dependencies
- Installs packages at runtime which could introduce malicious dependencies
npx -y skills add thedixitjain/the-mega-skill-library --skill serpapi-upgrade-migration --agent claude-codeAre you the author of Serpapi Upgrade Migration?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/thedixitjain-serpapi-upgrade-migration)---
name: serpapi-upgrade-migration
description: "'Migrate between SerpApi client versions and handle package changes. Use when upgrading from google-search-results to serpapi package, or handling API response schema changes. Trigger: \"upgrade serpapi\", \"serpapi migration\", \"serpapi new package\". '"
allowed-tools: "Read, Write, Edit, Bash(npm:*), Bash(pip:*), Bash(git:*)"
category: engineering-core
source_repo: jeremylongshore/claude-code-plugins-plus-skills
source_path: "plugins/saas-packs/serpapi-pack/skills/serpapi-upgrade-migration/SKILL.md"
source_url: https://github.com/jeremylongshore/claude-code-plugins-plus-skills/blob/HEAD/plugins/saas-packs/serpapi-pack/skills/serpapi-upgrade-migration/SKILL.md
---
# SerpApi Upgrade & Migration
## Overview
The main migration path: `google-search-results` (legacy) to `serpapi` (current official package). The API itself is stable -- changes are in client library interfaces, not the REST API.
## Instructions
### Python: google-search-results to serpapi
```python
# BEFORE: Legacy package
from serpapi import GoogleSearch
search = GoogleSearch({"q": "test", "api_key": key})
result = search.get_dict()
# AFTER: New official package
import serpapi
client = serpapi.Client(api_key=key)
result = client.search(engine="google", q="test")
# Result is already a dict -- no get_dict() needed
```
```bash
# Migration steps
pip uninstall google-search-results
pip install serpapi
# Update imports across codebase
# OLD: from serpapi import GoogleSearch
# NEW: import serpapi
```
### Node.js: google-search-results-nodejs to serpapi
```typescript
// BEFORE: Legacy
import { GoogleSearch } from 'google-search-results-nodejs';
const search = new GoogleSearch('api_key');
search.json({ q: 'test', engine: 'google' }, (result) => { ... });
// AFTER: Current (Promise-based)
import { getJson } from 'serpapi';
const result = await getJson({ engine: 'google', q: 'test', api_key: key });
// No callbacks -- uses Promises natively
```
### Key Changes
| Aspect | Legacy | Current |
|--------|--------|---------|
| Python import | `from serpapi import GoogleSearch` | `import serpapi` |
| Python init | `GoogleSearch(params_dict)` | `serpapi.Client(api_key=key)` |
| Python search | `search.get_dict()` | `client.search(engine="google", q=...)` |
| Node import | `google-search-results-nodejs` | `serpapi` |
| Node pattern | Callback-based | Promise/async-await |
| Engine param | Via class name (GoogleSearch, BingSearch) | Via `engine` parameter |
### Migration Checklist
- [ ] Replace package: `pip install serpapi` / `npm install serpapi`
- [ ] Update all imports
- [ ] Replace class-per-engine with `engine` parameter
- [ ] Replace callbacks with async/await (Node.js)
- [ ] Remove `.get_dict()` calls (Python -- result is already dict)
- [ ] Test all search queries return expected structure
- [ ] Update CI dependencies
## Resources
- [serpapi Python](https://github.com/serpapi/serpapi-python)
- [serpapi Node.js](https://www.npmjs.com/package/serpapi)
- [Legacy Python](https://github.com/serpapi/google-search-results-python)
## Next Steps
For CI integration, see `serpapi-ci-integration`.
---
**Source:** [`jeremylongshore/claude-code-plugins-plus-skills`](https://github.com/jeremylongshore/claude-code-plugins-plus-skills) → `plugins/saas-packs/serpapi-pack/skills/serpapi-upgrade-migration/SKILL.md`
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.