UUpward API
v1
POST/api/public/v1/crm/create-meeting
Requires x-auth-token

Log a meeting

Add a virtual or in-person meeting to a member's CRM calendar.

Creates a meeting activity for one member of your company. Authenticate with your company API key in x-auth-token and identify the member with x-auth-user (their pagename or username). Virtual meetings need an https meeting_link; in-person meetings need an address. The meeting blocks the member's public booking calendar. No invitations are emailed by this endpoint.

Body fields

titlestring (1–200)required

What the activity is called on the CRM calendar.

lead_iduuidoptional

The lead this activity belongs to. Send lead_id or contact_id — one is required.

contact_iduuidoptional

The contact this activity belongs to. Send lead_id or contact_id — one is required.

scheduled_atstring (ISO 8601)required

Start date and time, with an explicit UTC offset or Z.

duration_minutesnumber (1–1440)optional

Length in minutes. Defaults to 30.

prioritylow | normal | highoptional

Defaults to normal.

availabilitybusy | freeoptional

How the slot shows on the calendar. Defaults to busy.

notesstring (≤20000)optional

Free-text notes stored on the activity.

locationvirtual | in_personoptional

Defaults to virtual.

meeting_linkstring (https URL)optional

Required for a virtual meeting.

addressstring (≤1000)optional

Required for an in-person meeting.

Responses

201CreatedThe meeting is on the member's CRM calendar.
{ "success": true, "error": "none", "activity_id": "0b1f0a2c-8f3e-4a51-9c0d-1c2b3a4d5e6f", "kind": "virtual" }
401UnauthorizedMissing or invalid x-auth-token, or a missing x-auth-user header.
{ "success": false, "error": "Missing x-auth-token header" }
404Member not foundNo active member in your company matches x-auth-user.
{ "success": false, "error": "No member matches "jane-doe" in this company." }
422Validation failedA field is missing or invalid, or the lead / contact does not belong to this member.
{ "success": false, "error": "Validation failed", "issues": ["scheduled_at: Use an ISO 8601 date and time, e.g. 2026-04-12T15:00:00Z"] }
POST/api/public/v1/crm/create-meeting

What the activity is called on the CRM calendar.

The lead this activity belongs to. Send lead_id or contact_id — one is required.

The contact this activity belongs to. Send lead_id or contact_id — one is required.

Start date and time, with an explicit UTC offset or Z.

Length in minutes. Defaults to 30.

Defaults to normal.

How the slot shows on the calendar. Defaults to busy.

Free-text notes stored on the activity.

Defaults to virtual.

Required for a virtual meeting.

Required for an in-person meeting.

ResponseNot sent yet