Kantata Kantata OX Knowledge Base
Release Notes
Status Page

Project Snapshots

Project snapshots capture the state of a project at a specific point in time. Snapshots are useful for gaining a historical perspective on a project, and for comparing the current state of a project to a previous state.

Project financials, tasks, and resources are all captured in a snapshot, as well as project and task custom field values.

To use these endpoints, you must have the Edit Financials permission or higher in a project.

Fetching a list of Project Snapshots

Gets a list of Project Snapshots. You can only see snapshots for projects where you have the Edit Financials project permission or higher.

This endpoint returns structured Project Snapshots objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the project_snapshots top-level JSON key. Please see our Response Format section for more information.

Request
query Parameters
by_title
string

Filter for snapshots with a title that match the specified search term. This filter is not case sensitive.

include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • project_snapshot_assignments (Project::Snapshots::Models::ProjectSnapshotAssignment) - Retrieves task assignments saved in snapshots. The response will include project_snapshot_assignment_ids, which references the data in the project_snapshot_assignments top-level key.
  • project_snapshot_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves project custom fields saved in snapshots. The response will include project_snapshot_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_resources (Project::Snapshots::Models::ProjectSnapshotResource) - Retrieves the resources saved in snapshots. The response will include project_snapshot_resource_ids, which references the data in the project_snapshot_resources top-level key.
  • project_snapshot_task_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves task custom fields saved in snapshots. The response will include project_snapshot_task_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_tasks (Project::Snapshots::Models::ProjectSnapshotTask) - Retrieves the tasks saved in snapshots. The response will include project_snapshot_task_ids, which references the data in the project_snapshot_tasks top-level key.
only
string

Allows you to request one or more resources directly by ID. Multiple IDs can be supplied in a comma separated list, like GET /api/v1/workspaces.json?only=5,6,7.

order
string
Default: "created_at:desc"

Supply order with the name of a valid sort field for the endpoint and a direction.

Valid values: created_at:asc and created_at:desc.

page
integer <int32>
Default: 1
per_page
integer <int32> <= 200
Default: 20
workspace_id
integer <int32>

Filter for snapshots by workspace ID.

Responses
200

A list of Project Snapshots have been retrieved.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

get/project_snapshots
Request samples
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "project_snapshots": {
    },
  • "project_snapshot_resources": {
    },
  • "project_snapshot_tasks": {
    },
  • "project_snapshot_custom_field_values": {
    },
  • "project_snapshot_assignments": {
    }
}

Creating a Project Snapshot

Creates a Project Snapshot. You must have the Edit Financials project permission or higher to create a project snapshot.

This endpoint has its own rate limit. See the Knowledge Base for more information.

This endpoint returns structured Project Snapshots objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the project_snapshots top-level JSON key. Please see our Response Format section for more information.

Request
query Parameters
include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • project_snapshot_assignments (Project::Snapshots::Models::ProjectSnapshotAssignment) - Retrieves task assignments saved in snapshots. The response will include project_snapshot_assignment_ids, which references the data in the project_snapshot_assignments top-level key.
  • project_snapshot_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves project custom fields saved in snapshots. The response will include project_snapshot_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_resources (Project::Snapshots::Models::ProjectSnapshotResource) - Retrieves the resources saved in snapshots. The response will include project_snapshot_resource_ids, which references the data in the project_snapshot_resources top-level key.
  • project_snapshot_task_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves task custom fields saved in snapshots. The response will include project_snapshot_task_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_tasks (Project::Snapshots::Models::ProjectSnapshotTask) - Retrieves the tasks saved in snapshots. The response will include project_snapshot_task_ids, which references the data in the project_snapshot_tasks top-level key.
Request Body schema: application/json
required
object
workspace_id
required
integer <int32>

The ID of the workspace to take a snapshot of.

title
string

The title of the snapshot.

description
string

The description of the snapshot.

replace_baseline
boolean

Whether the snapshot should be set as the workspace's baseline.

Responses
200

Project Snapshots has been created.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

post/project_snapshots
Request samples
application/json
{
  • "project_snapshot": {
    }
}
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "project_snapshots": {
    },
  • "project_snapshot_resources": {
    },
  • "project_snapshot_tasks": {
    },
  • "project_snapshot_custom_field_values": {
    },
  • "project_snapshot_assignments": {
    }
}

Updating a Project Snapshot

Updates the metadata of a Project Snapshot.

This endpoint returns structured Project Snapshots objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the project_snapshots top-level JSON key. Please see our Response Format section for more information.

Request
path Parameters
id
required
integer

The ID of the Model.

query Parameters
include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • project_snapshot_assignments (Project::Snapshots::Models::ProjectSnapshotAssignment) - Retrieves task assignments saved in snapshots. The response will include project_snapshot_assignment_ids, which references the data in the project_snapshot_assignments top-level key.
  • project_snapshot_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves project custom fields saved in snapshots. The response will include project_snapshot_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_resources (Project::Snapshots::Models::ProjectSnapshotResource) - Retrieves the resources saved in snapshots. The response will include project_snapshot_resource_ids, which references the data in the project_snapshot_resources top-level key.
  • project_snapshot_task_custom_field_values (Project::Snapshots::Models::ProjectSnapshotCustomFieldValue) - Retrieves task custom fields saved in snapshots. The response will include project_snapshot_task_custom_field_value_ids, which references the data in the project_snapshot_custom_field_values top-level key.
  • project_snapshot_tasks (Project::Snapshots::Models::ProjectSnapshotTask) - Retrieves the tasks saved in snapshots. The response will include project_snapshot_task_ids, which references the data in the project_snapshot_tasks top-level key.
Request Body schema: application/json
required
object
id
required
integer <int32>

The ID of the snapshot to update.

title
string

The title of the snapshot.

description
string

The description of the snapshot.

replace_baseline
boolean

Whether the snapshot should be set as the workspace's baseline.

Responses
200

Project Snapshots has been updated.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

put/project_snapshots/{id}
Request samples
application/json
{
  • "project_snapshot": {
    }
}
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "project_snapshots": {
    },
  • "project_snapshot_resources": {
    },
  • "project_snapshot_tasks": {
    },
  • "project_snapshot_custom_field_values": {
    },
  • "project_snapshot_assignments": {
    }
}