Digitalyser.io for developers

Local visibility audit results

Results of the project's most recent local-visibility audit — the Google Business Profile, its completeness, and local search positioning.

Results of the project's most recent local-visibility audit — the Google Business Profile, its completeness, and local search positioning.

A profile the audit detected is not a profile the project has connected: detection comes from a public lookup, connection from an OAuth grant. Only the second gives write access.

GET/v1/projects/{projectId}/audits/local-visibility

Authorization

agent-token
AuthorizationBearer <token>

An agent project token. Obtained by OAuth consent for an AI client, or derived per project from an organisation service key for a machine. A scoped API key authenticates the transport but opens no capability: a capability takes its project from the credential.

In: header

Path Parameters

projectId*string

The project this call is about. A routing hint, not an authorisation. The project comes from the credential; this segment exists so multi-project code stays uniform. If it names a project outside the token, the call is refused with routing_hint_mismatch — it is never used to widen access.

Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://app.digitalyser.io/api/v1/projects/550e8400-e29b-41d4-a716-446655440000/audits/local-visibility" \  -H "Authorization: Bearer <token>"
{  "projectId": "550e8400-e29b-41d4-a716-446655440000",  "businessName": "Acme Corporation",  "address": "123 Main Street, New York, NY 10001, USA",  "phone": "+1 (212) 555-1234",  "status": "completed",  "createdAt": "2026-01-15T10:00:00Z",  "completedAt": "2026-01-15T10:03:30Z",  "readinessState": "completed",  "freshnessState": "current",  "scoreAvailabilityState": "available",  "scoreSuppressionReason": "Fewer than two citation sources answered, so the score was withheld.",  "canonicalScores": {    "healthScore": 74,    "gmbScore": 81,    "citationScore": 66,    "citationCount": 14,    "reviewScore": 70  },  "provenance": {},  "businessModel": "local-single-location",  "metricSemantics": {},  "comparisonEligibility": {},  "reviewSummary": {    "totalReviews": 128,    "avgRating": 4.4,    "sentiment": {      "positivePercentage": 78,      "neutralPercentage": 15,      "negativePercentage": 7    },    "sourceCoverageRatio": 0.67,    "coherenceState": "coherent",    "warningReason": "Sources disagree by more than one star, so the average is not one figure."  },  "healthScore": 78,  "gmbScore": 85,  "recommendations": [    {      "id": "rec-gmb-hours",      "title": "Complete your Google Business Profile hours",      "categoryId": "gbp",      "priority": "high",      "observations": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "improvements": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "suggestions": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "effortEstimation": "30m",      "impactPotential": 12,      "status": "warning",      "planStatus": "pending",      "meta": {}    }  ],  "tasks": [    {      "id": "rec-gmb-hours",      "title": "Complete your Google Business Profile hours",      "categoryId": "gbp",      "priority": "high",      "observations": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "improvements": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "suggestions": [        {          "text": "Your Google listing shows no opening hours for Sunday.",          "source": "gmb-profile",          "priority": "high",          "effortEstimation": "15m",          "status": "warning",          "confidence": 85,          "meta": {}        }      ],      "effortEstimation": "30m",      "impactPotential": 12,      "status": "warning",      "planStatus": "pending",      "meta": {}    }  ],  "entityDiagnostic": {    "confidenceTier": "measured",    "sameAsCount": 3,    "isMachineReadable": true,    "evidenceScopeNote": "Based on the homepage only; no external assistant was queried.",    "aiClaimSuppressed": true,    "suppressionReason": "No external pipeline is attached to this module.",    "topGaps": [      "sameAs",      "logo"    ]  },  "napConsistency": {    "overallScore": 88,    "consistencyLevel": "GOOD",    "nameScore": 100,    "addressScore": 80,    "phoneScore": 85,    "measurability": {      "measured": true,      "confidenceTier": "measured",      "scoreSuppressed": false,      "suppressionReason": "No independent source to compare against.",      "evidenceScopeNote": "Compared against two directories; no aggregator was reachable."    },    "issues": [      {        "source": "yellow-pages.example",        "field": "phone",        "issue": "Phone number lists an old area code.",        "severity": "HIGH",        "details": "Listing: +33 4 72 00 00 00 — Profile: +33 4 78 00 00 00"      }    ],    "recommendations": [      {        "source": "yellow-pages.example",        "field": "phone",        "issue": "Phone number lists an old area code.",        "suggestion": "Replace it with the number shown on your Google profile.",        "priority": "HIGH"      }    ],    "detailedComparison": {}  },  "scoreHistory": [    {      "date": "2026-08-27T06:21:40.000Z",      "healthScore": 70,      "gmbScore": 78,      "citationScore": 62,      "reviewScore": 66    }  ],  "localPagesQueryExplanation": {    "query": "menuisier sur mesure Lyon",    "businessModel": "local-single-location",    "purpose": "Check whether pages that mention your city and trade show up for a local search.",    "limitations": [      "One query does not represent every way a customer searches.",      "Results reflect the day of the audit."    ]  },  "topCompetitors": [    {      "domain": "globex.example",      "appearanceCount": 4,      "strengthScore": 0.7,      "weightedSignal": 0.81,      "promoted": true    }  ],  "suppressedCompetitors": [    {      "domain": "globex.example",      "appearanceCount": 4,      "strengthScore": 0.7,      "weightedSignal": 0.81,      "promoted": true    }  ],  "competitorThresholdPolicy": {    "minAppearanceCount": 2,    "minWeightedSignal": 0.55,    "formula": "0.6 * min(appearanceCount / 5, 1) + 0.4 * strengthScore"  }}

Generated from the capability registry — API version 1, 18 paths, from 4815355 (2026-10-12).

Was this page helpful?