API pre projekty
Projekt je jeden AI moderátor s vlastnými otázkami. Väčšina ostatných endpointov potrebuje ID projektu, takže toto býva prvé volanie, ktoré urobíte. Overenie, stránkovanie a chyby opisuje Prehľad API.
Zoznam projektov#
HTTP
GET /api/v1/projectsVráti všetky projekty v organizácii kľúča od najnovších, zverejnené aj nezverejnené. Nemá žiadne parametre a vráti všetky projekty na jednej stránke.
Príklad#
curl "https://diaform.io/api/v1/projects" \
-H "Authorization: Bearer $DIAFORM_API_KEY"Odpoveď#
JSON
{
"data": [
{
"id": "b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d",
"name": "Onboarding interviews",
"product_name": "Acme",
"published": true,
"language": "english",
"respondent_access": "public",
"url": "https://acme.diaform.io/c/b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d",
"created_at": "2026-04-02T09:14:31.402057+00:00",
"published_at": "2026-04-02T09:41:05.471073+00:00"
}
],
"has_more": false,
"next_cursor": null
}Polia projektu#
| Pole | Typ | Popis |
|---|---|---|
id | string | ID projektu |
name | string alebo null | Názov projektu, ako ho zobrazuje dashboard |
product_name | string alebo null | Názov produktu alebo služby z nastavení projektu |
published | boolean | Či je projekt zverejnený |
language | string alebo null | Jazyk rozhovoru, napríklad english |
respondent_access | string | public (ktokoľvek s odkazom) alebo invite_only |
url | string alebo null | Verejný odkaz na rozhovor. Ak máte overenú vlastnú doménu, použije ju. |
created_at | string | Kedy bol projekt vytvorený |
published_at | string alebo null | Kedy bol naposledy zverejnený |
Načítanie projektu#
HTTP
GET /api/v1/projects/{project_id}Vráti jeden projekt s jeho aktuálnymi otázkami a počtami rozhovorov.
Príklad#
curl "https://diaform.io/api/v1/projects/b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d" \
-H "Authorization: Bearer $DIAFORM_API_KEY"Odpoveď#
JSON
{
"id": "b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d",
"name": "Onboarding interviews",
"product_name": "Acme",
"published": true,
"language": "english",
"respondent_access": "public",
"url": "https://acme.diaform.io/c/b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d",
"created_at": "2026-04-02T09:14:31.402057+00:00",
"published_at": "2026-04-02T09:41:05.471073+00:00",
"questions": [
{
"id": "V1StGXR8_Z5jdHi6B-myT",
"text": "How did your first week with the product go?",
"type": "open_text",
"required": false,
"options": []
},
{
"id": "tTJUuhijB3m3nvA5horJ6",
"text": "Which plan are you on?",
"type": "single_choice",
"required": true,
"options": [
{ "id": "fvbfMZcZXZLzZWCa-jXXJ", "label": "Starter" },
{ "id": "nb-XqVVvSICqEQjZ12Mox", "label": "Pro" }
]
}
],
"conversation_counts": {
"total": 212,
"completed": 148
}
}Obsahuje všetky polia zo zoznamu a navyše:
| Pole | Typ | Popis |
|---|---|---|
questions | array | Zverejnené otázky v danom poradí |
questions[].id | string | ID otázky. Zhrnutia rozhovorov naň odkazujú ako na question_id. |
questions[].text | string | Otázka tak, ako je napísaná |
questions[].type | string | open_text, single_choice, multiple_choice, nps, star_rating alebo file_upload |
questions[].required | boolean | Či je otázka povinná |
questions[].options | array | Možnosti pri otázke s výberom, každá s id a label. Pri ostatných typoch prázdne. |
conversation_counts.total | number | Rozhovory, ktoré boli aspoň otvorené |
conversation_counts.completed | number | Rozhovory, ktoré sa dostali do konca |
Otázky sa môžu časom meniť. Zhrnutie rozhovoru si uchováva znenie, ktoré respondent naozaj dostal.