Get sales estimates grid
What are Sales Estimates? Sales Estimates provides a unified overview of all ongoing offers and sales opportunities in Leadtime. This endpoint combines two types of estimates into a single grid view:
- Project Documents: Detailed estimates linked to larger projects, created through the project planning process with products, modules, and custom items
- Express Quotations: Quick estimates created directly from tickets for smaller, ad-hoc customer requests
What data is returned: The response includes a paginated grid of estimate items with comprehensive pricing information:
- Each item represents either a project document estimate or an express quotation
- Only the latest estimate per project or task is returned (older versions are excluded)
- Pricing breakdown includes fixed prices, subscription prices, and per-unit prices
- Aggregated totals across all filtered results are provided at the response level
Pricing components: Each estimate can have three types of pricing:
- Fixed Price: One-time charges for services or products
- Subscriptions: Recurring prices (monthly, quarterly, semi-annually, or annually)
- Per Unit: Prices based on quantity (e.g., price per user or workspace)
The response includes both individual item pricing and aggregated totals (totalPriceFixed, totalPriceSubscriptions, totalPricePerUnit) across all filtered results.
Estimate types:
- PROJECT_DOCUMENT: Estimates created as part of project planning, typically more detailed and structured
- EXPRESS_QUOTATION: Quick estimates created from tickets, ideal for small add-on tasks or support services
Estimate statuses:
- Draft: Estimate is being prepared and has not been sent
- WaitingForApproval: Estimate is pending internal approval before sending
- Final: Estimate has been finalized and approved
- Pending: Express quotation has been sent to customer, awaiting response
- Accepted: Customer has accepted the estimate
- Rejected: Customer has rejected the estimate
- Parked: Estimate has been set aside temporarily
Access restrictions:
- This endpoint is restricted to employees only. Organization members (external contacts) cannot access it
- Results are automatically filtered by the user’s project access permissions
- Only estimates for projects the user has access to are returned
Supported operations:
- Filter by type, organization, project, task, status, pricing components, creator, and creation date
- Sort by any field including title, organization, project, status, pricing, and dates
- Quick search across estimate titles
- Pagination with configurable page size
- Field selection to return only specific fields in the response
Use cases:
- Generate sales pipeline reports showing all active estimates
- Track revenue potential across different estimate types
- Monitor estimate status distribution (draft, pending, accepted, etc.)
- Analyze pricing breakdowns by organization or project
- Export estimate data for external reporting tools
Retrieves a paginated grid of estimates with filtering and sorting capabilities. Quick search available on: title, displayTitle. Filterable fields: id, type, title, displayTitle, organizationId, projectId, taskId, createdAt, status, priceFixed, priceSubscriptions, pricePerUnit, createdById, offerNumber. Sortable fields: id, type, title, displayTitle, organizationId, organizationName, projectId, projectName, taskId, taskShortNumber, createdAt, status, total, priceFixed, priceSubscriptions, pricePerUnit, createdById, createdByName, offerNumber.
/sales/estimates/gridAuthorizationOAuth2 access token · headerrequiredapi:readAuthorizationBearer token (JWT) · headerrequiredpagenumberpageSizenumberviewIdstringquickSearchstringfiltersstringsortstringfieldsToReturnany[]itemsEstimateGridItemResponseDto[]requiredShow propertiesHide properties
EstimateGridItemResponseDtocreatedAtstringrequiredcreatedByIdstringcreatedByNamestringidstringrequiredorganizationIdstringrequiredorganizationNamestringpriceFixednumberpricePerUnitnumberpricePerUnitDetailobjectpriceSubscriptionsnumberpriceSubscriptionsDetailobjectprojectIdstringrequiredprojectNamestringstatusstringrequiredDraftFinalWaitingForApprovalPendingAcceptedRejectedParkedtaskIdstringtaskShortNumbernumbertitlestringrequiredtotalnumbertypestringrequiredPROJECT_DOCUMENTEXPRESS_QUOTATIONpagenumberrequiredpageSizenumberrequiredtotalnumberrequiredtotalPriceFixednumberrequiredtotalPricePerUnitnumberrequiredtotalPriceSubscriptionsnumberrequiredcurl -X GET "https://leadtime.app/api/public/sales/estimates/grid" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"const response = await fetch("https://leadtime.app/api/public/sales/estimates/grid", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
});import requests
response = requests.get(
"https://leadtime.app/api/public/sales/estimates/grid",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
){
"items": [
{
"createdAt": "2024-11-06T12:00:00.000Z",
"createdById": "123e4567-e89b-12d3-a456-426614174004",
"createdByName": "John Doe",
"id": "123e4567-e89b-12d3-a456-426614174000",
"organizationId": "123e4567-e89b-12d3-a456-426614174001",
"organizationName": "Acme Corp",
"priceFixed": 3000,
"pricePerUnit": 100,
"pricePerUnitDetail": {
"api-calls": 50,
"user-licenses": 50
},
"priceSubscriptions": 500,
"priceSubscriptionsDetail": {
"hosting": 200,
"support": 300
},
"projectId": "123e4567-e89b-12d3-a456-426614174002",
"projectName": "Website Redesign",
"status": "Draft",
"taskId": "123e4567-e89b-12d3-a456-426614174003",
"taskShortNumber": 42,
"title": "Website Redesign Estimate",
"total": 5000,
"type": "PROJECT_DOCUMENT"
}
],
"page": 1,
"pageSize": 10,
"total": 150,
"totalPriceFixed": 125000,
"totalPricePerUnit": 15000,
"totalPriceSubscriptions": 45000
}