@seranking/n8n-nodes-seranking 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -20
- package/dist/nodes/SeRanking/projectApi/descriptions/BacklinkCheckerDescription.js +14 -0
- package/dist/nodes/SeRanking/projectApi/operations/AiResultTrackerOperations.js +1 -1
- package/dist/nodes/SeRanking/projectApi/operations/KeywordGroupsOperations.js +1 -1
- package/dist/nodes/SeRanking/projectApi/operations/SubAccountOperations.js +6 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# n8n-nodes-seranking
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
n8n community node for [SE Ranking](https://seranking.com/)'s unified API — 190 operations across 21 resources: AI Search, Backlinks, Domain Analysis, Keyword Research, SERP Classic, Website Audits, Project Management, Competitors, Backlink Checker, Sub-Accounts, and more.
|
|
4
4
|
|
|
5
5
|
SE Ranking is a comprehensive SEO platform providing keyword research, competitor analysis, website audits, backlink monitoring, and AI search visibility tracking.
|
|
6
6
|
|
|
@@ -183,11 +183,11 @@ If you're upgrading and have saved credentials of type `seRankingProjectApi`, yo
|
|
|
183
183
|
|
|
184
184
|
- **n8n version**: 1.0.0 or higher
|
|
185
185
|
- **Node.js version**: 18.x or higher
|
|
186
|
-
- **SE Ranking API**:
|
|
186
|
+
- **SE Ranking API**: unified host `api.seranking.com/v1`
|
|
187
187
|
|
|
188
188
|
## Operations
|
|
189
189
|
|
|
190
|
-
This node provides access to **
|
|
190
|
+
This node provides access to **21 SE Ranking resources** with **190 total operations** on the unified API:
|
|
191
191
|
|
|
192
192
|
### Data API (6 resources, 65 operations)
|
|
193
193
|
|
|
@@ -703,33 +703,57 @@ return dominated;
|
|
|
703
703
|
|
|
704
704
|
## API Documentation
|
|
705
705
|
|
|
706
|
-
This node implements the
|
|
706
|
+
This node implements the SE Ranking unified API (`api.seranking.com/v1`):
|
|
707
707
|
|
|
708
|
-
**Data API
|
|
709
|
-
- [AI Search
|
|
710
|
-
- [Backlinks
|
|
711
|
-
- [Domain Analysis
|
|
712
|
-
- [Keyword Research
|
|
713
|
-
- [Website Audit
|
|
714
|
-
- [SERP API](https://seranking.com/api/data/serp/)
|
|
708
|
+
**Data API resources:**
|
|
709
|
+
- [AI Search](https://seranking.com/api/data/ai-search/)
|
|
710
|
+
- [Backlinks](https://seranking.com/api/data/backlinks/)
|
|
711
|
+
- [Domain Analysis](https://seranking.com/api/data/domain-analysis/)
|
|
712
|
+
- [Keyword Research](https://seranking.com/api/data/keyword-research/)
|
|
713
|
+
- [Website Audit](https://seranking.com/api/data/website-audit/)
|
|
715
714
|
|
|
716
|
-
**Project API** (
|
|
717
|
-
- [Project
|
|
715
|
+
**Project API resources** (under `/v1/project-management/`):
|
|
716
|
+
- [Project Management](https://seranking.com/api/project/project-management/)
|
|
717
|
+
- [AI Result Tracker](https://seranking.com/api/project/ai-result-tracker/)
|
|
718
|
+
- [Competitors](https://seranking.com/api/project/competitors/)
|
|
719
|
+
- [Backlink Checker](https://seranking.com/api/project/backlink-checker/)
|
|
720
|
+
- [Website Audit (Project)](https://seranking.com/api/project/audit/)
|
|
721
|
+
- [And more...](https://seranking.com/api/project/)
|
|
718
722
|
|
|
719
|
-
For detailed API specifications, visit [SE Ranking API Documentation](https://seranking.com/api
|
|
723
|
+
For detailed API specifications, visit [SE Ranking API Documentation](https://seranking.com/api/).
|
|
720
724
|
|
|
721
725
|
---
|
|
722
726
|
|
|
723
727
|
## Version History
|
|
724
728
|
|
|
725
|
-
###
|
|
729
|
+
### v2.0.1 (Current)
|
|
726
730
|
|
|
727
|
-
*
|
|
728
|
-
*
|
|
731
|
+
* 🐛 **FIX: Keyword Groups → Move Keywords** — was returning 400; API expects body key `keywords_ids` (plural), not `keyword_ids`
|
|
732
|
+
* 🐛 **FIX: Sub-Account → Share Projects** — `site_ids` must be a single integer per request; now loops one call per site so multiple IDs work
|
|
733
|
+
* 🐛 **FIX: Backlink Checker → Move to Group** — added missing Target Group ID field to the UI
|
|
734
|
+
|
|
735
|
+
### v2.0.0
|
|
736
|
+
|
|
737
|
+
* **BREAKING: API Unification** — single credential, single host (`api.seranking.com`). Old `seRankingProjectApi` credential type removed. Re-save affected nodes with unified `SE Ranking API` credential.
|
|
738
|
+
* ✅ **10 new operations** — List Check Dates, Get Ranking Trends, Audit Settings (get/update/reset), Audit Sitemaps (list/add/delete), Audit Source Pages (list/delete), AIRT Rankings group mode
|
|
739
|
+
* 🐛 **FIX: Update Audit Title** — was returning 400 since April 2026, now works
|
|
740
|
+
* 🐛 **FIX: Run Position Check** — /api/ prefix bug resolved by unification
|
|
741
|
+
* ⚠️ **Deprecated: Search Volume + Volume Regions** — 6 ops return 404 on unified host (friendly error with guidance)
|
|
742
|
+
* 📊 **Total: 190 operations across 21 resources**
|
|
743
|
+
|
|
744
|
+
### v1.5.13
|
|
745
|
+
|
|
746
|
+
* ✅ **NEW: AIRT Groups resource (8 operations)** — manage AI Result Tracker prompt groups
|
|
747
|
+
* ✅ **NEW: Dynamic Issue Code dropdown** — Get Pages by Issue auto-populates from audit report
|
|
748
|
+
* 🐛 **FIX: Run Position Check URL** — removed incorrect `/api/` prefix
|
|
749
|
+
|
|
750
|
+
### v1.5.8
|
|
751
|
+
|
|
752
|
+
* ✅ **NEW: Get Prompt Answer (AI Result Tracker)** - Returns full AI answer text, cited source URLs, detected brand mentions, and organic URLs for a tracked prompt.
|
|
729
753
|
|
|
730
754
|
### v1.3.6
|
|
731
755
|
|
|
732
|
-
* 🔧 **FIX: Rate limiting compatibility** - Replaced setTimeout with n8n-workflow sleep function
|
|
756
|
+
* 🔧 **FIX: Rate limiting compatibility** - Replaced setTimeout with n8n-workflow sleep function
|
|
733
757
|
|
|
734
758
|
### v1.3.5
|
|
735
759
|
|
|
@@ -802,7 +826,7 @@ For detailed API specifications, visit [SE Ranking API Documentation](https://se
|
|
|
802
826
|
|
|
803
827
|
## Features
|
|
804
828
|
|
|
805
|
-
✅ **
|
|
829
|
+
✅ **190 Operations** - Comprehensive coverage across 21 resources (unified API)
|
|
806
830
|
|
|
807
831
|
✅ **Pingback Webhooks** - Event-driven notifications for SERP task completion
|
|
808
832
|
|
|
@@ -885,7 +909,7 @@ For more details, see [n8n's rate limiting documentation](https://docs.n8n.io/in
|
|
|
885
909
|
**Solution**:
|
|
886
910
|
|
|
887
911
|
1. Verify API token is correct (copy from SE Ranking dashboard)
|
|
888
|
-
2.
|
|
912
|
+
2. Ensure your SE Ranking API credential has the correct unified token
|
|
889
913
|
3. Check token hasn't expired
|
|
890
914
|
4. Regenerate token in SE Ranking dashboard if needed
|
|
891
915
|
5. Test credentials using the "Test" button in n8n
|
|
@@ -510,6 +510,20 @@ exports.backlinkCheckerFields = [
|
|
|
510
510
|
default: '',
|
|
511
511
|
description: 'New name for the backlink group',
|
|
512
512
|
},
|
|
513
|
+
{
|
|
514
|
+
displayName: 'Target Group ID',
|
|
515
|
+
name: 'targetGroupId',
|
|
516
|
+
type: 'number',
|
|
517
|
+
required: true,
|
|
518
|
+
displayOptions: {
|
|
519
|
+
show: {
|
|
520
|
+
resource: ['backlinkChecker'],
|
|
521
|
+
operation: ['moveToGroup'],
|
|
522
|
+
},
|
|
523
|
+
},
|
|
524
|
+
default: 0,
|
|
525
|
+
description: 'Destination backlink group ID to move backlinks/groups into',
|
|
526
|
+
},
|
|
513
527
|
{
|
|
514
528
|
displayName: 'Backlink IDs',
|
|
515
529
|
name: 'backlinkIds',
|
|
@@ -128,7 +128,7 @@ async function AiResultTrackerOperations(index) {
|
|
|
128
128
|
const llmId = this.getNodeParameter('llmId', index);
|
|
129
129
|
const k2siteLlmId = this.getNodeParameter('k2siteLlmId', index);
|
|
130
130
|
const additionalFields = this.getNodeParameter('additionalFields', index, {});
|
|
131
|
-
const query = { site_id: siteId, llm_id: llmId,
|
|
131
|
+
const query = { site_id: siteId, llm_id: llmId, prompt_llm_id: k2siteLlmId };
|
|
132
132
|
if (additionalFields.date)
|
|
133
133
|
query.date = additionalFields.date;
|
|
134
134
|
return await apiRequest_1.apiRequest.call(this, 'GET', '/project-management/airt/prompts/answer', {}, query, index);
|
|
@@ -25,7 +25,7 @@ async function KeywordGroupsOperations(index) {
|
|
|
25
25
|
const keywordIdsStr = this.getNodeParameter('keywordIds', index);
|
|
26
26
|
const keywordIds = keywordIdsStr.split(',').map((id) => parseInt(id.trim(), 10));
|
|
27
27
|
await apiRequest_1.apiRequest.call(this, 'POST', '/project-management/keywords/groups/move', {
|
|
28
|
-
|
|
28
|
+
keywords_ids: keywordIds,
|
|
29
29
|
}, { group_id: groupId }, index);
|
|
30
30
|
return { success: true, group_id: groupId, moved_keywords: keywordIds };
|
|
31
31
|
}
|
|
@@ -90,7 +90,12 @@ async function SubAccountOperations(index) {
|
|
|
90
90
|
const id = this.getNodeParameter('subAccountId', index);
|
|
91
91
|
const siteIdsStr = this.getNodeParameter('siteIds', index);
|
|
92
92
|
const siteIds = siteIdsStr.split(',').map((s) => parseInt(s.trim(), 10));
|
|
93
|
-
|
|
93
|
+
const shared = [];
|
|
94
|
+
for (const siteId of siteIds) {
|
|
95
|
+
await apiRequest_1.apiRequest.call(this, 'POST', `/project-management/users/shared-sites?user_id=${id}`, { site_ids: siteId }, {}, index);
|
|
96
|
+
shared.push(siteId);
|
|
97
|
+
}
|
|
98
|
+
return { success: true, user_id: id, shared_sites: shared };
|
|
94
99
|
}
|
|
95
100
|
default:
|
|
96
101
|
throw new Error(`Unknown Sub-Account operation: ${operation}`);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seranking/n8n-nodes-seranking",
|
|
3
|
-
"version": "2.0.
|
|
4
|
-
"description": "n8n
|
|
3
|
+
"version": "2.0.2",
|
|
4
|
+
"description": "n8n community node for SE Ranking's unified API — 190 operations across 21 resources: AI Search, Backlinks, Domain Analysis, Keyword Research, SERP Classic, Website Audits, Project Management, Competitors, Backlink Checker, Sub-Accounts, and more",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/seranking/n8n-nodes-seranking",
|
|
7
7
|
"author": {
|