Appear JS introspector
Unlock the full potential of your existing APIs @ Appear.sh
Appear is a API development platform that helps companies understand, improve and manage their internal APIs.
This JS introspector is a tool that listens to both incoming and outgoing traffic in JS runtime (browser, node) and detects the shape (schema) of it and reports this schema to Appear platform where it's further merged, processed and analyzed.
Because it reports only schema of the traffic it never sends any actual content of the data nor PII.
Usage
- Install using your favourite package manager
npm i @appear.sh/introspector
yarn add @appear.sh/introspector
pnpm add @appear.sh/introspector
- In entrypoint of your service initialise the introspector
Appear.init({
apiKey: "your-api-key",
environment: process.env.NODE_ENV,
})
- you're done, now you can login into app.appear.sh and see what's being reported
Configuration
export interface AppearConfig {
apiKey: string
environment: string
enabled?: boolean
reporting?: {
endpoint?: string
batchIntervalSeconds?: number
batchSize?: number
}
interception?: {
disableXHR?: boolean
filter?: (
request: Request,
response: Response,
config: ResolvedAppearConfig,
) => boolean
}
}
Framework specific integrations
Not all services are deployed as a node applications. If that applies to you, you can either use one of pre-built integrations, or write your own adapter.
RedwoodJS at vercel
- Create a file where you can instantiate Appear, for example:
api/src/withAppear.ts
import { createVercelMiddleware } from "@appear.sh/introspector/integrations/redwoodjs"
export const withAppear = createVercelMiddleware({
apiKey: "your-api-key",
environment: process.env.NODE_ENV,
})
- Wrap your Serverless Functions (API Endpoints) in
withAppear
import { withAppear } from "src/withAppear"
export const handler = withAppear(async (event, context) => {
})
- Once finished, any calls to your APIs should show up in Appear