REST API with built-in MCP support.

Deploy an Express-based REST API on Xuda, and expose your platform methods to AI agents through a built-in Model Context Protocol (MCP) endpoint.

List Voice Transfer Targets - Voice module

Lists who a live call can be transferred to (the account owner plus the profile members, excluding the caller). Any participant on the call may read it.

Call ID (string)*

The live call to list transfer targets for; the caller must be a participant on it.

Transfer Voice Call - Voice module

Transfers a live call to another person on the profile, ringing their browser and their phone in parallel. Allowed for the account owner or a member of the call's profile.

Call ID (string)*

The live call to transfer; the caller must be a participant on it.

Member user id (string)*

The profile member or account owner to transfer the call to.

Share Voice Profile - Voice module

Shares a non-main profile with another Xuda user, making them a member who can take its calls and whom the AI knows about. Owner-gated; the main profile cannot be shared.

Profile ID (string)*

The non-main profile to share; the main profile cannot be shared.

Member user id (string)*

The Xuda account to add as a member of the profile.

List Voice Profile Members - Voice module

Lists the active members of a profile the caller owns.

Profile ID (string)*

The owned profile whose members to list.

Revoke Voice Profile Member - Voice module

Removes a member from a profile the caller owns.

Profile ID (string)*

The profile the member is being removed from.

Member user id (string)*

The member to remove from the profile.

Get Voice Agent Options - Voice module

Returns the backend-controlled voice and personality-tone menus for the phone AI, so the profile screen renders only valid choices.

Profile ID (string)

Optional. The menus and entitlements come from the account, whichever profile is named.

Get Voice Plans - Voice module

Returns the ACCOUNT's phone plan ladder: the tiers with their prices, features and number allowances, which tier the account is on, whether the plan has been activated, and whether the account is on a paid Xuda plan (the phone product requires one). One plan covers every number the account holds.

Profile ID (string)

Optional. The phone plan applies to the whole account, whichever profile is named.

Attach Voice Number - Voice module

Attaches one of the account's phone numbers to a profile, giving that profile a line. Its members become ring targets and the AI is told who staffs it. A number can be attached to one profile at a time, and the main profile can never hold one.

Voice number ID (string)*

The owned number to attach to the profile.

Profile ID (string)*

The non-main profile to attach the number to; a profile may hold at most one number by default.

Detach Voice Number - Voice module

Detaches a phone number from the profile it is attached to. The number is NOT released and keeps its own answering settings and billing, it is simply no longer any profile's line.

Voice number ID (string)*

The owned number to detach from its profile; the number keeps answering on its own settings.

Get Voice Number Setup - Voice module

Everything that decides how one phone number answers, in a single read: the profile it is attached to, the account plan entitlements, whether the AI picks up, the voice and personality, the answering rules and the option lists behind them.

Voice number ID (string)*

The owned number whose full setup (billing, capabilities, voice agent, answering rules) to read.

Update Voice Number Setup - Voice module

Saves the setup for one phone number. Each section is only touched when it is sent, so saving the voice never resets the open hours. A setting the account's plan does not include is refused with voice_plan_upgrade_required rather than silently dropped.

Voice number ID (string)*

The owned number to update.

AI answers this line (boolean)

Turns the AI answering agent on or off for this line; requires the plan tier that includes it.

Voice and personality (object)

Voice and personality settings to merge onto the line: voice, tone, tone_custom, transcript, record.

Answering rules (object)

Open hours, ring list and voicemail settings to merge onto the line.

Set Voice Plan - Voice module

Activates, upgrades or downgrades the account's phone plan, which covers every number it holds. Takes either `tier` (free, phone) or the module plan id (`profile_phone_phone`), so the phone checkout and the module switch call it the same way. One of the two is required. Needs a paid Xuda account. The plan fee is charged once: it rides the first number's subscription and is repriced there, prorated from today.

Profile ID (string)

Optional. The phone plan applies to the whole account, whichever profile is named.

Plan tier (string)

The plan tier to switch to (for example free or phone); either this or plan_id is required.

Plan ID (string)

The module plan id (profile_phone_<tier>); either this or tier is required.

Deactivate (boolean)

True switches the phone plan off instead of changing its tier.

Get Answering Rules - Voice module

Returns the answering rules for one line (business hours, ring timeout, which members are rung, forwarding to a mobile, voicemail and recording), what the current plan actually allows, who can be rung, and the option lists for the editor.

Profile ID (string)

The profile whose line's answering rules to read, resolved to its attached number; either this or voice_number_id is required.

Voice number ID (string)

The owned number whose answering rules to read; either this or profile_id is required.

Update Answering Rules - Voice module

Saves a profile's answering rules. A setting the current plan does not include is refused with voice_plan_upgrade_required rather than silently dropped.

Profile ID (string)

The profile whose line's answering rules to update, resolved to its attached number; either this or voice_number_id is required.

Voice number ID (string)

The owned number whose answering rules to update; either this or profile_id is required.

Answering rules (object)*

The open hours, ring list and voicemail settings to save; refused for any setting the account's plan does not include.

Set Voice Agent - Voice module

Sets the phone AI voice and personality for a profile the caller owns. Unknown voice or tone values are rejected; an empty value clears the field back to the global default.

Profile ID (string)

The profile whose line's voice and personality to set, resolved to its attached number; either this or voice_number_id is required.

Voice number ID (string)

The owned number whose voice and personality to set; either this or profile_id is required.

Voice (string)

The AI voice to speak with, from the platform's voice catalog; an unknown value is refused.

Personality tone (string)

A personality preset key; an unknown value is refused.

Custom personality note (string)

Free text describing the personality, capped at 600 characters.

Transcribe calls (boolean)

Turns on a text transcript of AI-answered calls; requires the plan tier that includes it.

Record calls (boolean)

Turns on call audio recording; requires the plan tier that includes it, and mirrors onto the line's answering rules.

Preview Voice - Voice module

Returns a short spoken sample of a voice and personality as base64 audio, so the picker can be heard before it is saved. Cached per voice and tone.

Voice (string)

The AI voice to preview; defaults to the platform's default voice.

Personality tone (string)

The personality preset to read the preview line in; defaults to the platform default tone.

Get Phone Service Status - Voice module

Returns backend readiness and the authenticated account's Twilio subaccount provisioning state.

Activate Phone Service - Voice module

Idempotently creates or reuses one Twilio subaccount for the authenticated Xuda customer. Requires parent management credentials on the backend.

Get Phone Country Catalog - Voice module

Returns the backend-controlled country and number-type availability catalog without provider wholesale pricing.

Search Phone Numbers - Voice module

Searches only country and number types enabled by the server catalog inside the customer's Twilio subaccount.

Profile ID (string)

The owned profile the number search is for.

Country (string)*

The ISO country to search for available numbers in, gated by the country catalog.

Number type (string)*

The catalog number type to search (for example local or tollFree).

Area code (string)

Digits to restrict the search to a US/Canada area code.

Contains (string)

Digits the returned numbers must contain.

Required capabilities (object)

Requested capabilities (voice, sms, mms) to narrow the search to; may only narrow what the catalog already allows, never widen it.

Limit (number)

Maximum numbers to return, 1 to 50.

Quote Phone Number - Voice module

Creates an expiring retail number-rental quote with the Xuda service fee and versioned pricing snapshotted; wholesale provider cost remains server-only.

Profile ID (string)

The profile the quoted number will be attached to, if any; optional since a number is rented by the account.

Country (string)*

The ISO country to quote a number in, gated by the country catalog.

Number type (string)*

The catalog number type to quote (for example local or tollFree).

Phone number (string)*

A specific candidate number to quote; recorded on the quote for purchase_voice_number to match against.

Get Phone Compliance Status - Voice module

Returns terms, KYB, regulatory bundle, and purchase-readiness state for a country.

Profile ID (string)

Used only to find an approval saved under an older per-profile record; compliance belongs to the account.

Country (string)*

The ISO country to read the compliance status for.

Accept Phone Terms - Voice module

Records versioned acceptance of Xuda phone, messaging, abuse, and downstream-provider terms.

Profile ID (string)

Used only to find an approval saved under an older per-profile record; compliance belongs to the account.

Country (string)*

The ISO country the terms are being accepted for.

Policy version (string)*

Must match the country's current policy_version or the acceptance is refused.

Accepted (boolean)*

Must be true to record acceptance.

Accepted policy IDs (array)*

The policy ids being accepted; must cover every id in the platform's required_acceptances list.

Review Phone Compliance - Voice module

Superuser-only review record for KYB and Twilio regulatory bundle approval.

Customer profile (string)

The profile an older queued review was saved under, so it still resolves. The approval is written under the account (target_uid).

Customer account (string)*

The customer account whose compliance record is being reviewed.

Country (string)*

The ISO country the review decision applies to.

KYB status (string)*

One of required, pending, approved or rejected.

Regulatory bundle status (string)*

One of required, pending, approved or rejected.

Bundle SID (string)

The telephony provider's regulatory bundle id, if one exists. Only its last six characters are stored.

Purchase Phone Number - Voice module

Charges the recurring Xuda phone rental, acquires the quoted number in the customer's Twilio subaccount, and binds it to the owned profile with rollback on failure.

Quote ID (string)*

The quote to purchase from; must still be valid and unexpired.

Profile ID (string)

The profile to attach the purchased number to, if any; must match the quote's profile_id.

Phone number (string)*

The candidate number to purchase; must match the quote's candidate number.

Payment method (string)

The saved payment method to bill the purchase to.

List Phone Numbers - Voice module

Lists the authenticated customer's active phone numbers with profile binding, capabilities, routing state, and retail billing.

Profile ID (string)

Restricts the list to numbers attached to this profile.

Limit (number)

Maximum numbers to return, 1 to 100.

List Phone Compliance Queue - Voice module

Superuser-only operator queue of customer phone compliance records with terms, KYB and regulatory bundle state. Returns no provider identifiers.

Country (string)

Restricts the queue to this ISO country.

Pending only (boolean)

When true, excludes records that are already compliance-ready.

Limit (number)

Maximum rows to return, 1 to 200.

Get Phone Number Rates - Voice module

Live provider call and message rates with Xuda markup applied, plus the number's fixed capabilities and the release-and-repurchase policy, for display before a number is bought.

Country (string)*

The ISO country to fetch live provider rates for.

Number type (string)*

The catalog number type to fetch rates for (for example local or tollFree).

Send Phone Message - Voice module

Sends a one to one SMS from an owned SMS-capable number, refusing any contact who has opted out and de-duplicating on the idempotency key.

Profile ID (string)

The owned profile the message is sent under.

Phone number ID (string)*

The owned, SMS-capable number to send from.

Destination (string)*

The destination number in E.164; refused if blocked, outside the allowlist, or opted out.

Message body (string)*

The message text to send; counted into SMS segments and capped by the messaging config's max_segments.

Idempotency key (string)

A caller-chosen key that de-duplicates a retried or double-submitted send within a short claim window.

Speak A Message To A Contact - Voice module

Places a call from an owned voice-capable number and speaks a typed message to the person who answers, then hangs up. This is the Voice channel of the contact composer: you type, the line says it. Refuses anyone who has opted out on that number, honours the destination allow and block lists and the spend cap, and de-duplicates on the idempotency key so a double press cannot ring twice.

Profile ID (string)

The owned profile the call is placed under.

Phone number ID (string)*

The owned number to call from. Must be voice capable.

Destination (string)*

The number to call, in E.164.

Message (string)*

What to say. Spoken twice with a pause, because the first seconds of an answered call are the ones nobody hears.

Idempotency key (string)

A caller-chosen key that de-duplicates a retried or double-submitted send within a short claim window.

Scenario (string)

An auto response scenario id. When set, the AI stays on the line after the message and answers as that scenario instead of hanging up.

List Phone Message Threads - Voice module

Lists SMS conversations for the authenticated customer with last message, unread count and opt-out state.

Profile ID (string)

Restricts the list to threads on this profile.

Phone number ID (string)

Restricts the list to threads on this number.

Limit (number)

Maximum threads to return, 1 to 100.

List Phone Messages - Voice module

Returns one SMS conversation in chronological order together with its thread state.

Thread ID (string)*

The owned message thread to read.

Limit (number)

Maximum messages to return, 1 to 200, most recent kept.

Mark Phone Thread Read - Voice module

Clears the unread counter on one SMS conversation.

Thread ID (string)*

The owned message thread to mark read.

Get Phone Usage - Voice module

Returns the caller's call and message usage for a window, with estimated and settled amounts kept separate and the monthly spend cap remaining. Excludes number rental, which is billed as a subscription.

Profile ID (string)

Restricts usage to this profile.

From timestamp (number)

Start of the usage window in epoch milliseconds; defaults to the start of the current month.

To timestamp (number)

End of the usage window in epoch milliseconds; defaults to now.

Reconcile Phone Usage - Voice module

