AbuseIPDB API reference. IP reputation and abuse report lookups.
日本語の概要は準備中です。原文の説明を表示しています。
ReversingLabs Spectra Analyze (A1000) API reference. File hash classification, detailed reports, dynamic analysis, network indicator reputation, advanced search, YARA, container relationships.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
This is reference documentation. The agent-invokable lookup skill is /lookup-reversinglabs; the runtime CLI is tools/clis/reversinglabs.py. Read this file when the lookup skill's options are not enough and you need to know which raw endpoint to hit, what fields a response carries, or how to construct a query the SDK does not expose directly.
Default: https://a1000.reversinglabs.com. Override with REVERSINGLABS_HOST for on-prem or alternate-tenant appliances. The path prefix is /api/.
Token-based. Two paths:
POST /api-token-auth/ with form-encoded username and password. The endpoint returns {"token": "<value>"}. The SDK does this automatically at A1000(...) init when given username= and password=.token= to the SDK or set the header manually.All subsequent requests carry: Authorization: Token <token_value> (note: Token, not Bearer, not Basic).
# Manual token exchange
TOKEN=$(curl -s -X POST "https://a1000.reversinglabs.com/api-token-auth/" \
-d "username=$REVERSINGLABS_USER&password=$REVERSINGLABS_PASSWORD" | jq -r .token)
# Subsequent call
curl -s "https://a1000.reversinglabs.com/api/samples/v3/<hash>/classification/" \
-H "Authorization: Token $TOKEN"
If the env vars are unset, inform the user to run /cti-setup or ./scripts/setup.sh.
No per-minute/day quota is publicly documented for A1000. The API returns HTTP 429 with a Retry-After: <seconds> header when limits are exceeded. The SDK polls submission endpoints at 2-second intervals for up to 10 retries before raising.
| Group | Notable endpoint(s) | SDK methods |
|---|---|---|
| Tokens | POST /api-token-auth/ | (init flow) |
| Submission | POST /api/uploads/ | submit_file_from_path, submit_file_from_handle, submit_url, submit_file_and_get_*, submit_url_and_get_report |
| Processing status | GET /api/samples/status/ | file_analysis_status, check_submitted_url_status |
| Reports | POST /api/samples/v2/list/, POST /api/samples/v2/list/details/ | get_summary_report_v2, get_detailed_report_v2, get_titanium_core_report_v2, get_submitted_url_report |
| Dynamic analysis | POST/GET /api/rl_dynamic_analysis/... | create_dynamic_analysis_report, check_dynamic_analysis_report_status, download_dynamic_analysis_report |
| PDF reports | POST/GET /api/pdf_report/... | create_pdf_report, check_pdf_report_creation, download_pdf_report |
| Classification | GET /api/samples/v3/<hash>/classification/ | get_classification_v3, set_classification, delete_classification |
| Reanalysis | POST /api/samples/v2/reanalyze_bulk/ | reanalyze_samples_v2 |
| Extracted files | GET /api/samples/v2/<hash>/extracted-files/ | list_extracted_files_v2, list_extracted_files_v2_aggregated, download_extracted_files |
| Sample admin | GET /api/samples/<hash>/download/, DELETE /api/samples/v2/delete/ | download_sample, delete_samples, check_sample_removal_status_v2 |
| User tags | GET/POST/DELETE /api/tag/<hash>/ | get_user_tags, post_user_tags, delete_user_tags |
| YARA rulesets | /api/yara/v2/... | get_yara_rulesets_on_the_appliance_v2, get_yara_ruleset_contents, get_yara_ruleset_matches_v2, create_or_update_yara_ruleset, delete_yara_ruleset, enable_or_disable_yara_ruleset |
| YARA retro-hunt | /api/yara/retro/... | start_or_stop_yara_local_retro_scan, get_yara_local_retro_scan_status, start_or_stop_yara_cloud_retro_scan, get_yara_cloud_retro_scan_status |
| YARA repo (GitHub sources) | /api/yara/repositories/... | get_yara_repositories, create_yara_repository, update_yara_repository, delete_yara_repository |
| Advanced search | POST /api/samples/v2/advanced_search/ | advanced_search_v3, advanced_search_v3_aggregated |
| Containers | POST /api/samples/containers/ | list_containers_for_hashes |
| Network threat intel | /api/network-threat-intel/... | network_url_report, network_domain_report, network_ip_addr_report, network_ip_to_domain[_aggregated], network_urls_from_ip[_aggregated], network_files_from_ip[_aggregated] |
curl -s "https://a1000.reversinglabs.com/api/samples/v3/<hash>/classification/?localOnly=false&av_scanners=true" \
-H "Authorization: Token $TOKEN"
Response highlights: classification (malicious/suspicious/goodware/unknown), riskscore (0–10), classification_origin, av_scanners.scanner_match.
curl -s -X POST "https://a1000.reversinglabs.com/api/samples/v2/list/details/" \
-H "Authorization: Token $TOKEN" \
-H "Content-Type: application/json" \
-d '{"hash_values": ["<hash>"], "fields": ["classification","riskscore","attack","tags","ticore","networkthreatintelligence"]}'
Useful response fields:
| Field | Content |
|---|---|
classification | Verdict |
classification_result | Threat-name string (e.g. Win32.Backdoor.Prorat) |
riskscore | 0–10 |
ticore | TitaniumCore static analysis: format, headers, imports, strings, anomalies |
av_scanners / av_scanners_summary | Per-engine + aggregate AV results |
tags | Analyst + system tags |
ticloud | Spectra Intelligence (TitaniumCloud) reputation when available |
attack | MITRE ATT&CK tactics + techniques (objects with tactic_id, technique_id, technique_name) |
rl_cloud_sandbox | Dynamic analysis output |
cape / cuckoo / joe / vmray_tcbase / fireeye / cisco_secure_malware_analytics | Sandbox results per engine if configured |
networkthreatintelligence | Network indicators extracted from the sample |
domainthreatintelligence | Domain-level intel from network activity |
extracted_file_count | Number of embedded/extracted files |
sources / aliases | Sample provenance + filenames |
curl -s -X POST "https://a1000.reversinglabs.com/api/samples/v2/advanced_search/" \
-H "Authorization: Token $TOKEN" \
-H "Content-Type: application/json" \
-d '{"query": "threatname:Lockbit classification:malicious", "ticloud": false, "page": 1, "records_per_page": 100}'
Searchable fields include: classification, av-detection, type (sampletype), positives, firstseen, lastseen, threatname, sampletype, filecount, size, sha1, sha256, md5, tlsh, ssdeep, imphash, tag, family. Combine with implicit AND. Comparison operators: >, >=, <, <=, ranges with :>2025-01-01.
# IP reputation
curl -s "https://a1000.reversinglabs.com/api/network-threat-intel/ip/8.8.8.8/report/" \
-H "Authorization: Token $TOKEN"
# Files seen on an IP
curl -s "https://a1000.reversinglabs.com/api/network-threat-intel/ip/8.8.8.8/downloaded_files/?extended=true" \
-H "Authorization: Token $TOKEN"
# Domain reputation
curl -s "https://a1000.reversinglabs.com/api/network-threat-intel/domain/example.com/" \
-H "Authorization: Token $TOKEN"
# URL reputation
curl -s -X POST "https://a1000.reversinglabs.com/api/network-threat-intel/url/" \
-H "Authorization: Token $TOKEN" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/path"}'
# What containers spawned this hash?
curl -s -X POST "https://a1000.reversinglabs.com/api/samples/containers/" \
-H "Authorization: Token $TOKEN" \
-H "Content-Type: application/json" \
-d '{"hash_values": ["<child-hash>"]}'
# What files came out of this hash?
curl -s "https://a1000.reversinglabs.com/api/samples/v2/<parent-hash>/extracted-files/?page_size=100&page=1" \
-H "Authorization: Token $TOKEN"
Spectra Intelligence (formerly TitaniumCloud) is a separate cloud product with separate credentials, exposed via from ReversingLabs.SDK.ticloud import .... A1000 can query it as enrichment:
get_classification_v3(..., local_only=False)advanced_search_v3(..., ticloud=True)ticloud field in detailed reportsThese flags use the appliance's own TitaniumCloud license — they do not require additional credentials from the calling user. To query Spectra Intelligence directly (e.g. RHA1FunctionalSimilarity for fuzzy-hash sample search), separate TICLOUD_USER / TICLOUD_PASSWORD would be required and a separate skill would be needed; that is out of scope here.
The lookup skill emits a normalised envelope. See skills/lookup-reversinglabs/SKILL.md § Response format.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
AbuseIPDB API reference. IP reputation and abuse report lookups.
日本語の概要は準備中です。原文の説明を表示しています。
Analysis of Competing Hypotheses — structured technique for evaluating multiple explanations against evidence. Use when facing ambiguous attribution or multiple plausible scenarios. Prefers graded evidence items from /quality-of-information-check and runs that skill first when handed raw URLs or text. Runs on ungraded evidence when asked, labelled as such, unweighted, and capped at Moderate confidence.
日本語の概要は準備中です。原文の説明を表示しています。
Use when documenting a named campaign across time and victims, the user asks to start or update a campaign record, or another skill identified a multi-incident cluster that warrants formal tracking. Provides the template (timeline, attribution, victimology, attack chain, Diamond Model mapping, IOC clusters) and the lifecycle from active to historical.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user asks about carding, BIN attacks, payment-card breach markets, fullz/CVV2 trade, autoshops (BidenCash, Brian's Club, Russianmarket, B1ack's Stash), or financial-fraud TTPs. Self-updating knowledge cell.
日本語の概要は準備中です。原文の説明を表示しています。
Censys API v2 reference. Host reconnaissance and certificate data.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user asks about Chinese state-sponsored cyber operations or specific PRC-aligned actors (APT41, Volt Typhoon, Mustang Panda, APT10, APT31, Salt Typhoon, etc.), MSS/PLA-attributed campaigns, or PRC sector targeting. Self-updating knowledge cell.
日本語の概要は準備中です。原文の説明を表示しています。