---
title: "Assign a document to a checklist item.
The document must already exist on this listing (..."
method: POST
path: "/api/files/listings/{listingGuid}/checklist-items/{checklistItemId}"
tags: ["Listings"]
---

# Assign a document to a checklist item.
The document must already exist on this listing (...

`POST /api/files/listings/{listingGuid}/checklist-items/{checklistItemId}`

Assign a document to a checklist item.
The document must already exist on this listing (upload via POST /api/files/listings/{listingGuid}/documents).
The checklistItemId must be the ActivityId from the checklist array returned by GET /api/files/listings/{listingGuid}.
Fetch the listing, identify the target checklist activityId, then call this endpoint with the document GUID.

### Validation & Requirements
#### Required Parameters
- `listingGuid` (path, string, format=guid)
- `checklistItemId` (path, integer, format=int32)
- `form` (body, object)

#### Required JSON Body Fields
- `documentGuid` (format=guid, minLength=1)

#### Validations
- Invalid GUID values in `*Guid`/`*Guids` fields return `422 Unprocessable Entity`.
- Invalid date values in `*date*` fields return `422 Unprocessable Entity`.
- Missing required request body returns `422 Unprocessable Entity` with `Missing request body.`.
- Additional business-rule validation may return `422` with details in the `errors` array.

#### Integration Requirement
- Retrieve the corresponding `...Form` endpoint immediately before write operations to get current dynamic required fields and allowed values.

## Path parameters

- `listingGuid` string, guid, required
- `checklistItemId` integer, required

## Request body

- AddDocumentToListingChecklistItemForm
  - `documentGuid` string, guid, required — Existing document guid.

## Response `200`

- LinkedResponseOfAddDocumentToListingChecklistItemResponse
  - `value` AddDocumentToListingChecklistItemResponse
    - `listingGuid` string, guid
  - `warnings` string[], nullable
  - `links` Link[], nullable
    - `href` string, nullable
    - `rel` string, nullable
    - `method` string, nullable

## Other responses

- `404`
- `422`

---

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