1. Packages
  2. Mongodbatlas Provider
  3. API Docs
  4. OnlineArchive
MongoDB Atlas v3.30.0 published on Friday, Mar 21, 2025 by Pulumi

mongodbatlas.OnlineArchive

Explore with Pulumi AI

# Resource: mongodbatlas.OnlineArchive

mongodbatlas.OnlineArchive resource provides access to create, edit, pause and resume an online archive for a collection.

NOTE: Groups and projects are synonymous terms. You may find group_id in the official documentation.

IMPORTANT: The collection must exists before performing an online archive.

IMPORTANT: There are fields that are immutable after creation, i.e if date_field value does not exist in the collection, the online archive state will be pending forever, and this field cannot be updated, that means a destroy is required, known error ONLINE_ARCHIVE_CANNOT_MODIFY_FIELD

IMPORTANT: Support for Online Archive on GCP is available in Private Preview. To request access and participate in the Private Preview release of this feature, complete the sign-up form.

Example Usage

S

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const test = new mongodbatlas.OnlineArchive("test", {
    projectId: projectId,
    clusterName: clusterName,
    collName: collectionName,
    dbName: databaseName,
    partitionFields: [
        {
            fieldName: "dateField",
            order: 0,
        },
        {
            fieldName: "firstName",
            order: 1,
        },
        {
            fieldName: "lastName",
            order: 2,
        },
    ],
    criteria: {
        type: "DATE",
        dateField: "dateField",
        expireAfterDays: 5,
    },
    schedule: {
        type: "DAILY",
        endHour: 1,
        endMinute: 1,
        startHour: 1,
        startMinute: 1,
    },
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test = mongodbatlas.OnlineArchive("test",
    project_id=project_id,
    cluster_name=cluster_name,
    coll_name=collection_name,
    db_name=database_name,
    partition_fields=[
        {
            "field_name": "dateField",
            "order": 0,
        },
        {
            "field_name": "firstName",
            "order": 1,
        },
        {
            "field_name": "lastName",
            "order": 2,
        },
    ],
    criteria={
        "type": "DATE",
        "date_field": "dateField",
        "expire_after_days": 5,
    },
    schedule={
        "type": "DAILY",
        "end_hour": 1,
        "end_minute": 1,
        "start_hour": 1,
        "start_minute": 1,
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mongodbatlas.NewOnlineArchive(ctx, "test", &mongodbatlas.OnlineArchiveArgs{
			ProjectId:   pulumi.Any(projectId),
			ClusterName: pulumi.Any(clusterName),
			CollName:    pulumi.Any(collectionName),
			DbName:      pulumi.Any(databaseName),
			PartitionFields: mongodbatlas.OnlineArchivePartitionFieldArray{
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("dateField"),
					Order:     pulumi.Int(0),
				},
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("firstName"),
					Order:     pulumi.Int(1),
				},
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("lastName"),
					Order:     pulumi.Int(2),
				},
			},
			Criteria: &mongodbatlas.OnlineArchiveCriteriaArgs{
				Type:            pulumi.String("DATE"),
				DateField:       pulumi.String("dateField"),
				ExpireAfterDays: pulumi.Int(5),
			},
			Schedule: &mongodbatlas.OnlineArchiveScheduleArgs{
				Type:        pulumi.String("DAILY"),
				EndHour:     pulumi.Int(1),
				EndMinute:   pulumi.Int(1),
				StartHour:   pulumi.Int(1),
				StartMinute: pulumi.Int(1),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var test = new Mongodbatlas.OnlineArchive("test", new()
    {
        ProjectId = projectId,
        ClusterName = clusterName,
        CollName = collectionName,
        DbName = databaseName,
        PartitionFields = new[]
        {
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "dateField",
                Order = 0,
            },
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "firstName",
                Order = 1,
            },
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "lastName",
                Order = 2,
            },
        },
        Criteria = new Mongodbatlas.Inputs.OnlineArchiveCriteriaArgs
        {
            Type = "DATE",
            DateField = "dateField",
            ExpireAfterDays = 5,
        },
        Schedule = new Mongodbatlas.Inputs.OnlineArchiveScheduleArgs
        {
            Type = "DAILY",
            EndHour = 1,
            EndMinute = 1,
            StartHour = 1,
            StartMinute = 1,
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.mongodbatlas.OnlineArchive;
import com.pulumi.mongodbatlas.OnlineArchiveArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchivePartitionFieldArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchiveCriteriaArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchiveScheduleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var test = new OnlineArchive("test", OnlineArchiveArgs.builder()
            .projectId(projectId)
            .clusterName(clusterName)
            .collName(collectionName)
            .dbName(databaseName)
            .partitionFields(            
                OnlineArchivePartitionFieldArgs.builder()
                    .fieldName("dateField")
                    .order(0)
                    .build(),
                OnlineArchivePartitionFieldArgs.builder()
                    .fieldName("firstName")
                    .order(1)
                    .build(),
                OnlineArchivePartitionFieldArgs.builder()
                    .fieldName("lastName")
                    .order(2)
                    .build())
            .criteria(OnlineArchiveCriteriaArgs.builder()
                .type("DATE")
                .dateField("dateField")
                .expireAfterDays(5)
                .build())
            .schedule(OnlineArchiveScheduleArgs.builder()
                .type("DAILY")
                .endHour(1)
                .endMinute(1)
                .startHour(1)
                .startMinute(1)
                .build())
            .build());

    }
}
Copy
resources:
  test:
    type: mongodbatlas:OnlineArchive
    properties:
      projectId: ${projectId}
      clusterName: ${clusterName}
      collName: ${collectionName}
      dbName: ${databaseName}
      partitionFields:
        - fieldName: dateField
          order: 0
        - fieldName: firstName
          order: 1
        - fieldName: lastName
          order: 2
      criteria:
        type: DATE
        dateField: dateField
        expireAfterDays: 5
      schedule:
        type: DAILY
        endHour: 1
        endMinute: 1
        startHour: 1
        startMinute: 1
Copy

For custom criteria example

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const test = new mongodbatlas.OnlineArchive("test", {
    projectId: projectId,
    clusterName: clusterName,
    collName: collectionName,
    dbName: databaseName,
    partitionFields: [
        {
            fieldName: "firstName",
            order: 0,
        },
        {
            fieldName: "secondName",
            order: 1,
        },
    ],
    criteria: {
        type: "CUSTOM",
        query: "{ \"department\": \"engineering\" }",
    },
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test = mongodbatlas.OnlineArchive("test",
    project_id=project_id,
    cluster_name=cluster_name,
    coll_name=collection_name,
    db_name=database_name,
    partition_fields=[
        {
            "field_name": "firstName",
            "order": 0,
        },
        {
            "field_name": "secondName",
            "order": 1,
        },
    ],
    criteria={
        "type": "CUSTOM",
        "query": "{ \"department\": \"engineering\" }",
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mongodbatlas.NewOnlineArchive(ctx, "test", &mongodbatlas.OnlineArchiveArgs{
			ProjectId:   pulumi.Any(projectId),
			ClusterName: pulumi.Any(clusterName),
			CollName:    pulumi.Any(collectionName),
			DbName:      pulumi.Any(databaseName),
			PartitionFields: mongodbatlas.OnlineArchivePartitionFieldArray{
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("firstName"),
					Order:     pulumi.Int(0),
				},
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("secondName"),
					Order:     pulumi.Int(1),
				},
			},
			Criteria: &mongodbatlas.OnlineArchiveCriteriaArgs{
				Type:  pulumi.String("CUSTOM"),
				Query: pulumi.String("{ \"department\": \"engineering\" }"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var test = new Mongodbatlas.OnlineArchive("test", new()
    {
        ProjectId = projectId,
        ClusterName = clusterName,
        CollName = collectionName,
        DbName = databaseName,
        PartitionFields = new[]
        {
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "firstName",
                Order = 0,
            },
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "secondName",
                Order = 1,
            },
        },
        Criteria = new Mongodbatlas.Inputs.OnlineArchiveCriteriaArgs
        {
            Type = "CUSTOM",
            Query = "{ \"department\": \"engineering\" }",
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.mongodbatlas.OnlineArchive;
import com.pulumi.mongodbatlas.OnlineArchiveArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchivePartitionFieldArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchiveCriteriaArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var test = new OnlineArchive("test", OnlineArchiveArgs.builder()
            .projectId(projectId)
            .clusterName(clusterName)
            .collName(collectionName)
            .dbName(databaseName)
            .partitionFields(            
                OnlineArchivePartitionFieldArgs.builder()
                    .fieldName("firstName")
                    .order(0)
                    .build(),
                OnlineArchivePartitionFieldArgs.builder()
                    .fieldName("secondName")
                    .order(1)
                    .build())
            .criteria(OnlineArchiveCriteriaArgs.builder()
                .type("CUSTOM")
                .query("{ \"department\": \"engineering\" }")
                .build())
            .build());

    }
}
Copy
resources:
  test:
    type: mongodbatlas:OnlineArchive
    properties:
      projectId: ${projectId}
      clusterName: ${clusterName}
      collName: ${collectionName}
      dbName: ${databaseName}
      partitionFields:
        - fieldName: firstName
          order: 0
        - fieldName: secondName
          order: 1
      criteria:
        type: CUSTOM
        query: '{ "department": "engineering" }'
Copy

Defining custom provider and region example

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const test = new mongodbatlas.OnlineArchive("test", {
    projectId: projectId,
    clusterName: clusterName,
    collName: collectionName,
    dbName: databaseName,
    dataProcessRegion: {
        cloudProvider: "AZURE",
        region: "US_EAST_2",
    },
    partitionFields: [{
        fieldName: "firstName",
        order: 0,
    }],
    criteria: {
        type: "CUSTOM",
        query: "{ \"department\": \"engineering\" }",
    },
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test = mongodbatlas.OnlineArchive("test",
    project_id=project_id,
    cluster_name=cluster_name,
    coll_name=collection_name,
    db_name=database_name,
    data_process_region={
        "cloud_provider": "AZURE",
        "region": "US_EAST_2",
    },
    partition_fields=[{
        "field_name": "firstName",
        "order": 0,
    }],
    criteria={
        "type": "CUSTOM",
        "query": "{ \"department\": \"engineering\" }",
    })
Copy
package main

import (
	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mongodbatlas.NewOnlineArchive(ctx, "test", &mongodbatlas.OnlineArchiveArgs{
			ProjectId:   pulumi.Any(projectId),
			ClusterName: pulumi.Any(clusterName),
			CollName:    pulumi.Any(collectionName),
			DbName:      pulumi.Any(databaseName),
			DataProcessRegion: &mongodbatlas.OnlineArchiveDataProcessRegionArgs{
				CloudProvider: pulumi.String("AZURE"),
				Region:        pulumi.String("US_EAST_2"),
			},
			PartitionFields: mongodbatlas.OnlineArchivePartitionFieldArray{
				&mongodbatlas.OnlineArchivePartitionFieldArgs{
					FieldName: pulumi.String("firstName"),
					Order:     pulumi.Int(0),
				},
			},
			Criteria: &mongodbatlas.OnlineArchiveCriteriaArgs{
				Type:  pulumi.String("CUSTOM"),
				Query: pulumi.String("{ \"department\": \"engineering\" }"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var test = new Mongodbatlas.OnlineArchive("test", new()
    {
        ProjectId = projectId,
        ClusterName = clusterName,
        CollName = collectionName,
        DbName = databaseName,
        DataProcessRegion = new Mongodbatlas.Inputs.OnlineArchiveDataProcessRegionArgs
        {
            CloudProvider = "AZURE",
            Region = "US_EAST_2",
        },
        PartitionFields = new[]
        {
            new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
            {
                FieldName = "firstName",
                Order = 0,
            },
        },
        Criteria = new Mongodbatlas.Inputs.OnlineArchiveCriteriaArgs
        {
            Type = "CUSTOM",
            Query = "{ \"department\": \"engineering\" }",
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.mongodbatlas.OnlineArchive;
import com.pulumi.mongodbatlas.OnlineArchiveArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchiveDataProcessRegionArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchivePartitionFieldArgs;
import com.pulumi.mongodbatlas.inputs.OnlineArchiveCriteriaArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var test = new OnlineArchive("test", OnlineArchiveArgs.builder()
            .projectId(projectId)
            .clusterName(clusterName)
            .collName(collectionName)
            .dbName(databaseName)
            .dataProcessRegion(OnlineArchiveDataProcessRegionArgs.builder()
                .cloudProvider("AZURE")
                .region("US_EAST_2")
                .build())
            .partitionFields(OnlineArchivePartitionFieldArgs.builder()
                .fieldName("firstName")
                .order(0)
                .build())
            .criteria(OnlineArchiveCriteriaArgs.builder()
                .type("CUSTOM")
                .query("{ \"department\": \"engineering\" }")
                .build())
            .build());

    }
}
Copy
resources:
  test:
    type: mongodbatlas:OnlineArchive
    properties:
      projectId: ${projectId}
      clusterName: ${clusterName}
      collName: ${collectionName}
      dbName: ${databaseName}
      dataProcessRegion:
        cloudProvider: AZURE
        region: US_EAST_2
      partitionFields:
        - fieldName: firstName
          order: 0
      criteria:
        type: CUSTOM
        query: '{ "department": "engineering" }'
Copy

Create OnlineArchive Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new OnlineArchive(name: string, args: OnlineArchiveArgs, opts?: CustomResourceOptions);
@overload
def OnlineArchive(resource_name: str,
                  args: OnlineArchiveArgs,
                  opts: Optional[ResourceOptions] = None)

@overload
def OnlineArchive(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  cluster_name: Optional[str] = None,
                  coll_name: Optional[str] = None,
                  criteria: Optional[OnlineArchiveCriteriaArgs] = None,
                  db_name: Optional[str] = None,
                  project_id: Optional[str] = None,
                  collection_type: Optional[str] = None,
                  data_expiration_rule: Optional[OnlineArchiveDataExpirationRuleArgs] = None,
                  data_process_region: Optional[OnlineArchiveDataProcessRegionArgs] = None,
                  partition_fields: Optional[Sequence[OnlineArchivePartitionFieldArgs]] = None,
                  paused: Optional[bool] = None,
                  schedule: Optional[OnlineArchiveScheduleArgs] = None,
                  sync_creation: Optional[bool] = None)
func NewOnlineArchive(ctx *Context, name string, args OnlineArchiveArgs, opts ...ResourceOption) (*OnlineArchive, error)
public OnlineArchive(string name, OnlineArchiveArgs args, CustomResourceOptions? opts = null)
public OnlineArchive(String name, OnlineArchiveArgs args)
public OnlineArchive(String name, OnlineArchiveArgs args, CustomResourceOptions options)
type: mongodbatlas:OnlineArchive
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. OnlineArchiveArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. OnlineArchiveArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. OnlineArchiveArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. OnlineArchiveArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. OnlineArchiveArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var onlineArchiveResource = new Mongodbatlas.OnlineArchive("onlineArchiveResource", new()
{
    ClusterName = "string",
    CollName = "string",
    Criteria = new Mongodbatlas.Inputs.OnlineArchiveCriteriaArgs
    {
        Type = "string",
        DateField = "string",
        DateFormat = "string",
        ExpireAfterDays = 0,
        Query = "string",
    },
    DbName = "string",
    ProjectId = "string",
    CollectionType = "string",
    DataExpirationRule = new Mongodbatlas.Inputs.OnlineArchiveDataExpirationRuleArgs
    {
        ExpireAfterDays = 0,
    },
    DataProcessRegion = new Mongodbatlas.Inputs.OnlineArchiveDataProcessRegionArgs
    {
        CloudProvider = "string",
        Region = "string",
    },
    PartitionFields = new[]
    {
        new Mongodbatlas.Inputs.OnlineArchivePartitionFieldArgs
        {
            FieldName = "string",
            Order = 0,
            FieldType = "string",
        },
    },
    Paused = false,
    Schedule = new Mongodbatlas.Inputs.OnlineArchiveScheduleArgs
    {
        Type = "string",
        DayOfMonth = 0,
        DayOfWeek = 0,
        EndHour = 0,
        EndMinute = 0,
        StartHour = 0,
        StartMinute = 0,
    },
    SyncCreation = false,
});
Copy
example, err := mongodbatlas.NewOnlineArchive(ctx, "onlineArchiveResource", &mongodbatlas.OnlineArchiveArgs{
	ClusterName: pulumi.String("string"),
	CollName:    pulumi.String("string"),
	Criteria: &mongodbatlas.OnlineArchiveCriteriaArgs{
		Type:            pulumi.String("string"),
		DateField:       pulumi.String("string"),
		DateFormat:      pulumi.String("string"),
		ExpireAfterDays: pulumi.Int(0),
		Query:           pulumi.String("string"),
	},
	DbName:         pulumi.String("string"),
	ProjectId:      pulumi.String("string"),
	CollectionType: pulumi.String("string"),
	DataExpirationRule: &mongodbatlas.OnlineArchiveDataExpirationRuleArgs{
		ExpireAfterDays: pulumi.Int(0),
	},
	DataProcessRegion: &mongodbatlas.OnlineArchiveDataProcessRegionArgs{
		CloudProvider: pulumi.String("string"),
		Region:        pulumi.String("string"),
	},
	PartitionFields: mongodbatlas.OnlineArchivePartitionFieldArray{
		&mongodbatlas.OnlineArchivePartitionFieldArgs{
			FieldName: pulumi.String("string"),
			Order:     pulumi.Int(0),
			FieldType: pulumi.String("string"),
		},
	},
	Paused: pulumi.Bool(false),
	Schedule: &mongodbatlas.OnlineArchiveScheduleArgs{
		Type:        pulumi.String("string"),
		DayOfMonth:  pulumi.Int(0),
		DayOfWeek:   pulumi.Int(0),
		EndHour:     pulumi.Int(0),
		EndMinute:   pulumi.Int(0),
		StartHour:   pulumi.Int(0),
		StartMinute: pulumi.Int(0),
	},
	SyncCreation: pulumi.Bool(false),
})
Copy
var onlineArchiveResource = new OnlineArchive("onlineArchiveResource", OnlineArchiveArgs.builder()
    .clusterName("string")
    .collName("string")
    .criteria(OnlineArchiveCriteriaArgs.builder()
        .type("string")
        .dateField("string")
        .dateFormat("string")
        .expireAfterDays(0)
        .query("string")
        .build())
    .dbName("string")
    .projectId("string")
    .collectionType("string")
    .dataExpirationRule(OnlineArchiveDataExpirationRuleArgs.builder()
        .expireAfterDays(0)
        .build())
    .dataProcessRegion(OnlineArchiveDataProcessRegionArgs.builder()
        .cloudProvider("string")
        .region("string")
        .build())
    .partitionFields(OnlineArchivePartitionFieldArgs.builder()
        .fieldName("string")
        .order(0)
        .fieldType("string")
        .build())
    .paused(false)
    .schedule(OnlineArchiveScheduleArgs.builder()
        .type("string")
        .dayOfMonth(0)
        .dayOfWeek(0)
        .endHour(0)
        .endMinute(0)
        .startHour(0)
        .startMinute(0)
        .build())
    .syncCreation(false)
    .build());
Copy
online_archive_resource = mongodbatlas.OnlineArchive("onlineArchiveResource",
    cluster_name="string",
    coll_name="string",
    criteria={
        "type": "string",
        "date_field": "string",
        "date_format": "string",
        "expire_after_days": 0,
        "query": "string",
    },
    db_name="string",
    project_id="string",
    collection_type="string",
    data_expiration_rule={
        "expire_after_days": 0,
    },
    data_process_region={
        "cloud_provider": "string",
        "region": "string",
    },
    partition_fields=[{
        "field_name": "string",
        "order": 0,
        "field_type": "string",
    }],
    paused=False,
    schedule={
        "type": "string",
        "day_of_month": 0,
        "day_of_week": 0,
        "end_hour": 0,
        "end_minute": 0,
        "start_hour": 0,
        "start_minute": 0,
    },
    sync_creation=False)
Copy
const onlineArchiveResource = new mongodbatlas.OnlineArchive("onlineArchiveResource", {
    clusterName: "string",
    collName: "string",
    criteria: {
        type: "string",
        dateField: "string",
        dateFormat: "string",
        expireAfterDays: 0,
        query: "string",
    },
    dbName: "string",
    projectId: "string",
    collectionType: "string",
    dataExpirationRule: {
        expireAfterDays: 0,
    },
    dataProcessRegion: {
        cloudProvider: "string",
        region: "string",
    },
    partitionFields: [{
        fieldName: "string",
        order: 0,
        fieldType: "string",
    }],
    paused: false,
    schedule: {
        type: "string",
        dayOfMonth: 0,
        dayOfWeek: 0,
        endHour: 0,
        endMinute: 0,
        startHour: 0,
        startMinute: 0,
    },
    syncCreation: false,
});
Copy
type: mongodbatlas:OnlineArchive
properties:
    clusterName: string
    collName: string
    collectionType: string
    criteria:
        dateField: string
        dateFormat: string
        expireAfterDays: 0
        query: string
        type: string
    dataExpirationRule:
        expireAfterDays: 0
    dataProcessRegion:
        cloudProvider: string
        region: string
    dbName: string
    partitionFields:
        - fieldName: string
          fieldType: string
          order: 0
    paused: false
    projectId: string
    schedule:
        dayOfMonth: 0
        dayOfWeek: 0
        endHour: 0
        endMinute: 0
        startHour: 0
        startMinute: 0
        type: string
    syncCreation: false
Copy

OnlineArchive Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The OnlineArchive resource accepts the following input properties:

ClusterName
This property is required.
Changes to this property will trigger replacement.
string
Name of the cluster that contains the collection.
CollName This property is required. string
Name of the collection.
Criteria This property is required. OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
DbName This property is required. string
Name of the database that contains the collection.
ProjectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project
CollectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
DataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
DataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
PartitionFields List<OnlineArchivePartitionField>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
Paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
Schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
SyncCreation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
ClusterName
This property is required.
Changes to this property will trigger replacement.
string
Name of the cluster that contains the collection.
CollName This property is required. string
Name of the collection.
Criteria This property is required. OnlineArchiveCriteriaArgs
Criteria to use for archiving data. See criteria.
DbName This property is required. string
Name of the database that contains the collection.
ProjectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project
CollectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
DataExpirationRule OnlineArchiveDataExpirationRuleArgs
Rule for specifying when data should be deleted from the archive. See data expiration rule.
DataProcessRegion OnlineArchiveDataProcessRegionArgs
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
PartitionFields []OnlineArchivePartitionFieldArgs
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
Paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
Schedule OnlineArchiveScheduleArgs
Regular frequency and duration when archiving process occurs. See schedule.
SyncCreation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
clusterName
This property is required.
Changes to this property will trigger replacement.
String
Name of the cluster that contains the collection.
collName This property is required. String
Name of the collection.
criteria This property is required. OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
dbName This property is required. String
Name of the database that contains the collection.
projectId
This property is required.
Changes to this property will trigger replacement.
String
The unique ID for the project
collectionType String
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
dataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
partitionFields List<OnlineArchivePartitionField>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused Boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
syncCreation Boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
clusterName
This property is required.
Changes to this property will trigger replacement.
string
Name of the cluster that contains the collection.
collName This property is required. string
Name of the collection.
criteria This property is required. OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
dbName This property is required. string
Name of the database that contains the collection.
projectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project
collectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
dataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
partitionFields OnlineArchivePartitionField[]
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
syncCreation boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
cluster_name
This property is required.
Changes to this property will trigger replacement.
str
Name of the cluster that contains the collection.
coll_name This property is required. str
Name of the collection.
criteria This property is required. OnlineArchiveCriteriaArgs
Criteria to use for archiving data. See criteria.
db_name This property is required. str
Name of the database that contains the collection.
project_id
This property is required.
Changes to this property will trigger replacement.
str
The unique ID for the project
collection_type str
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
data_expiration_rule OnlineArchiveDataExpirationRuleArgs
Rule for specifying when data should be deleted from the archive. See data expiration rule.
data_process_region OnlineArchiveDataProcessRegionArgs
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
partition_fields Sequence[OnlineArchivePartitionFieldArgs]
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
schedule OnlineArchiveScheduleArgs
Regular frequency and duration when archiving process occurs. See schedule.
sync_creation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
clusterName
This property is required.
Changes to this property will trigger replacement.
String
Name of the cluster that contains the collection.
collName This property is required. String
Name of the collection.
criteria This property is required. Property Map
Criteria to use for archiving data. See criteria.
dbName This property is required. String
Name of the database that contains the collection.
projectId
This property is required.
Changes to this property will trigger replacement.
String
The unique ID for the project
collectionType String
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
dataExpirationRule Property Map
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion Property Map
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
partitionFields List<Property Map>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused Boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
schedule Property Map
Regular frequency and duration when archiving process occurs. See schedule.
syncCreation Boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.

Outputs

All input properties are implicitly available as output properties. Additionally, the OnlineArchive resource produces the following output properties:

ArchiveId string
ID of the online archive.
Id string
The provider-assigned unique ID for this managed resource.
State string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
ArchiveId string
ID of the online archive.
Id string
The provider-assigned unique ID for this managed resource.
State string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
archiveId String
ID of the online archive.
id String
The provider-assigned unique ID for this managed resource.
state String
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
archiveId string
ID of the online archive.
id string
The provider-assigned unique ID for this managed resource.
state string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
archive_id str
ID of the online archive.
id str
The provider-assigned unique ID for this managed resource.
state str
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
archiveId String
ID of the online archive.
id String
The provider-assigned unique ID for this managed resource.
state String
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted

Look up Existing OnlineArchive Resource

Get an existing OnlineArchive resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: OnlineArchiveState, opts?: CustomResourceOptions): OnlineArchive
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        archive_id: Optional[str] = None,
        cluster_name: Optional[str] = None,
        coll_name: Optional[str] = None,
        collection_type: Optional[str] = None,
        criteria: Optional[OnlineArchiveCriteriaArgs] = None,
        data_expiration_rule: Optional[OnlineArchiveDataExpirationRuleArgs] = None,
        data_process_region: Optional[OnlineArchiveDataProcessRegionArgs] = None,
        db_name: Optional[str] = None,
        partition_fields: Optional[Sequence[OnlineArchivePartitionFieldArgs]] = None,
        paused: Optional[bool] = None,
        project_id: Optional[str] = None,
        schedule: Optional[OnlineArchiveScheduleArgs] = None,
        state: Optional[str] = None,
        sync_creation: Optional[bool] = None) -> OnlineArchive
func GetOnlineArchive(ctx *Context, name string, id IDInput, state *OnlineArchiveState, opts ...ResourceOption) (*OnlineArchive, error)
public static OnlineArchive Get(string name, Input<string> id, OnlineArchiveState? state, CustomResourceOptions? opts = null)
public static OnlineArchive get(String name, Output<String> id, OnlineArchiveState state, CustomResourceOptions options)
resources:  _:    type: mongodbatlas:OnlineArchive    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
ArchiveId string
ID of the online archive.
ClusterName Changes to this property will trigger replacement. string
Name of the cluster that contains the collection.
CollName string
Name of the collection.
CollectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
Criteria OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
DataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
DataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
DbName string
Name of the database that contains the collection.
PartitionFields List<OnlineArchivePartitionField>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
Paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
ProjectId Changes to this property will trigger replacement. string
The unique ID for the project
Schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
State string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
SyncCreation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
ArchiveId string
ID of the online archive.
ClusterName Changes to this property will trigger replacement. string
Name of the cluster that contains the collection.
CollName string
Name of the collection.
CollectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
Criteria OnlineArchiveCriteriaArgs
Criteria to use for archiving data. See criteria.
DataExpirationRule OnlineArchiveDataExpirationRuleArgs
Rule for specifying when data should be deleted from the archive. See data expiration rule.
DataProcessRegion OnlineArchiveDataProcessRegionArgs
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
DbName string
Name of the database that contains the collection.
PartitionFields []OnlineArchivePartitionFieldArgs
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
Paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
ProjectId Changes to this property will trigger replacement. string
The unique ID for the project
Schedule OnlineArchiveScheduleArgs
Regular frequency and duration when archiving process occurs. See schedule.
State string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
SyncCreation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
archiveId String
ID of the online archive.
clusterName Changes to this property will trigger replacement. String
Name of the cluster that contains the collection.
collName String
Name of the collection.
collectionType String
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
criteria OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
dataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
dbName String
Name of the database that contains the collection.
partitionFields List<OnlineArchivePartitionField>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused Boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
projectId Changes to this property will trigger replacement. String
The unique ID for the project
schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
state String
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
syncCreation Boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
archiveId string
ID of the online archive.
clusterName Changes to this property will trigger replacement. string
Name of the cluster that contains the collection.
collName string
Name of the collection.
collectionType string
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
criteria OnlineArchiveCriteria
Criteria to use for archiving data. See criteria.
dataExpirationRule OnlineArchiveDataExpirationRule
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion OnlineArchiveDataProcessRegion
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
dbName string
Name of the database that contains the collection.
partitionFields OnlineArchivePartitionField[]
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
projectId Changes to this property will trigger replacement. string
The unique ID for the project
schedule OnlineArchiveSchedule
Regular frequency and duration when archiving process occurs. See schedule.
state string
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
syncCreation boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
archive_id str
ID of the online archive.
cluster_name Changes to this property will trigger replacement. str
Name of the cluster that contains the collection.
coll_name str
Name of the collection.
collection_type str
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
criteria OnlineArchiveCriteriaArgs
Criteria to use for archiving data. See criteria.
data_expiration_rule OnlineArchiveDataExpirationRuleArgs
Rule for specifying when data should be deleted from the archive. See data expiration rule.
data_process_region OnlineArchiveDataProcessRegionArgs
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
db_name str
Name of the database that contains the collection.
partition_fields Sequence[OnlineArchivePartitionFieldArgs]
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused bool
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
project_id Changes to this property will trigger replacement. str
The unique ID for the project
schedule OnlineArchiveScheduleArgs
Regular frequency and duration when archiving process occurs. See schedule.
state str
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
sync_creation bool
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.
archiveId String
ID of the online archive.
clusterName Changes to this property will trigger replacement. String
Name of the cluster that contains the collection.
collName String
Name of the collection.
collectionType String
Type of MongoDB collection that you want to return. This value can be "TIMESERIES" or "STANDARD". Default is "STANDARD".
criteria Property Map
Criteria to use for archiving data. See criteria.
dataExpirationRule Property Map
Rule for specifying when data should be deleted from the archive. See data expiration rule.
dataProcessRegion Property Map
Settings to configure the region where you wish to store your archived data. See data process region. This field is immutable hence cannot be updated.
dbName String
Name of the database that contains the collection.
partitionFields List<Property Map>
Fields to use to partition data. You can specify up to two frequently queried fields (or up to three fields when one of them is date_field) to use for partitioning data. Queries that don’t contain the specified fields require a full collection scan of all archived documents, which takes longer and increases your costs. To learn more about how partition improves query performance, see Data Structure in S3. The value of a partition field can be up to a maximum of 700 characters. Documents with values exceeding 700 characters are not archived. See partition fields.
paused Boolean
State of the online archive. This is required for pausing an active online archive or resuming a paused online archive. If the collection has another active online archive, the resume request fails.
projectId Changes to this property will trigger replacement. String
The unique ID for the project
schedule Property Map
Regular frequency and duration when archiving process occurs. See schedule.
state String
Status of the online archive. Valid values are: Pending, Archiving, Idle, Pausing, Paused, Orphaned and Deleted
syncCreation Boolean
Flag that indicates whether the provider will wait for the state of the online archive to reach IDLE or ACTIVE when creating an online archive. Defaults to false.

Supporting Types

OnlineArchiveCriteria
, OnlineArchiveCriteriaArgs

Type This property is required. string

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

DateField string
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
DateFormat string
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
ExpireAfterDays int

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

Query string
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.
Type This property is required. string

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

DateField string
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
DateFormat string
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
ExpireAfterDays int

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

Query string
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.
type This property is required. String

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

dateField String
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
dateFormat String
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
expireAfterDays Integer

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

query String
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.
type This property is required. string

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

dateField string
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
dateFormat string
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
expireAfterDays number

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

query string
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.
type This property is required. str

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

date_field str
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
date_format str
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
expire_after_days int

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

query str
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.
type This property is required. String

Type of criteria (DATE, CUSTOM)

The following fields are required for criteria type DATE

dateField String
Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter.
dateFormat String
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. You must set type to DATE if collectionType is TIMESERIES. Valid values: ISODATE (default), EPOCH_SECONDS, EPOCH_MILLIS, EPOCH_NANOSECONDS.
expireAfterDays Number

Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster.

NOTE: if DATE is selected, the partition_fields.field_name must be completed with the date_field value

The only field required for criteria type CUSTOM

query String
JSON query to use to select documents for archiving. Atlas uses the specified query with the db.collection.find(query) command. The empty document {} to return all documents is not supported.

OnlineArchiveDataExpirationRule
, OnlineArchiveDataExpirationRuleArgs

ExpireAfterDays This property is required. int
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.
ExpireAfterDays This property is required. int
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.
expireAfterDays This property is required. Integer
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.
expireAfterDays This property is required. number
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.
expire_after_days This property is required. int
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.
expireAfterDays This property is required. Number
Number of days used in the date criteria for nominating documents for deletion. Value must be between 7 and 9215.

OnlineArchiveDataProcessRegion
, OnlineArchiveDataProcessRegionArgs

CloudProvider string
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
Region string
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation
CloudProvider string
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
Region string
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation
cloudProvider String
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
region String
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation
cloudProvider string
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
region string
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation
cloud_provider str
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
region str
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation
cloudProvider String
Human-readable label that identifies the Cloud service provider where you wish to store your archived data. AZURE may be selected only if Azure is the Cloud service provider for the cluster and no AWS online archive has been created for the cluster.
region String
Human-readable label that identifies the geographic location of the region where you wish to store your archived data. For allowed values, see MongoDB Atlas API documentation

OnlineArchivePartitionField
, OnlineArchivePartitionFieldArgs

FieldName This property is required. string
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
Order This property is required. int
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
FieldType string
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.
FieldName This property is required. string
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
Order This property is required. int
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
FieldType string
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.
fieldName This property is required. String
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
order This property is required. Integer
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
fieldType String
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.
fieldName This property is required. string
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
order This property is required. number
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
fieldType string
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.
field_name This property is required. str
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
order This property is required. int
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
field_type str
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.
fieldName This property is required. String
Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
order This property is required. Number
Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the criteria.dateField parameter defaults as the first item in the partition sequence.
fieldType String
Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: date, int, long, objectId, string, uuid.

OnlineArchiveSchedule
, OnlineArchiveScheduleArgs

Type This property is required. string
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
DayOfMonth int
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
DayOfWeek int
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
EndHour int
Hour of the day when the scheduled window to run one online archive ends.
EndMinute int
Minute of the hour when the scheduled window to run one online archive ends.
StartHour int
Hour of the day when the when the scheduled window to run one online archive starts.
StartMinute int
Minute of the hour when the scheduled window to run one online archive starts.
Type This property is required. string
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
DayOfMonth int
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
DayOfWeek int
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
EndHour int
Hour of the day when the scheduled window to run one online archive ends.
EndMinute int
Minute of the hour when the scheduled window to run one online archive ends.
StartHour int
Hour of the day when the when the scheduled window to run one online archive starts.
StartMinute int
Minute of the hour when the scheduled window to run one online archive starts.
type This property is required. String
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
dayOfMonth Integer
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
dayOfWeek Integer
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
endHour Integer
Hour of the day when the scheduled window to run one online archive ends.
endMinute Integer
Minute of the hour when the scheduled window to run one online archive ends.
startHour Integer
Hour of the day when the when the scheduled window to run one online archive starts.
startMinute Integer
Minute of the hour when the scheduled window to run one online archive starts.
type This property is required. string
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
dayOfMonth number
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
dayOfWeek number
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
endHour number
Hour of the day when the scheduled window to run one online archive ends.
endMinute number
Minute of the hour when the scheduled window to run one online archive ends.
startHour number
Hour of the day when the when the scheduled window to run one online archive starts.
startMinute number
Minute of the hour when the scheduled window to run one online archive starts.
type This property is required. str
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
day_of_month int
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
day_of_week int
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
end_hour int
Hour of the day when the scheduled window to run one online archive ends.
end_minute int
Minute of the hour when the scheduled window to run one online archive ends.
start_hour int
Hour of the day when the when the scheduled window to run one online archive starts.
start_minute int
Minute of the hour when the scheduled window to run one online archive starts.
type This property is required. String
Type of schedule (``DAILY, MONTHLY, WEEKLY`).
dayOfMonth Number
Day of the month when the scheduled archive starts. This field should be provided only when schedule type is MONTHLY.
dayOfWeek Number
Day of the week when the scheduled archive starts. The week starts with Monday (1) and ends with Sunday (7). This field should be provided only when schedule type is WEEKLY.
endHour Number
Hour of the day when the scheduled window to run one online archive ends.
endMinute Number
Minute of the hour when the scheduled window to run one online archive ends.
startHour Number
Hour of the day when the when the scheduled window to run one online archive starts.
startMinute Number
Minute of the hour when the scheduled window to run one online archive starts.

Import

terraform import mongodbatlas_online_archive.users_archive <project_id>-<cluster_name>-<archive_id>
Copy

See MongoDB Atlas API Documentation for more information.

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
MongoDB Atlas pulumi/pulumi-mongodbatlas
License
Apache-2.0
Notes
This Pulumi package is based on the mongodbatlas Terraform Provider.