Superuser-only. Settles estimated usage rows from the provider's own final price. Safe to re-run; rows already final are skipped.

Limit (number)

Maximum estimated usage rows to examine, 1 to 1000.

Minimum age in ms (number)

Skips rows younger than this, giving the provider time to price the event before settlement is attempted.

Source (string)

A short label for what started this run (for example cron), written to the server log only.

Get Phone Identity Requirements - Voice module

Returns the entity types and identity fields a country requires, so the business profile form is built from the backend rule rather than a hard-coded field list.

Country (string)*

The ISO country to read identity and document requirements for.

Update Profile Business Identity - Voice module

Stores the business identity on the profile that will own the number and reports per-country completeness. The profile is the regulated end user, not the account.

Profile ID (string)

Read only to carry over what an already-approved profile holds, so the same paperwork is not asked for twice; the identity itself is saved on the account.

Entity type (string)*

business or individual; anything else falls back to business.

Identity fields (object)*

The identity fields to merge onto the account's business identity record.

Identity source (string)

Where the identity values came from, kept for the compliance record. Free text, up to 300 characters.

Submit Phone Compliance - Voice module

Snapshots the profile identity onto the country compliance record so an approval is auditable against exactly what was reviewed, then starts the AI investigation.

Profile ID (string)

Used only to find an approval saved under an older per-profile record; compliance belongs to the account.

Country (string)*

The ISO country the identity submission is for.

Investigate Phone Compliance - Voice module

Superuser only. Verifies the submitted identity with a web-searching model and either auto-approves KYB on a confident pass or escalates to a human with findings. Never sets the regulatory bundle, which is a provider fact.

Profile ID (string)

Lets a record saved under an older per-profile key still resolve.

Customer account (string)

The customer account whose submitted identity to investigate; falls back to the caller if omitted.

Country (string)*

The ISO country of the compliance record to investigate.

Adopt Platform Phone Number - Voice module

Superuser only. Assigns a number Xuda already owns to a business profile without a purchase or a Stripe subscription, and returns it to the platform parent on release instead of releasing it to the carrier.

Customer account (string)*

The customer account the number is being adopted onto.

Profile ID (string)

The profile to attach the adopted number to, if any; optional, it can be attached later.

Phone number (string)*

The E.164 number, already held by the platform, to adopt onto the target account.

Country (string)

The number's ISO country, recorded on the adopted number. Defaults to US.

Number type (string)

The catalog number type to record (for example tollFree). Defaults to tollFree.

Keep in platform account (boolean)

When true, leaves the number in the platform's own telephony account instead of moving it into the customer's account.

Release Phone Number - Voice module

Releases an owned Twilio number, stops its recurring Stripe subscription, and removes the profile binding.

Phone number ID (string)*

The owned number to release.

Get Browser Phone Token - Voice module

Returns a short-lived Twilio Voice SDK token scoped to the customer's subaccount and owned profile.

Profile ID (string)

Only checked, never trusted alone: if a number is named, its profile must match this value.

Phone number ID (string)*

The owned or shared number to register a browser client for; omitted for an app-to-app (no-number) token.

Create Xuda Call Intent - Voice module

Creates a one-time, short-lived intent for a browser-to-browser Xuda call. No phone number is involved on either side; the target must be an accepted contact.

Xuda user to call (string)*

The Xuda account to ring in-browser; must be the caller themselves or an accepted contact.

Create Phone Call Intent - Voice module

Creates a one-time, short-lived, server-authorized outbound call intent for the browser dialer.

Profile ID (string)

The owned profile placing the call.

Phone number ID (string)*

The owned number to call from.

Destination (string)*

The destination number in E.164; refused if blocked or outside the allowlist.

List Phone Calls - Voice module

Returns the authenticated customer's inbound and outbound call history without provider credentials.

Profile ID (string)

Restricts the list to calls on this profile.

Phone number ID (string)

Restricts the list to calls on this number.

Limit (number)

Maximum calls to return, 1 to 100.

Take Over Call - Voice module

Moves a live call off the AI receptionist onto the caller's browser by replacing the TwiML on the parent call.

Call ID (string)*

The owned, still-live call to take from the AI onto this user's browser.

Get Call Transcript - Voice module

Returns the text transcript turns of one of the authenticated customer's calls. Text only, no audio is recorded.

Call ID (string)*

The owned call whose transcript to read.

Get VPS Diagnose Report - App module

Returns the last stored Auto Diagnose report for the app (or null). Read-only: reads the report already saved on the app doc, no SSH or file access. Owner-gated via _vps_fs_resolve.

App Id (string)*

The VPS/app whose stored Auto Diagnose report to return.

Copy Drive Files User - Drive module

Copies drive files/folders (with their full subtree, duplicating the stored bytes) into another folder in the user drive.

Files (array)*

Array of item descriptors, each with a type (file|directory) and file_path, identifying the drive items to copy.

Destination path (string)*

Absolute drive folder path to copy the items into (e.g. / or /projects/assets).

Copy Drive Files Workspace - Drive module

Copies drive files/folders (with their full subtree, duplicating the stored bytes) into another folder in the workspace drive.

Files (array)*

Array of item descriptors, each with a type (file|directory) and file_path, identifying the drive items to copy.

Destination path (string)*

Absolute drive folder path to copy the items into (e.g. / or /projects/assets).

App Id (string)

Unique identifier of the application whose workspace drive holds the items to copy. Required, unless the API key is bound to an application.

Get Drive Size User - Drive module

Returns the total storage used (bytes) by the user drive.

Get Drive Size Workspace - Drive module

Returns the total storage used (bytes) by the workspace drive.

App Id (string)

Unique identifier of the application whose drive size to compute. Required, unless the API key is bound to an application.

Get Drive Breakdown User - Drive module

Storage breakdown by file type + duplicate groups for the drive. (user drive)

Get Drive Breakdown Workspace - Drive module

Storage breakdown by file type + duplicate groups for the drive. (workspace drive)

App Id (string)

Unique identifier of the application whose workspace drive to summarize. Required, unless the API key is bound to an application.

Move Drive Files Workspace - Drive module

Moves drive files/folders (with their full subtree) into another folder in the workspace drive.

Files (array)*

Array of item descriptors, each with a type (file|directory) and file_path, identifying the drive items to move.

Destination path (string)*

Absolute drive folder path to move the items into (e.g. / or /projects/assets).

App Id (string)

Unique identifier of the application whose workspace drive holds the items to move. Required, unless the API key is bound to an application.

Trash Drive Files User - Drive module

Moves drive items (with their subtree) to the trash: soft delete, restorable. (user drive)

Files (array)*

Array of item descriptors ({type, file_path}) to move to trash.

Trash Drive Files Workspace - Drive module

Moves drive items (with their subtree) to the trash: soft delete, restorable. (workspace drive)

Files (array)*

Array of item descriptors ({type, file_path}) to move to trash.

App Id (string)

Unique identifier of the application whose workspace drive holds the items to trash. Required, unless the API key is bound to an application.

Get Trashed Files User - Drive module

Lists trashed items (trash roots) for the drive. (user drive)

Get Trashed Files Workspace - Drive module

Lists trashed items (trash roots) for the drive. (workspace drive)

App Id (string)

Unique identifier of the application whose workspace drive trash to list. Required, unless the API key is bound to an application.

Restore Trashed Files User - Drive module

Restores trashed batches back into the drive. (user drive)

Trash roots (array)*

trash_root batch keys (paths) as returned by the trash listing.

Restore Trashed Files Workspace - Drive module

Restores trashed batches back into the drive. (workspace drive)

Trash roots (array)*

trash_root batch keys (paths) as returned by the trash listing.

App Id (string)

Unique identifier of the application whose workspace drive to restore items into. Required, unless the API key is bound to an application.

Purge Trashed Files User - Drive module

Permanently deletes trashed batches (docs tombstoned, bytes cleaned). (user drive)

Trash roots (array)*

trash_root batch keys (paths) as returned by the trash listing.

Purge Trashed Files Workspace - Drive module

Permanently deletes trashed batches (docs tombstoned, bytes cleaned). (workspace drive)

Trash roots (array)*

trash_root batch keys (paths) as returned by the trash listing.

App Id (string)

Unique identifier of the application whose workspace drive trash to empty. Required, unless the API key is bound to an application.

Verify: create a verification session - Verify module

Creates a verification session for one of your users and returns a hosted link to send them. Callable with an API key.

Required level (number)

The verification level to request, 1 to 4, default 2. A level above what the plan allows is refused.

Your reference (string)

Your own reference for this session, echoed back on a later read; capped at 200 characters.

Verify: read a verification session - Verify module

The current status and result of a verification session you created. Callable with an API key.

Session ID (string)*

The session to read the status and result of; must belong to the caller.

Verify: list verification sessions - Verify module

The verification sessions you created, newest first, one page per call. Callable with an API key.

Limit (number)

Maximum sessions to return, 1 to 500, default 200.

Skip (number)

Rows to skip, for paging.

IPv4: pool status - IPv4 module

Account: IPv4 availability + price card for the account's continent.

Region (string)

undefined

RIR (string)

The regional internet registry to check (arin, ripe, apnic, lacnic or afrinic). Takes priority over region.

Continent (string)

An older way to name the region, used only when rir and region are both absent.

IPv4: my addresses - IPv4 module

Account: list the caller's IPv4 addresses with state, target, PTR and price.

IPv4: attachable targets - IPv4 module

Account: list the caller's internal resources (VMs, deployments, datacenters) an IP can attach to.

IPv4: purchase + attach - IPv4 module

Account: buy a /32 and attach it to an internal target or an external box (a target is required).

Attach type (internal|external) (string)*

undefined

Target id (string)*

undefined

Target kind (string)

undefined

Target label (string)

undefined

Region (string)

undefined

RIR (string)

The regional internet registry to buy from (arin, ripe, apnic, lacnic or afrinic). Takes priority over region.

Continent (string)

An older way to name the region, used only when rir and region are both absent.

IPv4: (re)attach - IPv4 module

Account: attach an owned IP to a target, switching internal/external.

IPv4 address (string)*

undefined

Attach type (internal|external) (string)*

undefined

Target id (string)*

undefined

Target kind (string)

undefined

Target label (string)

undefined

IPv4: park - IPv4 module

Account: detach an owned IP to parked ($5).

IPv4 address (string)*

undefined

IPv4: release - IPv4 module

Account: release an owned IP back to the pool (quarantine cooldown, billing stops).

IPv4 address (string)*

undefined

IPv4: set reverse DNS - IPv4 module

Account: set the PTR (reverse DNS) hostname on an owned IP.

IPv4 address (string)*

undefined

PTR hostname (string)*

undefined

IPv4: external attach config - IPv4 module

Account: fetch the WG tunnel or proxy config for an externally-attached IP.

IPv4 address (string)*

undefined

Mode (wg|proxy) (string)

undefined

Firewall: ping - Firewall module

Health check of the fleet firewall module.

Firewall: drift - Firewall module

Compare the stored fleet firewall definitions against what each server actually has and report the differences. Optionally scope to a single server.

Server (string)

Name of the server record to check. Omit both server and server_id to check every server.

Server Id (string)

Id of the server record to check. Omit both server_id and server to check every server.

Max Lines (number)

Maximum number of missing or extra rule lines returned per server. Defaults to 50.

Firewall: list - Firewall module

List fleet firewall definitions, ipsets, or server registry (optionally filter by docType).

Doc Type (string)

Lists only records of this type: firewall, fw_ipset or fw_server. Omitted, every type is listed.

Doc Type (alias) (string)

Another name for docType, used when docType is not sent.

Firewall: get - Firewall module

Get one firewall/ipset/server doc by id.

Doc Id (string)*

Id of the firewall, IP set or server record to read.

Firewall: render server (dry-run) - Firewall module

Compute the effective firewall ruleset a server WOULD receive. Dry-run only; applies nothing.

Server Id (string)

Id of the server record to render.

Server Name (string)

Name of the server record to render.

Firewall: render fleet (dry-run) - Firewall module

Summary of the effective ruleset for every server. Dry-run only.

Firewall: enforce (disabled) - Firewall module

Computes the effective ruleset for one server. Without confirm it is a dry run: it returns the rendered rules and a read-back of the rules live on the server, and changes nothing. With confirm true it applies the ruleset live, to a hypervisor host, a hosted virtual machine or a region server; over SSH an apply reverts itself after deadman_secs unless commit is also true. Every run is logged. Platform administrators only.

Server Id (string)

Id of the server record to enforce on.

Server Name (string)

Name of the server record to enforce on.

Confirm (boolean)

True (or the string true) applies the ruleset live instead of a dry run.

Commit (boolean)

With confirm, commits a live apply so it is not reverted automatically.

Deadman Seconds (number)

Seconds before an uncommitted live apply over SSH reverts itself. Defaults to 300.

Firewall: save definition - Firewall module

