Softwire API
REST API v1 120 req/min

Build on Softwire's workspace platform API

Scoped bearer tokens for tickets, projects, HRMS, and CRM — plus inbound webhooks for Git providers and error reporting.

base-url.sh
export SOFTWIRE_TOKEN="softwire_your_token_here"
export SOFTWIRE_BASE="https://softwireapp.in/api/v1"

curl -s "${SOFTWIRE_BASE}/workspaces/1/tickets" \
  -H "Authorization: Bearer ${SOFTWIRE_TOKEN}" \
  -H "Accept: application/json"

→ 200 OK

Authentication

Create a workspace API token under Integrations → API. Tokens are prefixed with softwire_ and scoped to specific abilities.

ScopeAccess
tickets:readGET workspace tickets
tickets:writeCreate/update tickets (coming soon)
projects:readGET workspace projects
hrms:readGET HRMS employee profiles
crm:readGET CRM deals
webhooks:manageManage outbound webhook subscriptions
Authorization: Bearer softwire_xxxxxxxxxxxxxxxx

Base URL

All v1 resources live under a single base path. Replace {workspace} with your workspace ID.

https://softwireapp.in/api/v1/workspaces/{workspace}/…

Endpoints overview

Read endpoints return JSON with a top-level data array. Lists are capped at 50 records and sorted by recency unless noted.

MethodPathScopeDescription
GET /api/v1/workspaces/{workspace}/tickets tickets:read List recent tickets with assignee and status.
GET /api/v1/workspaces/{workspace}/projects projects:read List workspace projects and delivery status.
GET /api/v1/workspaces/{workspace}/hrms/employees hrms:read Employee profiles with department and job title.
GET /api/v1/workspaces/{workspace}/crm/deals crm:read CRM deals with stage, amount, and account.
GET /api/webhooks/{workspace}/{provider} Ping Git provider webhook endpoint (github, gitlab, bitbucket).
POST /api/webhooks/{workspace}/{provider} Receive Git push/issue events into workspace activity.
POST /api/webhooks/{workspace}/errors Ingest application error reports as tickets.

Platform APIs

Tickets

Returns ticket number, title, status, priority, assignee, and timestamps.

GET https://softwireapp.in/api/v1/workspaces/1/tickets

{
  "data": [
    {
      "id": 1,
      "ticket_number": "TKT-001",
      "title": "Login issue on mobile",
      "status": "open",
      "priority": "high",
      "assigned_to": 4,
      "created_at": "2026-08-20T10:00:00.000000Z"
    }
  ]
}

Projects

Project name, delivery status, color, and schedule window.

GET https://softwireapp.in/api/v1/workspaces/1/projects

HRMS employees

Employee profiles with linked user, department, job title, and join date.

GET https://softwireapp.in/api/v1/workspaces/1/hrms/employees

CRM deals

Pipeline deals with stage, amount, account, and owner.

GET https://softwireapp.in/api/v1/workspaces/1/crm/deals

Webhooks

Inbound webhooks let external systems push events into Softwire without a bearer token. Configure Git integrations in the workspace first.

Git providers

  • GET/POST /api/webhooks/{workspace}/github
  • GET/POST /api/webhooks/{workspace}/gitlab
  • GET/POST /api/webhooks/{workspace}/bitbucket

POST payloads create activity entries and may auto-create tickets from issue events when the integration is enabled.

Error reports

Send application exceptions to POST /api/webhooks/{workspace}/errors to open or update support tickets from your monitoring stack.

POST https://softwireapp.in/api/webhooks/1/errors
Content-Type: application/json

{
  "message": "Payment gateway timeout",
  "severity": "critical",
  "url": "/checkout"
}

Rate limits

Authenticated v1 endpoints are limited to 120 requests per minute per token. Webhook endpoints share the same throttle. Exceeding the limit returns 429 Too Many Requests.

Errors

StatusMeaning
401Missing or invalid bearer token
403Token lacks required scope or workspace mismatch
404Workspace or integration not found
429Rate limit exceeded