開発者向けAPI
システム間で名前をコピー&ペーストする必要はありません。1回のAPI呼び出しですべて完結します。
法人確認、出資構造マッピング、PEPチェック、アドバースメディア、制裁リスト照合を、既存のワークフローに直接組み込めます。
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"entity_name": "Acme Trading LLC",
"entity_type": "company",
"country": "AE",
"search_type": "sanctions_check"
}'
# 202 Accepted
# { "search_id": "SEARCH_ID", "status": "processing",
# "estimated_time_seconds": 15 }The request
One POST call, then your poll loop.
Entity name, type, country, screening type. The call returns 202 with a search_id and an ETA, and the agent works in the background — you poll for the result rather than hold the connection open.
entity_nameRequired, 1-500 characters. Alias-aware matchingentity_type"person", "company" or "any" (default "any")countryOptional context field; does not filter Quick Check matchingsearch_type"sanctions_check", "adverse_media" or "full_search"
The response
Structured JSON. Findings, not a score.
Core-jurisdiction fields and per-source arrays, plus criminal-watchlist and PEP/RCA findings. Review the available markdown, identifiers and source references; the response does not provide a numeric risk score.
{
"id": "SEARCH_ID",
"entity_name": "Acme Trading LLC",
"entity_type": "company",
"status": "completed",
"search_type": "sanctions_check",
"ofac_sanctions": "## OFAC Sanctions Findings\n\n**Status:** *Sanctioned*\n\n**Details:**\n- **Matched entity:** ACME TRADING LLC\n- **Authority:** US Treasury OFAC\n...",
"eu_sanctions": "## EU Sanctions Findings\n\n**Status:** *No relevant listing found*\n...",
"sanctions_sources": [
{ "source_id": "ofac_sanctions", "title": "OFAC Sanctions",
"authority": "US Treasury OFAC", "hit_count": 1 },
{ "source_id": "eu_sanctions", "title": "EU Sanctions",
"authority": "", "hit_count": 0 }
],
"criminal_watchlists": null,
"pep": null,
"news_summary": null,
"final_report": null,
"created_at": "2026-09-04T09:20:03.771000+00:00",
"completed_at": "2026-09-04T09:20:19.088000+00:00"
}"ofac_sanctions"One markdown field per jurisdiction; read the *Status:* line"sanctions_sources"source_id, title, authority, details, hit_count per source"criminal_watchlists"Markdown when matched, null when nothing matched"pep"Markdown when matched, null when nothing matched"news_summary"Adverse-media report on adverse_media and full_search"status"completed when done; error_* on failure
API reference
Three calls cover a screening integration: queue it, poll it, or hand over a file.
POST/api/v1/searchQueue a screening run. Returns immediately with a search_id; the work happens in the background.202 Accepted
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"entity_name": "Acme Trading LLC", "entity_type": "company",
"country": "AE", "search_type": "sanctions_check"}'{ "search_id": "SEARCH_ID", "status": "processing",
"message": "Search queued successfully. Poll the GET endpoint for results.",
"estimated_time_seconds": 15 }GET/api/v1/search/{search_id}Poll for the result. Terminal status is completed; failures land in an error_* status.200 OK
curl https://screenveritai.com/api/v1/search/SEARCH_ID \
-H 'X-API-Key: YOUR_API_KEY'{ "id": "SEARCH_ID", "status": "completed", "search_type": "sanctions_check",
"ofac_sanctions": "## OFAC Sanctions Findings ... *Sanctioned* ...",
"eu_sanctions": "... *No relevant listing found* ...",
"sanctions_sources": [{ "source_id": "ofac_sanctions", "hit_count": 1 }],
"criminal_watchlists": null, "pep": null }POST/api/v1/batchUpload a CSV or XLSX with a name column — up to 100 rows and 2 MB. Poll the job, then export the CSV.202 Accepted
curl -X POST https://screenveritai.com/api/v1/batch \
-H 'X-API-Key: YOUR_API_KEY' \
-F 'file=@portfolio.csv'{ "job_id": "JOB_ID", "total_rows": 100, "credits_charged": 100,
"search_type": "sanctions_check", "status": "pending",
"message": "Batch job created successfully. Poll the GET endpoint for status." }Integration patterns
The API sits between data entry and decision — wherever you need a risk signal.
Customer onboarding
- Customer signup
- POST
/api/v1/search - Poll until completed
- Approve / hold
Payment processing
- Transaction init
- POST
/api/v1/search - Poll until completed
- Release / hold
CRM re-screen
- Record updated
- Your scheduler fires
- POST
/api/v1/search - Write result back
自社開発 対 ScreenVeritAI連携
| 項目 | 自社開発 | ScreenVeritAI API |
|---|---|---|
| 本番稼働までの期間 | リストの調達、照合ロジックの構築、例外処理の実装に6~12か月 | 数日で連携完了 — 最初のAPI呼び出しから本番運用可能 |
| 制裁リストの収録範囲 | 各リスト形式を手作業で取り込み、スキーマを継続的に保守 | すべての主要ソースを継続的に維持・更新 |
| 照合精度 | 独自のあいまい照合にはNLPの専門知識と絶え間ない調整が必要 | あいまい照合、音訳、別名解決、音声アルゴリズムを備えたAI |
| PEP・アドバースメディア | 別々のベンダー、別々の連携、別々の予算が必要 | PEP、アドバースメディア、UBOデータを同じAPIレスポンスで取得 |
| 継続的な保守 | リスト更新、スキーマ変更、誤検知の調整に専任チームが必要 | フルマネージド — 更新・改善・インフラをすべて代行 |
| 監査証跡 | ログ・エビデンス・保存のための独自基盤を構築する必要あり | 出典付きのタイムスタンプ入りエビデンスバンドルが標準搭載 |
コンプライアンス組み込みまでの4ステップ
APIキーを取得する
ダッシュボードから、search:read、search:write、batch:read、batch:writeといった最小権限のスコープ付きキーを作成します。
エンドポインを組み込む
オンボーディング、決済、CRMのワークフローにPOST呼び出しを1回追加するだけです。エンティティ名、種別、国を送信すると、ジョブIDが返されます。
結果を処理する
結果取得エンドポイントをポーリングして、構造化されたJSONを取得します — 法人情報、出資構造、PEP、アドバースメディア、制裁リストの情報、リスクスコアが含まれます。
モニタリングとアラートを設定する
継続的モニタリングを設定すれば、制裁リストが更新されたり新たなアドバースメディアが見つかったりした際に、APIがアラートを送信します。
数分で始められます
1回のAPI呼び出しで、完全なスクリーニング結果が返されます。
curl -X POST https://screenveritai.com/api/v1/search \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"entity_name": "Acme Trading LLC", "country": "AE", "search_type": "sanctions_check"}'
# 202 Accepted
# { "search_id": "SEARCH_ID", "status": "processing", "estimated_time_seconds": 15 }curl https://screenveritai.com/api/v1/search/SEARCH_ID \
-H 'X-API-Key: YOUR_API_KEY'
# 200 OK
# { "id": "SEARCH_ID", "status": "completed",
# "ofac_sanctions": "## OFAC Sanctions Findings ... *No relevant listing found* ...",
# "criminal_watchlists": null, "pep": null }APIのパフォーマンス
€0.39
Quick Check 1回あたり、プラットフォーム料金なし
202
検索が受理されたときのHTTPステータス。その後、結果をポーリングで取得
EU
フィンランドでホスティング。保存データはEU域内に留まります
API連携FAQ
APIリクエストはどのように認証しますか?
APIリクエストは、X-API-Keyヘッダーで渡すシークレットキーを使って認証します。キーはダッシュボードから、必要最小限のスコープ付き権限で作成できます。
APIは同期型ですか、非同期型ですか?
非同期型です。リクエストを送信するとジョブIDが返され、結果はポーリングで取得します。パイプラインがブロックされることはありません。
APIはどのようなレスポンス形式を返しますか?
主要な管轄別フィールドと情報源別の配列に加え、指名手配リストとPEP/RCAの結果を含む構造化JSONです。利用可能なmarkdown、識別情報、出典を確認してください。数値によるリスクスコアは返しません。
どのようなレート制限が適用されますか?
サブスクリプションのプランごとに、APIキー単位で割り当てられます。レスポンスヘッダーには残りクォータとリセット時刻が含まれます。
APIでエンティティを一括スクリーニングできますか?
できます。一括処理用のエンドポイントは、1リクエストあたり最大100行のCSVまたはXLSXを受け付け、結果は行単位、または完全なエクスポートとして取得できます。
APIで継続的モニタリングを設定するにはどうすればよいですか?
初回スクリーニングの後にモニタリングを設定します。リストが更新されたり新たなアドバースメディアが見つかったりすると、モニタリングがその変化を検出し、アプリ内で通知します。
各スクリーニング結果にはどのようなコンプライアンスデータが含まれますか?
あらゆる主要ソースにわたる制裁該当情報、家族関係を含むPEPステータス、多言語の出典付きアドバースメディア、UBOデータ、リスクレベル、タイムスタンプ付きエビデンスバンドルが含まれます。
スクリーニングにはどれくらい時間がかかりますか?
標準の制裁チェックは数秒で完了します。アドバースメディアや出資構造マッピングを含む詳細調査は2分未満です。
API用語集
- REST API
- 標準的なHTTPメソッドを使用するWeb API。HTTPリクエストを送信できる、あらゆる言語やフレームワークと互換性があります。
- 非同期処理
- APIはジョブを即座に受け付け、バックグラウンドで処理します — 結果はポーリングで取得します。
- APIキー
- APIリクエストを認証するための秘密トークンで、最小権限アクセスのために特定の権限がスコープされています。
- レート制限
- サブスクリプションのプランごとに、一定時間内のAPIリクエスト数を制限します — 残りクォータとリセット時刻はレスポンスヘッダーに含まれます。
- 構造化レスポンス
- 一貫したフィールド名と型を持つ機械可読なJSONで、自動的な解析と判断ロジックの実装を可能にします。
AMLスクリーニングのためのREST API
制裁リスト、PEP、犯罪ウォッチリスト、アドバースメディア、KYB・UBOのスクリーニングを、オンボーディング、モニタリング、トランザクションフローに直接組み込めます。APIはすでに稼働中です — APIキーで認証し、Web版と同じスクリーニングエンジンをそのまま呼び出せます。
APIキー認証とプラン別レート制限を備え、一般提供中です。/api/v1/docs のインタラクティブなOpenAPIドキュメントで全エンドポイントをご確認いただけます。
クイックスタート
1. APIキーを作成する
ダッシュボードでスコープ付きAPIキーを作成するか、サーバー間リクエスト用にアカウントのベアラートークンでプログラム的に発行します。
POST/api/v1/keys curl -X POST https://screenveritai.com/api/v1/keys \ -H "Authorization: Bearer <SUPABASE_JWT>" \ -H "Content-Type: application/json" \ -d '{"name":"server-key","permissions":["search:read","search:write"]}'2. 最初の検索を実行する
X-API-Keyヘッダーを付けてエンティティを送信します。APIは検索IDを返し、処理完了後に結果を取得できます。
POST/api/v1/search curl -X POST https://screenveritai.com/api/v1/search \ -H "X-API-Key: <YOUR_API_KEY>" \ -H "Content-Type: application/json" \ -d '{"entity_name":"Acme Ltd","entity_type":"company","search_type":"full_search"}'3. 一括ジョブを送信する
CSV/XLSXファイルを送信して、1回のジョブで多数のエンティティをスクリーニングします。ジョブ完了後に行データやエクスポートを取得できます。
POST/api/v1/batch curl -X POST https://screenveritai.com/api/v1/batch \ -H "X-API-Key: <YOUR_API_KEY>" \ -F "file=@entities.csv"
主要エンドポイント
- POST
/api/v1/search1件のエンティティに対するスクリーニングリクエストを作成します。検索IDと処理ステータスを返します。アカウント、収録範囲、稼働状況の各エンドポイントも /api/v1 配下でご利用いただけます。
認証:X-API-Key(search:write)
- POST
/api/v1/batch大量スクリーニング用にCSV/XLSXファイルを送信し、ジョブ完了後に行データまたはエクスポートを取得します。
認証:X-API-Key(batch:write)
- POST
/api/v1/keysスコープ付き権限、プラン別レート制限、利用状況の追跡機能を備えたAPI認証情報を作成・管理します。
認証:ベアラートークン(account)
Crypto address checks. Source evidence at €0.39.
Check an address against OFAC’s published digital-currency identifiers. Add native-USDC issuer-block status on Ethereum in the same request, at the same price.
€0.39 per completed address check · prepaid PAYG only
- POST
/api/v1/crypto-address/checks - GET
/api/v1/crypto-address/checks/{id}
- OFAC address match
- Exact address lookup under the requested OFAC currency label, such as ETH, XBT, TRX, USDT or USDC. Evidence includes the publication date, source URL, export hash and matching OFAC record.
- Ethereum USDC
- Set network to ethereum to check native-USDC issuer-block status at a finalized Ethereum mainnet block. The result includes the contract address, block number, block hash and contract response. Omit network for an OFAC-only check.
- Create a check
- POST requires X-API-Key with search:write, an Idempotency-Key of 16–128 ASCII letters, digits, underscores, dots, colons or hyphens, and address, currency and integer max_prepaid_cents fields. Set max_prepaid_cents to 39 to authorize the current price. A completed request returns HTTP 200 synchronously.
- Retrieve and retry
- GET requires search:read and returns your saved check without another charge. If a POST response is lost, reuse the same Idempotency-Key and payload. Keep that key while the outcome is uncertain; create a new key only for a deliberate new check.
- Billing
- Completed checks debit €0.39 from your EUR prepaid balance. Minimum balance top-up: €5. Subscription allowances do not apply. Source failures are unpaid.
A negative result means no published OFAC match or no native-USDC issuer block in the checked source. It does not establish wallet ownership or clear an address of all risk.
This is an address-level source check. Transaction tracing, exposure scoring and continuous KYT monitoring are outside its scope. Crypto checks use this separate API; they are not available through name-screening batch uploads, portal history or PDF reports.
チームがAPIを利用する理由
- 制裁、PEP、犯罪ウォッチリスト、アドバースメディア、KYB・UBOスクリーニングを1つの統合でカバー
- X-API-Keyヘッダーによるキー認証。権限をスコープしたキーで最小権限アクセスを実現
- 利用状況ログ付きのプラン別レート制限で、ガバナンスとコストを管理
- 検索、一括処理、キー管理、アカウント、収録範囲、稼働状況の各エンドポイントを /api/v1 配下に用意
- /api/v1/docs のインタラクティブなOpenAPIドキュメントと、機械可読なOpenAPIスキーマ
- 監査ログ、案件ファイル、後続の意思決定にそのまま使える構造化された出力
Integration playbooks
Developer guides
Endpoint contracts and worked examples for sanctions, PEP, criminal watchlists and batch screening.
PEP screening API guide
Implementation patterns for API-key auth, async jobs, and audit logs.
Batch screening workflow
Connect API and file-based flows for high-volume operations.
Workflow template
Map API responses into deterministic screening and escalation decisions.
Criminal watchlist coverage
See the official criminal and wanted-person lists included with sanctions and PEP checks.
API FAQ
APIリクエストはどのように認証しますか?
/api/v1/search および /api/v1/batch へのスクリーニングリクエストは、X-API-Keyヘッダーで送信するAPIキーで認証します。キーはダッシュボードで作成するか、アカウントのベアラートークンで認証した後に /api/v1/keys からプログラム的に作成できます。
APIは一般提供されていますか?
はい。API v1は稼働中で、一般提供されています。APIキーで認証し、検索・一括処理・キー管理の各エンドポイントを呼び出せます。/api/v1/docs のインタラクティブなOpenAPIドキュメントですべてを確認できます。
APIキーの権限をスコープできますか?
できます。キーはsearch:read、search:write、batch:read、batch:writeなどの権限に対応しており、統合ごとに最小権限アクセスを設定できます。
どのようなレート制限が適用されますか?
レート制限はAPIのティアごとに割り当てられ、APIキー単位で適用されます — ティアが決めるのはリクエストのスループットであり、課金額ではありません。レスポンスヘッダーには上限、残りクォータ、リセット時刻が含まれるため、余裕を持って調整できます。
エンドポイントをすぐに試すにはどうすればよいですか?
/api/v1/docs のインタラクティブなドキュメントでSwaggerによる動作確認ができ、/api/v1/redoc ではリファレンス形式のドキュメントをご利用いただけます。OpenAPIスキーマは /api/v1/openapi.json で提供しています。