PSC Insurance Content Lake — real-time listen stream
Version v2021-10-21
PSC Insurance publishes no event surface of its own: there is no webhook catalogue, no event reference, no AsyncAPI document and no streaming product on any pscinsurance.com.au host. One real, anonymously reachable event channel does exist, and this document describes exactly that and nothing more. The marketing site (www.pscinsurance.com.au) is a Next.js front end over a Sanity Content Lake dataset (project tw8a70my, dataset "production") that is configured for public read. Sanity's `/data/listen/{dataset}` endpoint is a Server-Sent Events stream that pushes a message every time a document matching the subscribed GROQ query is created, updated or deleted — and it accepts an anonymous connection here. Provenance discipline for this file: * The server, channel, GROQ subscription parameter and the `welcome` message were VERIFIED live on 2026-07-25 by opening the stream anonymously. * The `mutation` and `channelError` messages are Sanity's publicly documented event types for this endpoint; they were not observed during the probe window (no editor published a document while the socket was open), so their payload fields are marked `x-observed: false`. * Nothing here is a PSC product commitment. This is undocumented vendor infrastructure that happens to be publicly readable.
View SpecView on GitHubInsuranceAustraliaBrokersInsurance BrokerageProperty and CasualtyCommercial InsuranceCyber InsuranceIntermediaryPartner GatedNo Public APIAsyncAPIEventsWebhooks
Channels
listen
Server-Sent Events stream of mutations to documents matching the subscribed GROQ query. Verified live: an anonymous GET with `Accept: text/event-stream` returns HTTP 200 and immediately emits a `welcome` event, then holds the connection open.
Messages
✉
welcome
Stream established
Emitted once, immediately after the stream opens.
✉
mutation
Document mutated
Emitted when a document matching the subscribed query is created, updated or deleted. Not observed during the probe window; fields below follow Sanity's public documentation for this endpoint.
✉
channelError
Channel error
Emitted when the subscription fails (for example an invalid GROQ query).
Servers
https
contentLake
Sanity Content Lake API, dated API version v2021-10-21. Read paths require no credential; mutate and project-management paths are token-gated (405/401 when called anonymously).
asyncapi: 3.0.0
info:
title: PSC Insurance Content Lake — real-time listen stream
version: v2021-10-21
description: |
PSC Insurance publishes no event surface of its own: there is no webhook
catalogue, no event reference, no AsyncAPI document and no streaming product on
any pscinsurance.com.au host.
One real, anonymously reachable event channel does exist, and this document
describes exactly that and nothing more. The marketing site
(www.pscinsurance.com.au) is a Next.js front end over a Sanity Content Lake
dataset (project tw8a70my, dataset "production") that is configured for public
read. Sanity's `/data/listen/{dataset}` endpoint is a Server-Sent Events stream
that pushes a message every time a document matching the subscribed GROQ query
is created, updated or deleted — and it accepts an anonymous connection here.
Provenance discipline for this file:
* The server, channel, GROQ subscription parameter and the `welcome` message
were VERIFIED live on 2026-07-25 by opening the stream anonymously.
* The `mutation` and `channelError` messages are Sanity's publicly documented
event types for this endpoint; they were not observed during the probe
window (no editor published a document while the socket was open), so their
payload fields are marked `x-observed: false`.
* Nothing here is a PSC product commitment. This is undocumented vendor
infrastructure that happens to be publicly readable.
contact:
name: PSC Insurance security contact (per RFC 9116 security.txt)
email: communications@envest.com.au
tags:
- name: cms
- name: sse
- name: undocumented
- name: anonymous-read
externalDocs:
description: Sanity listening (vendor documentation for this endpoint shape)
url: https://www.sanity.io/docs/listening-to-queries
defaultContentType: application/json
servers:
contentLake:
host: tw8a70my.api.sanity.io
protocol: https
pathname: /v2021-10-21
description: |
Sanity Content Lake API, dated API version v2021-10-21. Read paths require no
credential; mutate and project-management paths are token-gated (405/401 when
called anonymously).
security: []
tags:
- name: vendor
description: Sanity.io — third-party infrastructure, not a PSC-operated API host.
channels:
listen:
address: /data/listen/production
title: Content Lake mutation stream
description: |
Server-Sent Events stream of mutations to documents matching the subscribed
GROQ query. Verified live: an anonymous GET with `Accept: text/event-stream`
returns HTTP 200 and immediately emits a `welcome` event, then holds the
connection open.
servers:
- $ref: '#/servers/contentLake'
bindings:
http:
method: GET
parameters:
query:
description: |
GROQ query (query string parameter, URL-encoded) selecting the documents to
subscribe to. `*` subscribes to every document in the dataset.
examples:
- '*'
- '*[_type=="blog"]'
- '*[_type=="locationDocument"]'
messages:
welcome:
$ref: '#/components/messages/welcome'
mutation:
$ref: '#/components/messages/mutation'
channelError:
$ref: '#/components/messages/channelError'
operations:
receiveContentEvents:
action: receive
channel:
$ref: '#/channels/listen'
summary: Receive content mutation events for the PSC marketing site.
messages:
- $ref: '#/channels/listen/messages/welcome'
- $ref: '#/channels/listen/messages/mutation'
- $ref: '#/channels/listen/messages/channelError'
components:
messages:
welcome:
name: welcome
title: Stream established
summary: Emitted once, immediately after the stream opens.
contentType: application/json
x-observed: true
x-observed-at: '2026-07-25'
payload:
$ref: '#/components/schemas/Welcome'
examples:
- name: observedWelcome
summary: Captured verbatim from the live stream on 2026-07-25.
payload:
listenerName: qHWwIS1Jj9g10dHvtdZgBd
mutation:
name: mutation
title: Document mutated
summary: |
Emitted when a document matching the subscribed query is created, updated or
deleted. Not observed during the probe window; fields below follow Sanity's
public documentation for this endpoint.
contentType: application/json
x-observed: false
payload:
$ref: '#/components/schemas/Mutation'
channelError:
name: channelError
title: Channel error
summary: Emitted when the subscription fails (for example an invalid GROQ query).
contentType: application/json
x-observed: false
payload:
$ref: '#/components/schemas/ChannelError'
schemas:
Welcome:
type: object
x-observed: true
required:
- listenerName
properties:
listenerName:
type: string
description: Opaque identifier for this listener connection.
Mutation:
type: object
x-observed: false
description: |
Documented Sanity mutation-event envelope. Property set recorded from vendor
documentation, not from an observed payload — treat as indicative.
properties:
eventId:
type: string
description: Identifier for this mutation event.
documentId:
type: string
description: The _id of the mutated document.
transactionId:
type: string
transition:
type: string
enum: [appear, update, disappear]
description: Whether the document entered, changed within, or left the query result set.
identity:
type: string
description: Identity that performed the mutation.
mutations:
type: array
description: The mutations applied.
items:
type: object
result:
type: object
description: The document after mutation (present unless includeResult=false).
previousRev:
type: string
resultRev:
type: string
timestamp:
type: string
format: date-time
visibility:
type: string
enum: [transaction, query]
ChannelError:
type: object
x-observed: false
properties:
message:
type: string
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.