# Normalize US Brand Offer Evidence

**Use case:** 

Deduplicate and normalize two synthetic US brand offer observations into one attribution-aware JSON result.

## Input

```json
{
  "schemaVersion": "1.0",
  "requestId": "offer-normalize-20260804-001",
  "rows": [
    {
      "entity": {
        "entityId": "brand:demo-outfitters",
        "brandName": "Demo Outfitters",
        "legalName": null,
        "domain": "demo.example",
        "ticker": null,
        "aliases": [],
        "country": "US",
        "sourceEntityIds": [
          "prefill:demo-outfitters"
        ]
      },
      "evidence": {
        "evidenceType": "landing_page",
        "sourceName": "demo_fixture",
        "sourceRecordId": "offer-001",
        "sourceUrl": "https://demo.example/offers/spring",
        "observedAt": "2026-08-04T08:00:00Z",
        "rawTitle": "Spring offer",
        "rawTermsText": "20% off orders $50+ with code SPRING20. Ends 2026-09-30.",
        "terms": {
          "offerKind": "percent_off",
          "percentOff": 20,
          "minPurchaseAmount": {
            "value": 50,
            "currency": "USD"
          },
          "couponCode": "SPRING20",
          "endAt": "2026-09-30T23:59:59Z"
        },
        "entityAttribution": {
          "status": "verified_by_source",
          "proofType": "first_party_domain",
          "proofValue": "demo.example",
          "sourceEntityId": "prefill:demo-outfitters",
          "proofUrl": "https://demo.example/",
          "proofDomain": "demo.example",
          "merchantId": null,
          "adAccountId": null,
          "officialSourceId": null
        },
        "additionalUrls": []
      }
    },
    {
      "entity": {
        "entityId": "brand:demo-outfitters",
        "brandName": "Demo Outfitters",
        "legalName": null,
        "domain": "demo.example",
        "ticker": null,
        "aliases": [],
        "country": "US",
        "sourceEntityIds": [
          "prefill:demo-outfitters"
        ]
      },
      "evidence": {
        "evidenceType": "landing_page",
        "sourceName": "demo_fixture",
        "sourceRecordId": "offer-001",
        "sourceUrl": "https://demo.example/offers/spring",
        "observedAt": "2026-08-04T08:00:00Z",
        "rawTitle": "Spring offer",
        "rawTermsText": "20% off orders $50+ with code SPRING20. Ends 2026-09-30.",
        "terms": {
          "offerKind": "percent_off",
          "percentOff": 20,
          "minPurchaseAmount": {
            "value": 50,
            "currency": "USD"
          },
          "couponCode": "SPRING20",
          "endAt": "2026-09-30T23:59:59Z"
        },
        "entityAttribution": {
          "status": "verified_by_source",
          "proofType": "first_party_domain",
          "proofValue": "demo.example",
          "sourceEntityId": "prefill:demo-outfitters",
          "proofUrl": "https://demo.example/",
          "proofDomain": "demo.example",
          "merchantId": null,
          "adAccountId": null,
          "officialSourceId": null
        },
        "additionalUrls": []
      }
    }
  ],
  "options": {
    "labels": "off",
    "maxItems": 100
  }
}
```

## Output

```json
{
  "entity.brandName": {
    "label": "Brand",
    "format": "text"
  },
  "offer.offerKind": {
    "label": "Offer kind",
    "format": "text"
  },
  "offer.terms": {
    "label": "Terms",
    "format": "object"
  },
  "sourceName": {
    "label": "Source",
    "format": "text"
  },
  "sourceUrl": {
    "label": "Evidence URL",
    "format": "link"
  },
  "observedAt": {
    "label": "Observed",
    "format": "date"
  },
  "needsReview": {
    "label": "Needs review",
    "format": "boolean"
  },
  "analysisStatus": {
    "label": "Label analysis",
    "format": "text"
  }
}
```

## About this Actor

This example demonstrates how to use [US Brand Offer Evidence Normalizer](https://apify.com/zinin/us-brand-offer-evidence-normalizer) with a specific input configuration. Visit the [Actor detail page](https://apify.com/zinin/us-brand-offer-evidence-normalizer) to learn more, explore other use cases, and run it yourself.