Get Form
Retrieve details of a specific form by ID.
Response Structure
The response includes complete form details with all nested data:Form Fields
- id: Form UUID
- created_at: Form creation timestamp
- status: Current form status (draft, pending, completed, declined, processed)
- archived: Boolean indicating if archived
- archived_at: Timestamp when archived (if applicable)
- processed_at: Timestamp when marked as processed (if applicable)
- active_from: When the form becomes active (if set)
- active_until: When the form expires (if set)
- links.fill: Public form link for the contact
- links.app: Internal app link to view the form
- user: Contact information (email, name, phone, anonymous flag)
- owner: Form owner information (id, email) if applicable
- flow: Form template info with slug
- data: Pre-filled form data object
- external_args: Your custom metadata object
- options: Form-specific options
- responses: Array of response objects with attachments and signatures
- notifications: Array of notification objects
Notification Fields
Each notification object contains:- id: Unique identifier for the notification (UUID)
- status: Current status of the notification (
pending,sent,failed,skipped) - method: Delivery method (
smsoremail) - at: Timestamp when the notification was sent (ISO 8601 format)
- to: Recipient address (email address or phone number), can be null
- from: Sender address (email or system identifier), can be null
- cc: Carbon copy recipient(s), can be null
- bcc: Blind carbon copy recipient(s), can be null
- system: Boolean indicating if this is a system notification
- locale: Language/locale code (e.g., ‘fr’, ‘en’)
- template: Template name used for the notification (e.g., ‘raw’, ‘request_completed’)
- variables: Object containing template variables used in the message, can be null
- active: Boolean indicating if the notification is active
- error: Error message if notification failed, can be null
- message_id: External message identifier from the delivery provider, can be null
- attachments: Attached files, can be null
- deleted_at: Timestamp when the notification was deleted, can be null
Response Codes
| Code | Description |
|---|---|
200 | Success - Form details retrieved |
401 | Unauthorized - Invalid access token |
403 | Forbidden - No access to this resource |
404 | Not Found - Form doesn’t exist |
429 | Too Many Requests - Rate limit exceeded |
500 | Server Error - Internal error |
Authorizations
API token (starts with pnbx_). Create at https://app.penbox.io/workspace/settings/api. Include as: Authorization: Bearer {token}
Path Parameters
Form UUID
Response
Successful response
Form UUID
Creation timestamp
Current form status
draft, pending, completed, declined, processed Whether the form is archived
Timestamp when archived
Timestamp when marked as processed
When the form becomes active
When the form expires
URLs for accessing the form
Contact information
Form owner information
Form template information
Pre-filled form data
Custom metadata
Form-specific options
Array of form responses
Array of notifications sent for this form
Webhook URLs with event subscriptions