Upsert a firewall/ipset/server definition doc (superuser only). Writes config data, does not enforce.

Doc (object)*

The firewall, IP set or server record to save. It must include docType (firewall, fw_ipset or fw_server); include _id and _rev to update an existing record.

Firewall: delete definition - Firewall module

Delete a firewall definition doc by id (superuser only).

Doc Id (string)*

Id of the firewall, IP set or server record to delete.

Rev (string)

Revision of the record to delete. Omitted, the current revision is used.

Start CLI Auth - Session module

Begin the device-code flow used by @xuda.ai/cli to sign a user in.

Client Name (string)

A label for the CLI client asking to sign in. Defaults to xuda-cli.

Poll CLI Auth - Session module

Poll the device-code flow for a CLI access token once the user approves.

Device Code (string)*

The device_code returned by start_cli_auth.

Approve CLI Auth - Session module

Approve a CLI device-code login for the signed-in user (called from the web).

User Code (string)*

The user_code shown in the terminal.

Deny CLI Auth - Session module

Deny a CLI device-code login (called from the web).

User Code (string)*

The user_code shown in the terminal.

Get Xuda Servers Info - Misc module

Queries the xuda_servers database for active application servers and returns their id, countries, status, and datacenters.

Get Advertise Platforms - Advertise module

Returns advertising platforms with status in [pending, process, active] (override via statuses). Credentials are stripped from the response.

Statuses (array)

Status codes to include: 1 pending, 2 processing, 3 active, 4 deleted, 5 archived. Defaults to 1, 2 and 3. Also accepted as data.statuses.

Generate Ad Creative - Advertise module

AI-generates ad copy (headline, primary text, description, CTA) for a campaign + platform in a chosen tone. Google Ads first; other platforms use the social template.

Platform (string)*

Platform slug, e.g. 'google-ads'.

Campaign App ID (string)

An existing campaign to write for. Its saved source, brand, goal and geo are used in place of the inline fields.

Tone (string)

One of Professional, Friendly, Bold, Playful, Urgent or Luxury. Defaults to Friendly.

Source (object)

What to write from, as {type, value}: a web address in value is read for context; otherwise value is used as the written brief.

Brand (string)

Brand name to use in the copy (data.app_name is also accepted). Defaults to the source's label or its website host.

Goal (string)

The campaign objective, which picks the ad's benefit line (for example Sales & conversions or Lead generation). data.objective is also accepted.

Geo (string)

Where the audience is, used as context for the copy.

Launch Ad Campaign - Advertise module

Creates the campaign in the ad network (Google Ads first) via its API, PAUSED. Owner-scoped.

Campaign App ID (string)*

The campaign to launch.

Platform (string)

Ad network to launch to: google-ads or meta. Defaults to google-ads; any other value is refused.

Set Ad Network Status - Advertise module

Pauses or resumes the LIVE network campaigns (Google + Meta) for a campaign, on every network it was launched to. Pairs with the header Active/Paused toggle. Owner-scoped.

Campaign App ID (string)*

The campaign whose network status to flip.

Status (string)

active or paused. When status is omitted, data.paused (true or false) is used instead.

Get Ad Campaign Report - Advertise module

Pulls LIVE daily metrics (Meta Insights + Google Ads search) from each launched network into the campaign's report. Owner-scoped.

Campaign App ID (string)*

The campaign to report on.

Days (number)

Number of past days to report, 1 to 30. Defaults to 14.

Provision Google Ads Account - Advertise module

Agency: creates a new Google Ads client account under Xuda's manager for the customer and stores it on their account. One per customer, reused. Bills to the manager's consolidated billing.

Campaign App ID (string)

Optional: a campaign to resolve the owning customer from; otherwise the calling user's account is provisioned.

Account Name (string)

Name for the new Google Ads account. Defaults to the campaign's name, then the account email.

Get App Info - App module

Returns the app's record together with the caller's access to it: the caller's access_type, a readonly flag when the call is made with an API key, and for a VPS its access-consent scopes and their state. For a user group app it also opens an app session and returns its app_token.

App Id (string)*

This unique identifier specifies the application whose data will be retrieved.

List Studio Doc Versions - App module

Lists version-history snapshots for a studio doc from the app's history database (server-side capture).

App Id (string)*

The application whose history database is queried.

Doc Id (string)*

The studio doc whose version snapshots are listed.

Get Security Logs - Logs module

Fetches the latest 5 security-flagged account logs for the given user and optional app.

App Id (string)*

This unique identifier specifies the application whose data will be retrieved.

Delete User Logs - Logs module

Spawns a background job that archives security account logs and deletes the rest for the given user.

Delete App Logs - Logs module

Spawns a background job that archives all application logs for the given app.

App Id (string)*

Unique identifier of the application this request targets.

Get Account Projects - Account module

Returns the projects owned by the account (or all projects for superuser and support accounts) from the user_projects master view.

Get Account Datacenters - Account module

Returns the datacenters associated with the account from the user_datacenters master view.

Get Account Deployments - Account module

Returns the deployments associated with the account from the user_deployments master view.

Get Account VPS - Account module

Returns the standalone virtual servers associated with the account from the user_vps master view.

Get Account Balancers - Account module

Returns the user's load balancers (app_type:balancer) via a Mango query, so the sidenav bucket picks up a newly created balancer right after deploy.

Get Account Advertising - Account module

Returns the user's advertising campaigns (app_type:advertising) via a Mango query.

Get Account Websites - Account module

Returns the user's websites (app_type:static_website) via a Mango query.

Get Account Instances - Account module

Returns all instances associated with the account from the user_all_instances master view.

Create Project - App module

Creates a new project for the caller from the app fields sent in data. Fields only the platform may set are ignored. Free plugins listed in data.app_plugins_purchased are installed into the new project, and its default drive folders are created.

App Name (string)*

Name of the application to create or update.

Plugins Purchased (object)

Plugins to install into the new project, as {plugin_name: {installed: true}}. Only free plugins are installed.

Get Project Instances - App module

Lists the project's instances whose maintainer is the project's owner.

App Id (string)*

Unique identifier of the application this request targets.

Get App Backups - Backup module

Retrieves application backups.

App Id (string)*

Unique identifier of the application this request targets.

Get Table Counts - Data module

Returns the number of records in a table: active records, or archived records when archived is true.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be query, as outlined in the Xuda Studio database repository.

Archived (boolean)

When true, counts archived records instead of active ones.

DBS Create - Data module

Creates a new record in the specified app table from the provided key-value table data.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be updated, as outlined in the Xuda Studio database repository.

Table Data (object)*

Key-value pairs, such as {'user_name': 'John', 'last_name': 'Smith'}

DBS Read - Data module

Reads records from an app table with optional row range, single-row lookup, sorting, filtering, and archived-record selection.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be query, as outlined in the Xuda Studio database repository.

From row number (number)

The starting row number (0-based index) from which to begin reading records.

To row number (number)

The ending row number (0-based index) up to which records should be read. The range includes rows from 'from' to 'to' (inclusive).

Row Id (string)

The unique identifier of a specific row to retrieve. When provided, only this row will be returned.

Sort model (array)

An array of sorting rules, where each item defines a column ID (`colId`) and direction (`sort`). Used to sort the results based on one or more fields.

Query (object)

A dynamic object representing field-based filters. Each key corresponds to a column ID, and its value defines the filter type, operator, and filter value.

Archived (boolean)

Whether to include only archived records. If false or not provided, only active records will be returned.

Program id (string)

A program whose datasource row interceptor, if it has one, runs on the returned rows before they are sent back. Used together with interceptor_refs.

Interceptor refs (undefined)

Values the row interceptor can reference as @name, as an object or a JSON string. Used together with prog_id.

DBS Update - Data module

Replaces the data of an existing record, identified by row_id, in the specified app table.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be updated, as outlined in the Xuda Studio database repository.

Row Id (string)*

The row ID uniquely identifies the document to be updated.

Table Data (object)*

Key-value pairs, such as {'user_name': 'John', 'last_name': 'Smith'}, will replace the current data in the document.

DBS Delete - Data module

Soft-deletes (or permanently deletes when 'permanent' is set) the listed record IDs from an app table.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be updated, as outlined in the Xuda Studio database repository.

Id's (array)*

Array of document IDs marked for deletion

Permanent (boolean)

Irreversible deletion of the documents (restoration not possible).

DBS Restore - Data module

Restores previously soft-deleted records, identified by their IDs, in the specified app table.

App Id (string)*

Unique identifier of the application this request targets.

Table Id (string)*

The table_id refers to the specific table that needs to be restored, as outlined in the Xuda Studio database repository.

Id's (array)*

Array of document ids to restore

Get App Config - App module

Returns the public configuration of a live deployment: its branding and icon, address, current build, launch route, and the launch and login settings its public screens need (access mode, login methods, device frame and the preview password check). The app is found by app_id, by its domain, or by a live preview token.

App Id (string)

Unique identifier of the application this request targets.

Domain (string)

Domain name associated with this request.

Live Preview token (string)

Live session token used to scope or authorize this request.

Set Runtime User Assist - App module

Turns the deployed app's User Monitor add-on (in-app help) on or off and recalculates the app's monthly cost.

App Id (string)*

Unique identifier of the application this request targets.

Enable (boolean)*

Boolean flag that turns the feature on or off.

Save Deploy Settings - App module

Updates an app's deployment settings: launch and access mode, billed add-ons (offline, User Monitor, Auto Diagnose), VPS access consent, the release and route to serve, and the login and setup configuration. The app's monthly cost is recalculated afterwards.

App Id (string)*

Unique identifier of the application this request targets.

Access Launch Type (string)

How the deployment is launched, for example program.

App Computing Mode (string)

Where the deployed app runs its logic, for example server or main.

App Render Mode (string)

How pages are rendered: csr, ssr_first_page or ssr_full.

App Client Activation (string)

How the browser takes over server-rendered pages: hydrate, takeover or none.

Prog Id (string)

The program the deployment opens. It is saved on every call, so send the current value each time; an omitted prog_id is saved as empty.

Release Doc Id (string)

The release to serve. The call fails with code -19 when the release is not found.

Enable User Assist (boolean)

Turns the User Monitor add-on on or off.

Enable Utility Screen (boolean)

Deprecated name for enable_user_assist, applied only when enable_user_assist is not sent.

Enable Offline (boolean)

Turns the Offline mode add-on on or off.

Setup (object)

The deployment's setup (login screen, invited users, scheduled jobs, device frame and more). It replaces the stored setup as a whole on every call, so send the full object each time; login_methods and access_mode are normalized on save.

Route Id (string)

The Studio route the deployment serves.

Global Variables (object)

Global variables for the deployment.

Prog Params (object)

Parameters passed to the program the deployment opens.

Enable Auto Diagnose (boolean)

Turns the Auto Diagnose add-on on or off. Turning it on requires diagnose_access_consent true, or consent given earlier; otherwise the call fails with code -91.

Diagnose Checks (object)

Which Auto Diagnose checks run, as {standard, ai_logs, ai_custom} booleans.

Diagnose Custom Prompt (string)

The custom AI check prompt, up to 500 characters. Required when diagnose_checks.ai_custom is true, otherwise the call fails with code -92.

Diagnose Access Consent (undefined)

True gives the read-only server access Auto Diagnose needs. Required the first time enable_auto_diagnose is turned on.

Access Consent (object)

One VPS access consent to give or withdraw, as {scope, granted}.

Access Consents (object)

Several VPS access consents at once, as {<scope>: granted}.

Compact Database - App module

Launches a background job that deletes stat-4 documents and compacts the application's database.

App Id (string)*

Unique identifier of the application this request targets.

Clear Session Logs - Session module

Handles session logs.

App Id (string)*

Unique identifier of the application this request targets.

Clear Traffic Logs - App module

Launches a background job that deletes the application's visit log documents.

App Id (string)*

Unique identifier of the application this request targets.

Get Db Activity - App module

Returns recent activity on the app's database, the background jobs currently running for it, and, for each document type, how many deleted documents are waiting to be cleared by compaction.

App Id (string)*

Unique identifier of the application this request targets.

Set Runtime Utility Screen - App module

Deprecated: use set_runtime_user_assist. Utility Screen is now part of User Monitor, so this turns the same add-on on or off and recalculates the app's monthly cost.

App Id (string)*

Unique identifier of the application this request targets.

Enable (boolean)*

Boolean flag that turns the feature on or off.

Get Platform Servers Info - Misc module

Retrieves platform servers information.

Get Price Obj - Misc module

Returns the configured pricing object (PRICE_OBJ) from server config.

Currency (string)

Currency to price in: usd, eur or ils. Any other value is ignored, and the caller's account currency is used instead, then the platform default.

Get Account Info - Account module

Returns the account data for the requesting user, optionally enforcing usage limits.

Build App - Build module

Builds a new release version of an application, running the program checker and publishing release notifications.

App Id (string)*

Unique identifier of the application to build.

