Get operator details
One operator: whoever runs childcare centers or Head Start programs and is not a school district (a nonprofit, company, church, tribe, or city or county), with the centers and Head Start programs it runs and its people. An id merged into another operator returns the operator it became. The operator and what it runs are served whole on every plan. Its people depend on the plan: a paid plan gets each person in full, and a free plan gets a title alone for anyone not already in its contacts.
One operator: whoever runs childcare centers or Head Start programs and is not a school district (a nonprofit, company, church, tribe, or city or county), with the centers and Head Start programs it runs and its people. An id merged into another operator returns the operator it became. The operator and what it runs are served whole on every plan. Its people depend on the plan: a paid plan gets each person in full, and a free plan gets a title alone for anyone not already in its contacts.
API key (sk_live_... prefix). Generate keys in the UI under Settings > API Keys, then send it as Authorization: Bearer sk_live_...
In: header
Path Parameters
uuidResponse Body
application/json
application/json
application/json
curl -X GET "https://loading/api/v1/operators/497f6eca-6276-4993-bfeb-53cbbbba6f08"{
"id": "550e8400-e29b-41d4-a716-446655440000",
"slug": "string",
"name": "string",
"kind": "nonprofit",
"ein": "string",
"uei": "string",
"chain_key": "string",
"ntee_code": "string",
"physical_address": "string",
"physical_city": "string",
"state": "string",
"physical_zip": "string",
"website_url": "string",
"details": {
"property1": null,
"property2": null
},
"center_count": -9007199254740991,
"center_seats": -9007199254740991,
"center_states": [
{
"state": "string",
"centers": -9007199254740991,
"seats": -9007199254740991
}
],
"centers": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "string",
"physical_city": "string",
"state": "string",
"capacity": -9007199254740991
}
],
"programs": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "string",
"grant_number": "string",
"delegate_number": "string",
"state": "string",
"funded_slots": -9007199254740991,
"status": "active"
}
],
"people": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "string",
"title": "string",
"redacted": true,
"email": "string",
"phone": "string",
"linkedin_url": "string",
"source_url": "string"
}
]
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}Search operators with a JSON body POST
Body-backed equivalent of GET /operators for large ID sets. Each property uses the same string representation and validation as the corresponding GET query parameter.
List opportunities GET
Agent-produced, verified sales opportunities for the caller's projects. There is no review gate: an opportunity is visible to its owner the moment the agent writes it. An opportunity is written once from a signal and is NOT re-verified on its own, so a vacancy can since have been filled. Read `verification_status` and `last_verified_at` before acting on a row, and call POST /opportunities/{id}/refresh to re-check it. A row that has never been re-checked reports `verification_status: "unverified"` and a null `last_verified_at` rather than implying freshness. Each row carries the team's `verdict` from /opportunities/verdicts — acted on (`pursued`), set aside (`dismissed`) or `not_useful` — or null when nothing is filed (open). `verdict` filters on it in the query, so totals and pages are the filtered set.