# Livestock Counterparty Check | USDA P\&S Records (`h_winkler/usda-ps-counterparty-guard`) Actor

Check one or up to 1,000 livestock buyers, dealers, market agencies, or packers against current USDA AMS Packers & Stockyards bonded and suspension records. Returns source-dated evidence, bond coverage, and conservative match status. Independent; not affiliated with USDA.

- **URL**: https://apify.com/h\_winkler/usda-ps-counterparty-guard.md
- **Developed by:** [Heather Garner](https://apify.com/h_winkler) (community)
- **Categories:** Business, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$50.00 / 1,000 livestock counterparty verifications

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Livestock Counterparty Check | USDA P\&S Records

Check livestock buyers, dealers, market agencies, and packers against current **USDA Agricultural Marketing Service Packers and Stockyards** public records before a transaction, onboarding decision, or compliance review.

This Actor turns multiple USDA record classes into one structured lookup and now supports both **single checks and batches of up to 1,000 counterparties per run**.

> **Independent tool:** This Actor is not affiliated with, endorsed by, or sponsored by USDA. It uses publicly available USDA AMS Packers and Stockyards records.

**Product website:** https://usda-ps-counterparty-guard.hwinkler5866.workers.dev/

**Livestock seller protection guide:** https://usda-ps-counterparty-guard.hwinkler5866.workers.dev/livestock-seller-protection-guide

### Why use it

Manual USDA review can require opening multiple files, finding the correct legal or trade name, checking bond records, checking suspensions, and repeating the process for every counterparty.

This Actor automates that work and returns machine-readable evidence suitable for:

- livestock sellers checking a buyer before a transaction
- auction, procurement, and vendor-onboarding teams
- agricultural software and internal compliance workflows
- batch screening of counterparty lists
- AI agents and automation systems that need structured USDA evidence

### What it checks

The current production snapshot covers:

- bonded dealers and market agencies buying on commission
- bonded market agencies selling livestock on commission
- bonded packers
- currently published suspension records

The currently available expired-registration source did not pass the product's freshness standard during validation. The Actor therefore returns `NOT_AVAILABLE_CURRENT_SOURCE` instead of claiming a current expired-registration clearance.

### Common workflows

Ten public example tasks are available for high-intent workflows including:

- checking a livestock packer before selling
- checking a livestock market agency bond
- verifying a livestock buyer before a sale
- checking Packers & Stockyards suspension records
- looking up a USDA P\&S bond record
- seller payment-protection review
- procurement and vendor-onboarding checks
- batch onboarding screening
- recurring counterparty review
- general batch screening

Use an example task when you want a saved, repeatable starting point instead of rebuilding input from scratch. Published tasks also give search engines and AI-agent discovery systems clearer use-case pages for this Actor.

### Single check

```json
{
  "businessName": "Tyson Fresh Meats",
  "region": "AR"
}
```

- `businessName` — legal or trade name
- `region` — optional U.S. state or Canadian province used to disambiguate matches

### Batch check

The easiest option in Apify Console is **Paste a list**. Paste up to 1,000 counterparties, one per line:

```text
Tyson Fresh Meats | AR
Arab Livestock Market, Inc. | AL
Example Livestock Buyer
```

The state/province after `|` is optional. A tab can also separate the business name and region.

For API and advanced integrations, submit the structured `checks` array:

```json
{
  "checks": [
    {
      "businessName": "Tyson Fresh Meats",
      "region": "AR"
    },
    {
      "businessName": "Example Livestock Buyer",
      "region": "TX"
    }
  ]
}
```

Both batch methods support up to 1,000 counterparties. Each completed verification is returned as its own dataset item. Batch mode is charged per completed verification, not as a flat batch fee.

### Output

Each completed verification returns structured fields including:

- `match_status`
- bonded-record match count
- current suspension matches
- unresolved suspension name matches
- matched legal or trade names
- matching basis and region resolution
- bond coverage amounts when present in USDA data
- source-attributed evidence
- snapshot version and source dates
- an explicit disclaimer

Possible match statuses are:

- `MATCH`
- `MULTIPLE_POSSIBLE_MATCHES`
- `NO_MATCH`

The Actor uses conservative name normalization and does not silently choose a fuzzy best guess when multiple entities could match.

### Data freshness and safety

Production builds download the latest official USDA files available on the USDA source pages, validate their structure and record counts, normalize them, and generate a source-dated snapshot. Every result exposes the relevant USDA source dates so older official lists are not presented as newer than they are.

The supporting automation also refreshes the USDA snapshot daily. If a required source becomes stale or its structure changes unexpectedly, the verification path is designed to fail closed rather than return a false clean result.

A match or non-match is **not** a credit rating, legal determination, recommendation, or guarantee of payment.

### Pricing

This Actor uses **Pay per event** pricing.

- one completed livestock counterparty verification: **$0.05**
- 100 completed checks: **$5.00**
- 1,000 completed checks: **$50.00**
- platform usage is not passed through as an additional charge

Invalid input and runs that stop before producing a completed verification do not intentionally trigger the verification event.

### AI-agent access

This Actor is discoverable in Apify's agentic-user Store filter. Compatible AI-agent clients can use Apify's supported agentic-payment routes for eligible pay-per-event Actors, including x402 and Skyfire, without requiring a traditional Apify account for the agentic payment flow.

AI-agent and API guide:

https://usda-ps-counterparty-guard.hwinkler5866.workers.dev/ai-agent-usda-livestock-api

### Integration

The Actor can be used through the Apify Console, API, CLI, OpenAPI integrations, and supported AI-agent/MCP workflows exposed by Apify.

For recurring workflows, save a task with your desired input and run it on an Apify schedule or from your own automation.

### Official USDA sources

Data is derived from public records published by the **USDA Agricultural Marketing Service, Packers and Stockyards Division**. Source dates and snapshot metadata are included with results so downstream systems can assess freshness.

- Dealer / market agency buying on commission: https://www.ams.usda.gov/rules-regulations/packers-and-stockyards-act/regulated-entities/dealer
- Market agency selling on commission: https://www.ams.usda.gov/rules-regulations/packers-and-stockyards-act/regulated-entities/market-agency
- Packer responsibilities and bonded-packer information: https://www.ams.usda.gov/rules-regulations/packers-and-stockyards-act/regulated-entities/packer
- Packers & Stockyards enforcement and suspensions: https://www.ams.usda.gov/services/enforcement/psd

The website also exposes a public machine-readable source-health endpoint at:

https://usda-ps-counterparty-guard.hwinkler5866.workers.dev/api/public-status

This makes the current snapshot version, record counts, and source dates independently visible without running a paid verification.

# Actor input Schema

## `businessName` (type: `string`):

Legal or trade name for a single livestock counterparty check. Leave blank when using Batch checks.

## `region` (type: `string`):

Optional state or province for the single business above. Leave blank when using Batch checks.

## `checks` (type: `array`):

Optional structured batch of up to 1,000 counterparties. Best for API/integration use. Use this instead of the single fields or Paste a list.

## `batchText` (type: `string`):

Paste up to 1,000 counterparties, one per line. Use Business Name | ST when you know the state/province, or just Business Name. Tabs are also accepted. Use this instead of the single fields or Batch checks array.

## Actor input object example

```json
{
  "businessName": "Tyson Fresh Meats",
  "region": "AR",
  "batchText": "Tyson Fresh Meats | AR\nArab Livestock Market, Inc. | AL\nExample Livestock Buyer"
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `runStatus` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("h_winkler/usda-ps-counterparty-guard").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("h_winkler/usda-ps-counterparty-guard").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call h_winkler/usda-ps-counterparty-guard --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,h_winkler/usda-ps-counterparty-guard"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/fD7I7bhtidUQNgbN6/builds/c3uXlspre1VP6Exvl/openapi.json