Version (string)*

Version number for the new build.

Release note (string)

The release note saved with the new build. Defaults to empty.

Ignore errors (boolean)

When false, a build whose programs fail the checker is refused instead of built. Defaults to true.

Destroy App - App module

Permanently deletes the specified application. The pre_dispatch hook stamps app_cost.terminated_ts synchronously before the destruction job is queued, so billing UI updates instantly.

App Id (string)*

Unique identifier of the application to permanently delete.

Validation Code (string)

The 4-digit code emailed to the app owner when an app more than a day old is deleted. The delete is refused without the right code.

Turn App Off - App module

Turns off (suspends) the specified application.

App Id (string)*

Unique identifier of the application this request targets.

Turn App On - App module

Turns on (resumes) the specified application.

App Id (string)*

Unique identifier of the application this request targets.

Get Contacts - Account module

Retrieves contacts.

Tag (string)

Narrow the list to the contacts that carry this tag.

Folder ID (string)

Narrow the list to one dashboard folder. Send __none__ for the rows that are in no folder.

Document ID (string)

Unique identifier of the document.

User ID (string)

Unique identifier of the user.

Name (string)

Human-readable name used for identification or search.

Contact ID (string)

Unique identifier of the related contact.

Limit (number)

Maximum number of records to return.

Skip (number)

Number of records to skip for pagination.

Bookmark (string)

Pagination bookmark used to continue fetching results.

Search (string)

Search query string used to filter results.

Filter Type (string)

Defines the filtering scope of the query.

Profile id (string)

Reads the contacts of this profile instead of the caller's active one.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

With requests (boolean)

When true, pending contact requests, sent and received, are included. The default listing (any filter_type other than archived, shared, pinned, favorites or online) always includes them.

Get Profiles - Account module

Retrieves account profiles.

Folder ID (string)

Narrow the list to one dashboard folder. Send __none__ for the rows that are in no folder.

Account Type (string)

Optional. Narrow the list to one kind of profile: 'personal', 'business' or 'virtual'. Left out, every kind is returned.

Document ID (string)

Unique identifier for the document.

User ID (string)

Unique identifier of the user associated with the request.

Profile ID (string)

Unique identifier of the profile.

Profile Name (string)

Display name to assign to the profile.

Limit (number)

Maximum number of records to return.

Skip (number)

Number of records to skip for pagination.

Bookmark (string)

Pagination bookmark used to continue fetching results.

Search (string)

Search query string used to filter results.

Filter Type (string)

Defines the filtering scope of the query.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Create Contact - Account module

Adds a person to the contact book by hand, from typed details rather than from a received message. Takes only the four fields a contact has, name, email, phone and company, and ignores anything else the caller happens to hold, such as a shipping address. The email is the book's key, so it is required and a repeat of one already filed returns the existing contact instead of a second copy.

Name (string)*

The person's name, as it should appear in the contact book.

Email (string)*

Email address. Required: it is the contact book's key and its duplicate check.

Phone (string)

Phone number, stored on the contact.

Company (string)

Company the person belongs to, stored on the contact.

Source (string)

Where the contact was added from, for example shipping. Defaults to manual.

Context (string)

One line recording why this contact was added, shown on the contact's activity trail.

Profile id (string)

Files the new contact under this profile instead of the caller's active one.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Archive Contact - Account module

Archives contact.

Contact ID (string)*

Unique identifier of the contact to archive.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unarchive Contact - Account module

Restores archived contact.

Contact ID (string)*

Unique identifier of the archived contact to restore.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Delete Contact - Account module

Deletes contact.

Contact ID (string)*

Unique identifier of the archived contact to delete.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unfriend Contact - Account module

Ends the friend relationship with a contact by closing its team request and clearing the link from the contact.

Contact ID (string)*

Unique identifier of the contact to unfriend.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Pin Contact - Account module

Pins contact.

Contact ID (string)*

Unique identifier of the contact to pin.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unpin Contact - Account module

Removes the pinned state from contact.

Contact ID (string)*

Unique identifier of the contact to unpin.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Favorite Contact - Account module

Marks contact as a favorite.

Contact ID (string)*

Unique identifier of the contact to favorite.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unfavorite Contact - Account module

Removes the favorite state from contact.

Contact ID (string)*

Unique identifier of the contact to unfavorite.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Not Spam Contact - Account module

Marks a contact as not spam, whitelists its email, and refreshes its business or personal classification.

Contact ID (string)*

Unique identifier of the contact to mark as not spam.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Set Deep Research Contact - Account module

Enables deep research on a contact, enriching its business or personal info and processing related conversation transcripts.

Contact ID (string)*

Unique identifier of the contact to enable deep research on.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unset Deep Research Contact - Account module

Disables deep research on a contact and clears its cached data.

Contact ID (string)*

Unique identifier of the contact to disable deep research on.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Generate Contact Avatar - Account module

Clears a contact's existing pictures and regenerates its profile avatar (not available on free accounts).

Contact ID (string)*

Unique identifier of the contact to generate an avatar for.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Pin AI agent - AI module

Pins AI agent.

(string)*

Unique identifier of the AI agent to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Pin AI chat - AI module

Pins AI chat.

(string)*

Unique identifier of the AI chat to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unpin AI chat - AI module

Removes the pinned state from AI chat.

(string)*

Unique identifier of the AI chat to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Pin Mini App - AI module

Pins mini app.

(string)*

Unique identifier of the mini app to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unpin Mini App - AI module

Removes the pinned state from mini app.

(string)*

Unique identifier of the mini app to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unpin AI agent - AI module

Removes the pinned state from AI agent.

(string)*

Unique identifier of the AI agent to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Favorite AI chat - AI module

Marks AI chat as a favorite.

(string)*

Unique identifier of the AI chat to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unfavorite AI chat - AI module

Removes the favorite state from AI chat.

(string)*

Unique identifier of the AI chat to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Favorite Mini App - AI module

Marks mini app as a favorite.

(string)*

Unique identifier of the mini app to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unfavorite Mini App - AI module

Removes the favorite state from mini app.

(string)*

Unique identifier of the mini app to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Favorite AI agent - AI module

Marks AI agent as a favorite.

(string)*

Unique identifier of the AI agent to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unfavorite AI agent - AI module

Removes the favorite state from AI agent.

(string)*

Unique identifier of the AI agent to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Create Account Profile - Account module

Creates account profile.

Profile Name (string)*

Display name to assign to the profile.

Account Type (string)*

Kind of profile: 'personal' (a real person), 'business' (a real brand) or 'virtual' (an invented character). A personal or business profile with no picture of its own inherits the account's avatar when the account is of the same type. Virtual needs a paid membership and a verified account.

Virtual Character (string)

Virtual profiles only. A short brief describing the fictional character this profile portrays.

Virtual Traits (object)

Virtual profiles only. The character controls, one choice per group: age, gender, ethnicity, look.

Profile Signature (string)

Signature or short text associated with the profile.

Profile Email (string)

Email address associated with the profile.

Profile Picture (string)

URL or stored reference for the main profile image.

Profile Avatar (string)

URL or stored reference for the avatar image.

Profile Picture Obj (object)

Structured asset object for the main profile image.

Profile Avatar Obj (object)

Structured asset object for the avatar image.

Email account id (string)

The connected email account to attach to the new profile.

Main (boolean)

Marks the new profile as the account's main profile.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Update Account Profile - Account module

Updates account profile.

Registered Apps (array)

Which apps this profile works with, as an ordered list of app keys such as email, phone, sms, finance.invoice, tickets, drive, domain. Each one becomes a tab on every contact in this profile, and the order is the order of the app strip under the contact composer.

Registered Mini Apps (array)

Identifiers of the profile's mini apps that get their own tab on a contact.

Canvas (object)

The profile's canvas, the workspace landing: { tabs: [{ id, kind: shortcuts, module or custom, key (module key), name }], shortcuts: [{ kind: contact, agent, module or item, id }] }. Owner only; a shared profile cannot change it.

Profile Name (string)

Display name to assign to the profile.

Account Type (string)

Kind of profile: 'personal' (a real person), 'business' (a real brand) or 'virtual' (an invented character). Switching a profile to virtual needs a paid membership and a verified account.

Virtual Character (string)

Virtual profiles only. A short brief describing the fictional character this profile portrays.

Virtual Traits (object)

Virtual profiles only. The character controls, one choice per group: age, gender, ethnicity, look.

Profile Signature (string)

Signature or short text associated with the profile.

Email Account ID (string)

Unique identifier of the connected email account to use.

Profile Picture (string)

URL or stored reference for the main profile image.

Profile Avatar (string)

URL or stored reference for the avatar image.

Profile Picture Obj (object)

Structured asset object for the main profile image.

Profile Avatar Obj (object)

Structured asset object for the avatar image.

Auto Respond (boolean)

Whether automatic responses are enabled for the profile.

Auto Respond Mode (string)

Mode that controls how automatic responses are sent.

Auto Respond Agents (array)

Agent IDs allowed to send automatic responses for the profile.

Active AI Model (string)

Primary AI model to use for this profile or request.

AI Models (array)

Array of AI models available to this profile or request.

Profile id (string)*

Id of the profile to update.

Active agents (array)

Ids of the AI agents active on this profile.

Email template (object)

The profile's email styling, as {style}, where style is plain, card, accent or minimal.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Update Entity Account Profiles - Account module

Updates entity account profiles.

Account Profiles (array)*

Array of account profile records to save or update.

Doc id (string)

Unique identifier of the record to retrieve or update.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Archive Account Profile - Account module

Archives account profile.

Profile Id (string)*

Unique identifier of the profile to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unarchive Account Profile - Account module

Restores archived account profile.

Profile Id (string)*

Unique identifier of the profile to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Delete Account Profile - Account module

Deletes account profile.

Profile Id (string)*

Unique identifier of the profile to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Delete Email Account - Email module

Soft-deletes a connected email account by marking its document stat as deleted.

email account id (string)*

Unique identifier of the connected email account to use.

Archive Email - Email module

Archives an email by setting its document stat to archived.

email id (string)*

Unique identifier of the email to process.

Unarchive Email - Email module

Puts an archived email back in its mailbox, at the stat it had before it was archived. An email that is not archived is left as it is.

email id (string)*

Unique identifier of the archived email to restore.

Read Email - Email module

Marks an email and its linked chat conversation item as read for the calling user. The counterpart to Unread Email; leaves the mailbox's own seen flag and the message timestamp alone.

email id (string)*

Unique identifier of the email to mark as read.

Unread Email - Email module

Marks an email and its linked chat conversation item as unread.

email id (string)*

Unique identifier of the email to process.

Get App Releases - Build module

Retrieves application releases.

App Id (string)*

Unique identifier of the application this request targets.

Limit (number)

Maximum number of releases to return. Defaults to the full build history.

Get Release Note Info - Build module

Retrieves the release note for a specific application build.

App Id (string)*

Unique identifier of the application whose release note is requested.

Build Id (number)*

Build number identifying which release note to retrieve.

Submit App Notification - Notification module

Sends a notification to the authorized users of a target app by delegating to submit_notification.

App Id (string)*

ID of the app sending the notification.

To App Id (string)*

ID of the target app whose users receive the notification.

Subject (string)*

Subject line of the notification.

Delivery Method (string)*

Single delivery channel for the notification (e.g. email, banner, alert).

Body (string)*

Body content of the notification.

Display Type (string)*

Visual display style of the notification (e.g. info, alert).

To uid (array)

Account ids to notify, as an array. Required unless system is true, in which case the app (app_id) is notified.

System (boolean)

Marks the notification as a system notification, which also makes to_uid optional.

Type (string)

The notification type. Only platform administrators can set it; for every other caller it is user.

Get Notifications - Notification module

Queries CouchDB for the requesting user's notifications (inbox, outbox, or system) filtered by status and optional date range.

Date from (number)

Start of the date range, in epoch milliseconds. Applied together with date_to.

Date to (number)

End of the date range, in epoch milliseconds. Must not be earlier than date_from.

Search (string)

Text to search for, case-insensitive, in the notification body and the request headers stored with it, or an exact match on the subject.

Type (string)

Lists only notifications of this type.

Ref (string)

Lists only notifications carrying this reference.

Notification id (string)

Returns only the notification with this id, when it is one the caller's list could show.

Delivery method (string)

Lists only notifications sent by this delivery method.

Display type (string)

Lists only notifications of this display type.

Limit (number)

Maximum number of notifications to return. Defaults to 99999.

Skip (number)

Number of matching notifications to skip, for paging.

Bookmark (string)

The bookmark returned with the previous page, to read the next one.

Outbox (boolean)

When true, lists the notifications the caller sent instead of those addressed to the caller.

System (boolean)

When true, includes platform-wide system notifications alongside the caller's own.

To app id (string)

Lists this app's notifications instead of the caller's own. The caller must own the app or be a member of its team.

Read (boolean)

