Companies

Cancel a bulk-delivery job for companies

DELETE
/v1/companies/bulk-delivery/{jobId}

Cancels a queued or running companies delivery job.

The job is marked cancelled immediately; the container running it notices on its next page boundary and stops. Because a delivery is billed once, at the end, a cancelled job is never charged — no credits are debited and there is nothing to refund. No partial file is written.

Idempotent-ish: cancelling a job that has already finished (or was already cancelled) returns 409 and changes nothing. Poll GET /v1/companies/bulk-delivery/{jobId} for the settled state.

Authorization

x-api-key<token>

In: header

Path Parameters

jobId*string

Job ID returned by POST /v1/companies/bulk-delivery

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/v1/companies/bulk-delivery/string"
{
  "billing": "credits",
  "billingReason": "first_party_push_target",
  "bytes": 0,
  "chargedCount": 0,
  "completedAt": "string",
  "creditLedgerId": "string",
  "creditsCharged": 0,
  "destination": {
    "targetId": "string",
    "type": "push-target"
  },
  "downloadUrl": "string",
  "entityType": "string",
  "error": "string",
  "estimatedTotal": 0,
  "format": "parquet",
  "jobId": "string",
  "processed": 0,
  "pushBatchId": "string",
  "resultsUrl": "string",
  "startedAt": "string",
  "status": "queued"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}

Submit a bulk-delivery job for branches POST

Queues an ECS task that dumps every matching branches document to S3 in the requested format. Returns 202 with a jobId; poll `GET /v1/branches/bulk-delivery/{jobId}` for status + the signed download URL. **Row limit.** Deliveries of up to 5,000 rows need no entitlement. Above that, the org's `bulk-delivery.branches` entitlement is required and its scope (row ceiling, row filters, allowed fields) governs the delivery; without it the request is rejected with 403 `entitlement_missing`. Pass `limit` at or below the ceiling to deliver a capped subset of a broader query. Email support@modelmatch.com to request a limit increase. Delivery is billed at 1 credit per row regardless of entitlement (deliveries submitted from the ModelMatch web app are not billed). **Push-target destination.** Pass `destination: { type: "push-target", targetId }` to have the finished rows sent to a configured push target instead of downloaded. The target is checked before anything is queued; a refusal returns the push target's status and `code` (`TARGET_NOT_FOUND` 404, `FORBIDDEN` 403, `PLAN_REQUIRED` 402, `TARGET_DISABLED` 409, `ENTITY_MISMATCH` 400). Limits and billing are the same as a file delivery.

Real-estate agents who co-closed with this company's LOs POST

Ranks the real-estate agents on the selling side of this company's loans, by volume. Buckets whose name is an placeholder for "no selling agent recorded" (`non member`, `non listed agent`, and ~140 board-specific spellings) are excluded rather than ranked as agents — they are not people and cannot be resolved with `GET /v1/agents/{id}`. Percentages are shares of the company's whole loan population, so they do not sum to 100 across the page.