Open-source design and prototyping platform for collaborative design workflows
Open-source design and prototyping platform for collaborative design workflows On Nagent, Penpot is exposed as a fully-configurable images & design integration that any agent can call — 90 actions, and API key authentication. No code is required to wire Penpot into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Penpot to automate the kinds of tasks images & design teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Penpot into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Penpot, with input parameters and output schema. Drop these into any step of an agent built in Helix.
PENPOT_CREATE_ACCESS_TOKENTool to create a personal access token for API authentication in Penpot. Use when you need to generate a new token for authenticating API requests. The token will only be shown once during creation, so it should be stored securely.
Input parameters
Descriptive name for the access token to help identify its purpose. Must be between 1 and 250 characters.
Optional expiration duration for the token in ISO 8601 duration format (e.g., 'P30D' for 30 days, 'P90D' for 90 days). If not provided, the token may not expire or use the default expiration policy.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_COMMENT_THREADTool to create a new comment thread on a Penpot file at a specific position. Use when you need to add collaborative feedback or discussion points on design elements within a Penpot project.
Input parameters
UUID of the file where the comment thread will be created
UUID of the page where the comment thread will be created
Content text of the comment thread
UUID of the frame where the comment thread will be placed. Use '00000000-0000-0000-0000-000000000000' for the root frame
Optional UUID for shared file context
Optional list of user UUIDs to mention in the comment thread
Position coordinates for the comment thread in the format 'x,y' (e.g., '100,200', '-50.5,100.3')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_FILETool to create a new design file in a Penpot project. Use when you need to create a new file for design work within a specific project.
Input parameters
Optional UUID to assign to the new file. If not provided, Penpot will generate one automatically.
Name of the file to create. Maximum 250 characters.
Set of feature flags to enable for this file.
Whether the file should be shared. Default is false.
UUID of the project where the file will be created. Must be a valid UUID format.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_PROJECTTool to create a new project within a team in Penpot. Use when you need to organize design files into a new project space.
Input parameters
Optional UUID for the project. If not provided, one will be generated automatically
Name of the project to create
UUID of the team where the project will be created
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_TEAMTool to create a new team in Penpot. Use when you need to set up a new team for organizing projects and collaborating with team members.
Input parameters
UUID formatted string for the team ID (if not provided, one will be generated automatically)
Name of the team to create (maximum 250 characters)
Set of feature flags or permissions to enable for the team
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_TEAM_ACCESS_REQUESTTool to request an invitation to join a Penpot team. Use when a user needs to request access to a team for collaboration.
Input parameters
The UUID of the file associated with the access request.
The UUID of the team to request access to.
Flag indicating if the user is requesting viewer access (true) or editor access (false).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_CREATE_WEBHOOKCreate a webhook for a team to receive event notifications. Use when you need to register a new webhook endpoint that will be notified of events happening in a Penpot team.
Input parameters
Webhook URI endpoint that will receive event notifications
MIME type for webhook payload format
UUID of the team to create the webhook for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_ACCESS_TOKENTool to delete a personal access token from Penpot. Use when you need to revoke or remove an existing access token by its UUID.
Input parameters
UUID of the access token to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_COMMENTTool to delete a comment from a Penpot design file. Use when you need to permanently remove a specific comment from a design discussion.
Input parameters
UUID of the comment to delete
UUID of the share link if accessing via shared link
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_FILE_SNAPSHOTTool to delete a file snapshot in Penpot. Use when you need to remove a previously created snapshot from a file.
Input parameters
UUID of the file snapshot to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_PROJECTTool to delete a project from Penpot. Use when you need to permanently remove a project and all its contents.
Input parameters
UUID formatted string identifying the project to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_TEAMTool to delete a team from Penpot. Use when you need to permanently remove a team. This operation is irreversible.
Input parameters
The team identifier (UUID) to be removed
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_TEAM_FILES_PERMANENTLYTool to permanently delete specified files from a Penpot team. Use when you need to immediately and irreversibly remove files from a team. The team ID is used to filter files and verify write permissions.
Input parameters
List of file UUIDs to be permanently deleted from the specified team
The team identifier (UUID) to check writable permissions and filter files for deletion
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_TEAM_INVITATIONTool to delete a pending team invitation in Penpot. Use when you need to cancel an invitation that hasn't been accepted yet.
Input parameters
Email address of the pending invitation to delete
The team identifier (UUID) for which to delete the invitation
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_TEAM_MEMBERTool to remove a member from a team in Penpot. Use when you need to revoke a user's access to a team.
Input parameters
UUID formatted string identifying the team
UUID formatted string identifying the member to remove from the team
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DELETE_WEBHOOKTool to delete a webhook by its UUID. Use when you need to remove a webhook from Penpot.
Input parameters
UUID formatted string identifying the webhook to delete.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DUPLICATE_FILETool to duplicate a single file within the same team in Penpot. Use when you need to create a copy of an existing design file.
Input parameters
Name for the duplicated file. If not provided, a default name will be generated (e.g., 'Copy of Original File')
UUID of the file to duplicate
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_DUPLICATE_PROJECTTool to duplicate an entire Penpot project with all its files. Use when you need to create a copy of an existing project.
Input parameters
Custom name for the duplicated project. If not provided, a default name will be assigned. Maximum 250 characters.
UUID of the project to duplicate.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_ACCESS_TOKENSTool to list all personal access tokens for the authenticated user. Use when you need to view, audit, or manage existing access tokens.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_ALL_PROJECTSTool to retrieve all projects across all teams in Penpot. Use when you need a complete list of projects regardless of team membership.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_BUILTIN_TEMPLATESTool to get the list of builtin templates available in Penpot. Use when you need to see which templates are available for creating new projects.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_COMMENTSTool to retrieve all comments in a comment thread. Use when you need to fetch all comments from a specific thread.
Input parameters
UUID of the comment thread to retrieve comments from
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_COMMENT_THREADTool to retrieve a specific comment thread from a Penpot file. Use when you need to fetch details about a comment thread including its comments, participants, and metadata.
Input parameters
UUID of the comment thread to retrieve
UUID of the file containing the comment thread
Optional UUID for shared file access
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_COMMENT_THREADSTool to retrieve all comment threads for a Penpot file. Use when you need to fetch comments and discussions associated with a specific file.
Input parameters
The UUID of the file to retrieve comment threads for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILETool to retrieve a Penpot file by its ID. Returns file details including metadata, structure, and permissions. Use when you need to access file information or check file properties.
Input parameters
UUID of the file to retrieve
Set of feature flags to enable for this request
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILE_INFOTool to retrieve basic information about a Penpot file by its ID. Use when you need to get file metadata such as name, project, creation date, modification date, version, and sharing status.
Input parameters
UUID of the file to retrieve information for
Set of feature flags to include in the response. Optional list of strings specifying which features to enable or query.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILE_LIBRARIESTool to retrieve libraries linked to a Penpot file. Use when you need to get all library references associated with a specific file by its UUID.
Input parameters
UUID of the file to get libraries for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILE_OBJECT_THUMBNAILSTool to retrieve thumbnails for objects in a Penpot file. Use when you need to get thumbnail URLs for file objects.
Input parameters
Optional tag to filter thumbnails (max 50 characters)
The file identifier (UUID) to retrieve object thumbnails for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILE_SNAPSHOTSRetrieves all snapshots for a specific Penpot file. Use this action to list all saved versions (snapshots) of a file, which allows viewing version history and understanding how the file has evolved over time. Snapshots capture the state of a file at specific points in time.
Input parameters
UUID of the Penpot file to retrieve snapshots for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FILE_SUMMARYTool to retrieve a summary of file contents and statistics from Penpot. Use when you need high-level information about a file including page count, components, graphics, and other metadata without fetching the entire file content.
Input parameters
UUID formatted string identifying the file
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_FONT_VARIANTSTool to retrieve font variants for a team, file, project, or share in Penpot. Use when you need to get a list of available font variants. Provide at least one of team_id, file_id, project_id, or share_id to scope the query.
Input parameters
UUID of the file to get font variants for
UUID of the team to get font variants for
UUID of the share to get font variants for
UUID of the project to get font variants for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_LIBRARY_FILE_REFERENCESTool to get files that reference a shared library. Use when you need to find which files are using a specific library file in Penpot.
Input parameters
UUID of the library file to get references for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_LIBRARY_USAGETool to get usage statistics for a library. Returns the number of files that use the specified library. Use when you need to understand how widely a library is being used across projects.
Input parameters
UUID of the library file to check usage for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_OWNED_TEAMSTool to list teams owned by the current user. Use when you need to retrieve teams that the authenticated user owns in Penpot.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_PAGETool to retrieve page data from a Penpot file. Use when you need to get page content including objects and metadata for rendering or export purposes. If no page ID is specified, returns the first page. Can filter to a specific object and its children by providing an object ID.
Input parameters
UUID of the file to get the page from
UUID of the specific page to retrieve. If not specified, returns the first page of the file.
UUID of a specific object to retrieve. When specified, only that object and its children are returned. Requires pageId to be specified.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_PROFILES_FOR_FILE_COMMENTSTool to retrieve profiles of users who have commented on a Penpot file. Use when you need to get information about comment participants for collaboration or user management purposes.
Input parameters
UUID of the file to get comment participant profiles for
Optional UUID for shared file access context
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_PROJECTTool to retrieve detailed information about a specific Penpot project by its ID. Use when you need to get project details such as name, team ownership, and timestamps.
Input parameters
UUID of the project to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_PROJECT_FILESTool to retrieve all files in a Penpot project. Use when you need to list all files for a specific project by its UUID.
Input parameters
UUID of the project to get files for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_SSO_PROVIDERTool to retrieve SSO provider information for an email address. Use when you need to determine which SSO provider is configured for a specific email domain.
Input parameters
Email address to look up SSO provider configuration. Must be a valid email format.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_SUBSCRIPTION_USAGETool to get subscription usage information for the current user. Returns details about seats and storage usage. Use when you need to check subscription limits or current usage statistics.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAMTool to retrieve team details by ID. Use when you need to fetch information about a specific team in Penpot.
Input parameters
UUID of the team to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_DELETED_FILESTool to retrieve deleted files from a team's trash in Penpot. Use when you need to view files that have been deleted from a specific team and are in the trash.
Input parameters
UUID of the team to retrieve deleted files from
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_INFOTool to retrieve detailed information about a specific Penpot team by its ID. Use when you need to get team details such as name, creation date, and permissions.
Input parameters
UUID of the team to retrieve information for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_INVITATIONSTool to list pending invitations for a team in Penpot. Use when you need to retrieve all pending team invitations that haven't been accepted yet.
Input parameters
UUID formatted string identifying the team to get invitations for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_MEMBERSTool to list all members of a team in Penpot. Use when you need to retrieve team membership information and member details.
Input parameters
UUID formatted string identifying the team to get members for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAMSTool to list all teams the authenticated user is a member of. Use when you need to retrieve teams where the user has membership in Penpot.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_SHARED_FILESTool to retrieve shared library files for a Penpot team. Use when you need to list all shared library files for a specific team by its UUID.
Input parameters
UUID of the team to get shared files for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_STATSTool to retrieve statistics for a specific Penpot team by its ID. Use when you need to get team metrics such as project count, file count, and member count.
Input parameters
UUID of the team to retrieve statistics for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_TEAM_USERSTool to retrieve users in a team by team ID or file ID. Use when you need to list team members associated with a specific team or file.
Input parameters
UUID formatted string identifying the file to get team users for. Either teamId or fileId must be provided.
UUID formatted string identifying the team to get users for. Either teamId or fileId must be provided.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_UNREAD_COMMENT_THREADSTool to retrieve comment threads with unread comments for a specific team. Use when you need to check for new comments or discussions requiring attention.
Input parameters
UUID of the team to retrieve unread comment threads for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_VIEW_ONLY_BUNDLETool to retrieve data bundle for view-only file access in Penpot. Use when you need to access read-only file data through a share link or for preview purposes.
Input parameters
UUID of the file to retrieve the view-only bundle for
Set of feature flags to enable for this request. Optional list of strings.
UUID of the share link associated with the view-only access. Optional.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_GET_WEBHOOKSTool to retrieve all webhooks configured for a team. Use when you need to list existing webhook endpoints registered for a Penpot team.
Input parameters
UUID formatted string identifying the team to get webhooks for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_HAS_FILE_LIBRARIESTool to check if a Penpot file has linked libraries. Use when you need to determine whether a specific file references any external libraries.
Input parameters
UUID of the file to check for linked libraries
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_IGNORE_FILE_LIBRARY_SYNC_STATUSTool to ignore library sync status updates for a file. Use when you need to mark library updates as ignored for a specific file, preventing sync notifications from appearing.
Input parameters
ISO 8601 formatted timestamp indicating when to ignore library sync updates from. Must be in format YYYY-MM-DDTHH:MM:SSZ.
UUID of the file to ignore library sync status for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_LINK_FILE_TO_LIBRARYTool to link a file to a library in Penpot. Returns the recursive list of libraries used by that library. Use when you need to establish a library reference relationship between a file and a library.
Input parameters
UUID of the file to link to the library
UUID of the library to link the file to
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_LOCK_FILE_SNAPSHOTTool to lock a file snapshot in Penpot to prevent deletion. Use when you need to protect a snapshot from being removed.
Input parameters
UUID of the file snapshot to lock
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_LOGOUTTool to clear the authentication cookie and logout the current session. Use when the authenticated user wants to end their Penpot session and invalidate their authentication.
Input parameters
UUID of the profile to logout. If not provided, logs out the current authenticated session.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_MARK_ALL_THREADS_AS_READTool to mark all comment threads as read in Penpot. Use when you need to clear unread status for comment threads.
Input parameters
List of comment thread UUIDs to mark as read. Can be an empty list to mark all threads as read.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_MOVE_FILESTool to move files from one project to another in Penpot. Use when you need to reorganize files by transferring them between projects.
Input parameters
List of file UUIDs to move. Must contain at least one file ID.
UUID of the destination project where files will be moved.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_MOVE_PROJECTTool to move a project to a different team in Penpot. Use when you need to transfer a project from one team to another.
Input parameters
UUID of the destination team where the project will be moved
UUID of the project to move
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_PREPARE_REGISTER_PROFILETool to prepare user registration by validating email and sending verification in Penpot. Use when you need to initiate the registration process for a new user. This endpoint validates the provided information and typically sends a verification email to complete the registration.
Input parameters
Email address for the new user account. Must be a valid email format.
Full name of the user to register. Must be a non-whitespace string.
Password for the new user account. Should meet security requirements.
Optional invitation token for team access. Include this if registering with a team invitation.
Optional flag to automatically create a welcome file for the new user. If not specified, uses system default.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_PUSH_AUDIT_EVENTSTool to push audit events to Penpot for tracking system behavior and user actions. Use when you need to log important events like user actions, file changes, or team modifications for auditing purposes.
Input parameters
Array of audit events to push (must contain at least one event)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_REGISTER_PROFILETool to complete user registration with profile details using a verification token. Use when you have a registration token from the prepare-register-profile endpoint and need to finalize the user account creation.
Input parameters
Registration token received from the prepare-register-profile endpoint, typically sent via email verification. This JWT token contains the encrypted registration data.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_RENAME_FILETool to rename a design file in Penpot. Use when you need to change the name of an existing file.
Input parameters
UUID of the file to rename
New name for the file (1-250 characters)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_RENAME_PROJECTTool to rename an existing project in Penpot. Use when you need to update a project's name.
Input parameters
UUID of the project to rename
New name for the project
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_REQUEST_PROFILE_RECOVERYTool to request a password/profile recovery email. Use when a user has forgotten their password and needs to initiate the account recovery process. An email with a recovery token will be sent to the specified address.
Input parameters
Email address of the user account to recover. A recovery email will be sent to this address with a token to reset the password.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_RESTORE_DELETED_TEAM_FILESTool to restore deleted files in a Penpot team. Use when you need to remove the deletion mark from files and projects that are in the team's trash.
Input parameters
List of file UUIDs to restore from deletion. Each file will have its deletion mark removed along with its respective project.
UUID of the team containing the deleted files to restore
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_RESTORE_FILE_SNAPSHOTTool to restore a Penpot file to a previous snapshot. Use when you need to revert a file to a previously saved version from its history.
Input parameters
UUID of the snapshot to restore to
UUID of the Penpot file to restore
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_SEARCH_FILESTool to search for files by name or content in a Penpot team. Use when you need to find specific files within a team using a search term.
Input parameters
UUID of the team to search files in
Search term to filter files by name or content. If not provided, returns all files in the team.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_SEND_USER_FEEDBACKTool to send user feedback to Penpot. Use when you need to submit feedback, bug reports, feature requests, or error reports to the Penpot team.
Input parameters
Type or category of the feedback
Detailed content of the feedback message (maximum 2500 characters)
Subject line for the feedback (maximum 500 characters)
URL or link associated with an error, if the feedback is related to a specific page or error (maximum 2500 characters)
Detailed error report or stack trace if the feedback is related to an error
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_SET_FILE_SHAREDTool to set file sharing status in Penpot (enable/disable shared library). Use when you need to make a file available as a shared library or revoke its shared status.
Input parameters
UUID of the file to update the sharing status for
Whether the file should be shared as a library. Set to true to enable sharing, false to disable.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UNLINK_FILE_FROM_LIBRARYTool to unlink a file from a shared library in Penpot. Use when you need to remove the library reference relationship between a file and a library.
Input parameters
UUID of the file to unlink from the library
UUID of the library to unlink the file from
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UNLOCK_FILE_SNAPSHOTTool to unlock a locked file snapshot in Penpot. Use when you need to unlock a previously locked snapshot.
Input parameters
UUID of the file snapshot to unlock
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_COMMENTTool to update the content of an existing comment in a Penpot design file. Use when you need to modify comment text or update mentioned users in a design discussion.
Input parameters
UUID of the comment to update
New content text for the comment
Optional UUID of the share link if accessing via shared link
Optional list of user UUIDs to mention in the updated comment
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_COMMENT_THREADTool to update the resolution status of a comment thread in Penpot. Use when you need to mark a comment thread as resolved or unresolved to track discussion progress.
Input parameters
UUID of the comment thread to update
Optional UUID for shared file context
Whether the comment thread should be marked as resolved
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_COMMENT_THREAD_FRAMETool to update the frame associated with a comment thread in Penpot. Use when you need to move a comment thread to a different frame or reposition it within the design hierarchy.
Input parameters
UUID of the comment thread to update
UUID of the frame to associate with the comment thread. Use '00000000-0000-0000-0000-000000000000' for the root frame
Optional UUID for shared file context
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_COMMENT_THREAD_POSITIONTool to update the position of a comment thread in Penpot. Use when you need to move or reposition an existing comment thread to a different location on the design canvas.
Input parameters
UUID of the comment thread to update
UUID of the frame containing the comment thread. Use '00000000-0000-0000-0000-000000000000' for the root frame
Optional UUID for shared file context
New position coordinates for the comment thread in the format 'x,y' (e.g., '150,250', '-50.5,100.3')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_COMMENT_THREAD_STATUSTool to update the status of a comment thread in Penpot (e.g., toggle resolved/unresolved). Use when you need to mark a comment thread as resolved or reopen a resolved thread.
Input parameters
UUID of the comment thread to update status for
UUID of the share link if accessing via shared link
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_FILETool to update a Penpot file with changes. Use when you need to apply modifications to a file such as adding/modifying/deleting objects, pages, colors, components, or other design elements. Requires file ID, session ID, revision number, and version number for optimistic locking.
Input parameters
UUID of the file to update. Must be a valid UUID format.
Revision number of the file. Used for optimistic locking to prevent conflicts.
Version number of the file. Used for tracking file version history.
Array of change objects to apply to the file. Each change object must have a 'type' field and additional fields based on the change type (e.g., AddObjChange, ModObjChange, DelObjChange, AddPageChange, etc.).
Set of feature flags to enable for this update operation.
UUID of the session. Must be a valid UUID format.
Whether to skip validation of changes. Use with caution as invalid changes may corrupt the file.
Array of change groups with metadata including hint events and origin information.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_FILE_LIBRARY_SYNC_STATUSTool to update the synchronization status of a file->library link. Use when you need to refresh or update the sync status between a file and its linked library.
Input parameters
UUID of the file to update library sync status for
UUID of the library to update sync status with
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_FILE_SNAPSHOTTool to update a file snapshot metadata in Penpot. Use when you need to modify the label of an existing snapshot.
Input parameters
UUID of the file snapshot to update
Updated label for the snapshot (must be a non-whitespace string)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_FONTTool to update a font's metadata in Penpot. Use when you need to modify the name or other properties of an existing font in a team.
Input parameters
UUID of the font to update
Updated name for the font (1-250 characters)
UUID of the team that owns the font
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_PROFILETool to update the current authenticated user's profile information. Use when you need to change the user's full name, language preference, or theme settings.
Input parameters
Language preference code (maximum 8 characters, e.g., 'en', 'es', 'fr')
Theme preference for the user interface (maximum 250 characters)
Full name of the user
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_PROFILE_NOTIFICATIONSTool to update notification settings for the authenticated user's profile. Use when you need to configure how the user receives notifications about comments and invitations.
Input parameters
Notification setting for email invites. Controls whether the user receives email notifications about team or project invitations.
Notification setting for email comments. Controls whether the user receives email notifications about comments.
Notification setting for dashboard comments. Controls whether the user receives notifications about comments on the dashboard.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_PROFILE_PROPSTool to update custom properties for the authenticated user's profile. Use when you need to modify user preferences such as onboarding status, notification settings, newsletter subscriptions, or plugin configurations.
Input parameters
Custom properties to update for the user profile
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_PROJECT_PINTool to update the pin status of a project in Penpot. Use when you need to pin or unpin a project for quick access.
Input parameters
UUID of the project to update
UUID of the team that owns the project
Whether the project should be pinned (true) or unpinned (false)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_TEAMTool to update team settings in Penpot. Use when you need to modify team name or other team properties.
Input parameters
UUID of the team to update
Updated name for the team (maximum 250 characters)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_TEAM_INVITATION_ROLETool to update the role of a pending team invitation in Penpot. Use when you need to change the role of an invitation that hasn't been accepted yet.
Input parameters
New role to assign to the pending invitation
Email address of the pending invitation to update
The team identifier (UUID) for which to update the invitation role
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_UPDATE_WEBHOOKTool to update an existing webhook configuration. Use when you need to modify the URI, MIME type, or active status of a webhook.
Input parameters
UUID of the webhook to update
Webhook URI endpoint that will receive event notifications
MIME type for webhook payload format
Whether the webhook should be active or inactive
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PENPOT_VERIFY_TOKENTool to verify an authentication or registration token in Penpot. Use when you need to validate a token received from registration, email verification, or other authentication flows.
Input parameters
Authentication or registration token to verify. This can be a verification token from registration, email change, or other authentication flows. Maximum length of 5000 characters.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 54 agents privately built on Nagent that already use Penpot.
Build on Nagent
Connect Penpot to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Penpot, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Penpot is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Penpot is connected, you configure its 90 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Penpot steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Penpot event fires, the agent kicks off automatically.
Every Penpot action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Penpot ships with 90 pre-built images & design actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Penpot together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Penpot-based workflows tailored to your business.