Invite people to a project (the route Onplana Schedule and the Onplana Tasks apps call)
Accepts a session, a token holding PROJECTS_WRITE (the Onplana Schedule grant), or TASKS_WRITE from an OAuth app token (the Onplana Tasks grant). A personal access token holding TASKS_WRITE without PROJECTS_WRITE gets 403 PERSONAL_TOKEN_REFUSED. Also refused: an unverified sender (403 EMAIL_UNVERIFIED), a demo workspace (403 SANDBOX_REFUSED), and anyone who is not the project's Owner or Manager (403 PROJECT_INVITE_DENIED; organization admins pass). The seat cap, the approval rule for a paid seat and the hourly send limit are the same as the web's. The Tasks apps send no role or orgRole, so their invitations are guests. With handOverTaskId, a task assigned to the caller is marked to move to the invitee when they accept; it is checked before anything is sent: 400 HANDOVER_ONE_PERSON, 404 TASK_NOT_FOUND, 403 TASK_EDIT_DENIED, 409 HANDOVER_NOT_YOURS.
Request
- Base URL: https://api.onplana.com/api
- URL: https://api.onplana.com/api/projects/{id}/share-invite
- Auth: one of:
- HTTP bearer
- API key in header Authorization
Path parameters
Project UUID
Headers
UUID of the active organization. Sets org context for all scoped operations.
Request body
Response
{ invited, added, requested, rateLimited, seatLimited, results[{ email, status, emailStatus?, userId? }], retryAfterSec?, seatLimit?, currentPlan?, handOver?: { taskId, marked } }. userId is on added and already-a-member rows.
Changes
No recorded changes to this operation across all 1 revision of this API.