Skip to content

Employee Invitations — Proposed Guide

Planned API — Reference Only

Employee Invitations: A proposed invitation would request onboarding for an identified work contact. It is a separate action from creating a profile and…

Overview

A proposed invitation would request onboarding for an identified work contact. It is a separate action from creating a profile and should have an explicit expiration and acceptance state.

Key concepts

Bind the invitation to an organization and intended role. Track pending, accepted, expired and revoked states.

Implementation considerations

This example sends no email. A future system must avoid duplicate invitations and ensure that acceptance cannot escalate the invited role.

Proposed API behavior

POST /v1/invitations is an illustrative design for this topic. Path and field names may change before implementation. Access would require an authorized organization context and operation-specific permission; no public API or authorization grant is available here.

Illustrative request fields
NameTypeDescription
emailstringFictional work contact. This reserved example address does not identify a real employee.
organization_idstringStable fictional organization reference; not a secret and not evidence that a resource exists.
role_idstringStable fictional role reference; not a secret and not evidence that a resource exists.
expires_atstring (date-time)Synthetic UTC timestamp. Business occurrence time may differ from delivery or processing time.

Static example requests

Proposed, non-executing request examples
# Proposed request text only; this reserved host is not a live API.
curl -X POST 'https://api.remizen.example/v1/invitations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  --data '{
  "email": "taylor@example.com",
  "organization_id": "org_example_123",
  "role_id": "role_example_123",
  "expires_at": "2026-01-15T12:00:00Z"
}'

Fictional response example

201 (proposed example)Static response fixture

Fictional documentation data only. No request was sent, record created, review performed, payment initiated or provider connection activated.

JSON
{
  "data": {
    "email": "taylor@example.com",
    "organization_id": "org_example_123",
    "role_id": "role_example_123",
    "expires_at": "2026-01-15T12:00:00Z",
    "id": "invitations_example_123"
  },
  "meta": {
    "request_id": "req_example_123",
    "reference_only": true
  }
}

Illustrative error case

Review this failure case in context: This example sends no email. A future system must avoid duplicate invitations and ensure that acceptance cannot escalate the invited role.

422 (illustrative; final error contracts are undecided)Proposed error fixture

Synthetic diagnostic example. Human-readable messages must not be used as stable programmatic contracts.

JSON
{
  "error": {
    "code": "validation_error",
    "message": "The proposed employee invitations operation requires review of its input or authorization.",
    "request_id": "req_example_123"
  }
}

Proposed data types

Illustrative field dictionary
NameTypeDescription
emailstringFictional work contact. This reserved example address does not identify a real employee.
organization_idstringStable fictional organization reference; not a secret and not evidence that a resource exists.
role_idstringStable fictional role reference; not a secret and not evidence that a resource exists.
expires_atstring (date-time)Synthetic UTC timestamp. Business occurrence time may differ from delivery or processing time.