Skip to main content

CRM Basic Batch - Name + Company

Process up to 10 profiles concurrently in a single request with basic tier analysis.

When to Use

See the consolidated guidance: When to Use Each Batch Endpoint

Endpoint Details

PropertyValue
EndpointPOST /crm_basico_batch
Cost1 credit × number of profiles
Max Profiles10 per request
Tier RequiredBasic or Complete
Processing Time~8-10 seconds for 5 profiles

Overview

The CRM Basic Batch endpoint allows you to analyze multiple professional profiles simultaneously using name and company information. You only pay for successfully analyzed profiles (pay-per-success billing).

Key Features

  • Concurrent Processing: Up to 10 profiles analyzed simultaneously
  • Pay-per-Success: Only charged for successfully analyzed profiles
  • Time Efficient: ~65% faster than sequential single requests
  • Basic Analysis: Position, stakeholder type, buyer manual, impact language

Request

Headers

HeaderRequiredValue
Content-TypeYesapplication/json
x-api-keyYesYour API key

Request Body

{
"profiles": [
{
"primeiro_nome": "Satya",
"ultimo_nome": "Nadella",
"empresa": "Microsoft",
"contexto_adicional": "Optional context"
},
{
"primeiro_nome": "Sundar",
"ultimo_nome": "Pichai",
"empresa": "Google"
}
]
}

Parameters

ParameterTypeRequiredDescription
profilesarrayYesArray of profile objects (max 10)
profiles[].primeiro_nomestringYesFirst name
profiles[].ultimo_nomestringYesLast name
profiles[].empresastringYesCompany name
profiles[].contexto_adicionalstringNoAdditional context

Example Request

cURL

curl -X POST "https://api.fluenceinsights.com/crm_basico_batch" \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key-here" \
-d '{
"profiles": [
{"primeiro_nome": "Satya", "ultimo_nome": "Nadella", "empresa": "Microsoft"},
{"primeiro_nome": "Sundar", "ultimo_nome": "Pichai", "empresa": "Google"}
]
}'

Python

import requests

API_URL = "https://api.fluenceinsights.com/crm_basico_batch"
API_KEY = "your-api-key-here"

profiles = [
{"primeiro_nome": "Satya", "ultimo_nome": "Nadella", "empresa": "Microsoft"},
{"primeiro_nome": "Sundar", "ultimo_nome": "Pichai", "empresa": "Google"},
{"primeiro_nome": "Tim", "ultimo_nome": "Cook", "empresa": "Apple"}
]

response = requests.post(
API_URL,
headers={
"Content-Type": "application/json",
"x-api-key": API_KEY
},
json={"profiles": profiles}
)

if response.status_code == 200:
data = response.json()
summary = data['batch_summary']
print(f"✅ Processed {summary['successful']}/{summary['total_profiles']} profiles")
print(f"⚡ Time: {summary['processing_time_ms']/1000:.1f}s")
print(f"💰 Credits: {data['billing_info']['creditos_utilizados']}")
else:
print(f"❌ Error: {response.json()}")

JavaScript/Node.js

const axios = require('axios');

const API_URL = 'https://api.fluenceinsights.com/crm_basico_batch';
const API_KEY = 'your-api-key-here';

async function analyzeBatch() {
const profiles = [
{ primeiro_nome: 'Satya', ultimo_nome: 'Nadella', empresa: 'Microsoft' },
{ primeiro_nome: 'Sundar', ultimo_nome: 'Pichai', empresa: 'Google' },
{ primeiro_nome: 'Tim', ultimo_nome: 'Cook', empresa: 'Apple' }
];

try {
const response = await axios.post(
API_URL,
{ profiles },
{
headers: {
'Content-Type': 'application/json',
'x-api-key': API_KEY
}
}
);

const { batch_summary, results, billing_info } = response.data;
console.log(`${batch_summary.successful}/${batch_summary.total_profiles} profiles`);
console.log(`⚡ Time: ${(batch_summary.processing_time_ms/1000).toFixed(1)}s`);
console.log(`💰 Credits: ${billing_info.creditos_utilizados}`);
} catch (error) {
console.error('❌ Error:', error.response?.data || error.message);
}
}

analyzeBatch();

Response

Success Response (200)

