πŸ“˜ API – Overview

Base URL

https://api.symphonydesk.io

Authentication

Every request must include:

x-symphonydesk-key: <YOUR_API_KEY>

(Generated per customer.)


πŸ“˜ Endpoint: Execute Job

POST /jobs/execute

Executes a runbook for the customer.


Request Body

{
  "customer": "Contoso",
  "runbook": "ACT-CreateRemoteMailbox.ps1",
  "issue_key": "ITSD-1209",
  "params": {
    "DisplayName": "John Doe",
    "UPN": "john.doe@contoso.com"
  }
}

Response (success)

{
  "job_id": "job-8f7b23c4",
  "status": "success",
  "output": "Remote mailbox created successfully."
}

Response (error)

{
  "job_id": "job-8f7b23c4",
  "status": "error",
  "message": "Failed to connect to Exchange"
}

πŸ“˜ Endpoint: Job Status

GET /jobs/{job_id}

Retrieves historical job status from the SymphonyDesk job store.

Response:

{
  "job_id": "job-8f7b23c4",
  "status": "success",
  "started_at": "2025-01-14T12:40:10Z",
  "finished_at": "2025-01-14T12:40:15Z",
  "output": "Mailbox enabled."
}

πŸ“˜ Errors

  • 401 β†’ Invalid API Key
  • 404 β†’ Job not found
  • 500 β†’ Runner or runbook failed