true lists only read notifications, false only unread. Omitted, both are listed.

Get System Notifications - Notification module

Retrieves the requesting user's unread system notifications by delegating to get_notifications with the system flag set.

Date from (number)

Start of the date range, in epoch milliseconds. Applied together with date_to.

Date to (number)

End of the date range, in epoch milliseconds. Must not be earlier than date_from.

Search (string)

Text to search for, case-insensitive, in the notification body and the request headers stored with it, or an exact match on the subject.

Type (string)

Lists only notifications of this type.

Ref (string)

Lists only notifications carrying this reference.

Notification id (string)

Returns only the notification with this id, when it is one the caller's list could show.

Delivery method (string)

Lists only notifications sent by this delivery method.

Display type (string)

Lists only notifications of this display type.

Limit (number)

Maximum number of notifications to return. Defaults to 99999.

Skip (number)

Number of matching notifications to skip, for paging.

Bookmark (string)

The bookmark returned with the previous page, to read the next one.

Set Notification Read - Notification module

Marks a non-system notification as read, recording the read timestamp and request header.

Notification Id (string)*

ID of the notification document to mark as read.

Update Account Info - Account module

Updates account information.

Account type (string)

personal or business.

Business name (string)

The business name, for a business account: at least 2 characters, using letters, digits, spaces and , . @ only.

Bio (string)

A short bio for the account.

Phone number (string)

The account's phone number.

SMS consent (object)

The account's SMS consent record, as {agreed, ts, source, text_version, policy}.

Address (string)

Street address: letters, digits, hyphens and spaces only.

City (string)

City.

State (string)

State or region.

Zip (string)

Postal code: at least 2 characters, using letters, digits, spaces and , . @ only.

Country (string)

Country.

Email (string)

The account email; must be a valid address.

First name (string)

First name.

Last name (string)

Last name.

Main category (string)

The business's main category.

Sub category (string)

The business's sub category.

Profile picture (string)

Address (URL) of the account's photo or logo.

Profile picture object (object)

The uploaded file record of the profile picture.

Username (string)

The account's username.

Website (string)

The account's website address.

Active account profile id (string)

Which of the account's profiles is active. An id that is not one of the account's profiles is ignored.

Profile avatar (string)

Address (URL) of the account's avatar.

Profile avatar object (object)

The uploaded file record of the avatar.

Profile avatar zoom (number)

How large the avatar is drawn, as a multiplier.

Is Xuda Network ambassador (boolean)

Whether the account is a Xuda Network ambassador. Must be a boolean.

Network profile URL (string)

The account's Xuda Network profile address; must be an https:// URL.

Network lang (string)

The Xuda Network language, as two lowercase letters.

Network country code (string)

The Xuda Network country, as two lowercase letters.

Network city slug (string)

The Xuda Network city, as 2 to 64 lowercase letters, digits or hyphens.

Public profile disabled (boolean)

Hides the account's public Xuda Network profile.

Login screen object (object)

The account's own login screen image or video.

Workspace id (string)

With active_account_profile_id, switches the active profile of this workspace instead of the account's own.

Resend Access Invitation - Team module

Resends the access or share invitation notification for the specified team request.

Team Request Id (string)*

Unique identifier of the team request whose invitation should be resent.

Get User Emails - Email module

Queries and returns a user's emails filtered by mailbox, date range, search term, and read status.

Contact Email (string)

Return only the messages exchanged with this address, for a contact's Email tab. Matched against the other party on each message (the sender on an inbound one, the recipient on a sent one).

Uid (string)*

Unique identifier of the user whose emails are queried.

Mailbox name (string)

inbox or sent, or any other mailbox path to match exactly.

Date from (number)

Start of the date range, in epoch milliseconds. Applied together with date_to.

Date to (number)

End of the date range, in epoch milliseconds. Must not be earlier than date_from.

Search (string)

Text to search for, case-insensitive, in the subject and the other party's name or address.

Email account id (string)

Lists only messages of this connected email account.

Email id (string)

Returns only the message with this id.

Filter type (string)

archived lists only the emails archived with Archive Email. Without it, archived emails are left out.

Read (boolean)

true lists only read messages, false only unread.

Skip (number)

Number of messages to skip, for paging. Defaults to 0.

Limit (number)

Maximum number of messages to return. Defaults to 9999.

Bookmark (string)

The bookmark returned with the previous page, to read the next one.

Get User Mailboxes - Email module

Returns per-mailbox email counts for the user's active account profile.

Uid (string)*

Unique identifier of the user whose mailbox counts are returned.

Process Pending Email - Email module

Processes a pending email for the user's verified email account, optionally resetting its error state.

Email Id (string)*

Unique identifier of the pending email to process.

Reset error (boolean)

When true, clears the email's stored error before processing it again.

Refresh Mailboxes - Email module

Fetches new emails for the user's verified email accounts across their active account profiles.

Email account id (string)

Refreshes only this connected email account instead of every one on the caller's active profiles.

Delete Release - Build module

Soft-deletes an application release and removes its build folder if no deployments use it.

App Id (string)*

Unique identifier of the application owning the release.

App Release Id (string)*

Identifier of the release document to delete.

Update App Version - Deploy module

Updates application version.

App Id (string)*

Unique identifier of the application this request targets.

Get Install Consent - MarketPlace module

Returns the install consent screen for one marketplace AI agent or plugin: what it does, who wrote it, the liability text, and the content hash the install has to echo back.

Item Kind (string)*

ai_agent or plugin.

Marketplace Id (string)

ID of the marketplace document, for an AI agent.

Plugin Name (string)

Name of the plugin, with or without the @xuda.io scope.

App Id (string)

Project the plugin would be installed into, used only to report whether it is already installed.

Get Contact Members - Team module

Lists the caller's contact requests and connections, each with the other person's contact card.

Team Request Status (array)

An array of numeric status codes to filter team requests by: 1 = Draft request 2 = Pending request 3 = Approved request 4 = Canceled request

Status filter (undefined)

One request status, or an array of them, to list. Omitted, every status except deleted and declined is listed.

Get User Group Members - Team module

Retrieves user group members.

App Id (string)*

Unique identifier of the application this request targets.

Team Request Status (array)

An array of numeric status codes to filter team requests by: 1 = Draft request 2 = Pending request 3 = Approved request 4 = Canceled request

Status filter (undefined)

One request status, or an array of them, to list. Omitted, every status except deleted and declined is listed.

Create Share - Team module

Creates share.

Email (string)

Email address of the user receiving access or an invitation. Optional when to_uid names the recipient.

Share Item Id (string)*

Unique identifier of the item being shared.

Access Type (string)*

Permission level to grant when sharing the item.

To Uid (string)

The recipient's Xuda account id. When set, the recipient is found by this id rather than by access_email.

Share item type (string)

For a drive share, whether share_item_id is a file or a directory.

Share item name (string)

The item's name as the sender sees it, kept on the share and shown when the item itself carries no name.

Allow add (boolean)

For a profile share (account_profile), whether the member may add AI agents and mini apps to the profile. Omitted, adding is allowed.

Custom subject (string)

A custom subject for the invitation email of an admin, developer or user_group share.

Custom message (string)

A custom message for the invitation email of an admin, developer or user_group share.

Contact source (string)

For a contact request, how it started. Defaults to friend request.

User preferences (object)

Preferences to store on the request.

Access view (array)

The parts of the shared item the recipient may see, as a list of names (up to 20).

App Id (string)

The app the share grants access to. Required when access_type is admin, developer or user_group.

Remove Share - Team module

Removes share.

Req Id (string)

Unique identifier of the team request to review or update.

Access email (string)

The recipient's email address, used to find the share when team_req_id is not sent.

Access uid (string)

The recipient's Xuda account id, used to find the share when team_req_id is not sent.

Access type (string)

The share type, used with access_email or access_uid to find the share.

App Id (string)

The app the share belongs to, used with access_email or access_uid to find it.

User group app id (string)

The user group app, required instead of app_id when access_type is user_group and team_req_id is not sent.

Cancel Share - Team module

Handles share.

Req Id (string)

Unique identifier of the team request to review or update.

Confirm Share - Team module

Confirms share.

Req Id (string)

Unique identifier of the team request to review or update.

Decline Share - Team module

Declines share.

Req Id (string)

Unique identifier of the team request to review or update.

Update Share - Team module

Updates share.

Req Id (string)

Unique identifier of the team request to review or update.

Access view (array)

The parts of the shared item the recipient may see, as a list of names (up to 20).

Allow add (boolean)

For a profile share, whether the member may add AI agents and mini apps to the profile.

Get Shares - Team module

Retrieves shares.

Access Type (string)*

Permission level to grant when sharing the item.

App Id (string)

The app whose shares to list, for app shares (admin, developer or user_group). Item shares are listed for the caller and do not use it.

Share item id (string)

Lists only the shares of this one item.

Status filter (undefined)

One request status, or an array of them, to list. Omitted, every status except deleted and declined is listed.

Add Contact Member - Team module

Sends a contact request to another Xuda user, found by email or by account id.

Email (string)

Email address of the user receiving access or an invitation.

To Uid (string)

Value for the to uid field.

Contact source (string)

How the request started. Defaults to friend request.

User preferences (object)

Preferences to store on the request.

Create User Group Join Link - Team module

Creates a shareable user group join link granting access to the specified app.

App Id (string)*

Unique identifier of the application this request targets.

Assign Api Keys To User Group Member - Team module

Assigns the given API keys to the user group member identified by the team request.

Team Request Id (string)*

The unique identifier of the team request representing the user group member.

Api Keys (array)*

A list of API keys to assign to the specified user group member.

Get Logs - Logs module

Queries logs of a given type within a timestamp range, with optional search, paging, and status filters.

Log Type (string)*

The docType of logs to query (for example account_log or app_log).

Log Date From (number)*

Lower bound timestamp (inclusive) of the log time range.

Log Date To (number)*

Upper bound timestamp (inclusive) of the log time range.

Archived (boolean)

When true, reads archived logs instead of current ones.

App Id (string)

For an account log, lists only entries about this app. Required for an app log, which only the app's owner, maintainer or team members can read.

Methods (array)

Lists only entries for these method names.

Search (string)

Text to search for in the entry id, request body, request headers and response, or an exact method name.

Api Pk (string)

Lists only entries made with this API public key.

Api Sk (string)

Lists only entries made with this API secret key identifier.

Api Keys (array)

Lists only entries made with any of these API keys.

Request Type (string)

Lists only entries of this request type.

IP (string)

Lists only entries from this IP address.

Source (string)

Lists only entries written by this source.

Security only (boolean)

When true, lists only security entries.

Status filter (string)

failed lists only responses with codes 400 to 499; any other value lists only 200 to 299.

Limit (number)

Maximum number of entries to return. Defaults to every entry in the range.

Skip (number)

Number of entries to skip, for paging.

Bookmark (string)

The bookmark returned with the previous page, to read the next one.

Get Logs Counts - Logs module

Returns grouped log counts by request type or response status within a timestamp range.

Log Type (string)*

The docType of logs to count (for example account_log or app_log).

Log Date From (number)*

Lower bound timestamp (inclusive) of the log time range.

Log Date To (number)*

Upper bound timestamp (inclusive) of the log time range.

App Id (string)

The app whose log counts to read, for an app log.

Request Type (string)

Counts entries of this request type (for example GET or POST) over the date range. Either request_type or response_status is required.

Response status (string)

Counts entries with this response status (success or failed) over the date range. Either request_type or response_status is required.

Get Drive Files Workspace - Drive module

Retrieves drive files for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Path (string)*

Path to the resource being processed.

Type (string)

Lists only file or only directory items. Omit to list both.

Search string (string)

Text to search for in file names and extracted text. Also accepts name:, mime:, ext: and tag: terms, separated by spaces and combinable with plain text.

Sort by (string)

name or date. Defaults to name.

Sort direction (string)

asc or desc. Defaults to desc.

Tags (array)

Lists only items carrying every one of these tags.

Starred (boolean)

When true, lists only starred items, across all folders (path is ignored).

Recent (boolean)

When true, lists items across all folders instead of only those in path.

Global (boolean)

When true, lists items across all folders, the same as recent.

From (number)

Paging offset. Defaults to 0.

To (number)

Paging end index: the call returns up to to minus from items. Defaults to 99999.

Get Drive File Info Workspace - Drive module

Retrieves drive file information for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Delete Drive Files Workspace - Drive module

Deletes drive files from workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Files (array)*

Array of file id's

Extract Drive File Workspace - Drive module

Unzips an archive file in place: each entry in the archive becomes a new file or folder at the same drive location as the archive.

App Id (string)*

Unique identifier of the application this request targets.

File path (string)*

Full path of the file or folder to process.

Upload Drive File Workspace - Drive module

Uploads drive file to workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Check Exist (boolean)

When true, checks for an existing file at the target path before uploading and auto-renames on collision.

