Publish a draft as a deal
curl --request POST \
--url https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"notify_buyers": true,
"disposition_manager_id": "<string>"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({notify_buyers: true, disposition_manager_id: '<string>'})
};
fetch('https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish"
payload = {
"notify_buyers": True,
"disposition_manager_id": "<string>"
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"data": {
"deal_id": "<string>",
"fee": 0,
"status": "available"
},
"meta": {
"request_id": "<string>",
"api_version": "<string>"
}
}{
"type": "https://developers.investorlift.com/marketplace/errors#invalid_body",
"title": "Body unusable",
"status": 400,
"code": "invalid_body",
"detail": "<string>",
"recovery": "Send a JSON body with the content type application/json.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#unauthorized",
"title": "Not authenticated",
"status": 401,
"code": "unauthorized",
"detail": "<string>",
"recovery": "Send a current access token for this API, and start a new authorization when the token is expired.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#insufficient_balance",
"title": "Balance too low",
"status": 402,
"code": "insufficient_balance",
"detail": "<string>",
"recovery": "Add credits to the organization on Investorlift, then publish the draft again.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#designation_required",
"title": "Designation missing",
"status": 403,
"code": "designation_required",
"detail": "<string>",
"recovery": "Finish the onboarding of the side you call, then repeat the call.",
"request_id": "<string>",
"designation": "seller"
}{
"type": "https://developers.investorlift.com/marketplace/errors#not_found",
"title": "Not found",
"status": 404,
"code": "not_found",
"detail": "<string>",
"recovery": "Check the id, and check that the account you call with owns the resource.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#method_not_allowed",
"title": "Method not allowed",
"status": 405,
"code": "method_not_allowed",
"detail": "<string>",
"recovery": "Use one of the methods the documentation lists for this path.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#address_unavailable",
"title": "Address taken",
"status": 409,
"code": "address_unavailable",
"detail": "<string>",
"recovery": "Wait for the other deal on this address to close, or publish a different property.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#deal_incomplete",
"title": "Draft incomplete",
"status": 422,
"code": "deal_incomplete",
"detail": "<string>",
"recovery": "Add each field the detail names to the draft, then publish it again.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#origin_error",
"title": "Service unavailable",
"status": 503,
"code": "origin_error",
"detail": "<string>",
"recovery": "Repeat the call in a minute, and tell Investorlift support when the answer stays the same.",
"request_id": "<string>"
}Reference: sell
Publish a draft as a deal
Checks the draft, checks the credit balance, locks the address and creates the deal as available.
POST
/
sell
/
drafts
/
{draft_id}
/
publish
Publish a draft as a deal
curl --request POST \
--url https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"notify_buyers": true,
"disposition_manager_id": "<string>"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({notify_buyers: true, disposition_manager_id: '<string>'})
};
fetch('https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/marketplace/v1/sell/drafts/{draft_id}/publish"
payload = {
"notify_buyers": True,
"disposition_manager_id": "<string>"
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"data": {
"deal_id": "<string>",
"fee": 0,
"status": "available"
},
"meta": {
"request_id": "<string>",
"api_version": "<string>"
}
}{
"type": "https://developers.investorlift.com/marketplace/errors#invalid_body",
"title": "Body unusable",
"status": 400,
"code": "invalid_body",
"detail": "<string>",
"recovery": "Send a JSON body with the content type application/json.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#unauthorized",
"title": "Not authenticated",
"status": 401,
"code": "unauthorized",
"detail": "<string>",
"recovery": "Send a current access token for this API, and start a new authorization when the token is expired.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#insufficient_balance",
"title": "Balance too low",
"status": 402,
"code": "insufficient_balance",
"detail": "<string>",
"recovery": "Add credits to the organization on Investorlift, then publish the draft again.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#designation_required",
"title": "Designation missing",
"status": 403,
"code": "designation_required",
"detail": "<string>",
"recovery": "Finish the onboarding of the side you call, then repeat the call.",
"request_id": "<string>",
"designation": "seller"
}{
"type": "https://developers.investorlift.com/marketplace/errors#not_found",
"title": "Not found",
"status": 404,
"code": "not_found",
"detail": "<string>",
"recovery": "Check the id, and check that the account you call with owns the resource.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#method_not_allowed",
"title": "Method not allowed",
"status": 405,
"code": "method_not_allowed",
"detail": "<string>",
"recovery": "Use one of the methods the documentation lists for this path.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#address_unavailable",
"title": "Address taken",
"status": 409,
"code": "address_unavailable",
"detail": "<string>",
"recovery": "Wait for the other deal on this address to close, or publish a different property.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#deal_incomplete",
"title": "Draft incomplete",
"status": 422,
"code": "deal_incomplete",
"detail": "<string>",
"recovery": "Add each field the detail names to the draft, then publish it again.",
"request_id": "<string>"
}{
"type": "https://developers.investorlift.com/marketplace/errors#origin_error",
"title": "Service unavailable",
"status": 503,
"code": "origin_error",
"detail": "<string>",
"recovery": "Repeat the call in a minute, and tell Investorlift support when the answer stays the same.",
"request_id": "<string>"
}Authorizations
Authorization code with PKCE. The person grants the scopes on the Investorlift consent page and accepts the Marketplace API Terms there.
Headers
A key of your own that names this attempt. The same key with the same body replays the stored answer.
Required string length:
1 - 255Path Parameters
The public id in the path, for example draft_id as mdl_a1b2c3d4e5f6.
Body
application/json
Was this page helpful?