{"uid":"cap_9VukzOO093ajLmwkto7nE","slug":"nightshift-hook-inspector-daeab40b","name":"NIGHTSHIFT Hook Inspector","description":"A space station of AI companies, agents and games built on IMD, the AI agent swarm. Pick a room: Breakroom, Geek Room, Info, HR &amp; Economy, Command.","url":"https://getnightshift.tech/api/v1/hook/%7Baddress%7D?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","properties":{"properties":{"type":"string"}}},"responseSchema":{"type":"json","example":{"fees":{"hookFee":"takes its own fee: beforeSwapReturnsDelta and afterSwapReturnsDelta set and it moves pool currency out with PoolManager.take/mint (settings: MAX_FEE_BPS = 250, ethFeeBps = 250, shiftFeeBps = 250), to feeSplitter 0x1119…2d44","swapFee":"125 bps static"},"risk":"low","flags":{"hex":"0x20cc","valid":true},"powers":[{"text":"the owner can change fees (setFees), capped by MAX_FEE_BPS = 250","level":"low"}],"address":"0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc","service":"hook-inspector","summary":"NightshiftHook. The PoolManager calls beforeInitialize, beforeSwap, afterSwap (with beforeSwapReturnsDelta, afterSwapReturnsDelta). Takes its own fee … to feeSplitter 0x1119…2d44. Owner: wallet 0x6c4c…19b5. Not a proxy and no DELEGATECALL: the code cannot change.","evidence":[{"url":"https://sourcify.dev/server/repo-ui/1/0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc","kind":"source"}],"template":{"name":"NightshiftHook","match":"exact address"},"callbacks":[{"name":"beforeSwap","implemented":true},{"name":"afterSwap","implemented":true},{"name":"beforeInitialize","implemented":true}]}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.05","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.05/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_vbRWjjlp1U4dr3WVmlPGs","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.05","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Inspects a Uniswap v4 hook contract address and returns its fee structure, callback flags, risk profile, and ownership details","exampleAgentPrompt":"Can you inspect the Uniswap v4 hook at address 0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc and tell me what fees it takes, what callbacks it implements, and whether it's risky?","exampleUseCases":[{"title":"Auditing a hook before providing liquidity","prompt":"Before I add liquidity to this pool, can you check the hook at 0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc — I want to know the fee breakdown, whether the owner can change fees, and if there's any DELEGATECALL risk?"},{"title":"Comparing hook fee structures","prompt":"Look up the hook inspector results for 0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc — specifically what bps fees it charges and where those fees go?"},{"title":"Verifying hook callback implementation","prompt":"Can you check which Uniswap v4 callbacks are actually implemented by the hook at 0x42ebcf86e3ab0445ba0362f911a7e8fad6ace0cc — like beforeSwap, afterSwap, beforeInitialize?"}],"resultDescription":"Returns a JSON object with: fee details (hookFee description, static swapFee in bps), risk rating, hex flags with validity, owner powers list, contract address, service name, a plain-English summary, source evidence URLs, template match info, and a list of implemented callbacks with their status.","failureModes":["Invalid or non-existent contract address returns error or empty result","Contract not verified on Sourcify — evidence links may be absent","Non-hook contract address returns unexpected or empty callback list","Network congestion may delay response","Address format errors (missing 0x prefix) may cause parsing failure"],"whenToPreferThis":"Use this endpoint when you need to programmatically inspect a specific Uniswap v4 hook contract — especially to assess its fee structure, risk level, ownership model, and implemented callbacks before interacting with a pool that uses it. It is purpose-built for hook auditing on Ethereum mainnet and returns structured, machine-readable results ideal for agent workflows.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-26T18:33:27.194Z","isFirstParty":false,"canonicalSlug":"nightshift-hook-inspector-daeab40b"}