Make Public (boolean)

When true, marks the uploaded file as publicly accessible.

Update Drive File Workspace - Drive module

Updates drive file for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

File path (string)*

Full path of the file or folder to process.

Create Drive Folder Workspace - Drive module

Creates drive folder for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Path (string)*

Path to the resource being processed.

Folder Name (string)*

Name of the folder to create, update, or check.

Tags (undefined)

Tags to store on the new folder, as an array or a comma-separated string.

Is system (boolean)

Marks the folder as a system item. System items are left out of drive listings.

Rename Drive File Workspace - Drive module

Renames drive file in workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

File Path (string)*

Full path of the file to rename.

New File Name (string)*

New file name to assign to the renamed file.

Rename Drive Folder Workspace - Drive module

Renames drive folder in workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Current File Path (string)*

Current path of the resource before the operation runs.

New File Path (string)*

New path to assign during the operation.

Update Drive File Sharing Mode Workspace - Drive module

Updates drive file sharing mode for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Is public (boolean)

True makes the item public; false or omitted makes it private.

Delete File Bulk Workspace - Drive module

Deletes multiple files from the workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Files to Delete (array)*

List of stored server file names to process.

Check Drive File Workspace - Drive module

Checks whether a file or folder already exists in the workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Folder name (string)

The folder's own name, used when type is directory: the check looks for a folder with this name inside file_path.

Check Drive Files Workspace - Drive module

Checks whether multiple files or folders already exist in the workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File Paths (array)*

List of file or folder paths to process.

Files (array)

Items to check in one call, each as {file_path, type, folder_name}. Used instead of file_paths.

Folder name (string)

The folder's own name, used to check a single folder (type directory) when neither files nor file_paths is sent.

Update Drive File Tags Workspace - Drive module

Updates drive file tags for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Tags (array)*

Array of tags to apply or filter by.

Update Drive Addons Workspace - Drive module

Updates drive addons for workspace drive.

App Id (string)*

Unique identifier of the application this request targets.

OCR (boolean)

Turns the OCR text-extraction add-on on or off.

Image convertor (boolean)

Turns the image conversion add-on on or off.

Video AI (boolean)

Turns the video AI add-on on or off.

Edit image (boolean)

Turns the image editing add-on on or off.

Get Drive Files Studio - Drive module

Retrieves drive files for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Path (string)*

Path to the resource being processed.

Type (string)

Lists only file or only directory items. Omit to list both.

Search string (string)

Text to search for in file names and extracted text. Also accepts name:, mime:, ext: and tag: terms, separated by spaces and combinable with plain text.

Sort by (string)

name or date. Defaults to name.

Sort direction (string)

asc or desc. Defaults to desc.

Tags (array)

Lists only items carrying every one of these tags.

Starred (boolean)

When true, lists only starred items, across all folders (path is ignored).

Recent (boolean)

When true, lists items across all folders instead of only those in path.

Global (boolean)

When true, lists items across all folders, the same as recent.

From (number)

Paging offset. Defaults to 0.

To (number)

Paging end index: the call returns up to to minus from items. Defaults to 99999.

Get Drive File Info Studio - Drive module

Retrieves drive file information for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Delete Drive Files Studio - Drive module

Deletes drive files from studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Files (array)*

Array of file id's

Extract Drive File Studio - Drive module

Unzips an archive file in place: each entry in the archive becomes a new file or folder at the same drive location as the archive.

File path (string)*

Full path of the file or folder to process.

App Id (string)

Unique identifier of the application whose drive holds the archive. Required, unless the API key is bound to an application.

Upload Drive File Studio - Drive module

Uploads drive file to studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Update Drive File Studio - Drive module

Updates drive file for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

File path (string)*

Full path of the file or folder to process.

Create Drive Folder Studio - Drive module

Creates drive folder for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Path (string)*

Path to the resource being processed.

Folder Name (string)*

Name of the folder to create, update, or check.

Tags (undefined)

Tags to store on the new folder, as an array or a comma-separated string.

Is system (boolean)

Marks the folder as a system item. System items are left out of drive listings.

Rename Drive File Studio - Drive module

Renames drive file in studio drive.

App Id (string)*

Unique identifier of the application this request targets.

File path (string)*

Full path of the file or folder to process.

New File Id (string)*

Destination file name to use for the updated resource.

Rename Drive Folder Studio - Drive module

Renames drive folder in studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Current File Path (string)*

Current path of the resource before the operation runs.

New File Path (string)*

New path to assign during the operation.

Update Drive File Sharing Mode Studio - Drive module

Updates drive file sharing mode for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Is public (boolean)

True makes the item public; false or omitted makes it private.

Delete File Bulk Studio - Drive module

Deletes multiple files from the studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Files to Delete (array)*

List of stored server file names to process.

Check Drive File Studio - Drive module

Checks whether a file or folder already exists in the studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Folder name (string)

The folder's own name, used when type is directory: the check looks for a folder with this name inside file_path.

Check Drive Files Studio - Drive module

Checks whether multiple files or folders already exist in the studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File Paths (array)*

List of file or folder paths to process.

Files (array)

Items to check in one call, each as {file_path, type, folder_name}. Used instead of file_paths.

Folder name (string)

The folder's own name, used to check a single folder (type directory) when neither files nor file_paths is sent.

Update Drive File Tags Studio - Drive module

Updates drive file tags for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Tags (array)*

Array of tags to apply or filter by.

Update Drive Addons Studio - Drive module

Updates drive addons for studio drive.

App Id (string)*

Unique identifier of the application this request targets.

OCR (boolean)

Turns the OCR text-extraction add-on on or off.

Image convertor (boolean)

Turns the image conversion add-on on or off.

Video AI (boolean)

Turns the video AI add-on on or off.

Edit image (boolean)

Turns the image editing add-on on or off.

Get Drive Files User - Drive module

Retrieves drive files for user drive.

Path (string)*

Path to the resource being processed.

Type (string)

Lists only file or only directory items. Omit to list both.

Search string (string)

Text to search for in file names and extracted text. Also accepts name:, mime:, ext: and tag: terms, separated by spaces and combinable with plain text.

Sort by (string)

name or date. Defaults to name.

Sort direction (string)

asc or desc. Defaults to desc.

Tags (array)

Lists only items carrying every one of these tags.

Starred (boolean)

When true, lists only starred items, across all folders (path is ignored).

Recent (boolean)

When true, lists items across all folders instead of only those in path.

Global (boolean)

When true, lists items across all folders, the same as recent.

From (number)

Paging offset. Defaults to 0.

To (number)

Paging end index: the call returns up to to minus from items. Defaults to 99999.

Get Drive File Info User - Drive module

Retrieves drive file information for user drive.

Type (string)*

Item type to look up, usually file or directory.

File Path (string)*

Full path of the file or folder to fetch information for.

File Name (string)*

Name of the file to fetch information for.

Delete Drive Files User - Drive module

Deletes drive files from user drive.

Files (array)*

Array of file descriptors, each with a type and file_path, identifying the drive files to delete.

Drive Type (string)*

Target drive scope to delete from, such as user, studio, or workspace.

Extract Drive File User - Drive module

Unzips an archive file in place: each entry in the archive becomes a new file or folder at the same drive location as the archive.

File path (string)*

Full path of the file or folder to process.

App Id (string)

Unique identifier of the application whose drive holds the archive. Required, unless the API key is bound to an application.

Upload Drive File User - Drive module

Uploads drive file to user drive.

Get Login Screen - Account module

Public pre-auth resolver for an account's effective login screen. Returns only source/media_type/file_url and the public branding view (UI-1752).

Email (string)

Account email to resolve a login screen for.

Uid (string)

Account uid to resolve a login screen for.

Team Req Id (string)

Sponsorship invite id (from an invite link) to resolve the invitee's screen.

Update Drive File User - Drive module

Updates drive file for user drive.

File path (string)*

Full path of the file or folder to process.

Create Drive Folder User - Drive module

Creates drive folder for user drive.

Path (string)*

Path to the resource being processed.

Folder Name (string)*

Name of the folder to create, update, or check.

Tags (undefined)

Tags to store on the new folder, as an array or a comma-separated string.

Is system (boolean)

Marks the folder as a system item. System items are left out of drive listings.

Rename Drive File User - Drive module

Renames drive file in user drive.

File path (string)*

Full path of the file or folder to process.

New File Id (string)*

Destination file name to use for the updated resource.

Rename Drive Folder User - Drive module

Renames drive folder in user drive.

Current File Path (string)*

Current path of the resource before the operation runs.

New File Path (string)*

New path to assign during the operation.

Update Drive File Sharing Mode User - Drive module

Updates drive file sharing mode for user drive.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Is public (boolean)

True makes the item public; false or omitted makes it private.

Star Drive File Workspace - Drive module

Toggles the starred bookmark on a workspace drive item.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to star or unstar.

Starred (boolean)*

True to star (bookmark) the item, false to unstar it.

App Id (string)

Unique identifier of the application whose drive holds the item. Required, unless the API key is bound to an application.

Star Drive File Studio - Drive module

Toggles the starred bookmark on a studio drive item.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to star or unstar.

Starred (boolean)*

True to star (bookmark) the item, false to unstar it.

App Id (string)

Unique identifier of the application whose drive holds the item. Required, unless the API key is bound to an application.

Star Drive File User - Drive module

Toggles the starred bookmark on a user drive item.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to star or unstar.

Starred (boolean)*

True to star (bookmark) the item, false to unstar it.

Get Shared With Me Files - Drive module

Lists drive files and folders shared with the current user.

Type (string)

Optional item type filter, file or directory.

Delete File Bulk User - Drive module

Deletes multiple files from the user drive.

Files to Delete (array)*

List of stored server file names to delete from the drive.

Check Drive File User - Drive module

Checks whether a file or folder already exists in the user drive.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Folder name (string)

The folder's own name, used when type is directory: the check looks for a folder with this name inside file_path.

Check Drive Files User - Drive module

Checks whether multiple files or folders already exist in the user drive.

Type (string)*

Item type to process, usually file or directory.

File Paths (array)*

List of file or folder paths to process.

Files (array)

Items to check in one call, each as {file_path, type, folder_name}. Used instead of file_paths.

Folder name (string)

The folder's own name, used to check a single folder (type directory) when neither files nor file_paths is sent.

Update Drive File Tags User - Drive module

Updates drive file tags for user drive.

Type (string)*

Item type to process, usually file or directory.

File path (string)*

Full path of the file or folder to process.

Tags (array)*

Array of tags to apply or filter by.

Update Drive Addons User - Drive module

Updates the drive addon toggles (OCR, image convertor, video AI, AI component generator, edit image) on the user's account drive.

OCR (boolean)

Turns the OCR text-extraction add-on on or off.

Image convertor (boolean)

Turns the image conversion add-on on or off.

Video AI (boolean)

Turns the video AI add-on on or off.

Edit image (boolean)

Turns the image editing add-on on or off.

Update Npm Dependencies - App module

Saves the app's npm dependencies to its project package.json, installs them, and syncs the project's files to its servers. If package.json cannot be read, a new one is created and the call asks you to refresh and save again.

App Id (string)*

Unique identifier of the application this request targets.

Dependencies (object)*

Value for the dependencies field.

Change Under Attack Mode - App module

Toggles Cloudflare under-attack mode for the application.

App Id (string)*

Unique identifier of the application this request targets.

State (boolean)

True turns bot protection (under-attack mode) on, false turns it off. Omitted, protection is turned off.

Get App Plugins - Plugins module

Retrieves application plugins.

App Id (string)*

Unique identifier of the application this request targets.

Plugin type filter (string)

Lists only plugins of this type (for example widget).

Get Plugins - Plugins module

Retrieves plugins.

Plugin id (string)

Returns only the plugin with this full id (with its @xuda.io/ prefix).

Limit (number)

Maximum number of plugins to return. Defaults to 9999.

Skip (number)

Number of plugins to skip, for paging.

Category (string)

Lists only plugins of this type.

Status filter (number)

Lists only plugins with this status code.

Id (short form) (string)

Returns only the plugin with this short id (without the @xuda.io/ prefix).

Get Plugins Categories - Plugins module

Retrieves plugins categories.

Install Plugin - Plugins module

Installs the named plugin into the given application.

App Id (string)*

Unique identifier of the application this request targets.

Consent (object)

The install consent the user accepted, as { accepted, content_hash, locale }. The content_hash comes from get_install_consent and is re-checked server side against freshly built content.

Consent Source (string)

Which screen the consent was accepted on: marketplace_web, dashboard or goal_builder. Labels the audit record only.

Plugin Name (string)*

Name of the plugin to install.

Validate free (boolean)

When true, refuses the install (code -2) if the plugin has a price.

Uninstall Plugin - Plugins module

Uninstalls the named plugin from the given application.

App Id (string)*

Unique identifier of the application this request targets.

Plugin Name (string)*

