---
title: "Return all forms in the organization paginated"
method: GET
path: "/v1/org/{orgId}/form"
tags: ["form"]
---

# Return all forms in the organization paginated

`GET /v1/org/{orgId}/form`

## Path parameters

- `orgId` string, required

## Query parameters

- `status` 'ACTIVE' | 'INACTIVE' | 'ARCHIVED'
- `from` string
- `limit` integer
- `returnAccess` string

## Response `200`

successful operation

- ResultsForm
  - `data` Form[], required
    - `id` string, required — globally unique id
    - `orgId` string, required — parent organization id
    - `label` string, required — human-readable full name of form
    - `displayName` string — display name of form during completion
    - `displayNameTr` Translations
      - `values` object, required
    - `description` string — description of form
    - `blocks` FormBlock[] — ordered list of blocks being collected in this form
      - `id` string — unique id for the block
      - `fieldName` string — field code name
      - `type` 'QUESTION' | 'CONTENT', required — Type of Form Block
      - `content` string — Content of Content Block
      - `contentTr` Translations
        - `values` object, required
      - `required` boolean — whether field is required or not
      - `questionId` string — question id, for questions
      - `filter` string — Filter to apply on visibility of this block
    - `status` 'ACTIVE' | 'INACTIVE' | 'ARCHIVED', required — status of the form
    - `type` 'BUILT_IN' | 'CUSTOM' — type of the form
    - `targetType` 'NONE' | 'PERSON' — target type that the form can be filled out about
    - `targetFilter` string — filter that controls on which profiles this tab will appear
    - `submitFilter` string — filter that controls which respondents can submit this form. The form:submit permission, if present, overrides this filter
    - `responseReadFilter` string — filter that controls who can read the form responses. The formResponse:read permission, if present, overrides this filter
    - `approval` 'MANAGER' | 'GRAND_MANAGER' — approval needed, if any approval is required
    - `release` 'SUBMITTER' | 'ADMIN' — whether a release step is involved (subsequent to approval if any)
    - `releaseMessageChannel` MessageChannelConfig
      - `channels` string[], required
      - `alwaysEmail` boolean, required
    - `share` 'SUBMITTER' | 'ADMIN' — whether sharing form responses is allowed
    - `shareMessageChannel` MessageChannelConfig
      - `channels` string[], required
      - `alwaysEmail` boolean, required
    - `autoShare` AutoShare[] — list of automatic sharing to be done after submission
      - `access` 'NONE' | 'LIMITED_READ' | 'LIMITED_WRITE' | 'STANDARD_READ' | 'STANDARD_WRITE' | 'COMPENSATION_READ' | 'FULL_READ' | 'COMP_PLANNING_PARTICIPANT' | 'COMPENSATION_WRITE' | 'WRITE' | 'COMPENSATION_OWNER' | 'OWNER', required
      - `shareWith` string, required
    - `autoShareMessageChannel` MessageChannelConfig
      - `channels` string[], required
      - `alwaysEmail` boolean, required
    - `submitterEdit` FormEditAccess
      - `allow` 'ALWAYS' | 'WHILE_PROPOSED' | 'UNTIL_ACTIVE' | 'WHILE_ASSESSMENT_ACTIVE' | 'TIME_LIMIT'
      - `timeLimitSecs` integer
    - `approverEdit` FormEditAccess
      - `allow` 'ALWAYS' | 'WHILE_PROPOSED' | 'UNTIL_ACTIVE' | 'WHILE_ASSESSMENT_ACTIVE' | 'TIME_LIMIT'
      - `timeLimitSecs` integer
    - `signature` FormSignatureConfig
      - `signers` string[], required
      - `messageChannel` MessageChannelConfig
        - `channels` string[], required
        - `alwaysEmail` boolean, required
      - `message` string
      - `dueDate` DueDate
        - `type` 'EXACT' | 'RELATIVE', required
        - `dueDay` string, required — due day, in either relative (-7d) or exact (YYYY-MM-DD) format
        - `dueTime` string, required — due time, which is a LocalTime
      - `isSkippable` boolean
      - `fieldId` string
    - `authorSensitive` 'ANONYMOUS' | 'PRIVATE' | 'HIGH' | 'MANAGER' — view sensitivity for the author of this form - the level of view access required to view the createId and updateId fields. If null, the author's identity is always visible as long as the viewer can read the form response. If set to PRIVATE, the author's identity is stored in ChartHop, but protected such that even users with sensitive access cannot access the data. If set to ANONYMOUS, the author's identity is not stored in ChartHop at all.
    - `options` FormOptions, required
      - `notifySubmitter` boolean
      - `notifySubmitterManager` boolean
      - `notifySelf` boolean
      - `notifyManager` boolean
      - `notifyUserIds` string[]
      - `fillValues` boolean
      - `enableDraft` boolean
      - `peersField` string
      - `enableExport` boolean
      - `timeToEdit` string
      - `endDate` string
    - `completeMode` 'MODAL' | 'FULLSCREEN' — appearance of the form during completion
    - `ai` FormAiConfig
      - `enableRead` boolean, required
      - `enableWrite` boolean, required
      - `agentUserId` string
      - `instructions` string
      - `label` string
      - `agentSubmit` 'CHAT' | 'AUTO' — whether AI agents are allowed to submit this form: null/absent (never), CHAT (only when in an interactive chat with a human), AUTO (also when running autonomously). Defaults to never.
    - `createId` string — created by user id
    - `createBehalfId` string — created on behalf of user id
    - `createAttribution` Attribution
      - `principalUserId` string
      - `agentUserIds` string[]
      - `eventId` string
      - `aiChatId` string
      - `aiToolUseId` string
      - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'
    - `createAt` string — created timestamp
    - `updateId` string — last updated by user id
    - `updateBehalfId` string — last updated on behalf of user id
    - `updateAttribution` Attribution
      - `principalUserId` string
      - `agentUserIds` string[]
      - `eventId` string
      - `aiChatId` string
      - `aiToolUseId` string
      - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'
    - `updateAt` string — last updated timestamp
    - `deleteId` string — deleted by user id
    - `deleteBehalfId` string — deleted on behalf of user id
    - `deleteAttribution` Attribution
      - `principalUserId` string
      - `agentUserIds` string[]
      - `eventId` string
      - `aiChatId` string
      - `aiToolUseId` string
      - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'
    - `deleteAt` string — deleted timestamp
  - `next` string
  - `access` ResultsAccess[]
    - `ids` string[]
    - `allowed` AccessAction[], required
      - `action` string, required
      - `fields` string[]
      - `types` string[]

## Other responses

- `400` — bad request
- `401` — not authorized
- `404` — not found

---

[API](https://skmtc.net/charthop/apis/charthop-api.md) · [All operations](https://skmtc.net/charthop/apis/charthop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/charthop/charthop-api/versions/50a1edd6b27e/schema)
