Posted 7 Hours Ago Job ID: 2115693 4 quotes received

NocoDB Expert Needed - API Record ID

Fixed PriceUnder $250
Quotes (4)  ·  Premium Quotes (0)  ·  Invited (0)  ·  Hired (0)

  Send before: March 05, 2026

Send a Quote

First please note el price is 25 USd not Neg. 

We're building a LinkedIn Stealth Sourcing system for a B2B tech services company (Núcleo Tecnológico) using NocoDB as the database backend. The system manages lead prospecting workflows with 10 interconnected tables, contextual scoring, and human-in-the-loop approvals via Telegram.

Tech Stack:

   NocoDB (self-hosted on infra-svc01.mailerblend.com)

   Database: PostgreSQL (via NocoDB)

   Integration: n8n workflows

   API: NocoDB REST API (v1 & v2)

🎯 What We've Accomplished
✅ Schema Design (Complete)

   10 tables with 100 columns total

   14 relationships using LinkToAnotherRecord with type: "bt" (belongs-to)

   All tables created successfully using atomic creation pattern

   Relationships verified at schema level (14/14 confirmed via metadata API)

✅ Tables Created

   Pack (3 commercial packages: Guardian/Motor/Fortaleza)

   Segment (A/B testing segments by city/reviews)

   Company (target companies with Google Places integration)

   Lead (LinkedIn prospects with scoring)

   Attempt (interaction tracking)

   Research_Snapshot (web/places signals)

   Message_Template (personalized message templates)

   Approval (human-in-the-loop quality control)

   Conversation (LinkedIn conversation state)

   Outcome (sales outcomes tracking)

✅ What Works

   Table creation via /api/v1/db/meta/projects/PROJECT_ID/tables

   Data insertion via /api/v2/tables/table_id/records (basic fields only)

   Schema relationships verified via metadata API

   Field types: SingleSelect (with colOptions), Number, Decimal, Text, Dates, Checkboxes

❌ The Problem
Critical Issue: Record Id Not Accessible via API

Our NocoDB instance does not return the Id field in any API response:

POST Response (insert):
JSON

"pack_key": "GUARDIAN",
"name": "El Guardián",
"price_min": 500,
// ... other fields, but NO "Id"

GET Response (query):
JSON

"list": [
   "PackKey": "GUARDIAN",
   "Name": "El Guardián",
   // ... other fields, but NO "Id"
 ]

We've tried:

   /api/v1/db/data/v1/PROJECT_ID/Pack → No Id

   /api/v2/tables/table_id/records → No Id

   Query params: ?fields=Id,PackKey → Ignores Id

   Query params: ?includeSystemColumns=true&include=all → 404 error

Consequence

We cannot populate relationships because:

   Relationships require the parent record's Id

   We can insert records but relationships stay null

   Example failing payload:

JSON

"segment_key": "BCN_A_GUARDIAN",
"pack": "GUARDIAN",  // ← Should be an Id, not a string
"name": "Barcelona Segment A"

Result: "pack": null
🎯 What We Need
Primary Objective

Get relationships working end-to-end so we can insert records with proper FK links.
Specific Deliverables

   Identify the correct method to retrieve Record IDs from our NocoDB instance    - Via API endpoint we haven't tried    - Via specific query parameters    - Via alternate field name (not Id but something equivalent)

   Working insert pattern for relationships    - Either: Direct insert with relationships in one call    - Or: Two-step process (insert → link via /api/v2/tables/tableId/links/...)

   Documentation/code examples showing:    python    # Insert Pack    pack = create_pack("pack_key": "GUARDIAN", "name": "El Guardián")    pack_id = ??? # How to get this?        # Insert Segment with relationship    segment = create_segment(        "segment_key": "BCN_A_GUARDIAN",        "pack": pack_id,  # ← This needs to work        "name": "Barcelona A"    )    

   Verification that relationships work when reading data back

📚 What We've Already Tried
API Exploration

   ✅ Successfully created all 10 tables with atomic relationships

   ✅ Verified relationships exist at metadata level

   ✅ Data inserts work for basic fields

   ❌ Relationships remain null on insert

   ❌ No Id field accessible in any GET/POST response

   ❌ Link endpoint patterns not working

Code Artifacts

We have working Python scripts for:

   Table creation with atomic relationships (create_tables_v3_atomic.py)

   Schema verification (verify_and_test.py)

   Data insertion helpers

Available for review:

   Full schema definition (10 tables, 100 fields, 14 relations)

   Working connection code

   .env configuration

🔍 Technical Details
NocoDB Instance

   Host: infra-svc01.mailerblend.com

   Base ID: pbydkvvvbvv4pdf (prefixed with p)

   Auth: API Token (xc-token header)

   Version: Unknown (likely v2.x, self-hosted)

Relationship Pattern Used
Python

"column_name": "pack",
"title": "pack",
"uidt": "LinkToAnotherRecord",
"colOptions": (
   "type": "bt",           # belongs-to
   "parentId": parent_table_id
)

Current Table IDs
Python

"Pack":                "msj7irqrtbgijlg",
"Company":             "mo6zgdp4taiq8h3",
"Segment":             "mkadykbj2vudub2",
"Lead":                "mxzt07n7nn6lnxm",
# ... (7 more)

💡 Possible Solutions We're Open To

   API endpoint/parameter we missed that returns Id

   Different NocoDB version recommendation (if ours is broken)

   SDK usage (if REST API doesn't support this)

   Workaround pattern used in production by other NocoDB users

   Schema redesign (last resort - remove FK relations, use string keys)

👤 Ideal Candidate
Must Have

   ✅ Proven experience with NocoDB API (REST v1 and/or v2)

   ✅ Experience creating LinkToAnotherRecord relationships via API

   ✅ Successfully inserted records with FK relationships via API

   ✅ Understanding of NocoDB's internal Id vs display fields

Nice to Have

   Experience with self-hosted NocoDB instances

   PostgreSQL knowledge

   Python scripting experience

   n8n workflow integration experience

   Experience debugging API responses

Red Flags (Please Don't Apply If)

   You've only used NocoDB via the UI, never via API

   You haven't worked with LinkToAnotherRecord/Links fields

   You can't provide examples of relationship inserts working

📦 Deliverables
Minimum Viable Solution

   Working code example showing how to:    - Insert a Pack record    - Get its Id (or equivalent identifier)    - Insert a Segment record linked to that Pack    - Verify the relationship exists

   Documentation explaining:    - Why our current approach isn't working    - What the correct approach is    - Any version/configuration issues

Bonus Points

   Update our existing Python scripts to use the working pattern

   Verify all 14 relationships work end-to-end

   Documentation for n8n integration patterns

📅 Timeline & Budget

   Start: ASAP

   Duration: 1-3 days (depending on solution complexity)

   Budget: $25 USD ( NOT negotiable)



What We'll Provide

   Full access to our NocoDB instance (read/write)

   All Python scripts and schema definitions

   Detailed technical documentation

   Responsive communication (Slack/Discord/Email)

   Screen sharing sessions if needed

⚠️ Important Notes

   We need a working solution, not theoretical advice
   Code examples required - we're past the documentation phase
   Remote work only - no location requirements
English or Spanish communication is fine

... Show more
Eduard V Spain