Status Reports
Status reports in smenso are structured project-level summaries used to communicate progress, risks, achievements, and key metrics at defined intervals (e.g. weekly, monthly, milestone-based).
A status report typically contains:
- A reporting period or date
- A summary of the current situation
- Highlights and completed work
- Progress level
- Risks, issues, or blockers
- Next steps or planned activities
- Optional KPIs and metadata (e.g. RAG status, health indicators, flavors)
Status reports help stakeholders understand where a project stands without needing to inspect all underlying tasks and data.
Lifecycle: Draft → Published
Each status report has a state:
| State | Behavior |
|---|---|
| Draft | Content can be edited. Visible to all project members but not yet official. |
| Published | Content is frozen and cannot be modified. Publication date is set automatically. |
This ensures that published reports remain reliable, traceable records once shared.
API workflow:
- Create a status report → it starts as a draft
- Update the draft (add content, set fields, attach files)
- Publish the report (set
isPublished: true) → it becomes immutable
To correct a published report, create a new one (optionally by copying the last).
Available Endpoints
Integration JSON API
| Action | Method | Endpoint |
|---|---|---|
| Create status reports | POST | /api/integration/statusreport/json |
| Update status reports | PUT | /api/integration/statusreport/json |
| Delete status report | DELETE | /api/integration/statusreport/json/{id} |
| Create from template | POST | /api/integration/template/statusreport/create/json/{templateId} |
Integration XML API
| Action | Method | Endpoint |
|---|---|---|
| Create/update status reports | POST | /api/integration/statusreport |
| Delete status report | DELETE | /api/integration/statusreport/{id} |
| Create from template | POST | /api/integration/template/statusreport/create/{templateId} |
Related Endpoints
| Area | Endpoints |
|---|---|
| Attachments | Upload · Get attachments |
| Comments | Create · Update · Get comments |
Key Fields
| Field | Type | Required | Description |
|---|---|---|---|
projectId | string (GUID) | ✅ | The project this report belongs to |
title | string | ✅ | Title of the status report |
statusDate | date | ❌ | The date the report covers (defaults to current date) |
overallStatus | enum | ❌ | RAG status: Green / Yellow / Red |
scheduleStatus | enum | ❌ | Timeline health |
costStatus | enum | ❌ | Budget health |
objectivesStatus | enum | ❌ | Goals health |
progress | number | ❌ | Progress percentage (0–100) |
description | RichText | ❌ | Narrative summary / status explanation |
nextSteps | RichText | ❌ | Planned next actions |
isPublished | boolean | ❌ | Set to true to publish (locks the report) |
tempId | string | ❌ | Temporary ID to correlate batch results |
externalId | string | ❌ | External system reference |
Field names and availability may vary between JSON and XML APIs. See the respective endpoint reference for exact schemas.
Example: Create a Status Report
POST /api/integration/statusreport/json
Content-Type: application/json
Authorization: Bearer {token}{
"items": [
{
"projectId": "a1b2c3d4-...",
"title": "Monthly Status – June 2025",
"statusDate": "2025-06-30",
"overallStatus": "Green",
"scheduleStatus": "Green",
"costStatus": "Yellow",
"progress": 72,
"description": "<p>Sprint 4 completed on time. Two features deferred to next sprint.</p>",
"nextSteps": "<p>Begin Sprint 5. Review deferred items with product owner.</p>",
"isPublished": false
}
]
}Response:
{
"ticketId": "e5f6g7h8-..."
}Poll the ticket to get the created report IDs:
GET /api/integration/status/json/{ticketId}
Example: Publish a Status Report
To publish an existing draft, update it with isPublished: true:
PUT /api/integration/statusreport/json
Content-Type: application/json
Authorization: Bearer {token}{
"items": [
{
"id": "the-report-id-...",
"isPublished": true
}
]
}Once published, the report is locked. The publicationDate is set automatically by smenso.
Templates
Status reports can be created from templates to ensure consistent structure across projects:
POST /api/integration/template/statusreport/create/json/{templateId}
Templates define:
- Which sections a report has
- Default structure and headings
- Optional default content (including RichText)
- Possibly standard KPIs or flavors
When creating from a template, the description and nextSteps fields are pre-filled with the template content. Other fields (status, progress, etc.) must still be set individually.
RichText Content
The description and nextSteps fields support RichText (HTML). Content is preserved across UI and API and can be carried over from templates.
When sending RichText via API, use standard HTML:
{
"description": "<p>Sprint 4 completed. <strong>Key achievement:</strong> Payment module released.</p><ul><li>3 bugs fixed</li><li>Performance improved by 15%</li></ul>"
}Attachments & Comments
Status reports support both attachments and comments via dedicated endpoints:
- Attachments: Upload files to a status report or retrieve existing attachments. The status report must be saved (at least as a draft) before files can be attached. See Attachments Guide.
- Comments: Add or retrieve comments on status reports. See the Comments endpoints in the API Reference.
Permissions & Visibility
Status reports respect project-level permissions:
- Only authorized users can create, edit, or delete reports.
- Published reports can only be deleted, not edited.
- API operations inherit the permission model of the project and the user whose token is used.
If a user cannot perform an action in the UI, the API will not allow it either.
Status Date vs. Publication Date
Status reports have two date fields:
| Field | Description |
|---|---|
statusDate | The date the report covers. Freely selectable – can be retroactive or in advance. Defaults to current date if not set. |
publicationDate | Set automatically when the report is published. Cannot be changed manually. Read-only. |
Both dates can be queried via the Reporting API and are available as columns in portfolio views.
Further Reading
- Status Reports in the smenso Help Center – Workflows, features, and UI documentation
- Integration Tickets – How async processing works
- Flavors Guide – Custom fields in reports (including status flavors)
- Attachments Guide – Upload and manage files
- Templates Guide – Creating resources from templates
Updated 19 days ago
