MediaGuard Integration Options
If you'd like to integrate MediaGuard's pre-bid predictions into your bidding workflows, you can do so via the MediaGuard SDK or the MediaGuard API.
Despite differences in their implementation, the core functionality of each integration option is the same: they both provide a mechanism for sending bid request data to MediaGuard's servers, and they both respond with predictions about whether those bid requests are a form of invalid traffic (or IVT). Regardless of which integration option you select, or which format you use to send and receive data, you'll receive the same predictions from MediaGuard and have access to an identical range of insights.
A HUMAN representative will set up the corresponding MediaGuard clusters for your integration.
MediaGuard SDK (gRPC)
The MediaGuard SDK is a performant client-side gRPC service that lets you send pre-bid data to HUMAN and receive IVT predictions accordingly. Of the available integration options, the MediaGuard SDK offers the best performance and lowest latency, so we recommend this option for most users.
The MediaGuard SDK is available in several languages, including Java, Go, and C++. You can also build your own gRPC integration in the language of your choosing. However, custom gRPC integrations are subject to similar limitations as HTTP integrations built on the MediaGuard API—for example, you'll need to handle load balancing and connection pooling.
- Authentication
- Data formats
- Load balancing
- Connection pooling
- Metrics
MediaGuard API (HTTP)
The MediaGuard API is a simple HTTP service that lets you send pre-bid data to HUMAN and receive IVT predictions accordingly. You can use any HTTP client to access the MediaGuard API, which makes this option ideal if you're unable to use gRPC or if you'd like to integrate MediaGuard with an existing monitoring service without using custom code.
- Authentication
- Data formats
- Load balancing
- Connection pooling
- Metrics
The performance of each MediaGuard node is inversely proportional to the number of connections it receives. As such, it's important to set up connection pooling to reduce the number of new or open connections to each node, although API integrations still tend to require more nodes per cluster than SDK integrations do.