# Text-based AI Search Search for influencers using a text based query i.e. "woman with curly hair lifting weights" (along with other filters). This API has a fixed 1 RPS limit for searches. Each successful request consumes 0.15 credits. Endpoint: POST /ai/text-search Security: accessToken ## Request fields (application/json): - `page` (number) Page number, each page contains max. 6 results - `filters` (object) Additional filters to refine the search results - `filters.followersCount` (object) Filter by followers count - `filters.followersCount.min` (number) Minimum followers count - `filters.followersCount.max` (number) Maximum followers count - `filters.locations` (array) Filter by locations (use Locations dictionary endpoint to get the location IDs) - `filters.gender` (string) Filter by gender; KNOWN -> male or female, UNKNOWN -> gender neutral Enum: "MALE", "FEMALE", "KNOWN", "UNKNOWN" - `filters.lastPostedInDays` (number) Filter by influencers with latest post date, in days. P.S. we update profiles every 4 weeks and this lag should be considered when using this field. Example: 90 - `filters.accountType` (string) Filter by account type Enum: "creator", "brand" - `filters.language` (string) Filter by language (use Languages dictionary endpoint to get the language IDs) - `filters.age` (object) Filter by age range - `filters.age.min` (string) Minimum age range Enum: "13", "18", "25", "35", "45", "65" - `filters.age.max` (string) Maximum age range Enum: "18", "25", "35", "45", "65" - `filters.engagementRate` (object) Filter by engagement rate - `filters.engagementRate.min` (number) Minimum engagement rate (in percentage, 0.01 = 1%) Example: 0.01 - `filters.hasEmail` (boolean) Filter by whether the influencer has an email - `filters.brands` (array) Filter by brands (Use AI search's Brand Dictionary endpoint to get the brand names. P.S. this is a different endpoint than existing Brand Dictionary endpoint). - `query` (string) Example: woman with curly hair lifting weights. Queries can be sent in any language, but English yields the best results. Limit: 1024 characters or 64 words. If omitted, results are sorted by follower count. Example: "woman with curly hair lifting weights" ## Response 200 fields (application/json): - `error` (boolean) If there is an error - `total` (number, required) Total number of profiles matching the search query - `profiles` (array, required) List of influencer profiles matching the search query and filters - `profiles.userId` (string) User ID Example: "173560420" - `profiles.fullName` (string) Full name Example: "Instagram" - `profiles.username` (string, required) Username Example: "instagram" - `profiles.profilePicture` (string, required) Profile Picture Example: "https://imgigp.modash.io/22159423_1794482210565499_9190891265074397184_n.jpg" - `profiles.followersCount` (number, required) Followers count Example: 313560626 - `profiles.engagementRate` (number, required) Engagement rate Example: 0.01 - `profiles.accountCategory` (string, required) Account category Example: "Sportsperson / Digital creator etc." - `profiles.matchedPosts` (array, required) Posts ordered by relevance to the search query - `profiles.matchedPosts.id` (string, required) Post ID - `profiles.matchedPosts.url` (string, required) Post URL - `profiles.matchedPosts.thumbnail` (string, required) Post thumbnail URL - `profiles.matchedPosts.stats` (object, required) Post statistics - `profiles.matchedPosts.stats.likesCount` (number, required) Likes count; -1 if likes count is hidden - `profiles.matchedPosts.stats.commentsCount` (number, required) Comments count; -1 if comments count is hidden - `profiles.recentPosts` (array, required) Recent posts (not necessarily relevant to the search query). P.S. we update profiles every 4 weeks and this lag should be considered when using this field.