Name of the plugin to process.

Upload Plugin - Plugins module

Uploads plugin.

Package source (string)

Where the package comes from: npm (the default) or xuda_hosted, an uploaded package named by data.package_url.

Package URL (string)

Where the uploaded package is stored. Required when data.package_source is xuda_hosted.

Skip publish review (boolean)

True saves the plugin privately without submitting it for marketplace review.

Visibility (string)

private saves the plugin privately without submitting it for review, the same as data.skip_publish_review.

Get Platform Regions - Deploy module

Retrieves platform regions.

Get Region Hosting Options - Deploy module

Resolves a macro-region to a farm-first offer plus DigitalOcean datacenters for the region.

Macro region (string)*

Which region to get hosting options for: na, emea, apac, latam or africa. An unknown value returns an error.

App server type (string)

A server size slug. When set, the CPU, memory, disk and disk type are taken from it.

App type (string)

The kind of server being placed (for example vps, deployment or datacenter), used when checking hosting capacity.

Dedicated IP (boolean)

Whether the server needs a dedicated IPv4 address, which is part of the capacity check.

Pinned datacenter (undefined)

A specific datacenter to price and place in instead of the region's default, as an id or as {id, provider}.

Cores (number)

CPU core count, for callers that do not send app_server_type.

RAM (GB) (number)

Memory in GB, for callers that do not send app_server_type.

Disk (GB) (number)

Disk size in GB, for callers that do not send app_server_type.

Tier (string)

Pricing and capacity tier (for example light). Defaults to the tier of app_server_type, then the platform default.

Get Suggested Region - Deploy module

Suggests the deploy macro-region from the caller's IP country (Cloudflare cf-ipcountry).

Country (string)

A two-letter country code to use when the request does not carry its own country (for example in local development).

Move Drive Files User - Drive module

Moves drive files/folders (with their full subtree) into another folder in the user drive.

Files (array)*

Array of item descriptors, each with a type (file|directory) and file_path, identifying the drive items to move.

Destination path (string)*

Absolute drive folder path to move the items into (e.g. / or /projects/assets).

Get Drive Size Studio - Drive module

Returns the total storage used (bytes) by the studio drive.

App Id (string)

Unique identifier of the application whose drive size to compute. Required, unless the API key is bound to an application.

Get Developer Overview - Logs module

Aggregated API/MCP activity for the account over a time window: totals, per-channel split with matching per-channel error counts (mcp/api/dashboard), top methods, per-key usage, the uncapped count of keys seen, recent errors, and a zero-filled time series of requests and errors (series, bucket_ms). Reports whether the read hit its row cap, in which case every figure is partial.

Hours (number)

Window size in hours (default 24, max 720).

Until (number)

End of the window as a unix timestamp in ms, clamped to now. Defaults to now. Pass the same value to two calls of different sizes so their totals line up exactly and one can be subtracted from the other.

Skip Key Names (boolean)

Skip the per-key name and access-mode lookup, one document read per reported key. Use it when only the aggregate counts are needed.

Publish Farm Templates - Deploy module

Ensure every live farm placement node carries the golden deployment + datacenter templates, copying any missing one from a node that has it (vzdump -> scp -> qmrestore -> qm template). dry_run reports the gap without copying.

Dry run (undefined)

Only report which nodes are missing a golden template; do not copy anything.

OS slugs (undefined)

OS images to prepare on every hosting node: an array of OS slugs, or true for every OS in the catalog. Omitted, only the deployment and datacenter templates are handled.

Get App Server Usage - Deploy module

Retrieves application server usage.

App Id (string)*

Unique identifier of the application this request targets.

Start Date (number)*

timestamp

End Date (number)*

timestamp

Update Domain Setup - App module

Sets the app's address: a subdomain of the platform app domain, a custom domain the customer owns, or a domain registered through Xuda. A custom domain starts a DNS and SSL check; a registered domain is attached to the project and stored as a custom domain.

Domain Setup (object)*

Value for the domain setup field.

Domain Setup Type (string)*

Value for the domain setup type field.

Subdomain (string)

The subdomain to claim. Required when domain_setup.type is subdomain; with type registered, the optional subdomain under registered_domain.

Custom Domain (string)

The customer-owned domain to point at this app. Required when domain_setup.type is custom.

Registered Domain (string)

A domain registered through Xuda to attach to this app. Required when domain_setup.type is registered.

Get Deploy Info - Deploy module

