Reference · Tools
uProc integration
Data processing, enrichment, and validation platform with 455+ processors across 11 categories
The uProc node runs any of more than 455 processors covering email, phone, company, geographic, text and product data — validating, enriching and transforming records. A typical build is cleaning an imported list by validating emails and normalising phone numbers before anything downstream uses them.
- Works as
- Action
- Tool name
uproc- Parameters
- 26
- Outputs
- Output, Error
- Credentials
- uProc API
- Official docs
- uProc docs docs.uproc.io
What you can build with uProc
- Validate an email address exists.
- Get company data by domain.
- Check if a phone number is valid.
- Look up geographic coordinates by address.
- Convert text to uppercase.
- Check if an IBAN is valid.
- Get gender by email address.
Overview
uProc is a data processing platform that exposes hundreds of individual processors across 11 resource groups (Audio, Communication, Company, Finance, Geographical, Image, Internet, Personal, Product, Security, Text). Each processor performs one specific operation — validating an email address, verifying a phone number, enriching a company, looking up coordinates, converting a currency, checking a product code, transforming text, and so on. You pick a resource group, pick a processor inside it, fill in the inputs that processor needs, and the node calls uProc once per input item.
Node Type
Action — processes input items and produces output
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires uProc API credentials.
See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| Audio | audio |
| Communication | communication |
| Company | company |
| Finance | finance |
| Geographical | geographic |
| Image | image |
| Internet | internet |
| Personal | personal |
| Product | product |
| Security | security |
| Text | text |
Each resource is a family of processors: Communication covers email, mobile, phone and LinkedIn; Finance covers cards, IBAN, BIC, SWIFT, currency and VAT; Geographical covers addresses, coordinates, routes and postal data; Company covers domains, tax IDs and decision makers; Text covers string, number and list operations. Choosing a resource is what narrows the Operation dropdown to a workable size.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Resource | options | No | (current default) | The resource group to use. Each group contains multiple processors. |
| Options: the resource choices available to your workspace — pick one from the dropdown. | ||||
Operation (audioProcessor) | options | No | — | The audio processor to execute — text-to-speech synthesis. (shown when Resource is audio) |
Options: getAudioAdvancedSpeechByText, getAudioSpeechByText | ||||
Operation (communicationProcessor) | options | No | — | The communication processor to execute — email, phone, mobile, SMS and LinkedIn checks, lookups and sends. (shown when Resource is communication) |
Options: checkDomainCatchall, checkDomainDisposable, checkDomainFree, checkEmailCatchall, checkEmailDisposable, checkEmailExists, checkEmailExistsExtended, checkEmailFormat, checkEmailFree, checkEmailRole, checkEmailSmtp, checkEmailSpamtrap, checkLinkedinProfileIsContact, checkMobileAlive, checkMobileExist, checkMobileFormat, checkMobileFormatEs, checkMobileImei, checkMobileSms, checkMobileValidPrefix, checkMobileValidPrefixEs, checkPhoneFormat, checkPhoneFormatEs, checkPhoneOrMobileValid, checkPhoneValidPrefix, checkRobinsonEmailExist, checkRobinsonPhoneExist, checkSocialDomainExist, checkSocialEmailExist, checkSocialMobileExist, getEmailRecipientByCompanyAndFullname, getEmailRecipientByCompanyFirstnameAndLastname, getEmailRecipientByDomainAndFullname, getEmailRecipientByProfile, getEmailDomain, getEmailFirstReferences, getEmailFix, getEmailListByDomain, getEmailListByEmail, getEmailRecipient, getEmailReferences, getEmailType, getFeedEntriesByDomain, getFeedLastEntryByDomain, getEmailGdprListByDomain, getLinkedinConnections, getLinkedinGroupMembers, getLinkedinInvitations, getLinkedinPostComments, getLinkedinPostLikes, getLinkedinProfile, getLinkedinProfiles, getLinkedinProfilesByCompany, getLinkedinProfilesByContent, getLinkedinSearchContactsUrl, getMobileCountryCode, getMobileCountryPrefix, getMobileFormatted, getMobileHlrLookup, getMobileLookup, getMobileMnpLookup, getMobileNormalized, getMobileOrPhoneLookupEs, getMobileOrPhoneMnpEs, getEmailNormalized, getEmailPersonalRecipientByProfile, getPhoneFixed, getPhoneNormalized, getPhoneParsed, getLinkedinPublicProfileBySalesProfile, getSentimentByText, getSocialDomainLookup, getSocialDomainParsed, getSocialEmailLookup, getSocialMobileLookup, getSocialUriParsed, sendEmailCustom, sendLinkedinInvitation, sendLinkedinInvitationOrMessage, sendLinkedinMessage, sendLinkedinVisit, sendMobileSms | ||||
Operation (companyProcessor) | options | No | — | The company processor to execute — company enrichment, decision makers, social profiles and financial data. (shown when Resource is company) |
Options: checkCifValid, checkCompanyDebtorByTaxid, checkNumberIsin, checkNumberSsEs, getRoleClassified, getCompanyByCif, getCompanyByDomain, getCompanyByDuns, getCompanyByEmail, getCompanyByIp, getCompanyByName, getCompanyByPhone, getCompanyByProfile, getCompanyGeocodedByIp, getCompanyNameByDomain, getCompanyPhoneByDomain, getCompanyPhoneByName, getPersonDecisionMaker, getPersonDecisionMakerBySearch, getPersonEmailsByDomainAndArea, getCompanyDomainByName, getProfileFacebookByCompany, getProfileFacebookByCompanyDomain, getProfileGithubByCompanyDomain, getProfileInstagramByCompanyDomain, getProfileLinkedinByCompany, getProfileLinkedinByCompanyDomain, getPersonMultipleDecisionMakerBySearch, getCifNormalized, getPersonListByParams, getProfilePinterestByCompanyDomain, getCompanyFinancialByDomain, getCompanyFinancialByDuns, getCompanyFinancialByName, getCompanyFinancialByTaxid, getProfileTwitterByCompany, getProfileTwitterByCompanyDomain, getProfileYoutubeByCompanyDomain | ||||
Operation (financeProcessor) | options | No | — | The finance processor to execute — bank account, IBAN, BIC, card, crypto wallet, currency and VAT operations. (shown when Resource is finance) |
Options: checkBankAccountValidEs, checkBankBicValid, checkCreditcardChecksum, checkCryptoWalletAddressValid, checkCurrencyValidIso, checkBankIbanValid, checkVatExist, getCreditcardType, getCurrencyByCountry, getCurrencyByCountryIsocode, getCurrencyByIp, getCurrencyByIsocode, getCurrencyConvertedBetweenIsocodeDate, getCurrencyListByCountry, getCurrencyListByIp, getCurrencyListByIsocode, getBankIbanByAccount, getBankIbanLookup, getSwiftLookup, getVatByAddress, getVatByCoordinates, getVatByIp, getVatByIsocode, getVatByNumber, getVatByPhone, getVatByZipcode | ||||
Operation (geographicProcessor) | options | No | — | The geographical processor to execute — address, coordinate, city, province, country, zipcode, distance and route operations. (shown when Resource is geographic) |
Options: checkCountryValidIso, checkDistanceEq, checkDistanceGt, checkDistanceGe, checkDistanceLt, checkDistanceLe, checkAddressExist, checkAddressNumberExist, checkCoordinateValid, checkZipcodeExist, checkZipcodeFormat, getCoordinateCartesian, getCityListByPhone, getCityListByName, getCityListByZipcode, getCityByIp, getCityByName, getCityByPhone, getCityByZipcode, getCommunityByZipcode, getCoordinateByIp, getCoordinateBySearch, getCountryListByCode, getCountryListByCurrencyCode, getCountryListByName, getCountryByCode, getCountryByCurrencyCode, getCountryByIp, getCountryByName, getCountryByPhone, getCountryCodeByName, getCoordinateDecimal, getDistanceByAddresses, getDistanceByCoordinates, getDistanceByIps, getDistanceByPhones, getDistanceByZipcodes, getAddressBySearch, getLocationExtendedByIp, getLocationGeocodedByIp, getAddressSplittedBest, getLocaleByIp, getLocationByCoordinates, getLocationByIp, getLocationByName, getLocationByParams, getLocationByPhone, getLocationByZipcode, getLocationListByName, getLocationListByParams, getNameByPrefix, getNameListByPrefix, getNetByIp, getAddressNormalized, getCityNormalized, getCountryNormalized, getProvinceNormalized, getZipcodeNormalized, getAddressSplitted, getProvinceByIp, getProvinceByName, getProvinceByPhone, getProvinceByZipcode, getProvinceListByName, getProvinceListByPhone, getProvinceListByZipcode, getReputationByIp, getRouteByAddresses, getRouteByCoordinates, getRouteByIps, getRouteByPhones, getRouteByZipcodes, getTimeByAddress, getTimeByCoordinates, getTimeByIp, getCoordinateUsng, getCoordinateUtm, getZipcodeByIp, getZipcodeByPrefix, getZipcodeListByPrefix | ||||
Operation (imageProcessor) | options | No | — | The image processor to execute — domain logos, barcodes, QR codes, EXIF, OCR and URL screenshots. (shown when Resource is image) |
Options: getDomainLogo, getBarcodeEncoded, getImageExif, getImageOcr, getImageWithText, getQrDecoded, getQrEncoded, getUrlScreenshot | ||||
Operation (internetProcessor) | options | No | — | The internet processor to execute — domain, DNS, certificate, WHOIS, IP, network and URL operations. (shown when Resource is internet) |
Options: checkDomainCertificate, checkDomainExist, checkDomainFormat, checkDomainMx, checkDomainRecord, checkDomainReverse, checkNetHostAlive, checkNetServiceUp, checkUrlContains, checkUrlExist, checkUrlValid, getDeviceByUa, getDomainBlacklists, getDomainByIp, getDomainByUrl, getDomainCertificate, getDomainIsp, getDomainRecord, getDomainRecords, getDomainReverseIp, getDomainTechnologies, getDomainVisits, getDomainWhois, getFileCopiedBetweenUrls, getIpBlacklists, getIpWhois, getNetAton, getNetFixip, getNetNtoa, getNetScan, getUrlAnalysis, getUrlByDomain, getUrlContents, getUrlContentsParsed, getUrlDecode, getUrlEncode, getUrlListContentsParsed, getUrlParsed, getUrlPdf, getUrlShareableLinks, getUrlTables, getUrlTechnologies, getUrlUnshortened | ||||
Operation (personalProcessor) | options | No | — | The personal processor to execute — name, surname, gender, age, date, Spanish national ID and person enrichment. (shown when Resource is personal) |
Options: checkAgeBetw, checkAgeIsAdult, checkAgeIsTwenties, checkAgeIsForties, checkAgeGt, checkAgeGe, checkAgeIsRetired, checkAgeLt, checkAgeLe, checkAgeEq, checkDateBetw, checkDateGt, checkDateGe, checkDateLeap, checkDateLt, checkDateLe, checkDateValid, checkDateEq, checkGenderValid, checkNameExist, checkNameValid, checkNieValid, checkNifValid, checkRobinsonNifExist, checkSurnameExist, checkSurnameValid, checkDniValid, getAgeByDate, getAgeRange, getDateDifference, getPersonFakedData, getGenderByEmail, getGenderByPersonalName, getProfileLinkedinByEmail, getProfileLinkedinByPhone, getNifByDni, getDateNormalized, getDniNormalized, getNameNormalized, getNieNormalized, getNifNormalized, getSurnameNormalized, getDateParsed, getFullnameParsed, getPersonExtendedByEmail, getPersonExtendedByEmailAndCompany, getPersonExtendedByProfile, getPersonByEmail, getPersonByMobile, getPersonByFirstnameLastnameCompanyLocation, getPersonByProfile, getProfileByEmployeeData, getSurnameByPrefix, getSurnameListByPrefix, getProfileXingByEmployeeData, sendPersonEmailToList, sendPersonProfileToList | ||||
Operation (productProcessor) | options | No | — | The product processor to execute — ASIN, EAN, GTIN, UPC, ISBN, book and VIN validation and lookups. (shown when Resource is product) |
Options: checkAsinExist, checkAsinValid, checkEanExist, checkEanValid, checkEan13Valid, checkEan14Valid, checkEan18Valid, checkEan8Valid, checkGtinValid, checkGtin13Valid, checkGtin14Valid, checkGtin8Valid, checkBookIsbnExist, checkBookIsbn, checkBookIsbn10, checkBookIsbn13, checkUpcExist, checkUpcFormat, checkVinFormat, getAsinByEan, getBookAuthorLookup, getBookCategoryLookup, getBookPublisherLookup, getBookIsbnLookup, getBookTitleLookup, getBookListAuthorLookup, getBookListCategoryLookup, getBookListPublisherLookup, getBookListTitleLookup, getEanByAsin, getBookIsbn13ToIsbn10, getBookIsbn10ToIsbn13, getUpcLookup, getVinLookup | ||||
Operation (securityProcessor) | options | No | — | The security processor to execute — password strength and UUID validation. (shown when Resource is security) |
Options: checkPasswordStrong, checkNumberUuid | ||||
Operation (textProcessor) | options | No | — | The text processor to execute — string, list, number and word-count checks plus text transformation. (shown when Resource is text) |
Options: checkListContains, checkListEnds, checkListLengthBetw, checkListLengthEq, checkListLengthGt, checkListLengthGe, checkListLengthLt, checkListLengthLe, checkListMax, checkListMin, checkListSorted, checkListStarts, checkListUnique, checkListValid, checkNumberBetw, checkNumberDecimal, checkNumberEq, checkNumberEven, checkNumberGt, checkNumberGe, checkNumberLt, checkNumberLe, checkNumberLuhn, checkNumberMod, checkNumberNatural, checkNumberOdd, checkNumberPrime, checkStringAlpha, checkStringAlphanumeric, checkStringBlank, checkStringBoolean, checkStringContains, checkStringEnds, checkStringIp, checkStringIp4, checkStringIp6, checkStringLengthBetw, checkStringLengthEq, checkStringLengthGt, checkStringLengthGe, checkStringLengthLt, checkStringLengthLe, checkStringLowercase, checkStringNumeric, checkStringRandom, checkStringRegex, checkStringStarts, checkStringUppercase, checkWordCountBetw, checkWordCountEq, checkWordCountGt, checkWordCountGe, checkWordCountLt, checkWordCountLe, getStringHtmlByMarkdown, getListMax, getListMin, getListSort, getListUnique, getStringMarkdownByHtml, getStringBase64, getStringByFormat, getStringByRegex, getStringFieldName, getStringJoin, getStringLength, getStringLowercase, getStringMd5, getStringNormalized, getStringParsed, getStringReplaceAll, getStringReplaceFirst, getStringSha, getStringSpin, getStringSplit, getStringSplitAndJoin, getStringTranslated, getStringUppercase, getStringVlookup, getStringWithoutHtml, getWordBanned, getWordCleanAbuse, getWordCount | ||||
string | No | — | Email address parameter for the selected processor. | |
| Domain | string | No | — | Domain name parameter for the selected processor. |
| Phone | string | No | — | Phone number parameter for the selected processor. |
| Mobile | string | No | — | Mobile phone number parameter. |
| Address | string | No | — | Address parameter for geographic processors. |
| Text | string | No | — | Text parameter for text/audio processors. |
| IP | string | No | — | IP address parameter. |
| URL | string | No | — | URL parameter for internet/company processors. |
| Name | string | No | — | Name parameter (person name, company name, location name). |
| Country | string | No | — | Country name or ISO code. |
| ISO Code | string | No | — | ISO code parameter (country, currency). |
| Zipcode | string | No | — | Zipcode/postal code parameter. |
| Coordinates | string | No | — | Coordinates parameter (lat,lon format). |
| Company | string | No | — | Company name or domain. |
| Profile | string | No | — | Social profile URL. |
| First Name | string | No | — | First name parameter. |
| Last Name | string | No | — | Last name parameter. |
| Full Name | string | No | — | Full name parameter. |
| Date | string | No | — | Date parameter (multiple formats allowed). |
| LinkedIn li_at Cookie | string | No | — | LinkedIn session cookie (li_at) for LinkedIn processors. |
| LinkedIn JSESSIONID Cookie | string | No | — | LinkedIn JSESSIONID cookie for LinkedIn processors. |
| Additional Parameters (JSON) | json | No | {} | Additional processor-specific parameters as JSON. Any parameters not covered by the fields above can be passed here. Keys should match the processor parameter names. |
| Additional Options | collection | No | {} | |
| — Data Webhook | string | No | — | URL to send tool response when processing completes (async callback). |
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. |
Output Data
One output item per input item, always — this node never fans out and never drops an item.
The processor’s response is merged onto the incoming item’s JSON at the top level, so the item keeps its own fields and gains the result’s. There is no wrapper property to reach through: if the processor returns { "exists": true }, that is {{ $json.exists }} downstream. Binary data on the input item is forwarded unchanged.
Two shapes get special handling:
- A response that is a list is attached whole to
_uprocResult. When that list holds exactly one object, its fields are also merged onto the item, so single-hit lookups behave like single responses. - A response that is not an object at all — a bare string or number — is attached to
_uprocResultand nothing is merged.
Because the result is merged rather than namespaced, a processor that returns a field your item already has will overwrite it. Rename upstream if that matters.
Setting Data Webhook does not change any of this: uProc also posts the response to that URL when it finishes, but the node’s own output item is the same either way.
Example Configuration
Validate one email address and have uProc call a webhook when it is done:
{
"type": "uproc",
"parameters": {
"group": "communication",
"communicationProcessor": "checkEmailExists",
"email": "user@example.com",
"maxConcurrency": 5,
"additionalOptions": {
"dataWebhook": "https://api.myapp.com/callback"
}
}
}
Validate a whole list of addresses, one per item, taking the address off each item:
{
"type": "uproc",
"parameters": {
"group": "communication",
"communicationProcessor": "checkEmailExists",
"email": "{{ $json.email }}",
"maxConcurrency": 10
}
}
Enrich a company from its domain:
{
"type": "uproc",
"parameters": {
"group": "company",
"companyProcessor": "getCompanyByDomain",
"domain": "microsoft.com"
}
}
Find a company by name within a country:
{
"type": "uproc",
"parameters": {
"group": "company",
"companyProcessor": "getCompanyByName",
"name": "Acme Corporation",
"country": "US"
}
}
Geocode an IP address:
{
"type": "uproc",
"parameters": {
"group": "geographic",
"geographicProcessor": "getCoordinateByIp",
"ip": "8.8.8.8"
}
}
Geocode a written address:
{
"type": "uproc",
"parameters": {
"group": "geographic",
"geographicProcessor": "getCoordinateBySearch",
"address": "1600 Amphitheatre Parkway, Mountain View, CA"
}
}
Check that a string contains only letters:
{
"type": "uproc",
"parameters": {
"group": "text",
"textProcessor": "checkStringAlpha",
"text": "HelloWorld"
}
}
Read a LinkedIn profile with your own session cookies:
{
"type": "uproc",
"parameters": {
"group": "communication",
"communicationProcessor": "getLinkedinProfile",
"li_at": "{{ $json.liAt }}",
"jsessionid": "{{ $json.jsessionId }}",
"profile": "https://www.linkedin.com/in/example",
"maxConcurrency": 3
}
}
Feed a processor an input that has no field of its own — here location, passed through Additional Parameters (JSON):
{
"type": "uproc",
"parameters": {
"group": "personal",
"personalProcessor": "getPersonByFirstnameLastnameCompanyLocation",
"firstname": "John",
"lastname": "Doe",
"company": "ACME Corp",
"additionalParams": "{\"location\": \"Barcelona, Spain\"}"
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
uProc processes, enriches, and validates data using over 455 specialized processors across various categories. This tool is ideal when you need to perform specific data operations like email validation, company enrichment, or text manipulation, rather than broader data storage or retrieval. It produces processed, validated, or enriched data based on the chosen operation.
Notes
- Pick the Resource first. The Operation dropdown only lists the processors of the selected resource, and the two are saved independently — if you change Resource after choosing a processor, re-open Operation and pick again rather than assuming the old value still applies.
- An unrecognised Operation fails the item with
Unknown uProc processor, not silently. That is the usual symptom of a processor key typed by hand or built from an expression that resolved to something unexpected. - Fill in only what the processor asks for. Extra fields are not an error — they are simply not sent — but they make the node harder to read later. One node, one processor, the two or three fields it needs.
- Additional Parameters (JSON) is the escape hatch, and its keys are literal. They must match the processor’s own input names exactly (
iban,isbn,years,location,separator…). A misspelled key is not rejected; the processor just receives an empty value for that input. - Keep Additional Options nested. Data Webhook belongs inside the
additionalOptionsobject, not at the top level of the node’s parameters. - Cookie-based LinkedIn processors act as you. Anything under Communication that takes
li_atandjsessionidruns against LinkedIn with your own session, so treat those cookies as credentials: pull them from an upstream secure source rather than typing them into the node, and keep concurrency low. - Concurrency is per node run. Max Concurrency caps how many items call uProc at once; on paid-per-call processors that is also how fast you spend, so start low on a large batch.
Frequently asked questions
Why did my processor selection stop working?
Pick the Resource first. The Operation dropdown only lists the processors of the selected resource, and the two are saved independently — if you change Resource after choosing a processor, re-open Operation and pick again.
What kinds of processor are available?
Email, phone, company, geographic, text and product data processors, spanning validation, enrichment and transformation.
Is it suitable for bulk cleaning?
Yes, that is the common use — running an imported list through validation before it reaches a CRM or a mailing platform.
Which credential does it need?
A uProc API credential.
Build with uProc
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need uProc API credentials first.
Open BusyBotLast reviewed . Spotted something wrong? Tell us.