Skip to content

Update guest

Endpoint

PUT /organizations/{org_id}/guests/{guest_email}

Updates the associated_members for an existing guest in your organization, identified by their email address.

Request

Replace {org_id} with your Organization ID and {guest_email} with the URL-encoded email address of the guest.

Headers

  • Authorization: Bearer {your_access_token}
  • Accept: application/json
  • X-Tallyfy-Client: APIClient
  • Content-Type: application/json

Body (JSON)

FieldTypeRequiredDescription
associated_membersarray of integersNoArray of organization member IDs to associate with this guest. Replaces the current list.

Example body:

{
"associated_members": [1234, 5678]
}

Code samples

const accessToken = 'YOUR_PERSONAL_ACCESS_TOKEN';
const orgId = 'YOUR_ORGANIZATION_ID';
const guestEmail = "guest.to.update@example.com";
const encodedEmail = encodeURIComponent(guestEmail);
const apiUrl = `https://go.tallyfy.com/api/organizations/${orgId}/guests/${encodedEmail}`;
const updateData = {
associated_members: [1234, 5678]
};
const headers = new Headers();
headers.append('Authorization', `Bearer ${accessToken}`);
headers.append('Accept', 'application/json');
headers.append('X-Tallyfy-Client', 'APIClient');
headers.append('Content-Type', 'application/json');
fetch(apiUrl, {
method: 'PUT',
headers: headers,
body: JSON.stringify(updateData)
})
.then(response => {
return response.json().then(data => {
if (!response.ok) {
console.error(`Failed to update guest ${guestEmail}:`, data);
throw new Error(`HTTP error! status: ${response.status}`);
}
return data;
});
})
.then(data => {
console.log(`Successfully updated guest ${guestEmail}:`);
console.log(JSON.stringify(data, null, 2));
})
.catch(error => {
console.error(`Error updating guest ${guestEmail}:`, error.message);
});

Response

A successful request returns a 201 Created status and a JSON object with the full guest record after the update.

{
"data": {
"id": 1234,
"email": "guest.to.update@example.com",
"last_accessed_at": "2024-06-15T10:30:00Z",
"last_known_ip": "203.0.113.42",
"last_known_country": "US",
"details": {
"status": "active",
"phone_1": "+15551234567",
"phone_2": null,
"timezone": "America/Chicago",
"image_url": null,
"contact_url": null,
"company_url": null,
"opportunity_url": null,
"company_name": "Acme Corp",
"opportunity_name": null,
"external_sync_source": null,
"external_date_creation": null,
"cadence_days": null,
"associated_members": [1234, 5678],
"last_city": "Chicago",
"last_country": "US",
"last_accessed_at": "2024-06-15T10:30:00Z",
"disabled_at": null,
"disabled_by": null,
"reactivated_at": null,
"reactivated_by": null
},
"first_name": "Jane",
"last_name": "Doe",
"created_at": "2024-01-10T09:00:00Z",
"deleted_at": null,
"link": "https://go.tallyfy.com/..."
}
}

If the guest email isn’t found, you’ll get a 404 error. Invalid payloads return 422.


Groups > Update group

Tallyfy’s PUT endpoint for groups lets you rename a group or change its description and fully replace its member and guest lists by sending updated user IDs or email arrays to /organizations/[org_id]/groups/[group_id] with code samples in JavaScript and Python and Java and Go and C++ and C#.

Guests > Create guest

Tallyfy’s API lets you add external guests to your organization via a POST request with just an email address (plus optional profile fields like name and company) and it automatically links existing global guests instead of creating duplicates.

Guests > Delete guest

Tallyfy’s DELETE endpoint at /organizations/[org_id]/guests/[guest_email] removes a guest by their URL-encoded email address and detaches them from all tasks and the organization while soft-deleting the record if they have no other org memberships.

Guests > Get guest

Tallyfy’s API lets you retrieve detailed information about a specific guest user by making a GET request to /organizations/[org_id]/guests/[guest_email] with the email URL-encoded and you can optionally include completion statistics by passing the with=stats query parameter.