Create a new public need (anonymous intake)
POST
/api/needs/public
const url = 'https://example.com/api/needs/public';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"organizationId":"10000000-0000-0000-0000-000000000001","partnerId":"20000000-0000-0000-0000-000000000002","description":"Community food pantry providing fresh produce, dry goods, and emergency family assistance.","customFields":{"dietaryRestrictions":"Gluten-Free","urgency":"High"},"isConfidential":false,"parentNeedId":"30000000-0000-0000-0000-000000000003","constituentId":"40000000-0000-0000-0000-000000000004","householdId":"50000000-0000-0000-0000-000000000005"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/needs/public \ --header 'Content-Type: application/json' \ --data '{ "organizationId": "10000000-0000-0000-0000-000000000001", "partnerId": "20000000-0000-0000-0000-000000000002", "description": "Community food pantry providing fresh produce, dry goods, and emergency family assistance.", "customFields": { "dietaryRestrictions": "Gluten-Free", "urgency": "High" }, "isConfidential": false, "parentNeedId": "30000000-0000-0000-0000-000000000003", "constituentId": "40000000-0000-0000-0000-000000000004", "householdId": "50000000-0000-0000-0000-000000000005" }'Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
organizationId
required
Unique identifier (UUID v4) for the parent organization.
string format: uuid
Example
10000000-0000-0000-0000-000000000001partnerId
Unique identifier (UUID v4) for the assigned partner location facility.
string format: uuid
Example
20000000-0000-0000-0000-000000000002description
required
Detailed operational description or resource notes.
string
Example
Community food pantry providing fresh produce, dry goods, and emergency family assistance.customFields
Flexible key-value payload for partner-specific intake fields.
object
Example
{ "dietaryRestrictions": "Gluten-Free", "urgency": "High"}isConfidential
Flag marking sensitive constituent request details as confidential.
boolean
Example
falseparentNeedId
UUID (v4) of parent need if part of a linked multi-step request.
string format: uuid
Example
30000000-0000-0000-0000-000000000003constituentId
UUID (v4) of the constituent record.
string format: uuid
Example
40000000-0000-0000-0000-000000000004householdId
UUID (v4) of the constituent household group.
string format: uuid
Example
50000000-0000-0000-0000-000000000005Responses
Section titled “Responses”Public need created successfully
Media typeapplication/json
object
id
required
Unique identifier (UUID v4) for the created Need.
string format: uuid
referenceNumber
Public tracking reference number (e.g. HTC-29).
string
surveyToken
Unique token for taking the optional demographic survey.
string format: uuid
surveyLink
Full URL to access the public demographic survey.
string
slaHours
Matched partner target response window in hours.
integer
Example
{ "id": "f1937c65-e3c0-4449-ace1-f5e54b93cab6", "referenceNumber": "HTC-29", "surveyToken": "1fa34f13-99a3-4ad1-a690-2eed8a28ef86", "surveyLink": "https://app.dreamcenterconnect.com/s/1fa34f13-99a3-4ad1-a690-2eed8a28ef86", "slaHours": 48}Bad Request