curl --request POST \
--url https://api.enrow.io/email/find/single \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": true
}
}'
const response = await fetch('https://api.enrow.io/email/find/single', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.ENROW_API_KEY
},
body: JSON.stringify({
fullname: 'Dwight Schrute',
company_domain: 'dundermifflin.com',
settings: {
retrieve_gender: true
}
})
});
const data = await response.json();
console.log(data.id);
import requests
import os
url = "https://api.enrow.io/email/find/single"
headers = {
"Content-Type": "application/json",
"x-api-key": os.getenv("ENROW_API_KEY")
}
payload = {
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": True
}
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
{
"message": "Single search operating",
"id": "0cf517bc-16e8-45bc-b967-ab9116b3c804",
"credits_used": 1
}
{
"message": "..."
}
Email Finder
Znajdź adres e-mail
Znajdź pojedynczy służbowy adres e-mail na podstawie imienia i nazwiska oraz domeny lub nazwy firmy albo na podstawie adresu URL profilu LinkedIn
POST
/
email
/
find
/
single
curl --request POST \
--url https://api.enrow.io/email/find/single \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": true
}
}'
const response = await fetch('https://api.enrow.io/email/find/single', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.ENROW_API_KEY
},
body: JSON.stringify({
fullname: 'Dwight Schrute',
company_domain: 'dundermifflin.com',
settings: {
retrieve_gender: true
}
})
});
const data = await response.json();
console.log(data.id);
import requests
import os
url = "https://api.enrow.io/email/find/single"
headers = {
"Content-Type": "application/json",
"x-api-key": os.getenv("ENROW_API_KEY")
}
payload = {
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": True
}
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
{
"message": "Single search operating",
"id": "0cf517bc-16e8-45bc-b967-ab9116b3c804",
"credits_used": 1
}
{
"message": "..."
}
POST
Uruchom pojedyncze wyszukiwanie e-maila, aby znaleźć służbowy adres e-mail. Uwierzytelniaj każde żądanie za pomocą swojego klucza API w nagłówku
Zobacz Error handling, aby poznać pełną listę kodów statusu i formatów odpowiedzi.
Każda inna wartość jest odrzucana z kodem
Odpowiedź jest taka sama jak przy wyszukiwaniu na podstawie imienia i nazwiska oraz firmy:
https://api.enrow.io/email/find/single
x-api-key. Do operacji wsadowych użyj endpointu Find Bulk Emails (do 5000 wyszukiwań na partię).
Wyszukiwanie musi zawierać jedną z dwóch opcji:
- Imię i nazwisko oraz firmę:
fullname+ (company_domainlubcompany_name) - Adres URL profilu LinkedIn danej osoby w
linkedin_url(zobacz Wyszukiwanie na podstawie adresu URL profilu LinkedIn)
Enrow przeprowadza deterministyczne weryfikacje, które weryfikują nawet adresy catch-all. Oznacza to, że nie trzeba później przepuszczać znalezionych adresów przez debouncer.
Request Body
string
Imię i nazwisko osoby, dla której ma zostać znaleziony e-mailUwaga: Wymagane przy wyszukiwaniu na podstawie imienia i nazwiska oraz firmy, ale nie przy wyszukiwaniu na podstawie
linkedin_url.string
Domena firmy, akceptowanych jest wiele formatów (
"dundermifflin.com", "https://www.dundermifflin.com"…)Uwaga: Przy wyszukiwaniu na podstawie imienia i nazwiska oraz firmy wymagany jest co najmniej jeden z parametrów: company_domain lub company_name.string
Nazwa firmy (
"Apple", "Air France", …)Uwaga: Przy wyszukiwaniu na podstawie imienia i nazwiska oraz firmy wymagany jest co najmniej jeden z parametrów: company_domain lub company_name.string
Adres URL profilu LinkedIn danej osoby (
"https://www.linkedin.com/in/dwight-schrute"), aby wyszukiwać na podstawie profilu zamiast imienia i nazwiska oraz firmy. Zobacz Wyszukiwanie na podstawie adresu URL profilu LinkedIn.Uwaga: Używany tylko wtedy, gdy żądanie nie jest pełnym wyszukiwaniem na podstawie imienia i nazwiska oraz firmy. Jeśli podano fullname i firmę, linkedin_url jest ignorowany.object
Niestandardowe parametry, które zostaną zwrócone w odpowiedzi GET oraz w powiadomieniu webhook.
Pokaż custom object
Pokaż custom object
string
domyślnie:"your_custom_property"
Twoje niestandardowe dane
object
Zestaw ustawień związanych z tym wyszukiwaniem
Pokaż settings properties
Pokaż settings properties
string
Adres URL, który zostanie powiadomiony za pomocą żądania HTTP POST po zakończeniu pojedynczego wyszukiwania. Zobacz How Webhooks Work.
string
domyślnie:"US"
Kod kraju ISO 3166 Alpha-2 powiązany z wyszukiwaniem. Istotny przy korzystaniu z nazwy firmy — pomaga rozróżnić homonimy poprzez wyszukiwanie w zlokalizowanej wersji Google.
boolean
domyślnie:"false"
Pozwala uzyskać płeć (
male/female) osoby.Response
200 — Wyszukiwanie zainicjowane
string
Komunikat potwierdzający
string
Unikalny identyfikator tego wyszukiwania. Użyj go, aby pobrać wyniki za pomocą endpointu GET.
number
Liczba zużytych kredytów. Zobacz Credits & billing, aby poznać koszty poszczególnych endpointów.
Error Responses
| Code | Message |
|---|---|
| 400 | invalid JSON input |
| 400 | both company_domain and company_name are absent, input payload needs at least one of them |
| 400 | missing fullname |
| 400 | invalid linkedin_url format |
| 400 | LinkedIn email search is suspended for this account |
| 401 | No apikey found in the x-api-key headers |
| 401 | This apikey is not valid |
| 402 | Insufficient credits |
Odpowiedzi o niewystarczającej liczbie kredytów (
402) na endpointach pojedynczych zwracają { "reason": "...", "success": false }; wszystkie pozostałe błędy zwracają { "message": "..." }.Wyszukiwanie na podstawie adresu URL profilu LinkedIn
Wyślij adres URL profilu LinkedIn danej osoby wlinkedin_url zamiast imienia i nazwiska oraz firmy. Enrow odczytuje profil, ustala obecną firmę tej osoby, a następnie znajduje i weryfikuje jej służbowy adres e-mail w tej firmie.
Wyszukiwanie przebiega jak każde inne pojedyncze wyszukiwanie: odpowiedź 200 zwraca jego id, a wynik otrzymasz przez endpoint GET lub swój webhook. custom i settings działają tak samo.
Wyszukiwanie na podstawie adresu URL profilu LinkedIn działa tylko w przypadku pojedynczych wyszukiwań i może nie być dostępne na każdym koncie. Jeśli Twoje konto nie ma tej funkcji, żądanie zawierające tylko
linkedin_url otrzyma zwykły błąd walidacji, na przykład missing fullname. Jeśli jej potrzebujesz, skontaktuj się z nami pod adresem api@enrow.io.Kiedy wyszukiwanie korzysta z profilu?
Wyszukiwanie odbywa się na podstawie profilu, gdy podanolinkedin_url, a żądanie nie jest pełnym wyszukiwaniem na podstawie imienia i nazwiska oraz firmy:
- pole
fullnamenie zostało podane, jest puste lub ma tylko jeden znak, albo - nie podano ani
company_domain, anicompany_name.
fullname i firmą pozostaje wyszukiwaniem na podstawie imienia i nazwiska oraz firmy, nawet jeśli zawiera linkedin_url. Gdy wyszukiwanie odbywa się na podstawie profilu, imię i nazwisko oraz firma pochodzą z profilu: przesłane dodatkowo pola fullname, company_domain lub company_name są ignorowane.
Jakie adresy URL są akceptowane?
| Format | Przykład |
|---|---|
| Publiczny adres URL profilu | https://www.linkedin.com/in/dwight-schrute |
Bez https:// lub www., z ukośnikiem na końcu lub parametrami zapytania | linkedin.com/in/dwight-schrute/?trk=people-guest |
| Subdomena krajowa | https://fr.linkedin.com/in/dwight-schrute |
| Adres URL profilu z identyfikatorem użytkownika | https://www.linkedin.com/in/ACoAAB2xY3ZaBcD |
| Adres URL z Sales Navigator (lead lub people) | https://www.linkedin.com/sales/lead/ACwAAB2xY3ZaBcD,NAME_SEARCH,a1b2 |
400 i komunikatem invalid linkedin_url format: strona firmy (linkedin.com/company/...), skrócony link lnkd.in, strona spoza linkedin.com lub sama nazwa profilu bez adresu URL.
Jak Enrow wybiera firmę?
Enrow szuka adresu e-mail w obecnej firmie danej osoby, widocznej w profilu. Jeśli osoba ma kilka obecnych stanowisk, Enrow wybiera pierwsze z listy. Pozycje, które nie wskazują pracodawcy, np. samozatrudnienie, freelance czy studia, są pomijane. Jeśli profil nie ma obecnego stanowiska u pracodawcy, wyszukiwanie kończy się statusemno_current_company.
Ile to kosztuje?
Uruchomienie wyszukiwania zużywa 1 kredyt, jak w przypadku każdego wyszukiwania (credits_used: 1 w odpowiedzi). Po zakończeniu wyszukiwania różnica jest zwracana: wyszukiwanie kosztuje 1 kredyt, gdy zostanie znaleziony adres e-mail, 0,25 kredytu, gdy żaden nie zostanie znaleziony, i nic, gdy nie powiedzie się z powodu problemu po naszej stronie. Wynik podaje przyczynę w linkedin_status, a koszt końcowy w credits_used. Zobacz Kredyty i rozliczenia.
Przykład
curl --request POST \
--url https://api.enrow.io/email/find/single \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"linkedin_url": "https://www.linkedin.com/in/dwight-schrute",
"custom": {
"crm_id": "lead_001"
}
}'
const response = await fetch('https://api.enrow.io/email/find/single', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.ENROW_API_KEY
},
body: JSON.stringify({
linkedin_url: 'https://www.linkedin.com/in/dwight-schrute',
custom: {
crm_id: 'lead_001'
}
})
});
const data = await response.json();
console.log(data.id);
import requests
import os
url = "https://api.enrow.io/email/find/single"
headers = {
"Content-Type": "application/json",
"x-api-key": os.getenv("ENROW_API_KEY")
}
payload = {
"linkedin_url": "https://www.linkedin.com/in/dwight-schrute",
"custom": {
"crm_id": "lead_001"
}
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
{
"message": "Single search operating",
"id": "0cf517bc-16e8-45bc-b967-ab9116b3c804",
"credits_used": 1
}
curl --request POST \
--url https://api.enrow.io/email/find/single \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": true
}
}'
const response = await fetch('https://api.enrow.io/email/find/single', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.ENROW_API_KEY
},
body: JSON.stringify({
fullname: 'Dwight Schrute',
company_domain: 'dundermifflin.com',
settings: {
retrieve_gender: true
}
})
});
const data = await response.json();
console.log(data.id);
import requests
import os
url = "https://api.enrow.io/email/find/single"
headers = {
"Content-Type": "application/json",
"x-api-key": os.getenv("ENROW_API_KEY")
}
payload = {
"fullname": "Dwight Schrute",
"company_domain": "dundermifflin.com",
"settings": {
"retrieve_gender": True
}
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
{
"message": "Single search operating",
"id": "0cf517bc-16e8-45bc-b967-ab9116b3c804",
"credits_used": 1
}
{
"message": "..."
}
Następne kroki
Pobierz wynik
Pobierz znaleziony e-mail przy użyciu
id wyszukiwania.Znajdź adresy e-mail zbiorczo
Uruchom do 5000 wyszukiwań e-maili w jednym żądaniu.
Uwierzytelnianie
Jak przekazać klucz API w nagłówku x-api-key.
Webhooki
Otrzymuj automatyczne powiadomienia po zakończeniu wyszukiwania.
Czy ta strona była pomocna?

