> ## Documentation Index
> Fetch the complete documentation index at: https://help.fieldpulse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update subtask by ID

> Update a subtask

```jsonc Body raw (json) wrap expandable theme={null}
{
  "title": "some string",// optional | string | max:1000
  "status": 1,// optional | integer | acceptable_values: 1,2,3,4,5
  "due_date": 1234567890,// optional | timestamp
  "customer_id": 1,// optional | integer | existing customer id
  "job_id": 1,// optional | integer | existing job id
  "project_id": 1,// optional | integer | existing project id
  "recurring_job_id": 1,// optional | integer | existing recurring job id
  "description": "some string",// optional | string | max:5000
  "is_template": false,// optional | boolean
  "is_required_for_job": false,// optional | boolean
  "assignments": [// optional | array
    {
      "team_id": 1,// required | integer | existing team id
      "user_id": 1// required | integer | existing user id
    },
    {
      "team_id": 1,// required | integer | existing team id
      "user_id": 2// required | integer | existing user id
    }
  ]
}
```


## OpenAPI

````yaml put /subtasks/{id}
openapi: 3.0.0
info:
  title: FieldPulse API
  description: >-
    REST API for the FieldPulse field service management platform.


    **Authentication:** All requests require an `x-api-key` header. Contact
    support@fieldpulse.com to obtain your API key.


    **Important:** The API Playground below makes live requests against your
    production data. Use caution when testing write operations (POST, PUT,
    DELETE).
  version: 1.0.0
servers:
  - url: https://ywe3crmpll.execute-api.us-east-2.amazonaws.com/stage
    description: Production
security:
  - apiKeyAuth: []
tags:
  - name: Assets
    description: Endpoints related to assets
  - name: Assets Category
    description: Endpoints related to assets category
  - name: Comments
    description: Endpoints related to comments
  - name: Company Profile
    description: Endpoints related to contracts
  - name: Contracts
    description: Endpoints related to contracts
  - name: Customers
    description: Endpoints related to customers
  - name: Custom Fields
    description: Endpoints related to custom fields
  - name: Estimates
    description: Endpoints related to estimates
  - name: Invoices
  - name: Items
  - name: Jobs
  - name: Lead Source
  - name: Locations
  - name: Material Lists
  - name: Payments
  - name: Pipeline Status
  - name: Projects
  - name: Purchase Orders
  - name: Subtasks
  - name: Tags
  - name: Teams
  - name: Timesheets
  - name: Users
  - name: Vendors
  - name: Version
paths:
  /subtasks/{id}:
    put:
      tags:
        - Subtasks
      summary: Update subtask by ID
      description: Update a subtask
      operationId: putSubtasksById
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  maxLength: 1000
                status:
                  type: integer
                  enum:
                    - 1
                    - 2
                    - 3
                    - 4
                    - 5
                due_date:
                  type: integer
                  description: Unix timestamp.
                customer_id:
                  type: integer
                  description: Existing customer id.
                job_id:
                  type: integer
                  description: Existing job id.
                project_id:
                  type: integer
                  description: Existing project id.
                recurring_job_id:
                  type: integer
                  description: Existing recurring job id.
                description:
                  type: string
                  maxLength: 5000
                is_template:
                  type: boolean
                is_required_for_job:
                  type: boolean
                assignments:
                  type: array
                  items:
                    type: object
                    properties:
                      team_id:
                        type: integer
                        description: Existing team id.
                      user_id:
                        type: integer
                        description: Existing user id.
                    required:
                      - team_id
                      - user_id
            example:
              title: some string
              status: 1
              due_date: 1234567890
              customer_id: 1
              job_id: 1
              project_id: 1
              recurring_job_id: 1
              description: some string
              is_template: false
              is_required_for_job: false
              assignments:
                - team_id: 1
                  user_id: 1
                - team_id: 1
                  user_id: 2
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: boolean
                    description: false when the request succeeds.
                    example: false
                  response:
                    type: object
                    description: The updated record.
        '400':
          description: Bad Request
          content:
            application/json:
              example:
                error: true
                errors:
                  - error message
                  - error message
        '401':
          description: Unauthorized
          content:
            application/json:
              example:
                message: Unauthorized
        '404':
          description: Not Found
          content:
            application/json:
              example:
                message: Request URL or object not found
        '500':
          description: Internal Server Error
          content:
            application/json:
              example:
                message: Internal Server Error
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````

## Related topics

- [How to Use Subtasks](/jobs/jobs-tasks/subtasks.md)
- [FieldPulse API Overview](/integrations/developer-api/fieldpulse-api-overview.md)
- [User Roles and Permissions Details](/settings/users-teams/user-roles.md)
- [Setting Up Caller ID](/add-ons/engage/caller-id.md)
- [Internal Activity Overview](/settings/app-preferences/internal-activity.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.