Browse the documentation

Partnerships

The team's partnerships, with the stage and both sides. Only the side that brought the client moves the funnel.

Routes

GET/v1/partnerships

The team's partnerships

All partnerships in one response. nextCursor exists in the contract for when it paginates — follow it from day one.

Permission: partnerships:read

Query parameters

statusstring
Stage.one of PENDING ACCEPTED DECLINED CANCELLED LEAD_REGISTERED CONTACTED NEGOTIATING PROPOSAL WON LOST
updatedSincestring
Only what changed since this date/time (ISO 8601, UTC).

Response200OK

datalist of Partnershiprequired
The partnerships.
nextCursorstringrequirednullable
Next page cursor (null = done).

Example

curl -X GET 'https://api.imobyflow.com.br/v1/partnerships' \
  -H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
  -H 'Accept-Language: en'

Errors for this route

And the errors common to every route

GET/v1/partnerships/{partnershipId}

One partnership

The partnership, with both sides and who can move the funnel.

Permission: partnerships:read

Path parameters

partnershipIdstringrequired
Partnership id (pship-…).

Response200OK

dataPartnershiprequired
The partnership.

Example

curl -X GET 'https://api.imobyflow.com.br/v1/partnerships/pship-5b8d2f1e9a3c' \
  -H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
  -H 'Accept-Language: en'

Errors for this route

And the errors common to every route

POST/v1/partnerships/{partnershipId}/status

Move the partnership stage

Only the side that brought the client moves the funnel (canMoveFunnel). The other side can only close it after asking for an update and waiting 15 days without an answer — the dashboard rule.

Permission: partnerships:writeSupports dry runSupports Idempotency-Key

Path parameters

partnershipIdstringrequired
Partnership id (pship-…).

Query parameters

dryRunboolean
true = dry run: validates and says what would happen, without writing anything.

Request body

statusstringrequired
The new stage.one of PENDING ACCEPTED DECLINED CANCELLED LEAD_REGISTERED CONTACTED NEGOTIATING PROPOSAL WON LOST

Example body

{
  "status": "PROPOSAL"
}

Response200OK

dataPartnershiprequired
The object as it now stands.
resultPartnershipWriteResultrequired
The outcome.

Example

# Dry run: nothing is written. Remove ?dryRun=true to write for real.
curl -X POST 'https://api.imobyflow.com.br/v1/partnerships/pship-5b8d2f1e9a3c/status?dryRun=true' \
  -H "Authorization: Bearer $IMOBYFLOW_API_KEY" \
  -H 'Accept-Language: en' \
  -H "Idempotency-Key: $(uuidgen)" \
  -H 'Content-Type: application/json' \
  --data @- <<'JSON'
{
  "status": "PROPOSAL"
}
JSON

Errors for this route

And the errors common to every route

Objects

Party

One side of the partnership.

accountIdstringrequirednullable
Account id.
namestringrequirednullable
Name.
typestringrequirednullable
Account type.

Partnership

A partnership.

idstringrequired
Partnership id.
statusstringrequired
Stage.one of PENDING ACCEPTED DECLINED CANCELLED LEAD_REGISTERED CONTACTED NEGOTIATING PROPOSAL WON LOST
kindstringrequirednullable
CLIENT_FOR_PROPERTY or PROPERTY_FOR_CLIENT.
propertyIdstringrequirednullable
Property.
leadIdstringrequirednullable
Client.
matchIdstringrequirednullable
The originating opportunity.
developmentIdstringrequirednullable
Development (new-development registration).
developmentTitlestringrequirednullable
Development name.
scoreintegerrequirednullable
Opportunity score.
summarystringrequirednullable
Summary.
reasonslist of stringrequired
Why it matches.
messagestringrequirednullable
Request message.
ourSidestringrequirednullable
The account's side: REQUESTER or ADDRESSEE.
ourBrokerIdstringrequirednullable
The in-house broker in the partnership.
canMoveFunnelbooleanrequired
The account can move the stage — only the side that brought the client can.
requesterPartyrequirednullable
Requester.
addresseePartyrequirednullable
Addressee.
counterpartobjectrequired
The partner on the other side.
counterpart.namestringrequirednullable
Name.
counterpart.typestringrequirednullable
Account type.
counterpart.organizationstringrequirednullable
Agency.
counterpart.contactNamestringrequirednullable
Contact.
counterpart.phonestringrequirednullable
Phone.
counterpart.emailstringrequirednullable
E-mail.
counterpart.crecistringrequirednullable
Broker license.
counterpart.creciVerifiedbooleanrequired
License verified.
propertyPropertySnapshotrequirednullable
The property.
clientClientSnapshotrequirednullable
The client.
lastProgressAtstringrequirednullable
Last stage move.
protectedUntilstringrequirednullable
Until when the client is protected (new development).
propertyOffMarketAtstringrequirednullable
When the property went off the market.
createdAtstringrequired
When it was created (UTC).
updatedAtstringrequired
Last change (UTC).

PartnershipWriteResult

The outcome.

outcomestringrequired
What happened.
dryRunbooleanrequired
It was a dry run.