> For the complete documentation index, see [llms.txt](https://docs.stellic.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.stellic.com/stellic-partner-api/exports/export-survey-responses.md).

# Export survey responses

Use this endpoint to export the responses to one survey as a CSV, for example for an advising team's spreadsheet. Each row is one response: `Student` (the username), `Survey Name` (the survey's display name), `Submission Time`, then one column per question. The file always comes back in the response, as CSV.

Pass the survey's unique name (not its display name) as `survey_name`, and repeat `usernames` to limit it to some students (`?usernames=jdoe&usernames=msmith`).

## GET /exports/survey\_responses

>

```json
{"openapi":"3.0.0","info":{"title":"Stellic for Developers","version":"1.0"},"tags":[{"name":"Exports","description":"Institution-wide datasets as CSV or JSON. Small datasets come back inline; large ones run in the background and return a `file_name` you poll with `GET /get_export_url/` for a download link."}],"servers":[{"url":"https://{institution}.stellic.com/partnerapi/v1","variables":{"institution":{"default":"{institution}","description":"Your institution's Stellic subdomain: the part before `.stellic.com` in the URL you use to sign in. It becomes the host in every request, as in `https://{institution}.stellic.com/partnerapi/v1/...`. Replace the `{institution}` placeholder with your subdomain before sending."}}}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Personal Access Token issued by your Stellic integration partner. Send it as `Authorization: Bearer <token>` on every request. One token per institution; do not share across environments."}}},"paths":{"/exports/survey_responses":{"get":{"tags":["Exports"],"parameters":[{"name":"survey_name","in":"query","required":true,"description":"The unique internal name of the survey to export responses for.","schema":{"type":"string"}},{"name":"usernames","in":"query","required":false,"description":"Restrict the export to specific students. Repeat the parameter once per username, e.g. `?usernames=jdoe&usernames=msmith`.","style":"form","explode":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"output_format","in":"query","required":false,"description":"Accepted but ignored for this export, as is `delivery_channel`; the response is always CSV, returned in the response.","schema":{"type":"string","enum":["csv"],"default":"csv"}}],"responses":{"200":{"description":"CSV file returned synchronously.","content":{"text/csv":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string"}}}}}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}},"403":{"description":"Your IP address isn't on the allowlist for this endpoint. Contact Stellic to add it; the response includes the `client_ip` Stellic saw.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"client_ip":{"type":"string"}}}}}}}}}}}
```

#### Notes

{% hint style="warning" %}
**usernames; don't comma-separate them.** `usernames=jdoe,msmith` is read as one username. If it matches no student, you get only the header row.
{% endhint %}

* **The file includes only students the account behind your token can see.** Without `usernames`, it includes all those students who have a response. With `usernames`, it includes only the listed students the account can see. If none match, you get only the header row. Test accounts and archived students are excluded. A student who answered more than once has a row per response.
* Use a token bound to an admin account. A non-admin account receives the generic HTTP 400 refusal response shown below.
* **Answers can shift columns.** Each row lists its answers in question order. A question recorded as unanswered has an empty cell. A question missing from the response, such as one added later, has no cell, so later answers move left. Multi-select answers are joined with `,` . Don't assume every row aligns with the question headers.
* `Submission Time` is UTC, for example `2026-03-15 14:30:00.482113+00:00`. It reads `Not available` for responses without a submission time.
* Survey exports must be enabled for your institution. Otherwise, or if building the CSV fails, you receive the generic HTTP 400 refusal response shown below. Ask your Stellic Representative about your institution's setup, or contact Stellic if the failure persists.
* You can export responses after a survey closes. The survey's open and close dates do not restrict exports.

#### Related APIs

* [`GET /exports/{property}`](/stellic-partner-api/exports/bulk-export-dispatcher.md) for the other exports.
