Captação (owner leads)
Property owners offered to the account and the acceptance, which debits credit and reveals the contact. Accepting requires its own permission and the specific term accepted in the dashboard.
- GET/v1/captacao/offers— Owners offered to the account
- GET/v1/captacao/offers/{offerId}— One owner
- GET/v1/captacao/owners— Accepted owners
- POST/v1/captacao/offers/{offerId}/accept— Accept an owner
Routes
/v1/captacao/offersOwners offered to the account
The owners offered to the account right now, with the deadline running — the same cards as the desk — plus a summary (credit, pause, module status). Before accepting, contact and address do not exist in the response.
captacao:readResponse200OK
datalist of CaptacaoOfferrequired- The owners.
summaryCaptacaoSummaryrequired- Desk summary.
nextCursorstringrequirednullable- Always null today.
Example
curl -X GET 'https://api.imobyflow.com.br/v1/captacao/offers' \
-H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
-H 'Accept-Language: en'Errors for this route
/v1/captacao/offers/{offerId}One owner
Offered to the account (no contact) or already accepted by it (with contact).
captacao:readPath parameters
offerIdstringrequired- The owner's id on the desk (
cap-…).
Response200OK
dataCaptacaoOfferrequired- The owner.
Example
curl -X GET 'https://api.imobyflow.com.br/v1/captacao/offers/cap-8e7d6c5b4a39' \
-H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
-H 'Accept-Language: en'Errors for this route
/v1/captacao/ownersAccepted owners
Accepted owners, by desk tab, in pages of 10, with the count of the three tabs.
captacao:readQuery parameters
tabstring- The tab (default
ACTIVE).one ofACTIVECAPTUREDARCHIVED cursorstring- The
nextCursorfrom the previous page. The list is over when it comes back null. It is only valid for this route and this account.
Response200OK
datalist of CaptacaoOfferrequired- The accepted owners.
nextCursorstringrequirednullable- Next page.
totalintegerrequirednullable- Total in the tab.
countsmaprequirednullable- How many in each tab.
Example
curl -X GET 'https://api.imobyflow.com.br/v1/captacao/owners' \
-H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
-H 'Accept-Language: en'Errors for this route
/v1/captacao/offers/{offerId}/acceptAccept an owner
The only API path that spends money: it debits credit and reveals the contact. Requires the captacao:accept permission and item 13 of the API Terms accepted by the owner in the dashboard. Each acceptance records the key, the IP and the terms version. A dry run returns WOULD_ACCEPT with the price; retrying the same acceptance returns ALREADY_ACCEPTED, with no second debit.
captacao:acceptSupports dry runSupports Idempotency-KeyPath parameters
offerIdstringrequired- The owner's id on the desk (
cap-…).
Query parameters
dryRunbooleantrue= dry run: validates and says what would happen, without writing anything.
Response200OK
dataCaptacaoOfferrequired- The owner (with contact).
resultCaptacaoAcceptResultrequired- The outcome.
Example
# Dry run: nothing is written. Remove ?dryRun=true to write for real.
curl -X POST 'https://api.imobyflow.com.br/v1/captacao/offers/cap-8e7d6c5b4a39/accept?dryRun=true' \
-H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
-H 'Accept-Language: en' \
-H "Idempotency-Key: $(uuidgen)"Errors for this route
Objects
CaptacaoOffer
A Captação owner. The fields after createdAt only exist after accepting.
idstringrequired- The owner's id on the desk.
statusstringrequirednullable- Status.
purposestringrequirednullable- Sale or rent.
propertyTypestringrequirednullable- Subtype.
citystringrequirednullable- City.
citySlugstringrequirednullable- City identifier.
neighborhoodstringrequirednullable- Neighborhood.
bedroomsintegerrequirednullable- Bedrooms.
suitesintegerrequirednullable- Suites.
bathroomsintegerrequirednullable- Bathrooms.
parkingSpotsintegerrequirednullable- Parking spots.
usableAreaDeclarednumberrequirednullable- Usable area declared by the owner.
areaDeclarednumberrequirednullable- Total area declared by the owner.
priceExpectednumberrequirednullable- Price the owner expects.
sellTimeframestringrequirednullable- Time frame to sell:
AGORA(now),TRES_MESES(3 months),SEIS_MESES(6 months) orPESQUISANDO(just researching). occupancystringrequirednullable- Occupancy:
PROPRIO(owner lives there),ALUGADO(rented) orVAZIO(empty). ownerRelationstringrequirednullable- Who registered:
DONO(owner),COPROPRIETARIO(co-owner),REPRESENTANTE(legal representative) orOUTRO(not the owner). exclusivityOpennessstringrequirednullable- Accepts exclusivity:
SIM(yes) orNAO(no). alreadyListedDeclaredbooleanrequired- Said it is already listed elsewhere.
priceCentsintegerrequirednullable- The contact price, in cents — what accepting debits.
deadlinestringrequirednullable- Accept deadline (the clock runs only 9am–5pm on service days).
matchingClientsobjectrequired- How many account clients match.
matchingClients.cityintegerrequirednullable- Account clients looking for something like this in the city (null = could not compute).
matchingClients.neighborhoodintegerrequirednullable- The same, in the neighborhood.
demandobjectrequirednullable- Demand measured by the platform.
demand.availablebooleanrequired- Demand was measured.
demand.peopleintegerrequirednullable- People looking.
demand.scopestringrequirednullable- Scope.
demand.scopeNamestringrequirednullable- Scope name.
demand.asOfstringrequirednullable- Measurement date.
demand.labelstringrequirednullable- What was measured, spelled out.
stockNeighborhoodintegerrequirednullable- Similar properties for sale in the neighborhood.
ownerNameMaskedstringrequirednullable- Masked name (before accepting).
ownerPhoneVerifiedViastringrequirednullable- How the owner's phone was verified.
ownerPhoneVerifiedAtstringrequirednullable- When.
revealedbooleanrequired- The contact was released to the account (accepted). Before that,
ownerandaddressdo NOT exist in the response. createdAtstringrequired- When it was created (UTC).
ownerobject- The owner (only after accepting).
owner.namestringrequirednullable- Name.
owner.phonestringrequirednullable- Phone.
owner.emailstringrequirednullable- E-mail.
addressobject- The address (only after accepting).
address.streetstringrequirednullable- Street.
address.numberstringrequirednullable- Number.
address.complementstringrequirednullable- Complement.
address.neighborhoodstringrequirednullable- Neighborhood.
address.citystringrequirednullable- City.
acceptedAtstringnullable- When it was accepted.
acceptedViaobjectnullable- How it was accepted: in the dashboard or through the API (with the key, the IP and the terms version).
refundUntilstringnullable- Refund request deadline.
refundedAtstringnullable- When it was refunded.
soldAtstringnullable- When the property was sold.
stagestringnullable- Stage on the desk.
stageLabelstringnullable- Stage, spelled out.
lostReasonstringnullable- Lost reason.
notestringnullable- Note.
tabstringnullable- Desk tab:
ACTIVE,CAPTUREDorARCHIVED.
CaptacaoSummary
Desk summary.
pendingCountintegerrequired- Owners offered to the account right now.
balanceCentsintegerrequired- Credit, in cents.
subscriptionActivebooleanrequired- Module subscription active.
platformActivebooleanrequired- The module is on for the platform.
pausedbooleanrequired- The account paused receiving owners.
pausedAutobooleanrequired- Automatic pause (deadlines missed in a row).
expiredStreakintegerrequired- Deadlines missed in a row.
autoPauseAfterintegerrequirednullable- Automatic pause after how many.
inActivationbooleanrequired- In activation (before the first top-up).
leadsToFirstChargeintegerrequirednullable- Accepts until the first top-up.
rechargePendingbooleanrequired- Top-up in progress.
operatingCitieslist of stringrequired- Cities served.
purposeslist of stringrequired- Purposes served.
serviceDayslist of stringrequired- Service days.
CaptacaoAcceptResult
The accept outcome.
outcomestringrequiredACCEPTED,ALREADY_ACCEPTED(no second debit) or, in a dry run,WOULD_ACCEPT.dryRunbooleanrequired- It was a dry run — nothing was debited.
priceCentsintegerrequirednullable- The amount debited (or that would be), in cents.