Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: Sana Assignments API
description: Tenant-scoped REST API for the Sana platform (Sana AI / Sana Agents and Sana Learn).
termsOfService: https://sanalabs.com/legal
contact:
name: Sana
url: https://docs.sana.ai/api-docs/
version: '0.0'
servers:
- url: https://<domain>.sana.ai
description: Tenant-scoped base URL; replace <domain> with your Sana tenant.
security:
- bearerAuth: []
tags:
- name: Assignments
paths:
/api/v0/users/{userId}/assignments:
parameters:
- name: userId
in: path
required: true
schema:
type: string
get:
operationId: listUserAssignments
tags:
- Assignments
summary: List a user's assignments
responses:
'200':
description: OK
post:
operationId: assignContentToUser
tags:
- Assignments
summary: Assign content to a user
responses:
'200':
description: OK
delete:
operationId: deleteUserAssignment
tags:
- Assignments
summary: Delete a user's assignment
responses:
'200':
description: OK
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'Bearer access token obtained from POST /api/token via the OAuth 2.0 client credentials flow. Sent as: Authorization: Bearer <accessToken>.'