---
title: "Re-check UCP (Universal Commerce Protocol) support for the org's domain"
method: POST
path: "/api/org/ucp-check/"
---

# Re-check UCP (Universal Commerce Protocol) support for the org's domain

`POST /api/org/ucp-check/`

## Request

- Base URL: `https://productindex.ai`
- URL: `https://productindex.ai/api/org/ucp-check/`
- Auth: API key in cookie `authjs.session-token`

Probes the org's verified domain (falling back to its Shopify shop subdomain) for UCP discovery support and persists the result. Session-only — there is no bearer-token path. Requires the org's `domain` to already be `verification_status = 'verified'` before it will fetch it, since `domain` is owner-settable with no DNS-ownership check at write time and this endpoint would otherwise be usable as an SSRF proxy against an unverified value. `shopify_shop` is exempt from that check since it's set server-side via OAuth, not owner-editable.

## Response `200`

Check complete (whether or not UCP support was found).

- object
  - `ucp_supported` boolean
  - `profile_url` string, nullable
  - `checkout_endpoint` string, nullable

## Other responses

- `401`: No signed-in session.
- `403`: Caller isn't a producer account, or the org's `domain` is set but not yet `verified`.
- `404`: Org has neither `domain` nor `shopify_shop` configured.

---

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