Ocriva Logo

Documents

Projects Guide

Create and manage projects, assign team members, and organize document processing workflows.

projectsmanagementmembersroles

Published: 4/4/2026

Projects Guide

What is a Project?

A Project is the primary unit of work inside an organization. Every template, document upload, and processing result belongs to exactly one project. Projects let you segment activity by use case, team, or client — giving you clean separation without needing multiple organizations.

Organization (Your Company)
├── Billing & Credits (shared across all projects)
├── Team Members (org-wide)

├── Project: Invoice Processing
│   ├── Templates (extraction configurations)
│   ├── Uploads & Processing History
│   ├── Project Members (subset of org members)
│   └── Project Settings

├── Project: Receipt Scanning
│   ├── Templates
│   ├── Uploads & Processing History
│   ├── Project Members
│   └── Project Settings

└── Project: Contract Analysis
    ├── Templates
    ├── Uploads & Processing History
    ├── Project Members
    └── Project Settings

Key isolation guarantees:

  • Templates created in one project are not visible in another project.
  • Processing history is scoped to the project where the document was uploaded.
  • Project members are managed independently — an org member must be explicitly added to each project they need access to.
  • Credits are billed at the organization level and shared across all projects. There is no per-project credit budget by default.

NOTE

You must be a member of an organization before you can create or access a project. See Organization & Teams for how to set up your organization and invite org-level members.


Creating a Project

  1. Navigate to Organization → Projects.
  2. Click Create Project.
  3. Fill in the required fields:
    • Name — a clear, descriptive name for the project (e.g., "Invoice Processing — APAC").
    • Description — optional, but recommended. Describes the project's purpose for other team members.
  4. Optionally expand Advanced Settings to configure project-level controls (see Project Settings below).
  5. Click Create — the project is created and you are automatically assigned the Owner role within it.

TIP

You are not automatically added to a project just because you are an org admin or org owner. After creating a project, you are its owner. Other org members must be explicitly invited to each project they need access to.


Project Settings

Navigate to Project → Settings to update project details and configure access controls.

General

FieldDescription
NameDisplay name for the project
DescriptionInternal description — shown to project members

Access Controls

These settings control what project members are allowed to do by default:

SettingDefaultDescription
Allow members to create templatesEnabledMembers can create new extraction templates within the project
Allow members to upload documentsEnabledMembers can upload documents for processing
Allow members to view all documentsDisabledWhen disabled, members only see documents they uploaded themselves
Max documents per month100Monthly document processing cap for this project
Max templates per project10Maximum number of templates allowed in the project
File retention daysInherited from orgNumber of days uploaded files are retained before automatic deletion

WARNING

Disabling Allow members to upload documents prevents all non-owner members from submitting new documents for processing. Only the project owner and org-level admins retain upload access. Apply this setting carefully if your project is actively used.


Project Members

Project membership is separate from organization membership. An organization member must be explicitly added to each project before they can access it.

Project Roles

Every project member is assigned one of four roles:

RoleDescription
OwnerFull control over the project, including settings, members, and deletion
AdminCan manage project members and settings; cannot delete the project
MemberCan create templates, upload documents, and view their own processing history
ViewerRead-only access — can view processing results but cannot upload or modify anything

NOTE

A project member's role applies only within that project. A person can be an Admin in one project and a Viewer in another, regardless of their org-level role.

Member Status

StatusMeaning
activeMember has accepted the invitation and has full access per their role
pendingInvitation has been sent but the member has not yet accepted
suspendedAccess is temporarily disabled; membership is preserved

Adding a Member

Only users who are already members of the organization can be added to a project.

  1. Go to Project → Members.
  2. Click Add Member.
  3. Search for the org member by name or email using the search field.
  4. Select the user from the results.
  5. Choose a Role: Owner, Admin, Member, or Viewer.
  6. Optionally add an Invitation message to give context about the project.
  7. Click Add — the member is added with active status immediately.

TIP

Use the Viewer role for clients, auditors, or executives who need to review processing output without being able to modify templates or upload new documents.

Updating a Member's Role

  1. Go to Project → Members.
  2. Locate the member in the list.
  3. Click the role dropdown next to their name.
  4. Select the new role and confirm.

Role changes take effect immediately.

Removing a Member

  1. Go to Project → Members.
  2. Locate the member in the list.
  3. Click Remove next to their name and confirm the action.

WARNING

Removing a member immediately revokes their access to the project. Their previously uploaded documents and any templates they created are retained — only their access is removed. This action cannot be undone without re-adding them.


Project Statistics

Navigate to Project → Overview or call GET /projects/:id/stats to retrieve a summary of project activity. Statistics available include:

