Point11

Audit endpoints

Create, retrieve, and manage automated audits of your Google Ads accounts, tracking setups, and landing pages via the Point11 API.

The Audit endpoints allow you to programmatically create and manage audits of Google Ads accounts, conversion tracking configurations, landing page performance, and structured data implementations. Audits run asynchronously and produce detailed findings with severity levels and remediation recommendations.

Base URL

All audit endpoints are relative to the API base URL:

https://api.point11.com/v1/audits

Create an Audit

Start a new audit by specifying the audit type and target:

POST /v1/audits
Authorization: Bearer {access_token}

{ "type": "google_ads_account", "target": { "account_id": "123-456-7890", "date_range": { "start": "2026-01-01", "end": "2026-01-31" } }, "modules": ["conversion_tracking", "bid_strategy", "landing_pages", "structured_data"], "notify_email": "team@example.com" } `

Audit Types

  • google_ads_account: Full account audit including campaign structure, bid strategies, conversion tracking, and quality scores.
  • conversion_tracking: Focused audit of conversion tag implementation, enhanced conversions, consent mode compliance, and server-side tracking configuration.
  • landing_page: Performance and compliance audit of landing pages including Core Web Vitals, structured data, mobile usability, and consent banner functionality.
  • structured_data: Schema markup audit across specified URLs including validation, completeness, and AI discoverability assessment.

Response

json{
  "id": "aud_8xk2mN4pQr",
  "type": "google_ads_account",
  "status": "processing",
  "created_at": "2026-02-13T10:30:00Z",
  "estimated_completion": "2026-02-13T10:35:00Z",
  "modules": ["conversion_tracking", "bid_strategy", "landing_pages", "structured_data"]
}

Audits typically complete within 2-10 minutes depending on the scope and number of modules selected.

Retrieve an Audit

GET /v1/audits/{audit_id}
Authorization: Bearer {access_token}

Returns the audit with its current status and, when complete, the full findings:

json{
  "id": "aud_8xk2mN4pQr",
  "type": "google_ads_account",
  "status": "completed",
  "created_at": "2026-02-13T10:30:00Z",
  "completed_at": "2026-02-13T10:34:22Z",
  "summary": {
    "total_findings": 14,
    "critical": 2,
    "warning": 7,
    "info": 5,
    "overall_score": 72
  },
  "findings": [
    {
      "id": "fnd_a1b2c3",
      "module": "conversion_tracking",
      "severity": "critical",
      "title": "Enhanced conversions not configured",
      "description": "The primary purchase conversion action does not have enhanced conversions enabled. Estimated 15-25% of conversions are not being attributed.",
      "remediation": "Enable enhanced conversions in Google Ads conversion settings and implement first-party data collection on your checkout page.",
      "documentation_url": "https://docs.point11.com/google-ads-integration/enhanced-conversions-configuration"
    }
  ]
}

List Audits

GET /v1/audits?type=google_ads_account&status=completed&limit=20&offset=0
Authorization: Bearer {access_token}

Supports filtering by type, status, and date range. Results are paginated with limit and offset parameters. The default limit is 20 and the maximum is 100.

Delete an Audit

DELETE /v1/audits/{audit_id}
Authorization: Bearer {access_token}

Returns a 204 No Content response on success. Deleted audits cannot be recovered.

Audit Webhooks

Configure a webhook to receive notifications when audits complete. See the Webhook Configuration documentation for setup instructions. The audit.completed event payload includes the audit ID, summary scores, and a link to the full results.

Error Handling

  • 400 Bad Request: Invalid audit parameters. The response body includes a details array specifying which fields failed validation.
  • 404 Not Found: The specified audit ID does not exist or has been deleted.
  • 409 Conflict: A duplicate audit is already in progress for the same target and type.
  • 422 Unprocessable Entity: The target account or URL is inaccessible or the provided credentials are invalid.

Sources

Need help implementing this?

Our team can walk you through the setup.