Search posts
curl --request POST \
--url https://api.tryklint.ai/v1/instagram/posts/search \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tryklint.ai/v1/instagram/posts/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tryklint.ai/v1/instagram/posts/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tryklint.ai/v1/instagram/posts/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.tryklint.ai/v1/instagram/posts/search"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.tryklint.ai/v1/instagram/posts/search")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tryklint.ai/v1/instagram/posts/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyPosts
Search posts
Find posts with a semantic query and structured filters; returns post summaries.
POST
/
v1
/
instagram
/
posts
/
search
Search posts
curl --request POST \
--url https://api.tryklint.ai/v1/instagram/posts/search \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tryklint.ai/v1/instagram/posts/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tryklint.ai/v1/instagram/posts/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tryklint.ai/v1/instagram/posts/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.tryklint.ai/v1/instagram/posts/search"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.tryklint.ai/v1/instagram/posts/search")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tryklint.ai/v1/instagram/posts/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodySearches what Klint tracks for posts. Returns fixed-shape post summaries in relevance order (query-bearing) or optional sorted order (filters-only).
An initial request needs at least one non-empty
Filters-only with sort:
Request body
| Field | Type | Notes |
|---|---|---|
post | object, required | The post scope |
post.query | string | Natural-language content intent, โค 2,000 chars. Supplies relevance ordering |
post.filters | object | Post filter fields; operator objects only |
post.author | object | { "filters": ... }: author filters that constrain the account that published the post |
sort | object | { "by", "order" }. Filters-only requests only; Klint rejects it with a query |
limit | integer | 1โ100, default 20 |
cursor | string | Continuation: send only cursor + optional same-or-lower limit |
query or filter scope. Complete grammar, limits, and invalid-request examples: Search posts โบ filtering.
Examples
Query-bearing:{
"post": {
"query": "UGC-style grooming-product demonstrations",
"filters": {
"posted_at": {
"gte": "2026-06-01T00:00:00Z"
},
"format": {
"in": ["reel"]
}
},
"author": {
"filters": {
"followers_count": {
"gte": 5000,
"lte": 50000
},
"niches": {
"contains_any": ["pets"]
}
}
}
},
"limit": 10
}
200 response
200 response
{
"request_id": "req_example_01",
"data": [
{
"id": "ig_post_8f3k2",
"shortcode": "DLm2XwYv4Qk",
"web_url": "https://www.instagram.com/reel/DLm2XwYv4Qk/",
"posted_at": "2026-07-06T14:02:00Z",
"observed_at": "2026-07-14T16:10:00Z",
"format": "reel",
"primary_language": "en",
"caption": "The brush that finally fixed our shedding problem ๐ One week of daily passes and the couch is fur-free. Grab 20% off with code GROOM20 โ link in bio. #doggrooming",
"hashtags": [
"doggrooming"
],
"caption_mentions": [],
"audio": {
"id": "ig_audio_7m4q",
"instagram_id": "587784541076604",
"type": "music",
"title": "Birthday Wish",
"attribution": {
"display_name": "Shuba",
"account": null
},
"duration_seconds": 153.76,
"web_url": "https://www.instagram.com/reels/audio/587784541076604/"
},
"content_summary": "A creator demonstrates a deshedding brush on a dog, describes a less-messy grooming routine, shows the result, and directs viewers to a discount in the Account bio.",
"topics": [
"dog_grooming",
"at_home_pet_care"
],
"creative_formats": [
"talking_head",
"product_demonstration",
"creator_testimonial"
],
"hook": {
"construction": "The creator holds the brush beside a visibly shedding dog, states that it changed the grooming routine, and displays a seven-day result claim.",
"devices": [
"problem_callout",
"direct_promise"
],
"modalities": [
"visual",
"spoken",
"on_screen_text"
]
},
"key_messages": [
{
"summary": "The brush is presented as making at-home shedding cleanup easier.",
"roles": [
"claim",
"benefit",
"use_case"
],
"presentation": "asserted"
}
],
"proofs": [
{
"summary": "The creator demonstrates brushing the dog and shows the collected hair.",
"mechanisms": [
"live_product_demonstration",
"result_reveal"
],
"cited_source_types": []
}
],
"offers": [
{
"summary": "20% off with a stated promo code.",
"types": [
"discount",
"promo_code"
],
"stated_terms": [
"20% off",
"GROOM20"
]
}
],
"calls_to_action": [
{
"summary": "Use the link in the Account bio.",
"actions": [
"visit_profile_link"
],
"stages": [
"closing"
],
"modalities": [
"spoken",
"on_screen_text",
"caption"
]
}
],
"narrative_structure": {
"description": "Problem framing, product demonstration, result reveal, then offer and CTA.",
"patterns": [
"problem_solution",
"demonstration_to_result",
"offer_close"
]
},
"has_paid_partnership_label": false,
"paid_partners": [],
"commercial_contexts": [
"promo_code",
"seller_behavior"
],
"comments_enabled": true,
"views": 412000,
"likes": 28600,
"comments": 354,
"engagement_rate_by_views": 0.0703,
"view_ratio_to_account_baseline": 6.2,
"author": {
"id": "ig_account_2j1x",
"handle": "dogmomdaily",
"display_name": "Dog Mom Daily",
"web_url": "https://www.instagram.com/dogmomdaily/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_2j1x/avatar",
"followers_count": 21400,
"is_verified": false
},
"coauthors": []
},
{
"id": "ig_post_9m3t",
"shortcode": "DMq7RwXk2Pd",
"web_url": "https://www.instagram.com/reel/DMq7RwXk2Pd/",
"posted_at": "2026-06-24T19:15:00Z",
"observed_at": "2026-07-14T13:40:00Z",
"format": "reel",
"primary_language": "en",
"caption": "POV: shedding season with a husky ๐
This grooming glove is the only thing keeping our couch alive. #huskylife #sheddingseason #doggrooming",
"hashtags": [
"huskylife",
"sheddingseason",
"doggrooming"
],
"caption_mentions": [],
"audio": {
"id": "ig_audio_2b8c",
"instagram_id": null,
"type": "original_sound",
"title": "Original audio",
"attribution": {
"display_name": "brodyandbear",
"account": {
"id": "ig_account_3d6p",
"handle": "brodyandbear",
"display_name": "Brody & Bear",
"web_url": "https://www.instagram.com/brodyandbear/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_3d6p/avatar",
"followers_count": 12400,
"is_verified": false
}
},
"duration_seconds": 18.9,
"web_url": null
},
"content_summary": "A dog owner films a casual at-home demonstration of a grooming glove on a shedding husky, showing the removed undercoat and joking about protecting the couch.",
"topics": [
"dog_grooming",
"at_home_pet_care"
],
"creative_formats": [
"product_demonstration"
],
"hook": {
"construction": "A point-of-view framing of shedding season opens on a husky mid-shed before the owner pulls out the grooming glove.",
"devices": [
"relatable_scenario"
],
"modalities": [
"visual",
"on_screen_text"
]
},
"key_messages": [
{
"summary": "The grooming glove is presented as an easy way to control husky shedding at home.",
"roles": [
"claim",
"benefit"
],
"presentation": "asserted"
}
],
"proofs": [
{
"summary": "The owner demonstrates the glove on the husky and shows the removed fur.",
"mechanisms": [
"live_product_demonstration",
"result_reveal"
],
"cited_source_types": []
}
],
"offers": [],
"calls_to_action": [],
"narrative_structure": null,
"has_paid_partnership_label": false,
"paid_partners": [],
"commercial_contexts": [],
"comments_enabled": true,
"views": 156000,
"likes": 9800,
"comments": 412,
"engagement_rate_by_views": 0.0655,
"view_ratio_to_account_baseline": null,
"author": {
"id": "ig_account_3d6p",
"handle": "brodyandbear",
"display_name": "Brody & Bear",
"web_url": "https://www.instagram.com/brodyandbear/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_3d6p/avatar",
"followers_count": 12400,
"is_verified": false
},
"coauthors": []
}
],
"has_more": false,
"next_cursor": null
}
{
"post": {
"filters": {
"posted_at": {
"gte": "2026-06-01T00:00:00Z"
},
"format": {
"in": ["reel"]
}
},
"author": {
"filters": {
"followers_count": {
"gte": 5000,
"lte": 50000
}
}
}
},
"sort": {
"by": "views",
"order": "desc"
},
"limit": 10
}
200 response
200 response
{
"request_id": "req_example_02",
"data": [
{
"id": "ig_post_8f3k2",
"shortcode": "DLm2XwYv4Qk",
"web_url": "https://www.instagram.com/reel/DLm2XwYv4Qk/",
"posted_at": "2026-07-06T14:02:00Z",
"observed_at": "2026-07-14T16:10:00Z",
"format": "reel",
"primary_language": "en",
"caption": "The brush that finally fixed our shedding problem ๐ One week of daily passes and the couch is fur-free. Grab 20% off with code GROOM20 โ link in bio. #doggrooming",
"hashtags": [
"doggrooming"
],
"caption_mentions": [],
"audio": {
"id": "ig_audio_7m4q",
"instagram_id": "587784541076604",
"type": "music",
"title": "Birthday Wish",
"attribution": {
"display_name": "Shuba",
"account": null
},
"duration_seconds": 153.76,
"web_url": "https://www.instagram.com/reels/audio/587784541076604/"
},
"content_summary": "A creator demonstrates a deshedding brush on a dog, describes a less-messy grooming routine, shows the result, and directs viewers to a discount in the Account bio.",
"topics": [
"dog_grooming",
"at_home_pet_care"
],
"creative_formats": [
"talking_head",
"product_demonstration",
"creator_testimonial"
],
"hook": {
"construction": "The creator holds the brush beside a visibly shedding dog, states that it changed the grooming routine, and displays a seven-day result claim.",
"devices": [
"problem_callout",
"direct_promise"
],
"modalities": [
"visual",
"spoken",
"on_screen_text"
]
},
"key_messages": [
{
"summary": "The brush is presented as making at-home shedding cleanup easier.",
"roles": [
"claim",
"benefit",
"use_case"
],
"presentation": "asserted"
}
],
"proofs": [
{
"summary": "The creator demonstrates brushing the dog and shows the collected hair.",
"mechanisms": [
"live_product_demonstration",
"result_reveal"
],
"cited_source_types": []
}
],
"offers": [
{
"summary": "20% off with a stated promo code.",
"types": [
"discount",
"promo_code"
],
"stated_terms": [
"20% off",
"GROOM20"
]
}
],
"calls_to_action": [
{
"summary": "Use the link in the Account bio.",
"actions": [
"visit_profile_link"
],
"stages": [
"closing"
],
"modalities": [
"spoken",
"on_screen_text",
"caption"
]
}
],
"narrative_structure": {
"description": "Problem framing, product demonstration, result reveal, then offer and CTA.",
"patterns": [
"problem_solution",
"demonstration_to_result",
"offer_close"
]
},
"has_paid_partnership_label": false,
"paid_partners": [],
"commercial_contexts": [
"promo_code",
"seller_behavior"
],
"comments_enabled": true,
"views": 412000,
"likes": 28600,
"comments": 354,
"engagement_rate_by_views": 0.0703,
"view_ratio_to_account_baseline": 6.2,
"author": {
"id": "ig_account_2j1x",
"handle": "dogmomdaily",
"display_name": "Dog Mom Daily",
"web_url": "https://www.instagram.com/dogmomdaily/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_2j1x/avatar",
"followers_count": 21400,
"is_verified": false
},
"coauthors": []
},
{
"id": "ig_post_9m3t",
"shortcode": "DMq7RwXk2Pd",
"web_url": "https://www.instagram.com/reel/DMq7RwXk2Pd/",
"posted_at": "2026-06-24T19:15:00Z",
"observed_at": "2026-07-14T13:40:00Z",
"format": "reel",
"primary_language": "en",
"caption": "POV: shedding season with a husky ๐
This grooming glove is the only thing keeping our couch alive. #huskylife #sheddingseason #doggrooming",
"hashtags": [
"huskylife",
"sheddingseason",
"doggrooming"
],
"caption_mentions": [],
"audio": {
"id": "ig_audio_2b8c",
"instagram_id": null,
"type": "original_sound",
"title": "Original audio",
"attribution": {
"display_name": "brodyandbear",
"account": {
"id": "ig_account_3d6p",
"handle": "brodyandbear",
"display_name": "Brody & Bear",
"web_url": "https://www.instagram.com/brodyandbear/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_3d6p/avatar",
"followers_count": 12400,
"is_verified": false
}
},
"duration_seconds": 18.9,
"web_url": null
},
"content_summary": "A dog owner films a casual at-home demonstration of a grooming glove on a shedding husky, showing the removed undercoat and joking about protecting the couch.",
"topics": [
"dog_grooming",
"at_home_pet_care"
],
"creative_formats": [
"product_demonstration"
],
"hook": {
"construction": "A point-of-view framing of shedding season opens on a husky mid-shed before the owner pulls out the grooming glove.",
"devices": [
"relatable_scenario"
],
"modalities": [
"visual",
"on_screen_text"
]
},
"key_messages": [
{
"summary": "The grooming glove is presented as an easy way to control husky shedding at home.",
"roles": [
"claim",
"benefit"
],
"presentation": "asserted"
}
],
"proofs": [
{
"summary": "The owner demonstrates the glove on the husky and shows the removed fur.",
"mechanisms": [
"live_product_demonstration",
"result_reveal"
],
"cited_source_types": []
}
],
"offers": [],
"calls_to_action": [],
"narrative_structure": null,
"has_paid_partnership_label": false,
"paid_partners": [],
"commercial_contexts": [],
"comments_enabled": true,
"views": 156000,
"likes": 9800,
"comments": 412,
"engagement_rate_by_views": 0.0655,
"view_ratio_to_account_baseline": null,
"author": {
"id": "ig_account_3d6p",
"handle": "brodyandbear",
"display_name": "Brody & Bear",
"web_url": "https://www.instagram.com/brodyandbear/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_3d6p/avatar",
"followers_count": 12400,
"is_verified": false
},
"coauthors": []
},
{
"id": "ig_post_3p7d",
"shortcode": "DMxR4kWq9Ln",
"web_url": "https://www.instagram.com/reel/DMxR4kWq9Ln/",
"posted_at": "2026-06-18T17:30:00Z",
"observed_at": "2026-07-14T11:05:00Z",
"format": "reel",
"primary_language": "en",
"caption": "The deshedding mistake I see every week in the salon ๐ Try this instead (works with any slicker brush).\n\n#groomingtips #deshedding",
"hashtags": [
"groomingtips",
"deshedding"
],
"caption_mentions": [],
"audio": null,
"content_summary": "A professional groomer demonstrates a common deshedding mistake on a client dog, then shows a corrected slicker-brush technique and the reduced coat damage.",
"topics": [
"dog_grooming"
],
"creative_formats": [
"talking_head",
"product_demonstration"
],
"hook": {
"construction": "The groomer names a mistake she sees weekly in the salon while showing the matted result on a client dog.",
"devices": [
"problem_callout"
],
"modalities": [
"visual",
"spoken"
]
},
"key_messages": [
{
"summary": "Brushing direction and pressure matter more than the specific brush.",
"roles": [
"claim",
"use_case"
],
"presentation": "asserted"
}
],
"proofs": [
{
"summary": "The groomer demonstrates both techniques on the same dog and compares the results.",
"mechanisms": [
"live_product_demonstration"
],
"cited_source_types": []
}
],
"offers": [],
"calls_to_action": [
{
"summary": "Follow for weekly grooming technique tips.",
"actions": [
"follow_account"
],
"stages": [
"closing"
],
"modalities": [
"spoken"
]
}
],
"narrative_structure": null,
"has_paid_partnership_label": false,
"paid_partners": [],
"commercial_contexts": [],
"comments_enabled": true,
"views": 89400,
"likes": 5210,
"comments": 154,
"engagement_rate_by_views": 0.06,
"view_ratio_to_account_baseline": null,
"author": {
"id": "ig_account_9t4w",
"handle": "groomwithgrace",
"display_name": "Grace | Groom With Grace",
"web_url": "https://www.instagram.com/groomwithgrace/",
"avatar_url": "https://media.tryklint.ai/accounts/ig_account_9t4w/avatar",
"followers_count": 18900,
"is_verified": false
},
"coauthors": []
}
],
"has_more": false,
"next_cursor": null
}
Response
{ "request_id", "data": [PostSummary], "has_more", "next_cursor" }. Each item is the complete post summary: identity, authored content, creative interpretation, commercial context, current metrics, embedded author summary. Null semantics and progressive enrichment: reading the results.
Errors
422 validation-failed (bad grammar, all cases) ยท 410 expired-cursor ยท 429 rate-limit-exceeded ยท full catalog.โI