Procore Punch Item Assignments API

The Punch Item Assignments API from Procore — 1 operation(s) for punch item assignments.

Business capability
Construction Quality Management BC-5040.60

Operations 2

GET /rest/v1.0/projects/{project_id}/punch_item_assignments/{id} Show Punch Assignment #
PATCH /rest/v1.0/projects/{project_id}/punch_item_assignments/{id} Update Punch Item Assignment #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/procore:procore-punch-item-assignments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

procore-punch-item-assignments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Procore REST Punch Item Assignments API
  version: v1.0/v2.0
  description: Merged from the per-resource OpenAPI documents Procore publishes through its developer portal (https://developers.procore.com/api/v1/resource_groups). Originals are kept verbatim in openapi/_original/resources/.
  x-source: https://developers.procore.com/api/v1/resource_groups
servers:
- url: https://api.procore.com
  description: Production
security:
- bearerAuth: []
tags:
- name: Punch Item Assignments
paths:
  /rest/v1.0/projects/{project_id}/punch_item_assignments/{id}:
    parameters:
    - name: Procore-Company-Id
      in: header
      description: Unique company identifier associated with the Procore User Account.
      required: true
      schema:
        type: integer
    - name: id
      in: path
      required: true
      description: ID of the Punch Item Assignment
      schema:
        type: integer
    - name: project_id
      in: path
      required: true
      description: Unique identifier for the project.
      schema:
        type: integer
    x-compliance-level: full
    get:
      x-doc:
        visibility: public
        stage: ga
        exposure: public
      summary: Show Punch Assignment
      description: Returns single Punch Item Assignment.
      tags:
      - Punch Item Assignments
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    description: Unique identifier for the Punch Item Assignment.
                    example: 333675
                  approved:
                    type: boolean
                    description: Resolution status
                    example: true
                  status:
                    type: string
                    description: Status of Assignment
                    example: unresolved
                  name:
                    type: string
                    description: Name of the assigned user.
                    example: Extra work
                  comment:
                    type: string
                    description: Comment
                    example: Completed
                  login_information_id:
                    type: integer
                    description: ID of the assigned user's login information.
                    example: 420
                  login_information_name:
                    type: string
                    description: Name of the assigned user.
                    example: Edgar Admin
                  login_information:
                    type: object
                    properties:
                      id:
                        type: integer
                        description: ID
                        example: 160586
                      login:
                        type: string
                        description: Email
                        example: carl.contractor@example.com
                      name:
                        type: string
                        description: Name
                        example: Carl Contractor
                      company_name:
                        type: string
                        description: Company Name
                        example: ABC drywall
                  attachments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: ID
                          example: 5324
                        url:
                          type: string
                          description: URL
                          example: http://www.example.com/
                        filename:
                          type: string
                          description: Filename
                          example: january_receipt_copy.jpg
                        viewable_document_id:
                          type: integer
                          description: Viewable Document ID
                          example: 492
                        attached_to_item_id:
                          type:
                          - integer
                          - 'null'
                          description: Attached to item ID
                          example: 323
                        attached_to_item_type:
                          type:
                          - string
                          - 'null'
                          description: Attached to item type
                          example: Image
                        viewer_url:
                          type:
                          - string
                          - 'null'
                          description: Unified viewer link
                          example: /webclients/host/companies/1/projects/1/tools/document-viewer/document-viewer/51GW47XAV5N64CQ2F8HTWFW0M4?item_type=ProcoreComment&item_id=1&parent_id=1&fullscreen
                  vendor:
                    type:
                    - object
                    - 'null'
                    properties:
                      id:
                        type: integer
                        example: 161072
                      name:
                        type: string
                        example: SID Architecture
                  notified_at:
                    type: string
                    description: Date assignee was notified of Punch Item
                    example: '2018-10-22T23:46:50Z'
                  responded_at:
                    type: string
                    description: Date Assignee responded to the Punch Item
                    example: '2018-10-26T17:51:30Z'
                  manager_accepted_at:
                    type: string
                    description: Date Punch Item Manager resolved the Punch Item Assignment
                    example: '2018-10-26T18:15:26Z'
                  user_name:
                    type: string
                    description: Name of the assigned user.
                    example: Edgar Admin
                  updated_at:
                    type: string
                    description: Date Assignment was updated
                    example: '2018-10-26T18:15:26Z'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
        '403':
          description: User does not have right permissions
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
      x-code-samples:
      - id: node_request
        title: Node.js
        content: "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D',\n  headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
      - id: python_python3
        title: Python3
        content: 'import http.client


          conn = http.client.HTTPSConnection("api.procore.com")


          headers = { ''Authorization'': "Bearer REPLACE_BEARER_TOKEN" }


          conn.request("GET", "/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D", headers=headers)


          res = conn.getresponse()

          data = res.read()


          print(data.decode("utf-8"))'
      - id: shell_curl
        title: Curl
        content: "curl --request GET \\\n  --url https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"
      - id: csharp_httpclient
        title: C#
        content: "var client = new HttpClient();\nvar request = new HttpRequestMessage\n{\n    Method = HttpMethod.Get,\n    RequestUri = new Uri(\"https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D\"),\n    Headers =\n    {\n        { \"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\" },\n    },\n};\nusing (var response = await client.SendAsync(request))\n{\n    response.EnsureSuccessStatusCode();\n    var body = await response.Content.ReadAsStringAsync();\n    Console.WriteLine(body);\n}"
      x-rate-limit-enabled: true
      x-procore-kong-tags:
      - rate-limit:enabled
      x-changelog:
      - summary: Add user_name key to Punch Item Assignment Show response
        description: Add user_name key to Punch Item Assignment Show response.
        endpoint: GET /projects/{project_id}/punch_item_assignments/{id}
        type: new
        breaking: false
        datestamp: '2021-06-24'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: punch-item-assignments?version=1.0#show-punch-assignment
      operationId: showPunchAssignment
    patch:
      x-doc:
        visibility: public
        stage: ga
        exposure: public
      summary: Update Punch Item Assignment
      description: Update single Punch Item Assignment.
      tags:
      - Punch Item Assignments
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - punch_item_assignment
              properties:
                send_emails:
                  type: string
                  description: Parameter to send email to assignees, distribution members and creator of the Punch Item. Parameter must be true and status or comment must have changed for an email to send.
                  example: true
                punch_item_assignment:
                  type: object
                  description: Punch Item Assignment object
                  properties:
                    approved:
                      type: boolean
                      description: Resolution status
                      default: false
                      example: true
                    comment:
                      type: string
                      description: Comment
                      example: This Punch Item task is complete
                    login_information_id:
                      type: integer
                      description: User ID
                      example: 421
                    status:
                      type: string
                      description: Punch Item Assignment Status
                      default: unresolved
                      example: ready_for_review
                      enum:
                      - unresolved
                      - ready_for_review
                      - work_not_accepted
                      - resolved
                    document_management_document_revision_ids:
                      type: array
                      description: Document Management Document Revisions to attach to the response
                      items:
                        type: string
                      example:
                      - 5c9800d3-bd12-45dd-a280-85fe887858b2
                      - da4b5e3b-ddaf-406f-8b2c-dceb6a60a203
                    upload_ids:
                      type: array
                      description: Uploads to attach to the response
                      items:
                        type: string
                      example:
                      - 01JDENGN32Z9AJN1EB8R6NWYGD
                      - 01JDENH8W5GWSF34A5TA5T39CC
          multipart/form-data:
            schema:
              type: object
              required:
              - punch_item_assignment
              properties:
                send_emails:
                  type: string
                  description: Parameter to send email to assignees, distribution members and creator of the Punch Item. Parameter must be true and status or comment must have changed for an email to send.
                  example: true
                punch_item_assignment:
                  type: object
                  description: Punch Item Assignment object
                  properties:
                    approved:
                      type: boolean
                      description: Resolution status
                      default: false
                      example: true
                    comment:
                      type: string
                      description: Comment
                      example: This Punch Item task is complete
                    login_information_id:
                      type: integer
                      description: User ID
                      example: 421
                attachments:
                  type: array
                  description: 'Punch Item Assignment attachments.

                    To upload attachments you must upload the entire payload as `multipart/form-data` content-type and

                    specify each parameter as form-data together with `attachments[]` as files.'
                  example:
                  - <file.png>
                  items:
                    type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    description: Unique identifier for the Punch Item Assignment.
                    example: 333675
                  approved:
                    type: boolean
                    description: Resolution status
                    example: true
                  status:
                    type: string
                    description: Status of Assignment
                    example: unresolved
                  name:
                    type: string
                    description: Name of the assigned user.
                    example: Extra work
                  comment:
                    type: string
                    description: Comment
                    example: Completed
                  login_information_id:
                    type: integer
                    description: ID of the assigned user's login information.
                    example: 420
                  login_information_name:
                    type: string
                    description: Name of the assigned user.
                    example: Edgar Admin
                  login_information:
                    type: object
                    properties:
                      id:
                        type: integer
                        description: ID
                        example: 160586
                      login:
                        type: string
                        description: Email
                        example: carl.contractor@example.com
                      name:
                        type: string
                        description: Name
                        example: Carl Contractor
                      company_name:
                        type: string
                        description: Company Name
                        example: ABC drywall
                  attachments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: ID
                          example: 5324
                        url:
                          type: string
                          description: URL
                          example: http://www.example.com/
                        filename:
                          type: string
                          description: Filename
                          example: january_receipt_copy.jpg
                        viewable_document_id:
                          type: integer
                          description: Viewable Document ID
                          example: 492
                        attached_to_item_id:
                          type:
                          - integer
                          - 'null'
                          description: Attached to item ID
                          example: 323
                        attached_to_item_type:
                          type:
                          - string
                          - 'null'
                          description: Attached to item type
                          example: Image
                        viewer_url:
                          type:
                          - string
                          - 'null'
                          description: Unified viewer link
                          example: /webclients/host/companies/1/projects/1/tools/document-viewer/document-viewer/51GW47XAV5N64CQ2F8HTWFW0M4?item_type=ProcoreComment&item_id=1&parent_id=1&fullscreen
                  vendor:
                    type:
                    - object
                    - 'null'
                    properties:
                      id:
                        type: integer
                        example: 161072
                      name:
                        type: string
                        example: SID Architecture
                  notified_at:
                    type: string
                    description: Date assignee was notified of Punch Item
                    example: '2018-10-22T23:46:50Z'
                  responded_at:
                    type: string
                    description: Date Assignee responded to the Punch Item
                    example: '2018-10-26T17:51:30Z'
                  manager_accepted_at:
                    type: string
                    description: Date Punch Item Manager resolved the Punch Item Assignment
                    example: '2018-10-26T18:15:26Z'
                  user_name:
                    type: string
                    description: Name of the assigned user.
                    example: Edgar Admin
                  updated_at:
                    type: string
                    description: Date Assignment was updated
                    example: '2018-10-26T18:15:26Z'
        '400':
          description: Can not update due to errors
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
        '403':
          description: User does not have right permissions
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
      x-code-samples:
      - id: node_request
        mimeType: application/json
        title: Node.js
        content: "const request = require('request');\n\nconst options = {\n  method: 'PATCH',\n  url: 'https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D',\n  headers: {\n    Authorization: 'Bearer REPLACE_BEARER_TOKEN',\n    'content-type': 'application/json'\n  },\n  body: {\n    send_emails: true,\n    punch_item_assignment: {\n      approved: true,\n      comment: 'This Punch Item task is complete',\n      login_information_id: 421,\n      status: 'ready_for_review',\n      document_management_document_revision_ids: ['5c9800d3-bd12-45dd-a280-85fe887858b2', 'da4b5e3b-ddaf-406f-8b2c-dceb6a60a203'],\n      upload_ids: ['01JDENGN32Z9AJN1EB8R6NWYGD', '01JDENH8W5GWSF34A5TA5T39CC']\n    }\n  },\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
      - id: python_python3
        mimeType: application/json
        title: Python3
        content: "import http.client\n\nconn = http.client.HTTPSConnection(\"api.procore.com\")\n\npayload = \"{\\\"send_emails\\\":true,\\\"punch_item_assignment\\\":{\\\"approved\\\":true,\\\"comment\\\":\\\"This Punch Item task is complete\\\",\\\"login_information_id\\\":421,\\\"status\\\":\\\"ready_for_review\\\",\\\"document_management_document_revision_ids\\\":[\\\"5c9800d3-bd12-45dd-a280-85fe887858b2\\\",\\\"da4b5e3b-ddaf-406f-8b2c-dceb6a60a203\\\"],\\\"upload_ids\\\":[\\\"01JDENGN32Z9AJN1EB8R6NWYGD\\\",\\\"01JDENH8W5GWSF34A5TA5T39CC\\\"]}}\"\n\nheaders = {\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\",\n    'content-type': \"application/json\"\n    }\n\nconn.request(\"PATCH\", \"/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"
      - id: shell_curl
        mimeType: application/json
        title: Curl
        content: "curl --request PATCH \\\n  --url https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"send_emails\":true,\"punch_item_assignment\":{\"approved\":true,\"comment\":\"This Punch Item task is complete\",\"login_information_id\":421,\"status\":\"ready_for_review\",\"document_management_document_revision_ids\":[\"5c9800d3-bd12-45dd-a280-85fe887858b2\",\"da4b5e3b-ddaf-406f-8b2c-dceb6a60a203\"],\"upload_ids\":[\"01JDENGN32Z9AJN1EB8R6NWYGD\",\"01JDENH8W5GWSF34A5TA5T39CC\"]}}'"
      - id: csharp_httpclient
        mimeType: application/json
        title: C#
        content: "var client = new HttpClient();\nvar request = new HttpRequestMessage\n{\n    Method = HttpMethod.Patch,\n    RequestUri = new Uri(\"https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D\"),\n    Headers =\n    {\n        { \"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\" },\n    },\n    Content = new StringContent(\"{\\\"send_emails\\\":true,\\\"punch_item_assignment\\\":{\\\"approved\\\":true,\\\"comment\\\":\\\"This Punch Item task is complete\\\",\\\"login_information_id\\\":421,\\\"status\\\":\\\"ready_for_review\\\",\\\"document_management_document_revision_ids\\\":[\\\"5c9800d3-bd12-45dd-a280-85fe887858b2\\\",\\\"da4b5e3b-ddaf-406f-8b2c-dceb6a60a203\\\"],\\\"upload_ids\\\":[\\\"01JDENGN32Z9AJN1EB8R6NWYGD\\\",\\\"01JDENH8W5GWSF34A5TA5T39CC\\\"]}}\")\n    {\n        Headers =\n        {\n            ContentType = new MediaTypeHeaderValue(\"application/json\")\n        }\n    }\n};\nusing (var response = await client.SendAsync(request))\n{\n    response.EnsureSuccessStatusCode();\n    var body = await response.Content.ReadAsStringAsync();\n    Console.WriteLine(body);\n}"
      - id: node_request
        mimeType: multipart/form-data
        title: Node.js
        content: "const request = require('request');\n\nconst options = {\n  method: 'PATCH',\n  url: 'https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D',\n  headers: {\n    Authorization: 'Bearer REPLACE_BEARER_TOKEN',\n    'content-type': 'multipart/form-data; boundary=---011000010111000001101001'\n  },\n  formData: {\n    send_emails: 'true',\n    punch_item_assignment: '{\"approved\":true,\"comment\":\"This Punch Item task is complete\",\"login_information_id\":421}',\n    attachments: '[\"<file.png>\"]'\n  }\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
      - id: python_python3
        mimeType: multipart/form-data
        title: Python3
        content: "import http.client\n\nconn = http.client.HTTPSConnection(\"api.procore.com\")\n\npayload = \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"send_emails\\\"\\r\\n\\r\\ntrue\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"punch_item_assignment\\\"\\r\\n\\r\\n{\\\"approved\\\":true,\\\"comment\\\":\\\"This Punch Item task is complete\\\",\\\"login_information_id\\\":421}\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"attachments\\\"\\r\\n\\r\\n[\\\"<file.png>\\\"]\\r\\n-----011000010111000001101001--\\r\\n\"\n\nheaders = {\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\",\n    'content-type': \"multipart/form-data; boundary=---011000010111000001101001\"\n    }\n\nconn.request(\"PATCH\", \"/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"
      - id: shell_curl
        mimeType: multipart/form-data
        title: Curl
        content: "curl --request PATCH \\\n  --url https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: multipart/form-data' \\\n  --form send_emails=true \\\n  --form 'punch_item_assignment={\"approved\":true,\"comment\":\"This Punch Item task is complete\",\"login_information_id\":421}' \\\n  --form 'attachments=[\"<file.png>\"]'"
      - id: csharp_httpclient
        mimeType: multipart/form-data
        title: C#
        content: "var client = new HttpClient();\nvar request = new HttpRequestMessage\n{\n    Method = HttpMethod.Patch,\n    RequestUri = new Uri(\"https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/punch_item_assignments/%7Bid%7D\"),\n    Headers =\n    {\n        { \"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\" },\n    },\n    Content = new MultipartFormDataContent\n    {\n        new StringContent(\"true\")\n        {\n            Headers =\n            {\n                ContentDisposition = new ContentDispositionHeaderValue(\"form-data\")\n                {\n                    Name = \"send_emails\",\n                }\n            }\n        },\n        new StringContent(\"{\\\"approved\\\":true,\\\"comment\\\":\\\"This Punch Item task is complete\\\",\\\"login_information_id\\\":421}\")\n        {\n            Headers =\n            {\n                ContentDisposition = new ContentDispositionHeaderValue(\"form-data\")\n                {\n                    Name = \"punch_item_assignment\",\n                }\n            }\n        },\n        new StringContent(\"[\\\"<file.png>\\\"]\")\n        {\n            Headers =\n            {\n                ContentDisposition = new ContentDispositionHeaderValue(\"form-data\")\n                {\n                    Name = \"attachments\",\n                }\n            }\n        },\n    },\n};\nusing (var response = await client.SendAsync(request))\n{\n    response.EnsureSuccessStatusCode();\n    var body = await response.Content.ReadAsStringAsync();\n    Console.WriteLine(body);\n}"
      x-rate-limit-enabled: true
      x-procore-kong-tags:
      - rate-limit:enabled
      x-changelog:
      - summary: Add user_name key to Punch Item Assignment Update response
        description: Add user_name key to Punch Item Assignment Update response.
        endpoint: PATCH /projects/{project_id}/punch_item_assignments/{id}
        type: new
        breaking: false
        datestamp: '2021-06-24'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: punch-item-assignments?version=1.0#update-punch-item-assignment
      - summary: Punch Item Assignment Update now also accepts Upload IDs
        description: This endpoint now accepts `upload_ids` as part of the payload.
        endpoint: PATCH /projects/{project_id}/punch_item_assignments/{id}
        type: feature
        breaking: false
        datestamp: '2024-12-01'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: punch-item-assignments?version=1.0#update-punch-item-assignment
      - summary: Accept document_management_document_revision_ids parameter when updating Punch Item Assignment response
        description: 'Accept an array of PDM document references as a parameter when updating Punch Item Assignment response.

          The new parameter is also returned on the response.'
        endpoint: PATCH /projects/{project_id}/punch_item_assignments/{id}
        type: new
        breaking: false
        datestamp: '2026-02-12'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: punch-item-assignments?version=1.0#update-punch-item-assignment
      operationId: updatePunchItemAssignment
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer