---
title: "Query easy form responses"
method: GET
path: "/users/{user_id}/easy_form_responses"
tags: ["EasyFormResponse"]
---

# Query easy form responses

`GET /users/{user_id}/easy_form_responses`

## Request

- Base URL: `https://r38.coupadev.com/api`
- URL: `https://r38.coupadev.com/api/users/{user_id}/easy_form_responses`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://r38.coupadev.com/oauth2/authorizations/new`
    - Token URL: `https://r38.coupadev.com/oauth2/token`
  - OAuth 2
    - Client credentials
    - Token URL: `https://r38.coupadev.com/oauth2/access_tokens`
- TypeScript: <https://skmtc.dev/coupa/apis/coupa-api-4/docs/users/:user_id/easy_form_responses/get.ts> (a function with typed inputs; its response is checked against the schema)

Query easy form responses

## Path parameters

- `user_id` integer, required

## Query parameters

- `limit` integer
- `offset` integer
- `order_by` string
- `dir` 'asc' | 'desc'
- `return_object` 'limited' | 'shallow' | 'none'
- `filter` string

## Response `200`

EasyFormResponse objects

- EasyFormResponse[]
  - `approvals` Approval[]
    - `approvable-id` integer: The document ID that was approved
    - `approvable-type` string, string(255): The document type that was approved (requisition, purchase order, etc)
    - `approval-chain-id` integer: ID of the approval chain this approval is located in
    - `approval-date` string, datetime: The date the approval occurred
    - `approved-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `approver` unknown
    - `approver-id` integer: The user ID that made the approval
    - `approver-type` string, string(255): The role of the approver
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `created-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `delegate` unknown
    - `delegate-id` string, string: The delegate ID that made the approval (if applicable)
    - `delegates` Approval[]
    - `holdable` boolean: Hold the approval or not
    - `id` integer: Coupa unique identifier
    - `note` string, text: Reason for approval or reject
    - `parallel-group-name` string, string(255): Parallel Approval group identifier
    - `position` integer: The position in the approval chain this approval occurred
    - `reasons` ApprovalReason[]
    - `status` string, string(50): The status of the approval (approved, escalated, rejected, etc)
    - `type` string, string(255): How the approval occured (override approval, approval chain approval, etc)
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `updated-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `created-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `current-approval` Approval
    - `approvable-id` integer: The document ID that was approved
    - `approvable-type` string, string(255): The document type that was approved (requisition, purchase order, etc)
    - `approval-chain-id` integer: ID of the approval chain this approval is located in
    - `approval-date` string, datetime: The date the approval occurred
    - `approved-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `approver` unknown
    - `approver-id` integer: The user ID that made the approval
    - `approver-type` string, string(255): The role of the approver
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `created-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `delegate` unknown
    - `delegate-id` string, string: The delegate ID that made the approval (if applicable)
    - `delegates` Approval[]
    - `holdable` boolean: Hold the approval or not
    - `id` integer: Coupa unique identifier
    - `note` string, text: Reason for approval or reject
    - `parallel-group-name` string, string(255): Parallel Approval group identifier
    - `position` integer: The position in the approval chain this approval occurred
    - `reasons` ApprovalReason[]
    - `status` string, string(50): The status of the approval (approved, escalated, rejected, etc)
    - `type` string, string(255): How the approval occured (override approval, approval chain approval, etc)
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `updated-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `current-parallel-approvals` Approval[]
    - `approvable-id` integer: The document ID that was approved
    - `approvable-type` string, string(255): The document type that was approved (requisition, purchase order, etc)
    - `approval-chain-id` integer: ID of the approval chain this approval is located in
    - `approval-date` string, datetime: The date the approval occurred
    - `approved-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `approver` unknown
    - `approver-id` integer: The user ID that made the approval
    - `approver-type` string, string(255): The role of the approver
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `created-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `delegate` unknown
    - `delegate-id` string, string: The delegate ID that made the approval (if applicable)
    - `delegates` Approval[]
    - `holdable` boolean: Hold the approval or not
    - `id` integer: Coupa unique identifier
    - `note` string, text: Reason for approval or reject
    - `parallel-group-name` string, string(255): Parallel Approval group identifier
    - `position` integer: The position in the approval chain this approval occurred
    - `reasons` ApprovalReason[]
    - `status` string, string(50): The status of the approval (approved, escalated, rejected, etc)
    - `type` string, string(255): How the approval occured (override approval, approval chain approval, etc)
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `updated-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `easy-form-id` integer, required: Easy form ID associated with this easy form response
  - `easy-form-widget-responses` EasyFormWidgetResponse[]
    - `answer` string: Answer
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `created-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `easy-form-id` integer: Easy form ID associated with this easy form response
    - `easy-form-response-id` integer: Easy form response ID associated with this widget
    - `easy-form-widget-id` integer: Easy form widget ID associated with this widget response
    - `encrypted-answer` string: The answer for widget response
    - `field-name` string: Field name
    - `id` integer: Coupa unique identifier
    - `type` string, string(255): Type of widget response
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `updated-by` UserSimple
      - `avatar-thumb-url` string, string: Avatar url
      - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
      - `email` string, string(255), required: email
      - `employee-number` string, string(255): employee number
      - `firstname` string, string(40), required: first name
      - `fullname` string, string(255): full name
      - `id` integer: Coupa unique identifier
      - `lastname` string, string(40), required: last name
      - `login` string, string(255), required: login
      - `salesforce-id` string, string(255), required: salesforce_id
      - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `widget-label` string: User name for widget
    - `widget-type` string: Type of widget
  - `id` integer: Coupa unique identifier
  - `name` string, string(255): Name of the easy form response
  - `requested-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `status` string, string(255): Status of the easy form response
  - `subject` unknown
  - `submitted-at` string, datetime: The date/time the response was submitted in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
  - `updated-by` UserSimple
    - `avatar-thumb-url` string, string: Avatar url
    - `created-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ
    - `email` string, string(255), required: email
    - `employee-number` string, string(255): employee number
    - `firstname` string, string(40), required: first name
    - `fullname` string, string(255): full name
    - `id` integer: Coupa unique identifier
    - `lastname` string, string(40), required: last name
    - `login` string, string(255), required: login
    - `salesforce-id` string, string(255), required: salesforce_id
    - `updated-at` string, datetime: Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ

## Other responses

- `400`: Bad Request
- `404`: Not Found

---

[API](https://skmtc.dev/coupa/apis/coupa-api-4.md) - [All operations](https://skmtc.dev/coupa/apis/coupa-api-4/llms.txt) - [OpenAPI document](https://skmtc.dev/coupa/apis/coupa-api-4/revisions/adc09cabd758?raw)
