Match Reasons
The Influship API provides for why creators match your queries. This helps you understand results and make informed decisions.
Where Match Reasons Appear
| Endpoint | Field | What It Explains |
|---|
/v1/search | match.reasons | Why creator matches your query |
/v1/lookalike | similarity.shared_traits | What makes creators similar |
/v1/match | match.evidence | Specific matching criteria met |
Search Results
When you search for creators, each result includes match reasons:
JSON Response
TypeScript
Python
{
"id": "550e8400-...",
"name": "Sarah Johnson",
"match": {
"score": 0.92,
"reasons": [
"Creates educational fitness content focused on home workouts",
"High engagement rate (4.5%) indicates authentic audience",
"Consistent posting schedule with 4+ posts per week"
]
}
}
const results = await client.creators.search({
query: 'fitness creators'
});
results.items.forEach(creator => {
console.log(`\n${creator.name} (Score: ${creator.match.score})`);
creator.match.reasons.forEach(reason => {
console.log(` ✓ ${reason}`);
});
});
results = requests.post(
'https://api.influship.com/v1/search',
headers={'X-API-Key': API_KEY},
json={'query': 'fitness creators'}
).json()
for creator in results['items']:
print(f"\n{creator['name']} (Score: {creator['match']['score']})")
for reason in creator['match']['reasons']:
print(f" ✓ {reason}")
What Reasons Cover
- Content alignment: How their content matches your topic
- Audience quality: Engagement patterns and authenticity signals
- Activity level: Posting consistency and platform engagement
- Niche expertise: Depth of knowledge in specific areas
Lookalike Results
When finding similar creators, the API explains shared characteristics:
{
"id": "660f9500-...",
"name": "Mike Chen",
"similarity": {
"score": 0.87,
"shared_traits": [
"Both focus on fitness and wellness content",
"Similar audience demographics (25-34, fitness-interested)",
"Comparable engagement patterns on workout videos"
]
}
}
Similarity Factors
- Content overlap: Shared topics and themes
- Audience similarity: Demographic and interest overlap
- Style matching: Content format and tone
- Performance patterns: Similar engagement metrics
Campaign Matching
The /v1/match endpoint scores creators against campaign requirements:
{
"creator_id": "550e8400-...",
"match": {
"score": 0.88,
"decision": "recommended",
"evidence": {
"audience_fit": "Strong overlap with target demographic (fitness enthusiasts, 25-34)",
"content_alignment": "Regular posts about health products align with campaign goals",
"brand_safety": "No concerning content in recent posts"
}
}
}
Decision Values
| Decision | Score Range | Meaning |
|---|
recommended | 0.80+ | Strong match, recommended for campaign |
consider | 0.60-0.79 | Decent match, review manually |
not_recommended | Below 0.60 | Poor fit for this campaign |
Using Match Reasons
For Filtering
const topMatches = results.items
.filter(c => c.match.score >= 0.8)
.sort((a, b) => b.match.score - a.match.score);
top_matches = [
c for c in results['items']
if c['match']['score'] >= 0.8
]
top_matches.sort(
key=lambda c: c['match']['score'],
reverse=True
)
For Display
Show reasons to help users understand why creators were selected:
<CreatorCard creator={creator}>
<MatchScore score={creator.match.score} />
<MatchReasons>
{creator.match.reasons.map(reason => (
<Reason key={reason}>{reason}</Reason>
))}
</MatchReasons>
</CreatorCard>
For Validation
Use reasons to validate AI selections match your expectations. If reasons don’t align with your intent, refine your query.
Score Calibration
Scores are calibrated to be comparable across endpoints:
Scores below 0.50 are typically not returned in results, as they indicate poor relevance.
Show How match reasons are generated
Match reasons are generated by analyzing multiple signals:
- Semantic matching: Vector similarity between query and creator embeddings
- Fact extraction: Specific facts from creator profiles and content
- Engagement analysis: Pattern recognition in audience interaction
- Platform behavior: Posting consistency, format preferences, growth trends
The AI synthesizes these signals into human-readable explanations that highlight the most relevant factors for each match.