Integration Hub · live dispatch only
Integration Hub
We do not sell LLM rankings. Nobody can measure them honestly. We sell what can be measured: structure, accessibility, and receipts to prove it. Live surfaces: Custom GPT, agency webhooks, Salesforce and HubSpot BYOK, Search Intelligence (Ahrefs / Perplexity), Google Indexing API, Search Intelligence BYOK, and GitHub Actions score gates. No vanity logo wall.
Custom GPT Auditor
Conversational AI Search Readiness in ChatGPT. Calls live POST /api/v1/public/audit. Best for founders and agency operators who do not want a terminal.
Why these integrations (not a 20-logo wall)?
Every card here either dispatches for real or opens a live operator surface. Founders get ChatGPT. Agencies get webhooks plus Salesforce/HubSpot. Ops get Google Indexing BYOK. Developers get CI score gates. Depth and proof over catalog width.
- 1. Custom GPT Auditor (no-code chat)
- 2. Agency webhooks (Zapier / Make / Slack)
- 3. Salesforce Lead + HubSpot Contact (BYOK)
- 4. Google Indexing API (service account BYOK)
- 5. GitHub Actions readiness score gate (YAML)
CRM and webhook event sync
POST a real JSON test payload to Zapier, Make, Slack, or any HTTPS webhook. Server SSRF firewall applies. Success is HTTP 2xx from the remote, not a fake timer.
GitHub Actions score gate
Copy a workflow that runs @aio-geo/cli on PRs and fails when structural readiness is below your floor. Structural scores only.
name: AIO.GEO Readiness Gate
on:
pull_request:
workflow_dispatch:
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "22"
- name: Run AIO.GEO structural audit
env:
AIO_FAIL_UNDER: "70"
run: |
set -euo pipefail
# Open-core CLI: structural readiness only (not LLM rankings)
npx --yes @aio-geo/cli@latest audit "aiogeoprotocol.com" --json > aio-geo-audit.json || true
node -e "
const fs=require('fs');
let j={};
try { j=JSON.parse(fs.readFileSync('aio-geo-audit.json','utf8')); } catch {}
const score = Number(j.overallScore ?? j.score ?? j.aio?.overallAioScore ?? NaN);
const floor = Number(process.env.AIO_FAIL_UNDER || 70);
console.log('AIO.GEO score', score, 'floor', floor);
if (!Number.isFinite(score)) {
console.error('Could not parse score from CLI JSON. Check @aio-geo/cli output shape.');
process.exit(1);
}
if (score < floor) {
console.error('Readiness gate failed: score below floor.');
process.exit(1);
}
console.log('Readiness gate passed.');
"
- name: Upload audit artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: aio-geo-audit
path: aio-geo-audit.json
Commit to .github/workflows/aio-geo.yml
Salesforce and HubSpot (real tokens)
Paste live access tokens. We POST to Salesforce and HubSpot over HTTPS from the server. Full tokens stay in this browser tab (sessionStorage). Metadata only (last 4) is stored locally. Tokens are never written to Neon.
https://YOURORG.my.salesforce.comcrm.objects.contacts.write (and read for test).Search Intelligence & Citation Probes
Connect SEO and RAG APIs to unlock live Traffic Hemorrhage and Citation Velocity series on Executive Briefs. Keys stay in this browser only until a server verify route is wired. We do not invent traffic loss or citation % without your keys.
After saving, regenerate a brief on /brief. Live matrix rows still require a server-side probe (honest lock until verified).
Google Indexing API (BYOK)
Paste a service account JSON with Indexing API access. We mint a real RS256 JWT, exchange a token, and POST URL_UPDATED. Failures return Google error text. No fake 202.