Receipts | Vendia

Receipts

Receipts is a Vendia feature that captures and records reads, writes, and queries in a workspace. By covering GraphQL, SQL, and MCP server interactions, Receipts give you insight into who is interacting with data, when, and in what way. Receipts are automatically generated for all interactions, providing visibility into who is accessing or modifying data. This makes it easier to audit activity, analyze usage patterns, and ensure compliance.

How It Works

What Gets Tracked

Receipts are created for the following types of operations:

  1. GraphQL Queries - All GraphQL query operations
  2. GraphQL Subscriptions - When subscriptions are established
  3. SQL Queries - Iceberg SQL queries executed against the data
  4. API Reads - When API GET requests are made through Vendia MCP Gateway API Connections
  5. API Writes - When API POST, PUT, or DELETE requests are made through Vendia MCP Gateway API Connections
  6. Storage Connection List - When Storage Connections are listed through Vendia MCP Gateway
  7. Storage Connection Read - When Storage Connection metadata is read through Vendia MCP Gateway
  8. File Reads - When Storage Connection files are read through Vendia MCP Gateway
  9. File Creates - When Storage Connection files are created through Vendia MCP Gateway
  10. File Writes - When Storage Connection files are written through Vendia MCP Gateway
  11. File Deletes - When Storage Connection files are deleted through Vendia MCP Gateway

Timing and Frequency

Receipts are created in batches for efficiency, while preserving and guaranteeing their correct chronological order.

Note: These settings can be customized by contacting Vendia Support.

Information Captured

Each Receipt contains the following information:

Actor Information

Request Context

Query Details

Timing and Status

Accessing Receipts

Using the Vendia UI

Receipts are available through the Vendia web interface:

  1. Navigate to the Observe Page: From your workspace dashboard, click on the “Observe” tab
  2. Select Receipts: Look for the “Receipts” tab within the Observe page
  3. View and Filter: Browse through the receipts with built-in filtering and sorting options

The Receipts interface allows you to:

System Operations

Receipts are not created for:

Use Cases

Audit and Compliance

Usage Analytics

Security Monitoring

Limitations

Advanced Usage

GraphQL API Access

For programmatic access, Receipts can be queried through the GraphQL API:

  1. View Receipts: Query the listVendia_ReadReceiptItems endpoint
  2. Filter Results: Filter by actor, time range, query content, etc.
  3. Sort Results: Sort by most recent first using _vendia_updated_at

Example GraphQL Query

query ListReadReceipts(

$limit: Int

$nextToken: String

$filter: Vendia_ReadReceipt_FilterInput_ = {}

) {

listVendia_ReadReceiptItems(

order: { _vendia_updated_at: DESC }

limit: $limit

nextToken: $nextToken

filter: $filter

) {

Vendia_ReadReceiptItems {

_id

_owner

receipts {

actor {

id

type

roleId

roleName

roleVersion

}

clientType

clientId

readTime

orgId

query

queryVariables

queryType

fileKey

fileSourceId

fileSourceType

fileSourceName

status

errorMessage

}

}

nextToken

}

}

Example Filters

// Filter by specific actor ID

{

"filter": {

"_receiptsItem": {

"actor": {

"id": {

"eq": "user123"

}

}

}

},

"limit": 10

}

// Filter by query content

{

"filter": {

"_receiptsItem": {

"query": {

"contains": "Block"

}

}

},

"limit": 10

}