## By channel IDs

Use this when you need: **By channel IDs**.

## Usage

```javascript
import { NeynarAPIClient, Configuration } from "@neynar/nodejs-sdk";

const client = new NeynarAPIClient(
  new Configuration({ apiKey: "YOUR_NEYNAR_API_KEY" })
);

const res = await client.fetchFeedByChannelIds({
  channelIds: "example", // Comma separated list of up to 10 channel IDs e.g. neynar,farcaster
  // xNeynarExperimental: true,
  // withRecasts: true,
  // viewerFid: 123,
  // withReplies: true,
  // membersOnly: true,
  // fids: "example",
  // limit: 123,
  // cursor: "example",
  // shouldModerate: true,
});
console.log(res);
```

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `channelIds` | `string` | ✅ | Comma separated list of up to 10 channel IDs e.g. neynar,farcaster |
| `xNeynarExperimental` | `boolean` | ❌ | - |
| `withRecasts` | `boolean` | ❌ | - |
| `viewerFid` | `number` | ❌ | - |
| `withReplies` | `boolean` | ❌ | - |
| `membersOnly` | `boolean` | ❌ | - |
| `fids` | `string` | ❌ | - |
| `limit` | `number` | ❌ | - |
| `cursor` | `string` | ❌ | - |
| `shouldModerate` | `boolean` | ❌ | - |

## Response

Returns a `RequestArgs` object.

## Error Handling

```javascript
try {
  const res = await client.fetchFeedByChannelIds({
    channelIds: "example"
  });
  // use res
} catch (err) {
  // Axios/HTTP errors, invalid params, auth issues, etc.
  console.error(err);
}
```

## Tips

- Provide a **viewerFid** when supported to respect mutes/blocks and include `viewer_context`.
- Keep requests scoped (e.g., use `limit`) to improve latency.
- Cache results where sensible.
