{
  "openapi": "3.0.1",
  "info": {
    "title": "OFAC SDN Monitor",
    "description": "Screen names against official OFAC SDN and Consolidated Sanctions data. The Actor calls the OFAC SDN Monitor API and writes one screening response per name to the default dataset.",
    "version": "0.1",
    "x-build-id": "MReshuuqDKvcUKHWW"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/josrade~ofac-sdn-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-josrade-ofac-sdn-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/josrade~ofac-sdn-monitor/runs": {
      "post": {
        "operationId": "runs-sync-josrade-ofac-sdn-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/josrade~ofac-sdn-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-josrade-ofac-sdn-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "names": {
            "title": "Names",
            "minItems": 1,
            "maxItems": 100,
            "type": "array",
            "description": "Individual or entity names to screen against official OFAC SDN and Consolidated Sanctions data. Use this shortcut when the same country, DOB, ID, alias, strictness, and program options apply to every name.",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Optional country hint applied to every name. This improves review precision when the OFAC record includes country or address data."
          },
          "dob": {
            "title": "Date of birth",
            "type": "string",
            "description": "Optional date of birth or year applied to every name. Use YYYY, YYYY-MM-DD, or the format already present in your screening workflow."
          },
          "idNumber": {
            "title": "Identifier",
            "type": "string",
            "description": "Optional passport, tax ID, vessel, aircraft, website, or other OFAC identifier to use as an additional match signal."
          },
          "aliasMatch": {
            "title": "Alias match mode",
            "enum": [
              "exact",
              "fuzzy",
              "phonetic"
            ],
            "type": "string",
            "description": "How aliases are compared. Use exact for strict legal-name checks, fuzzy for normal operational screening, or phonetic when names may be transliterated.",
            "default": "fuzzy"
          },
          "strictness": {
            "title": "Strictness",
            "enum": [
              "low",
              "medium",
              "high"
            ],
            "type": "string",
            "description": "Match threshold. Higher strictness reduces weak-alias and fuzzy false positives; lower strictness is broader and better for alert triage.",
            "default": "medium"
          },
          "programs": {
            "title": "OFAC programs",
            "maxItems": 25,
            "type": "array",
            "description": "Optional OFAC program tags to filter by, such as CUBA, SDGT, or RUSSIA-EO14024.",
            "items": {
              "type": "string"
            }
          },
          "limit": {
            "title": "Candidate match limit",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Maximum candidate matches returned per screening request.",
            "default": 25
          },
          "screenings": {
            "title": "Advanced screening objects",
            "maxItems": 100,
            "type": "array",
            "description": "Optional batch mode for per-name options, for example [{\"name\":\"Banco Nacional de Cuba\",\"country\":\"Cuba\",\"aliasMatch\":\"fuzzy\",\"strictness\":\"medium\"}]. If present, each object is screened independently.",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "title": "Name",
                  "description": "Individual or entity name."
                },
                "country": {
                  "type": "string",
                  "title": "Country",
                  "description": "Optional country hint."
                },
                "dob": {
                  "type": "string",
                  "title": "Date of birth",
                  "description": "Optional DOB or year."
                },
                "idNumber": {
                  "type": "string",
                  "title": "Identifier",
                  "description": "Optional OFAC identifier."
                },
                "aliasMatch": {
                  "type": "string",
                  "title": "Alias match",
                  "description": "exact, fuzzy, or phonetic.",
                  "enum": [
                    "exact",
                    "fuzzy",
                    "phonetic"
                  ]
                },
                "strictness": {
                  "type": "string",
                  "title": "Strictness",
                  "description": "low, medium, or high.",
                  "enum": [
                    "low",
                    "medium",
                    "high"
                  ]
                },
                "programs": {
                  "type": "array",
                  "title": "Programs",
                  "description": "OFAC program tags.",
                  "items": {
                    "type": "string"
                  }
                },
                "limit": {
                  "type": "integer",
                  "title": "Limit",
                  "description": "Maximum candidate matches.",
                  "minimum": 1,
                  "maximum": 50
                }
              }
            }
          },
          "watchlistEntries": {
            "title": "Watchlist entries",
            "maxItems": 100,
            "type": "array",
            "description": "Optional stateless watchlist preview entries. Use when you want one run to screen recurring counterparties and return a grouped watchlist-style response.",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "title": "Entry ID",
                  "description": "Your watchlist entry ID."
                },
                "name": {
                  "type": "string",
                  "title": "Name",
                  "description": "Individual or entity name."
                },
                "country": {
                  "type": "string",
                  "title": "Country",
                  "description": "Optional country hint."
                },
                "dob": {
                  "type": "string",
                  "title": "Date of birth",
                  "description": "Optional DOB or year."
                },
                "idNumber": {
                  "type": "string",
                  "title": "Identifier",
                  "description": "Optional OFAC identifier."
                }
              }
            }
          },
          "apiBaseUrl": {
            "title": "API base URL",
            "type": "string",
            "description": "Override of the upstream API base URL. Defaults to runtime.baseUrl from service.json."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}