Ctrl K
ComunidadGuías…

docs/api/SanctionsService.openapi.json

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{"components":{"schemas":{"BillingVerificationError":{"description":"Returned with HTTP 503 when paid access cannot be confirmed right now: the billing provider is re-verifying a recently expired subscription, or the entitlement backend is unreachable. Retryable — honor Retry-After.","properties":{"code":{"description":"Machine-readable billing-verification state, mirrored in the X-Billing-Verification response header.","enum":["renewal_verification_pending","renewal_verification_failed","entitlement_verification_unavailable"],"type":"string"},"error":{"description":"Human-readable billing-verification failure reason.","type":"string"},"requiredTier":{"description":"Minimum entitlement tier required for this endpoint, when the denial came from a tier gate.","format":"int32","type":"integer"}},"required":["error","code"],"type":"object"},"CountrySanctionsPressure":{"description":"CountrySanctionsPressure summarizes designation volume and recent additions by country.","properties":{"aircraftCount":{"description":"Assets with a direct country association only; registry counts are in\n ListSanctionsPressureResponse.flagRegistries, not this field.","format":"int32","type":"integer"},"countryCode":{"type":"string"},"countryName":{"type":"string"},"entryCount":{"format":"int32","type":"integer"},"newEntryCount":{"format":"int32","type":"integer"},"vesselCount":{"description":"Assets with a direct country association only. Zero does not mean this\n country has no sanctioned vessels; flag counts are in flagRegistries.","format":"int32","type":"integer"}},"type":"object"},"Error":{"description":"Error is returned when a handler encounters an error. It contains a simple error message that the developer can customize.","properties":{"message":{"description":"Error message (e.g., 'user not found', 'database connection failed')","type":"string"}},"type":"object"},"FieldViolation":{"description":"FieldViolation describes a single validation error for a specific field.","properties":{"description":{"description":"Human-readable description of the validation violation (e.g., 'must be a valid email address', 'required field missing')","type":"string"},"field":{"description":"The field path that failed validation (e.g., 'user.email' for nested fields). For header validation, this will be the header name (e.g., 'X-API-Key')","type":"string"}},"required":["field","description"],"type":"object"},"FlagRegistrySanctionsPressure":{"description":"FlagRegistrySanctionsPressure counts sanctioned vessels by flag and sanctioned aircraft\n by the state of registry in their tail number. The response lists at most 12 registries,\n ordered by new vessels and aircraft, then all vessels and aircraft, so an omitted\n registry may still register sanctioned assets. Older snapshots return none.","properties":{"aircraftCount":{"description":"Zero in snapshots written before aircraft registries were counted.","format":"int32","type":"integer"},"countryCode":{"type":"string"},"countryName":{"type":"string"},"newAircraftCount":{"format":"int32","type":"integer"},"newVesselCount":{"format":"int32","type":"integer"},"vesselCount":{"format":"int32","type":"integer"}},"type":"object"},"ForbiddenError":{"description":"Returned when a PRO-gated endpoint denies access because the caller has no resolved authenticated user, entitlements cannot be verified, or the caller lacks the required entitlement tier.","properties":{"code":{"description":"Machine-readable denial code, present when the 403 is a billing-provider-confirmed subscription lapse (mirrored in the X-Billing-Verification response header).","enum":["subscription_lapsed"],"type":"string"},"currentTier":{"description":"Caller entitlement tier when known.","format":"int32","type":"integer"},"error":{"description":"Human-readable entitlement failure reason.","type":"string"},"planKey":{"description":"Caller plan key when known.","type":"string"},"requiredTier":{"description":"Minimum entitlement tier required for this endpoint.","format":"int32","type":"integer"}},"required":["error"],"type":"object"},"GatewayError":{"description":"Returned by gateway infrastructure errors before an RPC handler runs, such as origin, routing, method, authentication, or quota checks.","properties":{"error":{"description":"Gateway error reason or structured gateway failure details.","oneOf":[{"type":"string"},{"additionalProperties":true,"type":"object"}]}},"required":["error"],"type":"object"},"InvalidRequestBodyError":{"description":"Returned when a JSON POST request body is empty or malformed.","properties":{"message":{"description":"Invalid request body","type":"string"}},"required":["message"],"type":"object"},"JmespathProjectionError":{"description":"Returned when a REST jmespath projection is invalid or exceeds the expression/output byte limits.","properties":{"_jmespath_error":{"description":"Projection error discriminator and details.","type":"string"},"original_keys":{"description":"Top-level keys or shape of the unprojected response.","items":{"type":"string"},"type":"array"}},"required":["_jmespath_error","original_keys"],"type":"object"},"ListSanctionsPressureRequest":{"description":"ListSanctionsPressureRequest retrieves recent OFAC sanctions pressure state.","properties":{"maxItems":{"description":"Maximum number of recent sanctions entries to include.","format":"int32","type":"integer"}},"type":"object"},"ListSanctionsPressureResponse":{"description":"ListSanctionsPressureResponse contains normalized OFAC pressure summaries and recent entries.","properties":{"aircraftCount":{"format":"int32","type":"integer"},"consolidatedCount":{"format":"int32","type":"integer"},"countries":{"items":{"$ref":"#/components/schemas/CountrySanctionsPressure"},"type":"array"},"datasetDate":{"format":"int64","type":"string"},"entries":{"items":{"$ref":"#/components/schemas/SanctionsEntry"},"type":"array"},"fetchedAt":{"format":"int64","type":"string"},"flagRegistries":{"items":{"$ref":"#/components/schemas/FlagRegistrySanctionsPressure"},"type":"array"},"newEntryCount":{"format":"int32","type":"integer"},"programs":{"items":{"$ref":"#/components/schemas/ProgramSanctionsPressure"},"type":"array"},"regulationTargets":{"items":{"$ref":"#/components/schemas/CountrySanctionsPressure"},"type":"array"},"sdnCount":{"format":"int32","type":"integer"},"semaCount":{"description":"Number of Canadian SEMA designations represented in this snapshot.","format":"int32","type":"integer"},"semaError":{"description":"Present when the SEMA source failed while other sanctions data remained available.","type":"string"},"totalCount":{"format":"int32","type":"integer"},"unattributed":{"$ref":"#/components/schemas/UnattributedSanctionsPressure"},"vesselCount":{"format":"int32","type":"integer"}},"type":"object"},"LookupSanctionEntityRequest":{"description":"LookupSanctionEntityRequest screens the seeded OFAC SDN, OFAC Consolidated, Canada SEMA and US CSL index.","properties":{"maxResults":{"description":"Maximum number of matching sanctioned entities to return.","format":"int32","type":"integer"},"q":{"description":"Search a name, up to 10 retained aliases per entity, or an exact IMO identifier (2-200 characters).","type":"string"}},"type":"object"},"LookupSanctionEntityResponse":{"description":"LookupSanctionEntityResponse contains seeded matches ranked by token-set Jaro-Winkler score.\n A match is a lead to confirm with the issuing agency, not legal advice.","properties":{"results":{"items":{"$ref":"#/components/schemas/SanctionEntityMatch"},"type":"array"},"source":{"description":"Comma-separated lists searched; \"seeded\" when q is rejected before lookup;\n \"unavailable\" when no valid index records are available.","type":"string"},"total":{"format":"int32","type":"integer"}},"type":"object"},"ProgramSanctionsPressure":{"description":"ProgramSanctionsPressure summarizes designation volume and recent additions by OFAC program.","properties":{"entryCount":{"format":"int32","type":"integer"},"newEntryCount":{"format":"int32","type":"integer"},"program":{"type":"string"}},"type":"object"},"RateLimitError":{"description":"Returned when a gateway or handler rate limit rejects the request.","properties":{"error":{"description":"Human-readable rate-limit failure reason.","type":"string"}},"required":["error"],"type":"object"},"SanctionEntityMatch":{"description":"SanctionEntityMatch is a compact entity match from the lookup index.","properties":{"countryCodes":{"items":{"type":"string"},"type":"array"},"entityType":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"programs":{"items":{"type":"string"},"type":"array"}},"type":"object"},"SanctionsEntry":{"description":"SanctionsEntry is a normalized OFAC sanctions designation.","properties":{"countryCodes":{"items":{"type":"string"},"type":"array"},"countryNames":{"items":{"type":"string"},"type":"array"},"effectiveAt":{"format":"int64","type":"string"},"entityType":{"description":"SanctionsEntityType classifies the designated party.","enum":["SANCTIONS_ENTITY_TYPE_UNSPECIFIED","SANCTIONS_ENTITY_TYPE_ENTITY","SANCTIONS_ENTITY_TYPE_INDIVIDUAL","SANCTIONS_ENTITY_TYPE_VESSEL","SANCTIONS_ENTITY_TYPE_AIRCRAFT"],"type":"string"},"id":{"type":"string"},"isNew":{"type":"boolean"},"name":{"type":"string"},"note":{"type":"string"},"parentCountryCodes":{"items":{"description":"Direct linked-parent countries for addressless entities. These are not\n address/nationality evidence and do not feed country risk counts.","type":"string"},"type":"array"},"parentCountryNames":{"items":{"type":"string"},"type":"array"},"programs":{"items":{"type":"string"},"type":"array"},"sourceLists":{"items":{"type":"string"},"type":"array"}},"type":"object"},"UnattributedSanctionsPressure":{"properties":{"aircraftCount":{"format":"int32","type":"integer"},"entryCount":{"format":"int32","type":"integer"},"vesselCount":{"format":"int32","type":"integer"}},"type":"object"},"UnauthorizedError":{"description":"Returned when the API key is missing, malformed, or lacks current API access.","properties":{"error":{"description":"Human-readable error message.","type":"string"}},"required":["error"],"type":"object"},"ValidationError":{"description":"ValidationError is returned when request validation fails. It contains a list of field violations describing what went wrong.","properties":{"violations":{"description":"List of validation violations","items":{"$ref":"#/components/schemas/FieldViolation"},"type":"array"}},"required":["violations"],"type":"object"}},"securitySchemes":{"ApiKeyHeader":{"description":"Alias header for the WorldMonitor API key (X-WorldMonitor-Key).","in":"header","name":"X-Api-Key","type":"apiKey"},"WorldMonitorKey":{"description":"User-issued WorldMonitor API key.","in":"header","name":"X-WorldMonitor-Key","type":"apiKey"}}},"info":{"title":"SanctionsService API","version":"1.0.0"},"openapi":"3.1.0","paths":{"/api/sanctions/v1/list-sanctions-pressure":{"get":{"description":"ListSanctionsPressure returns OFAC SDN and Consolidated designations plus Canada SEMA entries, with country and program pressure and new additions.","operationId":"ListSanctionsPressure","parameters":[{"description":"Maximum number of recent sanctions entries to include.","example":1,"in":"query","name":"max_items","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"Optional JMESPath expression applied server-side to project or reduce the JSON response before it is returned (mirrors the MCP jmespath argument). Invalid expressions, expressions larger than 1024 UTF-8 bytes, or projections that exceed the 256 KB output cap return HTTP 400 with a {_jmespath_error, original_keys} envelope. Grammar and worked examples: https://www.worldmonitor.app/docs/mcp-jmespath.","example":"keys(@)","in":"query","name":"jmespath","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"aircraftCount":1,"consolidatedCount":1,"countries":[{"aircraftCount":1,"countryCode":"US","countryName":"US","entryCount":1,"newEntryCount":1}],"datasetDate":"1717200000000","entries":[{"countryCodes":["US"],"countryNames":["US"],"effectiveAt":"1717200000000","entityType":"SANCTIONS_ENTITY_TYPE_ENTITY","id":"example-id"}]},"schema":{"$ref":"#/components/schemas/ListSanctionsPressureResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ValidationError"},{"$ref":"#/components/schemas/JmespathProjectionError"}]}}},"description":"Validation error"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedError"}}},"description":"Missing or invalid API key."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenError"}}},"description":"API access requires an active subscription (the API key's subscription is inactive or expired).","headers":{"X-Billing-Verification":{"description":"Present when the 403 is a billing-provider-confirmed subscription lapse (value subscription_lapsed, matching the body `code`).","schema":{"type":"string"}}}},"429":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Error"},{"$ref":"#/components/schemas/RateLimitError"}]}}},"description":"Rate limit exceeded.","headers":{"Retry-After":{"description":"Seconds to wait before retrying the request.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Maximum requests allowed in the active rate-limit window.","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the active rate-limit window.","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix epoch milliseconds when the active rate-limit window resets.","schema":{"type":"string"}}}},"503":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/BillingVerificationError"},{"$ref":"#/components/schemas/GatewayError"}]}}},"description":"Service unavailable. Billing-verification responses include code and X-Billing-Verification; other gateway infrastructure failures use the generic GatewayError shape.","headers":{"Retry-After":{"description":"Seconds to wait before retrying (1-60).","schema":{"type":"string"}},"X-Billing-Verification":{"description":"Billing-verification state that produced this response (matches the body `code`).","schema":{"type":"string"}},"X-RateLimit-Mode":{"description":"Present with value degraded when a fail-closed rate-limit dependency is unavailable.","schema":{"type":"string"}},"X-Validation-Mode":{"description":"Present with value degraded when user API-key validation is temporarily unavailable.","schema":{"type":"string"}}}},"default":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Error"},{"$ref":"#/components/schemas/GatewayError"}]}}},"description":"Gateway or handler error response."}},"summary":"ListSanctionsPressure","tags":["SanctionsService"]}},"/api/sanctions/v1/lookup-sanction-entity":{"get":{"description":"LookupSanctionEntity screens the seeded OFAC SDN, OFAC Consolidated, Canada SEMA and US\n Consolidated Screening List export-control lists by name, up to 10 retained aliases per\n entity, or an exact IMO identifier.","operationId":"LookupSanctionEntity","parameters":[{"description":"Search a name, up to 10 retained aliases per entity, or an exact IMO identifier (2-200 characters).","example":"example","in":"query","name":"q","required":false,"schema":{"type":"string"}},{"description":"Maximum number of matching sanctioned entities to return.","example":1,"in":"query","name":"max_results","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"Optional JMESPath expression applied server-side to project or reduce the JSON response before it is returned (mirrors the MCP jmespath argument). Invalid expressions, expressions larger than 1024 UTF-8 bytes, or projections that exceed the 256 KB output cap return HTTP 400 with a {_jmespath_error, original_keys} envelope. Grammar and worked examples: https://www.worldmonitor.app/docs/mcp-jmespath.","example":"keys(@)","in":"query","name":"jmespath","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"example":{"results":[{"countryCodes":["US"],"entityType":"all","id":"example-id","name":"WorldMonitor Analyst","programs":["example"]}],"source":"example","total":1},"schema":{"$ref":"#/components/schemas/LookupSanctionEntityResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ValidationError"},{"$ref":"#/components/schemas/JmespathProjectionError"}]}}},"description":"Validation error"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedError"}}},"description":"Missing or invalid API key."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenError"}}},"description":"API access requires an active subscription (the API key's subscription is inactive or expired).","headers":{"X-Billing-Verification":{"description":"Present when the 403 is a billing-provider-confirmed subscription lapse (value subscription_lapsed, matching the body `code`).","schema":{"type":"string"}}}},"429":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Error"},{"$ref":"#/components/schemas/RateLimitError"}]}}},"description":"Rate limit exceeded.","headers":{"Retry-After":{"description":"Seconds to wait before retrying the request.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Maximum requests allowed in the active rate-limit window.","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the active rate-limit window.","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix epoch milliseconds when the active rate-limit window resets.","schema":{"type":"string"}}}},"503":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/BillingVerificationError"},{"$ref":"#/components/schemas/GatewayError"}]}}},"description":"Service unavailable. Billing-verification responses include code and X-Billing-Verification; other gateway infrastructure failures use the generic GatewayError shape.","headers":{"Retry-After":{"description":"Seconds to wait before retrying (1-60).","schema":{"type":"string"}},"X-Billing-Verification":{"description":"Billing-verification state that produced this response (matches the body `code`).","schema":{"type":"string"}},"X-RateLimit-Mode":{"description":"Present with value degraded when a fail-closed rate-limit dependency is unavailable.","schema":{"type":"string"}},"X-Validation-Mode":{"description":"Present with value degraded when user API-key validation is temporarily unavailable.","schema":{"type":"string"}}}},"default":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Error"},{"$ref":"#/components/schemas/GatewayError"}]}}},"description":"Gateway or handler error response."}},"summary":"LookupSanctionEntity","tags":["SanctionsService"]}}},"security":[{"WorldMonitorKey":[]},{"ApiKeyHeader":[]}],"servers":[{"url":"https://api.worldmonitor.app"}]}