Workspace
Write to Solk support
A new ticket. JSON or multipart/form-data: subject, category, body, ctx (optional context — app, device, os, lang, viewport, screen, page; JSON or a JSON string), attachments files (multipart field; in JSON [{name, mime, data}] base64). Up to 4 files, 6 MB each, 15 MB in total; png, jpg, gif, webp, heic, pdf, txt, log, csv, xlsx, docx, zip, json. The ticket is stored in the workspace and forwarded to the Solk panel; if the panel cannot be reached the response has sent: false and the installation retries by itself. Response: sent, rejected (files that could not be attached), ticket (with the thread).
Authorization
AuthorizationheaderrequiredBearer token: API key (sk_…), OAuth access token (mcp_…) or mobile session (xk_…).
Scope:
crm.writeBody application/json
subjectstringrequiredSubject (up to 200 characters; the start of the body if empty).
categorystringoptionalCategory.
Values
questionbugrequestbillingotherbodystringrequiredDescription.
ctxobjectoptionalApp / device context.
Errors
| HTTP | error | Meaning |
|---|---|---|
400 | invalid | Missing or invalid field (`message` explains). |
400 | no_panel | no_panel |
Request
curl -X POST https://ornek.solk.app/api/v1/support \
-H "Authorization: Bearer $SOLK_API_KEY"const res = await fetch("https://ornek.solk.app/api/v1/support", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SOLK_API_KEY}`,
},
});
const data = await res.json();import os, requests
r = requests.post(
"https://ornek.solk.app/api/v1/support",
headers={"Authorization": f"Bearer {os.environ['SOLK_API_KEY']}"},
)
print(r.json())Response