Returns summary deployment info for an app (type, status, access URL, deploy data, and the replicate app's icon properties).

App Id (string)*

Unique identifier of the application this request targets.

Create Backup - Backup module

Creates a backup application by replicating the source app via the app module's create_app handler.

App Replicate (string)*

Unique identifier of the source application to replicate into a backup.

Get App Traffic Metrics - App module

Returns visit counts for a deployment by country, device, browser, vendor, operating system, engine, model and device type, plus total visitors and visitors by date. For a project, the counts are summed across its datacenters.

App Id (string)*

Unique identifier of the application this request targets.

Get App Traffic Overview - App module

Retrieves application traffic overview.

App Id (string)*

Unique identifier of the application this request targets.

VPS Files: list directory - App module

Lists a directory on the project's VPS over SFTP. Returns typed entries (file/dir, size, mtime, mode).

App Id (string)

Unique identifier of the application this request targets.

Path (string)

Absolute directory path to list. Defaults to /root.

VPS Files: read file - App module

Reads a file on the project's VPS over SFTP. Detects text/image/binary and caps inline size.

App Id (string)

Unique identifier of the application this request targets.

Path (string)*

Absolute path of the file to read.

VPS Files: write file - App module

Creates or overwrites a file on the project's VPS over SFTP.

App Id (string)

Unique identifier of the application this request targets.

Path (string)*

Absolute path of the file to write.

Content (string)

File contents.

Encoding (string)

Content encoding: utf8 (default) or base64.

VPS Files: batch upload - App module

Writes many files to the project's VPS over a single SFTP session, creating parent directories as needed. Used for folder uploads.

App Id (string)

Unique identifier of the application this request targets.

Files (array)*

Array of { path, content, encoding } objects to write.

VPS Files: search - App module

Searches a directory subtree on the VPS by filename or by file contents.

App Id (string)

Application identifier.

Path (string)

Directory to search under.

Query (string)*

Search text.

Mode (string)

'name' or 'content'.

VPS Files: disk usage - App module

Returns one-level disk usage (du) of a directory on the VPS, largest children first.

App Id (string)

Application identifier.

Path (string)

Directory to measure.

VPS Files: tail file - App module

Returns the tail of a file on the VPS, with an offset for incremental polling (live log follow).

App Id (string)

Application identifier.

Path (string)*

File to tail.

From Offset (number)

Byte offset from a previous poll.

VPS Files: service action - App module

Runs a bounded service action (nginx test/reload, apache, caddy, systemd daemon-reload, or systemctl verb on a named unit) on the VPS.

App Id (string)

Application identifier.

Action (string)

Fixed action key (e.g. nginx_reload).

Verb (string)

systemctl verb (status/reload/restart/start/stop).

Unit (string)

systemd unit name.

VPS: enable web URL - App module

Gives the VPS a public https://<sub>.xuda.app URL that reverse-proxies to its web server (default port 80). Allocates a subdomain if needed.

App Id (string)

Application identifier.

Port (number)

Upstream web port on the VPS to proxy to (default 80).

Https (boolean)

Proxy to https on the upstream instead of http (default false).

VPS: disable web URL - App module

Stops serving the VPS's public xuda.app URL (keeps the subdomain reserved for re-enable).

App Id (string)

Application identifier.

VPS: set web port - App module

Changes the upstream port (and optional https scheme) the public xuda.app URL proxies to on the VPS.

App Id (string)

Application identifier.

Port (number)*

Upstream web port on the VPS (1-65535).

Https (boolean)

Proxy to https on the upstream instead of http.

VPS: rotate SSH token - App module

Issues a fresh one-time SSH/SFTP-over-WebSocket bearer token for the VPS (invalidates any previous one) and returns the ready-to-paste connect commands. The server's own SSH login is still required.

App Id (string)

Application identifier.

VPS: enable SSH - App module

Enables SSH/SFTP-over-WebSocket access for the VPS (idempotent). Returns the connect commands with a token on first enable.

App Id (string)

Application identifier.

VPS: disable SSH - App module

Disables SSH-over-WebSocket access for the VPS (the router stops resolving the tunnel). Keeps the subdomain.

App Id (string)

Application identifier.

VPS SSH: list developer accesses - App module

Lists every SSH/SFTP-over-WebSocket developer access for a VPS: label, creation date, expiry, active or suspended status, and live online state. Read-only, owner-gated. Never returns the token itself.

App Id (string)*

Application identifier.

VPS SSH: command history - App module

Lists the commands run over SSH on this server, read live from the server's own command log. Read-only, owner-gated. Requires the command log to be switched on for the server, and only covers interactive shell sessions.

App Id (string)*

Application identifier.

Limit (number)

Maximum number of commands to return (default 300).

VPS SSH: switch command history on or off - App module

Turns the in-server command log on or off. When on, every command typed in an interactive SSH session is recorded on the server itself so the owner can review it. Owner-gated and off by default.

App Id (string)*

Application identifier.

Enabled (boolean)

True to start recording commands, false to stop.

VPS SSH: session history - App module

Lists every SSH/SFTP session opened against this server through the secure tunnel: which access was used, the client address, when it started and ended, how long it lasted, and how much data moved each way. Read-only, owner-gated. Session envelopes only, the tunnel is end-to-end encrypted so commands and file names are never visible to the platform.

App Id (string)*

Application identifier.

Limit (number)

Maximum number of sessions to return (default 100, max 500).

VPS SSH: add developer access - App module

Creates a new named SSH-over-WebSocket developer access, mints a one-time connection token (only its hash is stored), and returns the plaintext token and connect commands once. Optionally sets an expiry.

App Id (string)*

Application identifier.

Label (string)

Human-friendly name for the access (for example a developer name).

Expires at (number)

Optional expiry as an epoch-milliseconds timestamp. The router refuses the token after this time.

VPS SSH: edit developer access - App module

Edits a named SSH developer access: change its label and or expiry. Does not change the token.

App Id (string)*

Application identifier.

Access Id (string)*

Identifier of the access to edit.

Label (string)

New label.

Expires at (number)

New expiry as epoch-milliseconds, or null to clear it.

VPS SSH: suspend or activate access - App module

Suspends or re-activates a named SSH developer access. A suspended access is refused by the router immediately.

App Id (string)*

Application identifier.

Access Id (string)*

Identifier of the access.

Status (string)*

Either active or suspended.

VPS SSH: delete developer access - App module

Deletes a named SSH developer access. Its token stops working immediately.

App Id (string)*

Application identifier.

Access Id (string)*

Identifier of the access to delete.

VPS SSH: regenerate access token - App module

Regenerates the connection token for an existing named SSH developer access (invalidates the previous one) and returns the new plaintext token and connect commands once.

App Id (string)*

Application identifier.

Access Id (string)*

Identifier of the access to regenerate.

VPS Files: create directory - App module

Creates a directory (recursively) on the project's VPS over SFTP.

App Id (string)

Unique identifier of the application this request targets.

Path (string)*

Absolute directory path to create.

VPS Files: rename / move - App module

Renames or moves a file or directory on the project's VPS over SFTP.

App Id (string)

Unique identifier of the application this request targets.

From (string)*

Absolute source path.

To (string)*

Absolute destination path.

VPS Files: delete - App module

Deletes a file or directory (recursively) on the project's VPS over SFTP.

App Id (string)

Unique identifier of the application this request targets.

Path (string)*

Absolute path of the file or directory to delete.

Get App Firewall - App module

Returns the app's current firewall rules: the live rules of a hosted virtual server, the cloud firewall attached to the app, or, when neither exists yet, a default ruleset that allows outbound traffic and no inbound traffic.

App Id (string)*

Unique identifier of the application this request targets.

Firewall: list open ports - App module

List the inbound firewall rules (open ports) for the current app. Check what is reachable from outside before opening or closing ports.

Firewall: open ports - App module

Open inbound TCP port(s) on the current app's firewall so the service becomes reachable from outside. Use when a service is up locally but times out from outside. Acts only on the current app.

Ports (array)*

TCP ports to open, as an array of strings e.g. ["80","443"]. Ranges like "8000-8100" are allowed.

Firewall: close ports - App module

Close inbound TCP port(s) on the current app's firewall. Acts only on the current app.

Ports (array)*

TCP ports to close, as an array of strings e.g. ["9090"].

Domains: list - Domains module

List the account's registered domains (name, status, which app each is attached to). Use this BEFORE asking the user to type a domain: if they say 'connect one of my domains', call this and present the options.

Domains: connect to this VPS - Domains module

Point one of the account's own domains (from agent_domain_list) at THIS project's VPS via DNS. Optional subdomain (e.g. 'app' -> app.example.com); omit to use the apex. Prefer a subdomain unless the user explicitly wants the apex. Attaching replaces any existing record on that exact hostname.

Domain (string)*

A domain the account owns, exactly as returned by agent_domain_list (e.g. 'example.com').

Subdomain (string)

Optional subdomain label to point instead of the apex, e.g. 'app' for app.example.com.

Get Support Tickets - Tickets module

Retrieves support tickets.

Ticket id (string)

Returns only the ticket with this id.

API: Submit Ticket - Tickets module

External service: opens a ticket on the desk owned by the API key. Requires a plan with full API access.

Name (string)*

Name of the person the ticket is about.

Email (string)

Their email. A contact is created or reused from it. Optional when an integration or an agent files the ticket for itself: give a name only, and no contact is made and nothing is mailed to the requester.

Details (string)*

The body of the request.

Subject (string)

One line summary.

Phone (string)

Their phone number.

Company (string)

Their company.

Topic Id (string)

Topic from the desk topics bank.

Sub Topic Id (string)

Sub topic under that topic.

Reference Id (string)

Your own reference for this ticket.

Priority (number)

1 (highest) to 4.

Attachments (array)

Files to attach to the new ticket, as an array.

Type (string)

Ticket type: issue, bug, feature or task. Leave empty for no type.

Assignee Uid (string)

Account to assign the new ticket to. Only someone on this desk's workspace team: the owner, or an accepted member of the workspace (ticket_api_team lists them). Give this or assignee_email, not both. A refused assignee files no ticket.

Assignee Email (string)

Email of a team member to assign the new ticket to, under the same rule as assignee_uid. Refused with -409 when more than one member of this desk's team has that email: pass assignee_uid then.

API: Get Ticket - Tickets module

External service: one ticket with its public interactions. Internal notes are never returned.

Ticket Id (string)*

Identifier of the ticket.

API: List Tickets - Tickets module

External service: lists tickets on the desk owned by the API key, with the same filters as the manager.

Status (string)

open or closed.

Source (string)

Restrict to one entry point.

Topic Id (string)

Restrict to one topic.

Reference Id (string)

Restrict to one of your references.

Search (string)

Free text over subject, details and ticket number.

Created From (number)

Lower bound on the created timestamp.

Created To (number)

Upper bound on the created timestamp.

Sort (string)

date_created_ts, last_activity_ts, status_ts or priority.

Direction (string)

asc or desc.

Limit (number)

Page size, up to 500.

Bookmark (string)

Page bookmark from the previous call.

Type (string)

Restrict to one ticket type: issue, bug, feature, task, or none for tickets with no type.

Assignee Uid (string)

Restrict to tickets assigned to this account.

API: Reply To Ticket - Tickets module

External service: replies to a ticket as the desk, or as the requester with as_requester. Always public, never an internal note.

Ticket Id (string)*

Identifier of the ticket.

Body (string)*

Text of the reply.

As Requester (boolean)

true posts the reply as the requester's own message rather than the desk's, for an integration or an agent reporting on a ticket it filed. The assignee (or the desk owner) is notified, and it does not count as the desk's first response.

API: Close Ticket - Tickets module

External service: closes a ticket. A customer reply inside the reopen window still brings it back.

Ticket Id (string)*

Identifier of the ticket.

Reason (string)

Why it was closed. Shown to the customer.

API: Assign Ticket - Tickets module

External service: assigns a ticket to a person, by account uid or email. Only someone on this desk's workspace team: the owner, or an accepted member of the workspace (ticket_api_team lists them). Naming the current assignee again changes nothing.

Ticket Id (string)*

Identifier of the ticket.

Assignee Uid (string)

Account to assign the ticket to. Give this or assignee_email, exactly one.

Assignee Email (string)

Email of a team member to assign the ticket to. Refused with -409 when more than one member of this desk's team has that email: pass assignee_uid then.

API: Get Team - Tickets module

External service: the people this desk's tickets can be assigned to, its workspace team (the owner and the accepted members of the workspace), each with uid, name and email, for assignee_uid or assignee_email.

API: Get Topics - Tickets module

External service: the desk topics and sub topics, so a third party UI can render the picker.

Generate Release Notes - AI module

AI-generates concise, user-facing release notes for a build the developer is about to create, by diffing the app's PUBLISHED programs against the previous release's timestamp to see what changed. Read-only (never writes the release). Returns { notes, changed_count, since_build, version }. Credits are metered to the caller.

App Id (string)*

Unique identifier of the application this request targets.

Version (string)

The proposed version string for the new build (e.g. 10.99.0).

Build Type (string)

major | minor | patch - the semantic bump for this build.

Instructions (string)

Optional free-text hint from the developer to steer the generated notes.

Get Studio Docs By Type - App module

Returns studio (or deployed-build) docs for an app filtered by menuType, status, and optional build id.

App Id (string)*

Unique identifier of the application this request targets.

Type (string)

Item type to process, usually file or directory.

Build (number)

Value for the build field.

Status (number)

Status value to apply or filter by.

Verify App Dns Info - App module

Looks up WHOIS data and verifies the SSL certificate for the app's configured custom domain.

App Id (string)*

Unique identifier of the application this request targets.

Get App Tables - App module

Returns the app's studio table docs, excluding pouchdb-backed local tables.

App Id (string)*

Unique identifier of the application this request targets.

Status (array)

An array of numeric status codes to filter records by: 1 = Draft records 2 = Active records with notice 3 = Active records 4 = Archived records

Test Email - Email module

Runs a test for email.

Email (string)*

Destination email address to send the test message to.

App Id (string)

The app whose branding the test email is sent with.

Delete AI Chat - AI module

Deletes AI chat.

Conversation Id (string)*

Unique identifier of the conversation to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Delete Conversation Item - AI module

Deletes conversation item.

Conversation Item Id (string)*

Unique identifier of the conversation item to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Set Agent Tool Consent - AI module

Records whether the caller allows an installed agent to use plugin tools that run in the publisher's workspace, where anything the tools create is stored in the publisher's drive rather than the caller's.

Agent Id (string)*

The AI agent the decision applies to.

Granted (boolean)*

True to allow this agent to use tools that run in its publisher's workspace, false to withdraw.

Owner Uid (string)

The publisher account the tools run under.

Archive AI Chat - AI module

Archives AI chat.

Conversation Id (string)*

Unique identifier of the conversation to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unarchive AI Chat - AI module

Restores archived AI chat.

Conversation Id (string)*

Unique identifier of the conversation to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Rename AI Chat - AI module

Renames an AI chat and records the change on its activity trail.

Conversation Id (string)*

Unique identifier of the conversation to rename.

Title (string)*

The new name for the chat, up to 120 characters.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Rename Mini App - AI module

Renames a mini app.

Prog Id (string)*

Unique identifier of the mini app to rename.

Title (string)*

The new name for the mini app, up to 120 characters.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Delete Mini App - AI module

Deletes mini from application.

Prog Id (string)*

Unique identifier of the program to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Archive Mini App - AI module

Archives mini in application.

Prog Id (string)*

Unique identifier of the program to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Unarchive Mini App - AI module

Restores archived mini in application.

Prog Id (string)*

Unique identifier of the program to process.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Archive AI Agent - AI module

Archives AI agent.

Agent Id (string)*

Unique identifier of the AI agent to process.

Conversation id (string)

Archives only this conversation of the agent. Omitted, all of the agent's conversations are archived with it.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Generate AI Agent Image - AI module

Generates a new picture for one AI agent you own and saves it on the agent, using the same generator that runs when an agent is created. Use it when an agent has no picture and the card is falling back to the placeholder. Runs in the background, the new picture appears on the next load.

Agent ID (string)*

undefined

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Get AI Workspace Pending Counts - AI module

Returns counts of pending workspace requests grouped by type (AI chats, AI agents, apps, contacts, account profiles, user drive) for a main account profile.

Profile id (string)

Counts for this profile instead of the caller's active one.

Workspace id (string)

The workspace to act in, instead of the caller's home workspace. The caller must own it.

Get Site Build Image Modes - Account module

Returns which website-builder image modes (svg, stock, gen_low, gen_high) the account may use. The two AI-generation modes require a paid membership and a workspace credit plan; otherwise they are locked and the UI shows an upgrade prompt.

Get Progs - App module

Lists the studio nodes (programs, tables, components, routes...) of a studio project. Returns summaries by default; pass full=true for complete docs.

App Id (string)*

The studio project's application id.

Menu Type (string)

Filter by node type.

Name Contains (string)

Case-insensitive substring filter on the node name.

Full Docs (boolean)

Return the complete docs instead of summaries.

Include Deleted (boolean)

Also include soft-deleted (stat 4) nodes.

Limit (number)

Max nodes to return (default 500, cap 5000).

Get Prog - App module

Fetches one studio node (full JSON) by its id.

App Id (string)*

The studio project's application id.

Prog Id (string)*

The studio node id (doc _id).

Save Prog - App module

Updates an existing studio node with a full doc (must include _id; _rev is checked for conflicts). Pass the doc as prog_json (a JSON-encoded string). Identity/audit fields (docType, created, createdByUid) are server-owned. Javascript progs are COMPILED on save (like Studio's own save): on success scriptData.dependencies is refreshed, on failure the doc is saved with a build_error and the response carries compile.error.

App Id (string)*

The studio project's application id.

Prog JSON (string)*

The full studio node as a JSON-encoded string, including _id and the _rev you fetched.

Create Prog - App module

Creates a new studio node (program, table, component, folder...) using the same factory Studio itself uses. Returns the created doc.

App Id (string)*

The studio project's application id.

Menu Type (string)*

The node type to create.

Menu Name (string)*

Display name for the new node (1-100 chars).

Parent Id (string)

Optional parent studio node id; defaults to the type's standard tree section.

Properties JSON (string)

Optional extra properties as a JSON-encoded string (e.g. {"renderType":"form"} for components).

Delete Prog - App module

Soft-deletes a studio node (Studio's stat 4 convention). The global node cannot be deleted.

App Id (string)*

The studio project's application id.

Prog Id (string)*

The studio node id (doc _id).

Rev (string)

Optional expected _rev; the delete fails with a conflict if the node changed since.

Get Studio Guide - App module

The xuda Studio authoring guide for AIs. READ THIS FIRST before creating or editing studio progs. Call without a topic for the primer + required workflow + topic index; then read the topic matching what you build (components, tables, programs, javascript, attributes, anatomy, gotchas). Enumerable facts (menu types, xu attributes, workflow actions) are merged from this server's live registries, so the guide always matches the deployed runtime.

Topic (string)

Guide topic to read. Omit for the primer (instructions) which lists all topics. Common topics: instructions, anatomy, components, attributes, tables, programs, javascript, gotchas.

Get Prog Examples - App module

Curated, WORKING example progs from the xuda kitchen-sink project. Call without example_id to list (name, type, tags, one-liner); then fetch one by example_id and pattern your build on it. Examples are sanitized reference docs. Create your own progs with create_prog, never save an example verbatim.

Pattern (string)

Case-insensitive substring matched against example names, tags and descriptions.

Menu Type (string)

Filter by prog type.

Example Id (string)

Fetch this example's full sanitized doc (from the list call).

Limit (number)

Max list entries (default 100, cap 500).

Validate Prog - App module

Validates a studio prog with xuda's own checker (structure, cross-references, workflow actions, expressions) PLUS a landmine scan for AI-typical mistakes (quotes inside xu-script/xu-style, unknown xu attributes, designer-state $-keys, malformed nodes). RUN THIS BEFORE EVERY save_prog and fix all errors; warnings are real problems too. Pass prog_json (candidate doc, pre-save) or prog_id (existing node).

App Id (string)*

The studio project's application id.

Prog JSON (string)

The full candidate doc as a JSON-encoded string (validate BEFORE saving).

Prog Id (string)

Validate an existing studio node instead of a candidate doc.

Resolve Meet Slug - Meet module

Turn a public Xuda Meet link like abc-defg-hij into the room behind it. One lookup on a derived id, so it needs no search index. A link that never existed and a link that was revoked give the same answer on purpose, so the endpoint cannot be used to find out which links used to be real.

Slug (string)*

The meeting link, in the form abc-defg-hij.

Xuda lets you deploy an Express-based Node.js REST API as a managed app on shared infrastructure, with HTTPS routing handled for you. Alongside the API, Xuda runs a built-in Model Context Protocol (MCP) server: an HTTP endpoint that lets AI agents call your registered platform methods as MCP tools, authenticated with an API key. This makes it straightforward to connect existing tools or build AI-driven workflows on top of your deployed services.

Preguntas frecuentes

Xuda App store
Xuda Marketplace
Xuda JavaScript Framework
Xuda On-Prem

Desarrolle.Despliegue.Mantenga la productividad.

Crea apps, sitios web y agentes de IA en una sola plataforma e impleméntalos en infraestructura gestionada.