Gets a prospect by external reference within a project. Useful when you have a CRM ID and need to find the corresponding Propstreet prospect.
Example
GET /api/v1/projects/123/prospects/external/hubspot/deal-456
Namespace Matching
Namespace matching is case-insensitive. "HubSpot", "hubspot", and "HUBSPOT" are treated as equivalent.
Path Parameters
- Type: stringproject
Id requiredProject ID
- Type: stringnamespacerequired
External system namespace (e.g., 'hubspot', 'salesforce')
- Type: stringidrequired
External ID within the namespace
Responses
- application/json
- application/problem+json
- application/problem+json
- application/problem+json
Request Example for get/api/v1/projects/{projectId}/prospects/external/{namespace}/{id}
curl 'https://app.propstreet.com/api/v1/projects/{projectId}/prospects/external/{namespace}/{id}' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"id": "string",
"uri": null,
"externalRefs": [
{
"namespace": "string",
"id": "string"
}
],
"projectId": "string",
"contactId": null,
"companyId": null,
"displayName": null,
"organizationName": null,
"interest": "interested",
"stage": "not_contacted",
"stageOverride": {
"stage": "not_contacted",
"setBy": {
"id": "string",
"name": "string"
},
"setAtUtc": "2026-09-14T08:01:13.833Z",
"reason": null
},
"nextTask": {
"id": "string",
"type": "call",
"dueDateUtc": "2026-09-14T08:01:13.833Z",
"assignee": {
"id": "string",
"name": "string"
},
"overdue": true
},
"openTaskCount": 1,
"classification": null,
"owner": {
"id": "string",
"name": "string"
},
"capabilities": [
"string"
],
"tags": [
"string"
],
"projectTags": [
"string"
],
"teaser": {
"acceptedUtc": null,
"deadlineUtc": null
},
"createdUtc": "2026-09-14T08:01:13.833Z",
"updatedUtc": "2026-09-14T08:01:13.833Z",
"deletedUtc": null,
"etag": "string",
"changeType": null,
"changeOrigin": null
}