{
"success": true,
"batch_summary": {
"total_profiles": 2,
"successful": 2,
"failed": 0,
"processing_time_ms": 4698.18
},
"results": [
{
"success": true,
"profile_index": 0,
"input": {
"primeiro_nome": "Satya",
"ultimo_nome": "Nadella",
"empresa": "Microsoft"
},
"analise": {
"cargo": "Chairman and CEO",
"tipo_stakeholder": "C-Level Executive",
"manual_comprador": {
"dores": [
"Digital transformation challenges",
"Cloud migration complexity"
],
"ganhos_procurados": [
"Innovation acceleration",
"Business growth"
]
},
"linguagem_impacto": [
"Innovation drives growth",
"Empowering transformation"
]
}
},
{
"success": true,
"profile_index": 1,
"input": {
"primeiro_nome": "Sundar",
"ultimo_nome": "Pichai",
"empresa": "Google"
},
"analise": {
"cargo": "CEO",
"tipo_stakeholder": "C-Level Executive",
"manual_comprador": {...},
"linguagem_impacto": [...]
}
}
],
"billing_info": {
"creditos_por_perfil": 1,
"perfis_processados": 2,
"creditos_utilizados": 2,
"creditos_restantes": 198,
"tipo_plano": "complete"
}
}

Response Fields

Batch Summary

FieldTypeDescription
total_profilesintegerTotal number of profiles in batch
successfulintegerNumber of successfully analyzed profiles
failedintegerNumber of failed analyses
processing_time_msfloatTotal processing time in milliseconds

Individual Results

FieldTypeDescription
successbooleanWhether analysis was successful
profile_indexintegerIndex of profile in original batch
inputobjectOriginal input data for this profile
analiseobjectAnalysis results (if successful)
errorstringError message (if failed)
error_codestringError code (if failed)

Billing Info

FieldTypeDescription
creditos_por_perfilintegerCredits charged per successful profile (1)
perfis_processadosintegerNumber of profiles successfully processed
creditos_utilizadosintegerTotal credits used in this batch
creditos_restantesintegerRemaining credits after this batch
tipo_planostringCurrent subscription plan

Error Responses

Insufficient Credits (402)

{
"error": "Insufficient credits",
"message": "Batch requires 10 credits but you have 5",
"profiles_requested": 10,
"credits_per_profile": 1,
"credits_available": 5
}

Batch Size Exceeded (400)

{
"error": "Batch size exceeds maximum",
"message": "Maximum 10 profiles per batch, received 15",
"max_batch_size": 10,
"profiles_received": 15
}

Partial Batch Failure (200)

{
"success": true,
"batch_summary": {
"total_profiles": 3,
"successful": 2,
"failed": 1
},
"results": [
{
"success": true,
"profile_index": 0,
"analise": {...}
},
{
"success": false,
"profile_index": 1,
"input": {"primeiro_nome": "John", "empresa": "Unknown"},
"error": "Profile not found",
"error_code": "PROFILE_NOT_FOUND"
},
{
"success": true,
"profile_index": 2,
"analise": {...}
}
],
"billing_info": {
"creditos_utilizados": 2
}
}

Credit Calculation

ScenarioCalculationTotal Credits
5 profiles, all successful1 × 55 credits
10 profiles, all successful1 × 1010 credits
10 profiles, 8 successful1 × 88 credits

Note: You are only charged for successfully analyzed profiles. Failed analyses do not consume credits.

Performance Benchmarks

ProfilesSingle RequestsBatch RequestTime Saved
5 profiles~20-25 sec~8-10 sec60% faster
10 profiles~40-50 sec~15-20 sec65% faster

Best Practices

1. Batch Size Optimization

  • Recommended: 10 profiles per batch (maximum)
  • For large datasets: Process in sequential batches of 10
  • Add delays: 0.5-1s between batches for large-scale processing

2. Handling Partial Failures

def process_batch_results(batch_response):
"""Separate successful and failed results"""
successful = []
failed = []

for result in batch_response['results']:
if result['success']:
successful.append({
'input': result['input'],
'analysis': result['analise']
})
else:
failed.append({
'input': result['input'],
'error': result['error']
})

return successful, failed

3. Processing Large Datasets

def process_large_dataset(profiles, batch_size=10):
"""Process large datasets in optimized batches"""
results = []

for i in range(0, len(profiles), batch_size):
batch = profiles[i:i + batch_size]
response = requests.post(API_URL, json={"profiles": batch}, headers=headers)

if response.status_code == 200:
batch_results = response.json()['results']
results.extend(batch_results)
print(f"Progress: {min(i + batch_size, len(profiles))}/{len(profiles)}")

time.sleep(0.5) # Rate limiting

return results

When to Use This Endpoint

✅ Use CRM Basic Batch When:

  • Processing 2-10 profiles at once
  • You have name + company information
  • Time efficiency is important
  • Building sales intelligence databases
  • Bulk CRM enrichment needed

❌ Use Single Endpoint When:

  • Analyzing only 1 profile
  • Real-time interactive analysis needed
  • Immediate feedback required

Next Steps