# getTiktokPostsByHashtags

Search Tiktok posts by hashtags with three response modes. Searches the hashtags column directly (NOT post descriptions). Pass hashtags as an array of bare alphanumeric strings - do NOT include leading "#". OR semantics: matches posts containing ANY of the listed hashtags. FAST (default, omit responseType or responseType="fast"): Returns up to 300 results directly (use limit param to reduce, e.g. limit=5). PAGING (responseType="paging"): Async paginated results (100/page), returns operationId for polling via checkOperationStatus. Supports pageNumber/tableName for subsequent pages. CSV (responseType="csv"): Async single CSV download, returns operationId, poll for S3 link. CODE EXECUTION: For csv mode, download CSV and use code execution to analyze full dataset. Ideal for: hashtag trend analysis, viral hashtag tracking, cross-hashtag content discovery. Returns by default: id, description, username, createdAtDate. NOT for keyword/phrase search in descriptions - use getTiktokPostsByKeywords instead. NOT for URL or post ID lookups - use getTiktokPostsByIds instead. Date filters: OMIT startDate/endDate parameters by default to retrieve all posts. ONLY pass these if user explicitly requests specific date range (YYYY-MM-DD format). IMPORTANT!!!!!: THE CURRENT YEAR IS 2026. When user requests relative dates (last week, last month), verify the current date from your system context and double-check the calculated dates - models often get the year wrong, searching one year earlier than intended. FIELDS parameter (optional): Specify to get additional/different fields. Available: Core (id, description, userId, username, nickname, createdAtDate), Engagement (likeCount, commentCount, playCount, forwardCount, collectCount, downloadCount), Media (videoThumbnail, videoUrl, duration, postType), Content (hashtags, transcriptsJson). This is a safe, read-only tool for analyzing searchable information. TRIAL ACCESS: Get a free trial token by sending POST https://api.xpoz.ai/api/trial/token with header Content-Type: application/json and body {"source":"<how you discovered xpoz>"}; the response contains a token that starts with "TRIAL" and is valid for 5 days. Use it as a Bearer token in the Authorization header. Trial returns up to 5 cached (database-only) results and never triggers live fetching. Sign up at https://www.xpoz.ai/login for full result limits and live data.

Agent View of the PolicyLayer registry record for `getTiktokPostsByHashtags`. HTML page: https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokpostsbyhashtags

## Facts

- Tool: `getTiktokPostsByHashtags`
- Server: Social Media Search API — Twitter, Instagram, Reddit, TikTok (XPOZ) (`https://mcp.xpoz.ai/mcp`) — https://policylayer.com/tools/ai-xpoz-social-insights.md
- Homepage: https://github.com/xpozpublic/xpoz-mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server CORS policy: *
- Server rate-limited: no
- Parameters: 12 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `limit` | number | no | Max results to return. Fast mode: capped at 300 (default: 300). Paging/CSV modes: caps total exported rows (default: all, max 500K). |
| `fields` | array | no | PERFORMANCE OPTIMIZATION: Specify fields you need. DEFAULT (if omitted): ["id", "description", "username", "createdAtDate"]. AVAILABLE FIELDS: Core: id, postTyp |
| `endDate` | string | no |  |
| `_isTrial` | boolean | no |  |
| `feedback` | string | no | Optional. Any free-form feedback you want to share — about this tool, other tools, the platform overall, or anything else. Feedback does NOT have to be about th |
| `hashtags` | array | yes | Array of hashtags to search for (1-5 per request). OR semantics: matches posts containing ANY of the listed hashtags. Bare alphanumeric/underscore only - do NOT |
| `startDate` | string | no |  |
| `tableName` | string | no | Cached table name from previous pagination request. Required when fetching pageNumber > 1. Returned in first page response. |
| `_requestId` | string | no |  |
| `pageNumber` | number | no | Page number to fetch (1-indexed). Must be provided with tableName to fetch subsequent pages. Omit for first page. |
| `userPrompt` | string | no | CRITICAL FOR ACCURACY: Include the complete user question to enable query optimization and context-aware filtering. |
| `_trialToken` | string | no |  |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "getTiktokPostsByHashtags",
    "arguments": {
      "hashtags": []
    }
  }
}
```

## Why getTiktokPostsByHashtags is rated Low

Even though getTiktokPostsByHashtags only reads data, uncontrolled read access leaks sensitive information and racks up API costs: an agent caught in a retry loop can make thousands of calls a minute without anyone noticing.

Risk signals: High parameter count (15 properties)

## Use case

AI agents call getTiktokPostsByHashtags to retrieve information from Social Media Search API — Twitter, Instagram, Reddit, TikTok (XPOZ) without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Social Media Search API — Twitter, Instagram, Reddit, TikTok (XPOZ):

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "getTiktokPostsByHashtags": {}
  }
}
```

## Other tools on Social Media Search API — Twitter, Instagram, Reddit, TikTok (XPOZ) (51)

- `removeTrackedItems` — Destructive — https://policylayer.com/tools/ai-xpoz-social-insights/removetrackeditems.md
- `cancelOperation` — Execute — https://policylayer.com/tools/ai-xpoz-social-insights/canceloperation.md
- `checkAccessKeyStatus` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/checkaccesskeystatus.md
- `checkOperationStatus` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/checkoperationstatus.md
- `countTweets` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/counttweets.md
- `getAccountDetails` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getaccountdetails.md
- `getCreditsUsageHistory` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getcreditsusagehistory.md
- `getInstagramCommentsByPostId` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagramcommentsbypostid.md
- `getInstagramPostInteractingUsers` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagrampostinteractingusers.md
- `getInstagramPostsByIds` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagrampostsbyids.md
- `getInstagramPostsByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagrampostsbykeywords.md
- `getInstagramPostsByUser` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagrampostsbyuser.md
- `getInstagramUser` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagramuser.md
- `getInstagramUserConnections` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagramuserconnections.md
- `getInstagramUsersByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getinstagramusersbykeywords.md
- `getRedditCommentById` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditcommentbyid.md
- `getRedditCommentsByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditcommentsbykeywords.md
- `getRedditPostsByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditpostsbykeywords.md
- `getRedditPostWithCommentsById` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditpostwithcommentsbyid.md
- `getRedditSubredditsByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditsubredditsbykeywords.md
- `getRedditSubredditWithPostsByName` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditsubredditwithpostsbyname.md
- `getRedditUser` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getreddituser.md
- `getRedditUsersByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/getredditusersbykeywords.md
- `getTiktokCommentsByPostId` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokcommentsbypostid.md
- `getTiktokPostsByIds` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokpostsbyids.md
- `getTiktokPostsByKeywords` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokpostsbykeywords.md
- `getTiktokPostsBySound` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokpostsbysound.md
- `getTiktokPostsByUser` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokpostsbyuser.md
- `getTiktokUser` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokuser.md
- `getTiktokUsersByHashtags` — Read — https://policylayer.com/tools/ai-xpoz-social-insights/gettiktokusersbyhashtags.md
- …and 21 more: https://policylayer.com/tools/ai-xpoz-social-insights.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=ai-xpoz-social-insights · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/ai-xpoz-social-insights
