---
title: "Review a spec_upload"
method: POST
path: "/api/v3/projects/{project_id}/spec_uploads/{id}/review"
tags: ["spec uploads"]
---

# Review a spec_upload

`POST /api/v3/projects/{project_id}/spec_uploads/{id}/review`

## Request

- Base URL: `https://client-api.us.fieldwire.com`
- URL: `https://client-api.us.fieldwire.com/api/v3/projects/{project_id}/spec_uploads/{id}/review`
- Auth: HTTP bearer

## Path parameters

- `project_id` string, uuid, required
- `id` string, uuid, required

## Headers

- `Fieldwire-Version` string, date, required

## Response `201`

Successful response, creates spec_sections

- SpecUpload: The entry point for an uploaded spec book.
  - `id` string, uuid, required: ID of the spec_upload
  - `status` 'processing' | 'reviewed' | 'timeout_error' | 'process_error' | 'under_review' | 'null', nullable, required: Status of the spec_upload
  - `attachment_id` string, uuid, required: ID of the associated attachment on the spec_upload
  - `file_url` string, required: file_url of the associated attachment - this field is delegated
  - `name` string, required: File name of the associated attachment - this field is delegated
  - `jid` string, nullable, required: The job id associated to the splitting of the uploaded PDF (and creation of spec_sections) after spec_upload#review is invoked
  - `default_version_description` string, nullable: The default version description to be used for spec section versions
  - `project_id` string, uuid, required: ID of the project the spec_upload belongs to
  - `creator_user_id` integer, required: ID of the user who created the spec_upload
  - `last_editor_user_id` integer, nullable, required: ID of the last user who edited the spec_upload
  - `created_at` string, date-time, required: Time when the server created the spec_upload
  - `updated_at` string, date-time, required: Time when the server last updated the spec_upload
  - `deleted_at` string, date-time, nullable, required: Time when the server last deleted the spec_upload
  - `device_created_at` string, date-time, nullable, required: Time when the device created the spec_upload
  - `device_updated_at` string, date-time, nullable, required: Time when the device last updated the spec_upload
  - `resolved_conflict` boolean, nullable, required: Specifies if PUT/PATCH request was rejected - do not store this field!

## Other responses

- `422`: Unsuccessful response, returns errors on associated spec_upload_draft_items

---

[API](https://skmtc.dev/fieldwire/apis/fieldwire-regional-api.md) - [All operations](https://skmtc.dev/fieldwire/apis/fieldwire-regional-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fieldwire/apis/fieldwire-regional-api/revisions/34b820438c0b?raw)
