User Invitations
Operations Summary
Core CRUD
List user invitations
Retrieve a list of user invitations visible to the current user.
Retrieve user invitation
Retrieve details of a specific user invitation.
Create user invitation
Create a new user invitation to grant a role in a specific scope (e.g., organization or project).
HTTPie Python TypeScript Request Body (required) Responses
http \
POST \
https://api.example.com/api/user-invitations/ \
Authorization:"Token YOUR_API_TOKEN" \
role = "a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
scope = "string-value" \
email = "alice@example.com"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.invitation_request import InvitationRequest # (1)
from waldur_api_client.api.user_invitations import user_invitations_create # (2)
client = AuthenticatedClient (
base_url = "https://api.example.com" , token = "YOUR_API_TOKEN"
)
body_data = InvitationRequest (
role = "a1b2c3d4-e5f6-7890-abcd-ef1234567890" ,
scope = "string-value" ,
email = "alice@example.com"
)
response = user_invitations_create . sync (
client = client ,
body = body_data
)
print ( response )
Model Source: InvitationRequest
API Source: user_invitations_create
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 import { userInvitationsCreate } from 'waldur-js-client' ;
try {
const response = await userInvitationsCreate ({
auth : "Token YOUR_API_TOKEN" ,
body : {
"role" : "a1b2c3d4-e5f6-7890-abcd-ef1234567890" ,
"scope" : "string-value" ,
"email" : "alice@example.com"
}
});
console . log ( 'Success:' , response );
} catch ( error ) {
console . error ( 'Error:' , error );
}
Field
Type
Required
Description
role
string (uuid)
✓
UUID of the role to grant to the invited user
scope
string
✓
URL of the scope (Customer or Project) for this invitationConstraints: write-only
full_name
string
native_name
string
phone_number
string
organization
string
job_title
string
email
string (email)
✓
Invitation link will be sent to this email. Note that user can accept invitation with different email.
civil_number
string
Civil number of invited user. If civil number is not defined any user can accept invitation.
extra_invitation_text
string
201 -
Field
Type
Description
scope_uuid
string (uuid)
UUID of the invitation scope (Customer or Project)
scope_name
string
Name of the invitation scope
scope_description
string
Description of the invitation scope
scope_type
string
Type of the invitation scope (e.g., 'customer', 'project')
customer_uuid
string (uuid)
UUID of the customer organization
customer_name
string
Name of the customer organization
role_name
string
Name of the role being granted (e.g., 'PROJECT.ADMIN')
role_description
string
Description of the role being granted
created_by_full_name
string
Full name of the user who created this invitation
created_by_username
string
Username of the user who created this invitation
created_by_image
string (uri)
Profile image of the user who created this invitation
url
string (uri)
uuid
string (uuid)
role
string (uuid)
UUID of the role to grant to the invited user
created
string (date-time)
expires
string (date-time)
Expiration date and time of the invitation
full_name
string
native_name
string
phone_number
string
organization
string
job_title
string
email
string (email)
Invitation link will be sent to this email. Note that user can accept invitation with different email.
civil_number
string
Civil number of invited user. If civil number is not defined any user can accept invitation.
state
any
error_message
string
extra_invitation_text
string
execution_state
any
Update user invitation
Update an existing user invitation. Only pending invitations can be edited. Allows changing email and role within the same scope.
Partially update user invitation
Partially update an existing user invitation. Only pending invitations can be edited. Allows changing email and role within the same scope.
Delete user invitation
Delete a user invitation. Only users with invitation management permissions can delete invitations.
Other Actions
Get public invitation details
Retrieves public-facing details of an invitation. This is used to show information to a user before they accept it.
HTTPie Python TypeScript Path Parameters Responses
http \
GET \
https://api.example.com/api/user-invitations/a1b2c3d4-e5f6-7890-abcd-ef1234567890/details/ \
Authorization:"Token YOUR_API_TOKEN"
1
2
3
4
5
6
7
8
9
10
11
12 from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.user_invitations import user_invitations_details_retrieve # (1)
client = AuthenticatedClient (
base_url = "https://api.example.com" , token = "YOUR_API_TOKEN"
)
response = user_invitations_details_retrieve . sync (
uuid = "a1b2c3d4-e5f6-7890-abcd-ef1234567890" ,
client = client
)
print ( response )
API Source: user_invitations_details_retrieve
1
2
3
4
5
6
7
8
9
10
11
12
13 import { userInvitationsDetailsRetrieve } from 'waldur-js-client' ;
try {
const response = await userInvitationsDetailsRetrieve ({
auth : "Token YOUR_API_TOKEN" ,
path : {
"uuid" : "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
});
console . log ( 'Success:' , response );
} catch ( error ) {
console . error ( 'Error:' , error );
}
Name
Type
Required
uuid
string (uuid)
✓
200 -
Field
Type
Description
scope_uuid
string (uuid)
UUID of the invitation scope (Customer or Project)
scope_name
string
Name of the invitation scope
scope_description
string
Description of the invitation scope
scope_type
string
Type of the invitation scope (e.g., 'customer', 'project')
customer_uuid
string (uuid)
UUID of the customer organization
customer_name
string
Name of the customer organization
role_name
string
Name of the role being granted (e.g., 'PROJECT.ADMIN')
role_description
string
Description of the role being granted
created_by_full_name
string
Full name of the user who created this invitation
created_by_username
string
Username of the user who created this invitation
created_by_image
string (uri)
Profile image of the user who created this invitation
email
string (email)
Invitation link will be sent to this email. Note that user can accept invitation with different email.
error_message
string
execution_state
any
state
any
Current state of the invitation (e.g., 'pending', 'accepted', 'rejected')
Accept an invitation
Accepts an invitation for the currently authenticated user. This grants the user the specified role in the invitation's scope.
Approve a requested invitation
For user's convenience invitation approval is performed without authentication.
User UUID and invitation UUID is encoded into cryptographically signed token.
Cancel an invitation
Cancels a pending or planned (pending_project) invitation.
Check invitation validity
Checks if an invitation is pending and returns its email and whether a civil number is required for acceptance. This endpoint is public and does not require authentication.
Delete an invitation (staff only)
Deletes an invitation. This action is restricted to staff users.
Reject a requested invitation
For user's convenience invitation reject action is performed without authentication.
User UUID and invitation UUID is encoded into cryptographically signed token.
Resend an invitation
Resends an email for a pending, expired, or canceled invitation. If the invitation was expired or canceled, its state is reset to 'pending' and its creation time is updated.