StatDescription
Total documents processedCumulative count of all documents submitted for OCR/AI processing
Documents this monthProcessing count for the current calendar month
Total templatesNumber of extraction templates in the project
Active membersCount of members with active status
Credits consumedTotal credits spent by this project (drawn from the org credit pool)
Average processing timeMean time from upload to result delivery

NOTE

Statistics are computed in real time and reflect the current state of the project. There is no historical stats snapshot — use Project Analytics for time-series data.


Project Analytics

Navigate to Project → Analytics or call GET /projects/:id/analytics to view time-series usage data for the project. Analytics help you understand processing trends, identify peak usage periods, and plan capacity.

Typical analytics dimensions include:

  • Documents processed over time — daily or weekly volume of processing jobs
  • Success vs. failure rate — proportion of jobs that completed successfully versus those that errored
  • Credits consumed over time — credit burn rate to help forecast billing
  • Processing time trends — whether average turnaround is improving or degrading
  • Template usage breakdown — which templates are used most frequently

TIP

Use analytics to detect anomalies early — a sudden spike in failures often indicates a change in the input document format that requires a template update.


Project-Scoped API Tokens

API tokens can be scoped to a specific project, restricting access to only the data and operations within that project. This is the recommended approach for integrating external systems or automation pipelines with a single project.

How project-scoped tokens differ from org-level tokens:

AspectOrg-Level TokenProject-Scoped Token
ScopeAccess to all projects in the orgAccess to one specific project only
Use caseAdmin tools, org-wide reportingDedicated integration per project
Risk exposureHigher — compromise affects entire orgLower — limited blast radius
Template accessAll templates across orgOnly templates in the assigned project
Upload accessAny projectOnly the assigned project

To create a project-scoped token:

  1. Navigate to Organization → API Tokens.
  2. Click Create Token.
  3. Give the token a descriptive name (e.g., "Invoice Processor — Production").
  4. Set the Scope to Project and select the target project.
  5. Set an optional expiry date.
  6. Click Create and copy the token immediately — it will not be shown again.

WARNING

Treat API tokens like passwords. Store them in your secrets manager (e.g., Doppler, AWS Secrets Manager, GitHub Secrets) and never commit them to source code. If a token is compromised, revoke it immediately from Organization → API Tokens.


Webhook Dashboard per Project

Each project has its own webhook delivery dashboard, giving you visibility into outbound webhook activity scoped to that project's events.

Navigate to Project → Webhooks or call GET /projects/:id/webhook-dashboard to view:

MetricDescription
Total deliveriesTotal webhook events fired for this project
Successful deliveriesEvents that received a 2xx response from the target endpoint
Failed deliveriesEvents that timed out or received a non-2xx response
Success ratePercentage of successful deliveries over all attempts
Recent eventsLog of recent webhook payloads and their delivery status

NOTE

Webhook endpoints are configured at the organization level. The project webhook dashboard shows delivery statistics filtered to events originating from this project. See the Webhooks documentation for how to configure endpoints and event types.

TIP

If you see a high failure rate in the webhook dashboard, check that your endpoint URL is publicly reachable and returns a 2xx response within the timeout window. Ocriva retries failed deliveries with exponential backoff.


Best Practices

Naming Projects

  • Use a consistent naming convention across your organization, such as {Team} — {Document Type} (e.g., "Finance — Invoices", "Operations — Delivery Notes").
  • Avoid generic names like "Project 1" or "Test" — they become confusing as the number of projects grows.
  • Include the environment in the name when you run separate projects for staging and production (e.g., "Invoice Processing — Production" vs. "Invoice Processing — Staging").

Managing Project Members

  • Apply the principle of least privilege — assign Viewer to anyone who only needs to read results, Member to those who process documents, and Admin only to those who need to manage the project.
  • Audit project membership periodically, especially after team changes. Remove members who no longer need access.
  • Avoid assigning the Owner role to more than two or three people per project. Too many owners dilutes accountability.
  • Use project-scoped API tokens for automated integrations rather than sharing personal credentials or org-level tokens.

Organizing Templates

  • Group related document types into the same project so that templates and processing history stay together.
  • Create separate projects for distinct document workflows (invoices vs. contracts vs. receipts) rather than mixing them in one project with many templates.
  • Use the maxTemplatesPerProject setting to enforce a discipline around template hygiene — unused templates should be archived or deleted.

File Retention

  • Set fileRetentionDays on projects that handle sensitive documents to ensure uploaded files are automatically purged after a defined period.
  • Projects with no retention setting inherit the organization default. Review Organization → Settings to confirm the org-level default meets your compliance requirements.

TIP

If you are running a proof-of-concept or testing integration, create a dedicated staging project with a short file retention window (e.g., 7 days) to keep test data from accumulating.