---
title: "Get ad suites"
method: GET
path: "/api/v1/alpha/ad-suites/{id}"
tags: ["alpha"]
---

# Get ad suites

`GET /api/v1/alpha/ad-suites/{id}`

## Request

- Base URL: `https://point11.ai`
- URL: `https://point11.ai/api/v1/alpha/ad-suites/{id}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://auth.point11.ai/oauth2/authorize`, token URL `https://auth.point11.ai/oauth2/token`)

Get one ad suite with its current (or a named) revision, its versions, assets, and review history.

## Path parameters

- `id` string, uuid, required

## Query parameters

- `revision` integer
- `includeAssetUrls` boolean: Presign each asset's url (default); false answers every url and urlExpiresAt as null, for a caller that reads the bytes elsewhere

## Headers

- `Point11-Organization` string, uuid

## Response `200`

Success.

- AlphaAdSuitesGetResponse
  - `suiteId` string, uuid, required
  - `campaignId` string, uuid, nullable, required
  - `version` integer, required
  - `versions` integer[], required
  - `revision` object, required
    - `revision` integer, required
    - `review` 'draft' | 'approved' | 'changes_requested', required
    - `reviewNote` string, nullable, required
    - `brandKitArtifactId` string, uuid, nullable, required
    - `variantFailures` object[], required
      - `variantId` string, required
      - `message` string, required
    - `renderFindings` object, nullable, required: What render_ad_set measured about each output (by variantId), kept as this revision's evidence; null for a revision saved before findings were kept
      - `findings` AlphaFindingsItem[], required
        - union
          - object
            - `kind` 'text_overflow', required
            - `variantId` string, required
            - `layerIndex` integer, required
            - `layerId` string
            - `fontSize` integer, required
            - `width` object
              - …
            - `height` object
              - …
          - object
            - `kind` 'text_shrunk', required
            - `variantId` string, required
            - `layerIndex` integer, required
            - `layerId` string
            - `requestedFontSize` integer, required
            - `appliedFontSize` integer, required
            - `minFontSize` integer, required
          - object
            - `kind` 'text_fit_stopped', required
            - `variantId` string, required
            - `layerIndex` integer, required
            - `layerId` string
            - `reason` 'probe_limit' | 'call_budget', required: probe_limit: this layer's sizing search used its tries; call_budget: this call's shrink renders ran out.
            - `appliedFontSize` integer, required
          - object
            - `kind` 'safe_area', required
            - `variantId` string, required
            - `layerIndex` integer, required
            - `layerId` string
            - `overlap` object, required
              - …
          - object
            - `kind` 'contrast', required
            - `variantId` string, required
            - `layerIndex` integer, required
            - `layerId` string
            - `ratio` number, required
            - `required` union, required
              - …
            - `fontSize` integer, required
            - `textColor` string, required
            - `backgroundColor` string, required
          - object
            - `kind` 'recommended_length', required
            - `variantId` string, required
            - `presetId` string, required
            - `field` 'headline' | 'body', required
            - `length` integer, required
            - `recommended` integer, required
          - object
            - `kind` 'recommended_size', required
            - `variantId` string, required
            - `presetId` string, required
            - `width` integer, required
            - `height` integer, required
            - `recommended` object, required
              - …
          - object
            - `kind` 'image_asset', required
            - `variantId` string, required
            - `artifactId` string, uuid, required
            - `field` 'image' | 'logo', required
            - `aspectRatio` string, required
            - `width` integer
            - `height` integer
            - `byteLength` integer, required
            - `issues` string[], required
      - `omitted` integer, required
    - `source` object, required
      - `version` 1, required
      - `name` string, required
      - `language` string, required
      - `audience` string, required
      - `evidence` object, required
        - `campaignId` string, uuid
        - `runIds` string[], required
        - `scope` string, required
        - `observedAt` string, date-time, required
        - `sourceKind` 'discovery_simulation' | 'customer_supplied' | 'observed_campaign' | 'verified_business_fact' | 'mixed', required
        - `snapshotId` string, uuid
        - `metricScope` object
          - `population` string, required
          - `dateFrom` string, date-time, required
          - `dateTo` string, date-time, required
          - `assistantLanes` string[], required
          - `filters` object[], required
            - `dimension` string, required
            - `values` string[], required
          - `definition` string, required
        - `reasons` object[]
          - `reasonId` string, uuid, required
          - `label` string, required
          - `count` integer, required
          - `metric` object, required
            - `key` string, required
            - `definition` string, required
            - `unit` string, required
          - `denominator` object
            - `count` integer, required
            - `metric` object, required
              - …
          - `sources` object[], required
            - `sourceId` string, required
            - `kind` string, required
            - `label` string, required
            - `url` string, uri
            - `href` string
      - `outcome` 'proposed' | 'no_supported_concepts', required
      - `explanation` string, required
      - `placementReferences` object[]
        - `id` string, required
        - `channel` string, required
        - `format` string, required
        - `sourceUrl` string, uri, required
        - `verifiedAt` string, date-time, required
        - `requirements` string[], required
      - `deliverables` object[]
        - `artifactId` string, uuid, required
        - `sha256` string
        - `title` string, required
        - `role` 'landing_page' | 'landing_page_change' | 'test_plan' | 'brief', required
        - `conceptIds` string[], required
        - `dependsOn` string[], required
        - `evidenceIds` string[]
      - `testPlans` object[]
        - `id` string, required
        - `conceptIds` string[], required
        - `hypothesis` string, required
        - `comparison` string, required
        - `primaryOutcome` string, required
        - `measurementPrerequisites` string[], required
        - `observationWindow` string, required
        - `interpretationLimits` string[], required
        - `readiness` 'not_connected' | 'prerequisites_missing' | 'ready_for_authorized_test', required
        - `artifactId` string, uuid
      - `unresolvedReasons` object[]
        - `reasonId` string, uuid, required
        - `explanation` string, required
        - `recommendedAction` string, required
      - `concepts` object[], required
        - `id` string, required
        - `name` string, required
        - `lossReason` string, required
        - `reasonIds` string[]
        - `rationale` string, required
        - `beliefChange` string
        - `creativeDirection` string
        - `proofRequests` string[]
        - `hypothesis` string, required
        - `claim` string, required
        - `proof` object[], required
          - `label` string, required
          - `url` string, uri
          - `sourceId` string
        - `limitations` string[], required
        - `searchAds` object[]
          - `id` string, required
          - `placementReferenceId` string, required
          - `headlines` object[], required
            - `text` string, required
            - `pin` integer
          - `descriptions` object[], required
            - `text` string, required
            - `pin` integer
          - `path` string[], required
          - `finalUrl` string, uri, required
        - `responsiveDisplay` object[]
          - `id` string, required
          - `placementReferenceId` string, required
          - `images` object[], required
            - `artifactId` string, uuid, required
            - `altText` string, required
            - `aspectRatio` string, required
          - `logos` object[], required
            - `artifactId` string, uuid, required
            - `altText` string, required
            - `aspectRatio` string, required
          - `businessName` string, required
          - `headlines` string[], required
          - `longHeadline` string, required
          - `descriptions` string[], required
          - `callToAction` string, required
          - `finalUrl` string, uri, required
        - `variants` object[], required
          - `id` string, required
          - `placement` string, required
          - `placementReferenceId` string: A placement preset id, or the id of one of this suite's placementReferences for a placement no preset covers.
          - `altText` string
          - `safeArea` object: Insets in pixels that the platform's interface can cover. A preset with a safe zone supplies it when omitted.
            - `top` integer, required
            - `right` integer, required
            - `bottom` integer, required
            - `left` integer, required
          - `headline` string, required
          - `body` string, required
          - `callToAction` string, required
          - `destinationUrl` string, uri, required
          - `composition` object, required
            - `width` integer, required
            - `height` integer, required
            - `background` string, required
            - `layers` union[], required
              - …
  - `assets` object[], required
    - `key` string, required
    - `artifactId` string, uuid, required
    - `role` 'variant' | 'source' | 'deliverable', required
    - `url` string, uri, nullable, required: A five-minute presigned read of the file's bytes; null when none could be issued
    - `urlExpiresAt` string, date-time, nullable, required: When `url` stops working
  - `reviewEvents` object[], required
    - `id` string, uuid, required
    - `decision` 'approved' | 'changes_requested', required
    - `note` string, nullable, required
    - `createdAt` string, date-time, required
  - `brandKit` object, nullable, required
    - `artifactId` string, uuid, required
    - `kitKey` string, required
    - `name` string, required
    - `revision` integer, required
  - `currentRunId` string, uuid, nullable, required: The newest Discovery run that measured a conversation of the suite's campaign's results window as of now; when it is not among the evidence's runIds, newer evidence exists
  - `googleAdsDrafts` object[], required: Every paused Google ad Point11 created from any revision of this suite, with Google's impressions, clicks, conversions, and cost (micros of the account's currency) summed over the synced days; empty when none was created
    - `accountId` string, uuid, required
    - `customerId` string, required
    - `accountName` string, nullable, required
    - `currencyCode` string, nullable, required
    - `syncedThrough` string, nullable, required: The last account-local day synced
    - `adGroupId` string, required
    - `adId` string, required
    - `adType` 'responsive_search' | 'responsive_display', required
    - `suiteRevision` integer, required
    - `conceptId` string, required
    - `suiteAdId` string, required: The searchAds or responsiveDisplay id it was built from
    - `createdAt` string, date-time, required
    - `daysWithData` integer, required
    - `firstDate` string, nullable, required
    - `lastDate` string, nullable, required
    - `impressions` number, required
    - `clicks` number, required
    - `conversions` number, required
    - `costMicros` number, required

## Other responses

- `400`: The input, query, or Idempotency-Key is invalid.
- `401`: The bearer is missing, expired, or not accepted.
- `403`: The credential lacks the operation's scope or role, or the operation needs a different door.
- `404`: The resource or organization does not exist for this caller.
- `405`: This path takes another HTTP method, named in `Allow`.
- `409`: The request conflicts with current state or with prior use of its Idempotency-Key.
- `413`: The request, or the answer it asks for, is too large; narrow it.
- `429`: The credential's rate budget is spent; retry after `Retry-After` seconds.
- `500`: An unexpected server failure; retry later. Only `request_id` identifies it.
- `503`: A dependency is temporarily unavailable; retry after `Retry-After` seconds.
- `default`: Another status a product answers for its own refusal (for example `415` for an unsupported attachment); branch on `code`.

---

[API](https://skmtc.dev/point11/apis/point11-api.md) · [All operations](https://skmtc.dev/point11/apis/point11-api/llms.txt) · [OpenAPI document](https://skmtc.dev/point11/apis/point11-api/revisions/5241805fe425?raw)
