Unblock a company by its normalized domain. Idempotent — unknown domains return 200.
blocked_companies matching user_id + domain. The {domain} segment must be URL-encoded; the server decodeURIComponents and lowercases it before matching.
Delete-by-domain is a no-op at the database level when no row matches — the response is still { success: true }.
{ success: true }. No way to distinguish “deleted a row” from “nothing matched” via this endpoint.Name-only entries aren’t reachable here. Blocklist rows created with name but no domain have domain: null and cannot be removed via this path — use deleteBlockedCompanyById with the row UUID instead.Encoding. Hosts with special characters (ports, punycode, etc.) must be URL-encoded in the path. The server decodes once — double-encoding breaks the match.Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
URL-encoded domain to remove. The server decodes and lowercases before matching.
Delete issued. Returns { success: true } whether or not a row was actually removed (Supabase delete is a no-op on no match).
true