Skip to content

Create a project

Request

Creates a project based on the request.

projectType defaults to documentProcessing. extractionModelId may be omitted or null to select the default processing mode for the project type; see the Project types section above for the rules that apply to preProcessing and execution projects.

generateWordRegionsOnReview defaults to false; see the Word regions for review section above.

Only the google and internal OCR engines can be used when creating a project.

Security
OAuth2(Required scopes: projects.write)
Bodyapplication/jsonrequired

Project data

namestring, [ 1 .. 60 ] characters(ProjectName)required

Project name

Example:"My Project"
notestring, [ 1 .. 1000 ] characters(ProjectNote)

Project note

Example:"My project description note"
projectTypestring(ProjectType)

Project processing type. Set on creation and immutable afterwards.

  • documentProcessing - classic extraction project backed by an extraction model
  • preProcessing - pre-processing project backed by the company's Cases processing mode
  • execution - execution project backed by the company's Cases processing mode
Default:"documentProcessing"
Enum:"documentProcessing""preProcessing""execution"
Example:"documentProcessing"
ocrany(ProjectOCRRequest)required
extractionModelIdstring or null

Processing mode used by the project.

Omit or send null to select the default processing mode for projectType. For preProcessing and execution an explicit value must match the company's automatically selected Cases processing mode; the Cases processing mode cannot be assigned to documentProcessing projects. Malformed or mismatched IDs return 422 for preProcessing/execution; invalid or unknown document-processing model IDs, or a missing company default, return 400.

Example:"63e6663823b4c1f5287398bb"
completionstring(ProjectCompletion)required

ProjectCompletion type

  • automatic - Mark documents as completed after succesfull validation
  • manual - Mark documents to review after succesfull validation
Default:"manual"
Enum:"automatic""manual"
Example:"manual"
duplicatesstring(ProjectDuplicates)required

How duplicates documents show be handle

  • allow - Allow documents duplicates to be processed
  • fail - Mark documents duplicates as failed
Default:"fail"
Enum:"allow""fail"
Example:"allow"
membersanyrequired
schemaobject(Schema)required
retentionDaysinteger, [ 1 .. 3650 ](ProjectRetentionDays)

Project document retention in days

Default:180
Example:180
isLiveboolean(ProjectIsLive)

Indicates if a project is live or not

Default:false
generateWordRegionsOnReviewboolean(ProjectGenerateWordRegionsOnReview)

Generate word bounding boxes for documents that require human review.

When enabled, documents that stop for review (extracted or reviewRequired) get an additional OCR pass that produces word regions, unless the project's OCR engine already provided them. Useful for the internal OCR engine, which does not place words.

Default:false
Example:true
curl -i -X POST \
  https://api.cloud.hypatos.ai/v2/projects \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "My Project",
    "note": "My project description note",
    "projectType": "documentProcessing",
    "ocr": {
      "engine": "google",
      "features": [
        "barcodes"
      ]
    },
    "extractionModelId": "63e6663823b4c1f5287398bb",
    "completion": "manual",
    "duplicates": "allow",
    "members": {
      "allow": "all"
    },
    "schema": {
      "version": 1,
      "dataPoints": [
        {
          "internalName": "type",
          "displayName": "Type",
          "type": "string",
          "source": {
            "type": "extractor"
          },
          "normalization": [],
          "rules": {}
        },
        {
          "internalName": "number",
          "displayName": "Number",
          "type": "string",
          "source": {
            "type": "extractor"
          },
          "normalization": [],
          "rules": {}
        },
        {
          "internalName": "issuedAt",
          "displayName": "Issued At",
          "type": "date",
          "preferDayOfMonth": "last",
          "source": {
            "type": "extractor"
          },
          "normalization": [],
          "rules": {}
        },
        {
          "internalName": "deliveredAt",
          "displayName": "Delivered At",
          "type": "date",
          "preferDayOfMonth": "last",
          "source": {
            "type": "extractor"
          },
          "normalization": [],
          "rules": {}
        },
        {
          "internalName": "currency",
          "displayName": "Currency",
          "type": "string",
          "source": {
            "type": "extractor"
          },
          "normalization": [],
          "rules": {}
        }
      ],
      "features": {
        "derivation": false
      },
      "enrichment": {},
      "normalization": {},
      "validation": {}
    },
    "retentionDays": 180,
    "isLive": false,
    "generateWordRegionsOnReview": true
  }'

Responses

Project created

Bodyapplication/json
idstring(ProjectId)required

Project ID

Example:"63e6663823b4c1f5287398bb"
projectTypestring(ProjectType)required

Project processing type. Set on creation and immutable afterwards.

  • documentProcessing - classic extraction project backed by an extraction model
  • preProcessing - pre-processing project backed by the company's Cases processing mode
  • execution - execution project backed by the company's Cases processing mode
Default:"documentProcessing"
Enum:"documentProcessing""preProcessing""execution"
Example:"documentProcessing"
createdAtstring, (date-time)required
Example:"1990-12-31T15:46:19.384990Z"
createdBystring(ProjectMemberId)required

Project member id

Example:"63e6663823b4c1f5287398bb"
updatedAtstring, (date-time)required
Example:"1990-12-31T15:46:19.384990Z"
updatedBystring(ProjectMemberId)required

Project member id

Example:"63e6663823b4c1f5287398bb"
namestring, [ 1 .. 60 ] characters(ProjectName)required

Project name

Example:"My Project"
notestring, [ 1 .. 1000 ] characters(ProjectNote)

Project note

Example:"My project description note"
extractionModelIdstring(ProjectExtractionModelId)required

Extraction Model id

Example:"63e6663823b4c1f5287398bb"
ocrany(ProjectOCRResponse)required
completionstring(ProjectCompletion)required

ProjectCompletion type

  • automatic - Mark documents as completed after succesfull validation
  • manual - Mark documents to review after succesfull validation
Default:"manual"
Enum:"automatic""manual"
Example:"manual"
duplicatesstring(ProjectDuplicates)required

How duplicates documents show be handle

  • allow - Allow documents duplicates to be processed
  • fail - Mark documents duplicates as failed
Default:"fail"
Enum:"allow""fail"
Example:"allow"
membersanyrequired
retentionDaysinteger, [ 1 .. 3650 ](ProjectRetentionDays)

Project document retention in days

Example:180
isLiveboolean(ProjectIsLive)required

Indicates if a project is live or not

Default:false
generateWordRegionsOnReviewboolean(ProjectGenerateWordRegionsOnReview)required

Generate word bounding boxes for documents that require human review.

When enabled, documents that stop for review (extracted or reviewRequired) get an additional OCR pass that produces word regions, unless the project's OCR engine already provided them. Useful for the internal OCR engine, which does not place words.

Default:false
Example:true
Response
{ "id": "63e6663823b4c1f5287398bb", "projectType": "documentProcessing", "createdAt": "1990-12-31T15:46:19.384990Z", "createdBy": "63e6663823b4c1f5287398bb", "updatedAt": "1990-12-31T15:46:19.384990Z", "updatedBy": "63e6663823b4c1f5287398bb", "name": "My Project", "note": "My project description note", "extractionModelId": "63e6663823b4c1f5287398bb", "ocr": { "engine": "abbyy", "features": [ … ], "languages": [ … ] }, "completion": "manual", "duplicates": "allow", "members": { "allow": "all" }, "retentionDays": 180, "isLive": false, "generateWordRegionsOnReview": true }