Skip to main content

Module models

Module models 

Source
Expand description

Typed response and input models for fixed-schema Tango endpoints.

For shape-driven list endpoints (contracts, IDVs, entities, …) the SDK returns crate::Record (a serde_json::Map) instead — shape selection changes the schema, so a fixed Rust struct can’t capture every combination. See crate::shapes for the available presets.

§Forward-compatible extra field

Every typed model carries #[serde(flatten)] pub extra: HashMap<String, Value> so server-side schema additions surface as extra["new_field"] rather than being silently dropped during deserialization. Round-tripping a typed model through serde_json::to_value will re-emit those extras.

Re-exports§

pub use agency::AgencyRecord;
pub use protest::ProtestRecord;
pub use resolve::ResolveCandidate;
pub use resolve::ResolveInput;
pub use resolve::ResolveResult;
pub use resolve::ResolveTargetType;
pub use validate::ValidateInput;
pub use validate::ValidateInputType;
pub use validate::ValidateResult;
pub use webhook::WebhookAlert;
pub use webhook::WebhookAlertCreateInput;
pub use webhook::WebhookAlertUpdateInput;
pub use webhook::WebhookEndpoint;
pub use webhook::WebhookEndpointCreateInput;
pub use webhook::WebhookEndpointUpdateInput;
pub use webhook::WebhookEventType;
pub use webhook::WebhookEventTypesResponse;
pub use webhook::WebhookSampleDelivery;
pub use webhook::WebhookSamplePayloadResponse;
pub use webhook::WebhookTestDeliveryResult;

Modules§

agency
AgencyRecord — typed response from GET /api/agencies/{code}/.
protest
ProtestRecord — typed response from GET /api/protests/{case_id}/.
resolve
Types for POST /api/resolve/.
validate
Types for POST /api/validate/.
webhook
Typed models for the Tango webhook management API.