{"items":[{"type":"link","label":"Entity Evaluation","link":"/openapi/risk/entity-evaluation.openapi","routeSlug":"/openapi/risk/entity-evaluation.openapi","content":{"contentType":"overview","meta":{"name":"Entity Evaluation"},"children":[{"nodeType":"container","panels":[{"title":"Download OpenAPI description","titleTranslationKey":"download.description.title","children":[{"kind":"download","label":"entity-evaluation.openapi.json","url":"/_bundle/openapi/risk/entity-evaluation.openapi.json?download"},{"kind":"download","label":"entity-evaluation.openapi.yaml","url":"/_bundle/openapi/risk/entity-evaluation.openapi.yaml?download"}]},{"title":"Overview","titleTranslationKey":"info.title","children":[]},{"title":"Languages","titleTranslationKey":"languages.title","children":[{"kind":"languages","options":[{"key":"curl","title":"cURL","lang":"curl"},{"key":"node","title":"Node.js","lang":"Node.js"},{"key":"go","title":"Go","lang":"Go"},{"key":"javascript","title":"JavaScript","lang":"JavaScript"},{"key":"java","title":"Java","lang":"Java"},{"key":"python","title":"Python","lang":"Python"}]}]},{"title":"Servers","titleTranslationKey":"servers.title","children":[{"kind":"servers","servers":[{"url":"https://api.sbx.transmitsecurity.io/risk/v1","description":"Sandbox environment"},{"url":"https://api.transmitsecurity.io/risk/v1","description":"US production environment"},{"url":"https://api.eu.transmitsecurity.io/risk/v1","description":"EU production environment"},{"url":"https://api.ca.transmitsecurity.io/risk/v1","description":"CA production environment"},{"url":"https://api.au.transmitsecurity.io/risk/v1","description":"AU production environment"},{"url":"https://api.gasne1-ts01.transmitsecurity.io/risk/v1","description":"JP production environment"}],"mode":"default"}]}],"children":[{"nodeType":"overview-section-wrapper","children":[{"nodeType":"header","level":1,"label":"Entity Evaluation","showPageActions":true},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Entity Evaluation API provided by Fraud Prevention lets you evaluate an entity (such as an IP address) against your configured "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/guides/risk/rules"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"risk rules"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" without requiring a full user action. The entity is enriched with third-party intelligence (e.g., geolocation, ASN, VPN/anonymizer signals) and matched against tenant rules in priority order, returning a recommendation ("},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ALLOW"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"CHALLENGE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"DENY"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"TRUST"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Typical use cases include pre-flight checks (for example, blocking risky IPs at the edge before they reach sensitive endpoints), support tooling, and offline lookups."},"children":[]}]}]}]}],"sectionId":"/openapi/risk/entity-evaluation.openapi"}],"sectionId":"/openapi/risk/entity-evaluation.openapi"}]}]}},{"label":"Evaluate entity","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/risk/entity-evaluation.openapi/other/evaluateentity","routeSlug":"/openapi/risk/entity-evaluation.openapi/other/evaluateentity","metadata":{"seo":{"title":"Evaluate entity","description":"Evaluates an entity against the tenant's configured recommendation rules. The entity is enriched with third-party intelligence data and matched against enabled rules in priority order. Only the first matching production rule applies to the returned recommendation. Any matching preview rule is returned separately in preview_rule for impact analysis without affecting the final decision.If no production rule matches, the recommendation defaults to ALLOW."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"evaluateEntity","name":"Evaluate entity","isWebhook":false,"pointer":"/paths/~1evaluate/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Evaluate entity","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Evaluates an entity against the tenant's configured recommendation rules. The entity is enriched with third-party intelligence data and matched against enabled rules in priority order. Only the first matching production rule applies to the returned "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"recommendation"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Any matching preview rule is returned separately in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"preview_rule"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" for impact analysis without affecting the final decision."},"children":[]},{"$$mdtype":"Node","type":"softbreak","inline":true,"attributes":{},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"If no production rule matches, the recommendation defaults to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ALLOW"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"risk_access_token","scopes":[],"type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"An access token generated by the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/openapi/token.openapi/other/getaccesstoken"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token endpoint"},"children":[]}]}]}]}]}]}]},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/evaluate_entity_request"}},"schemaId":"components/schemas/evaluate_entity_request","pointer":"/paths/~1evaluate/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/evaluate","servers":[{"url":"https://api.sbx.transmitsecurity.io/risk/v1","description":"Sandbox environment"},{"url":"https://api.transmitsecurity.io/risk/v1","description":"US production environment"},{"url":"https://api.eu.transmitsecurity.io/risk/v1","description":"EU production environment"},{"url":"https://api.ca.transmitsecurity.io/risk/v1","description":"CA production environment"},{"url":"https://api.au.transmitsecurity.io/risk/v1","description":"AU production environment"},{"url":"https://api.gasne1-ts01.transmitsecurity.io/risk/v1","description":"JP production environment"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[],"cookie":[]},"security":[{"schemes":[{"id":"risk_access_token","type":"http","scheme":"bearer","bearerFormat":"JWT"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/evaluate_entity_request"}},"responseCodes":["200","400","401","403","429","500"],"pointer":"/evaluate","href":"other/evaluateentity","openApiOperationId":"evaluateEntity","summary":"Evaluate entity"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"https://api.sbx.transmitsecurity.io/risk/v1","description":"Sandbox environment"},{"url":"https://api.transmitsecurity.io/risk/v1","description":"US production environment"},{"url":"https://api.eu.transmitsecurity.io/risk/v1","description":"EU production environment"},{"url":"https://api.ca.transmitsecurity.io/risk/v1","description":"CA production environment"},{"url":"https://api.au.transmitsecurity.io/risk/v1","description":"AU production environment"},{"url":"https://api.gasne1-ts01.transmitsecurity.io/risk/v1","description":"JP production environment"}],"schemaId":"components/schemas/evaluate_entity_request","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/evaluate_entity_request"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Entity evaluated successfully.","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/evaluate_entity_response","exampleIds":["paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule","paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview","paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default"]}},"schemaId":"components/schemas/evaluate_entity_response","exampleIds":["paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule","paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview","paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default"]},{"code":"400","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Bad request. Returned when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not supported or when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_value"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is not valid for the given "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" (for example, a malformed IP address when "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ip_address"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}]},{"code":"401","description":"Invalid authentication"},{"code":"403","description":"Invalid authorization"},{"code":"429","description":"Rate limit reached"},{"code":"500","description":"Internal error"}],"pointer":"/paths/~1evaluate/post/responses"}],"panels":[{"children":[{"kind":"response","headerTitle":"Response","responseCodes":[{"code":"200","schemaId":"components/schemas/evaluate_entity_response","exampleIds":["paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule","paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview","paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/evaluate_entity_response","exampleIds":["paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule","paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview","paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default"]}}},{"code":"400"},{"code":"401"},{"code":"403"},{"code":"429"},{"code":"500"}],"examples":[]}]}]}]},"httpPath":"/evaluate"}],"store":{"schemaStore":{"components/schemas/evaluate_entity_request":{"id":"components/schemas/evaluate_entity_request","kind":"json-schema","title":"evaluate_entity_request","data":{"type":"object","required":["entity_type","entity_value"],"properties":{"entity_type":{"$ref":"#/components/schemas/entity_type"},"entity_value":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"The value of the entity to evaluate. When "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ip_address"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", this must be a valid IPv4 or IPv6 address."},"children":[]}]}]}],"example":"1.2.3.4"}}}},"components/schemas/entity_type":{"id":"components/schemas/entity_type","kind":"json-schema","title":"entity_type","data":{"type":"string","description":"The type of entity to evaluate.\n","enum":["ip_address"],"example":"ip_address"}},"components/schemas/evaluate_entity_response":{"id":"components/schemas/evaluate_entity_response","kind":"json-schema","title":"evaluate_entity_response","data":{"type":"object","required":["entity_type","entity","recommendation","data"],"properties":{"entity_type":{"$ref":"#/components/schemas/entity_type"},"entity":{"type":"string","description":"The entity value that was evaluated (echoed back from the request).","example":"1.2.3.4"},"recommendation":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Recommendation derived from the first matching production rule. Defaults to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"ALLOW"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when no production rule matches."},"children":[]}]}]}],"enum":["ALLOW","TRUST","CHALLENGE","DENY"],"example":"DENY"},"matched_rule":{"$ref":"#/components/schemas/matched_rule"},"data":{"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Enrichment data for the evaluated entity. The structure depends on the "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"entity_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"oneOf":[{"$ref":"#/components/schemas/ip_enrichment_data"}]},"preview_rule":{"$ref":"#/components/schemas/preview_rule_result"}}}},"components/schemas/matched_rule":{"id":"components/schemas/matched_rule","kind":"json-schema","title":"matched_rule","data":{"type":"object","description":"The production rule that matched the entity, if any. Only present when a production rule matches.\n","properties":{"rule_name":{"type":"string","description":"Name of the matched production rule.","example":"Block restricted jurisdictions"}}}},"components/schemas/preview_rule_result":{"id":"components/schemas/preview_rule_result","kind":"json-schema","title":"preview_rule_result","data":{"type":"object","description":"Preview rule that would have matched if it were in production mode. Allows you to assess the impact of preview rules before promoting them to production.\n","properties":{"rule_name":{"type":"string","description":"Name of the matching preview rule.","example":"Flag suspicious IPs"},"recommendation":{"type":"string","description":"Recommendation the preview rule would have applied.","enum":["ALLOW","TRUST","CHALLENGE","DENY"],"example":"DENY"}}}},"components/schemas/ip_enrichment_data":{"id":"components/schemas/ip_enrichment_data","kind":"json-schema","title":"ip_enrichment_data","data":{"type":"object","description":"Third-party intelligence data used during evaluation. Fields are populated on a best-effort basis; any field may be omitted when the provider does not return a value for the given IP.\n","properties":{"country_code":{"type":"string","description":"Country code resolved from the IP, per ISO 3166-1 alpha-2.","example":"CN"},"asn_id":{"type":"string","description":"Autonomous System Number detected using the IP address.","example":"AS4134"},"organization_name":{"type":"string","description":"Organization name associated with the IP address.","example":"Example ISP"},"organization_type":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Organization type associated with the IP address (e.g., "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"hosting"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"isp"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"business"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":")."},"children":[]}]}]}],"example":"hosting"},"ip_timezone":{"type":"string","description":"Timezone resolved from the IP address (TZ identifier).","example":"Asia/Shanghai"},"ip_is_vpn":{"type":"boolean","description":"Whether the IP is associated with a known anonymizing VPN service.","example":true},"ip_is_anonymizer":{"type":"boolean","description":"Whether the IP is associated with an anonymous proxy.","example":false}}}}},"exampleStore":{"paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule":{"value":{"entity_type":"ip_address","entity":"1.2.3.4","recommendation":"DENY","matched_rule":{"rule_name":"Block restricted jurisdictions"},"data":{"country_code":"CN","asn_id":"AS4134","organization_name":"Example ISP","organization_type":"hosting","ip_timezone":"Asia/Shanghai","ip_is_vpn":true,"ip_is_anonymizer":false}},"key":"matched_production_rule","summary":"Example of a production rule matched (DENY)","id":"paths/~1evaluate/post/responses/200/content/application~1json/examples/matched_production_rule"},"paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview":{"value":{"entity_type":"ip_address","entity":"5.6.7.8","recommendation":"ALLOW","data":{"country_code":"US","asn_id":"AS15169","organization_name":"Example Cloud","organization_type":"hosting","ip_timezone":"America/Los_Angeles","ip_is_vpn":false,"ip_is_anonymizer":false},"preview_rule":{"rule_name":"Flag cloud-hosted IPs","recommendation":"CHALLENGE"}},"key":"no_match_with_preview","summary":"Example of a no production rule matched, but a preview rule would match","id":"paths/~1evaluate/post/responses/200/content/application~1json/examples/no_match_with_preview"},"paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default":{"value":{"entity_type":"ip_address","entity":"9.9.9.9","recommendation":"ALLOW","data":{"ip_is_vpn":false,"ip_is_anonymizer":false}},"key":"allow_default","summary":"Example of a no rule matched","id":"paths/~1evaluate/post/responses/200/content/application~1json/examples/allow_default"}},"securitySchemeStore":{"risk_access_token":{"id":"risk_access_token","type":"http","scheme":"bearer","bearerFormat":"JWT","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"An access token generated by the "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/openapi/token.openapi/other/getaccesstoken"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"token endpoint"},"children":[]}]}]}]}]}},"servers":[{"url":"https://api.sbx.transmitsecurity.io/risk/v1","description":"Sandbox environment"},{"url":"https://api.transmitsecurity.io/risk/v1","description":"US production environment"},{"url":"https://api.eu.transmitsecurity.io/risk/v1","description":"EU production environment"},{"url":"https://api.ca.transmitsecurity.io/risk/v1","description":"CA production environment"},{"url":"https://api.au.transmitsecurity.io/risk/v1","description":"AU production environment"},{"url":"https://api.gasne1-ts01.transmitsecurity.io/risk/v1","description":"JP production environment"}]},"options":{"corsProxyUrl":"https://cors.redoc.ly","hideSchemaTitles":true,"onlyRequiredInSamples":false,"hideDownloadButtons":false,"codeSamples":{"skipOptionalParameters":false,"languages":[{"lang":"curl","label":"cURL"},{"lang":"Node.js"},{"lang":"Go"},{"lang":"JavaScript"},{"lang":"Java"},{"lang":"Python"}]},"feedback":{"hide":true,"settings":{"label":""}},"hideSidebar":true,"mockServer":{"off":true},"disableRouter":true,"downloadUrls":[{"url":"/_bundle/openapi/risk/entity-evaluation.openapi.json?download"},{"url":"/_bundle/openapi/risk/entity-evaluation.openapi.yaml?download"}],"excludeFromSearch":false,"specType":"openapi","markdocOptions":{"tags":{},"nodes":{},"components":{}},"metadata":{"title":"Entity Evaluation","description":"Entity Evaluation API provided by Fraud Prevention lets you evaluate an entity (such as an IP address) against your configured [risk rules](/guides/risk/rules.md) without requiring a full user action. The entity is enriched with third-party intelligence (e.g., geolocation, ASN, VPN/anonymizer signals) and matched against tenant rules in priority order, returning a recommendation (`ALLOW`, `CHALLENGE`, `DENY`, or `TRUST`).\nTypical use cases include pre-flight checks (for example, blocking risky IPs at the edge before they reach sensitive endpoints), support tooling, and offline lookups.\n"}},"baseSlug":"/openapi/risk/entity-evaluation.openapi","routesMapping":{}}