## Archive `client.V1.Contracts.Archive(ctx, body) (*V1ContractArchiveResponse, error)` **post** `/v1/contracts/archive` Archive a contract ### Parameters - **body:** `V1ContractArchiveParams` - **ContractID:** `param.Field[string]` ID of the contract to archive - **CustomerID:** `param.Field[string]` ID of the customer whose contract is to be archived - **VoidInvoices:** `param.Field[bool]` If false, the existing finalized invoices will remain after the contract is archived. ### Returns - Not supported - **Data:** `ID` ### Example ```go package main import ( "context" "fmt" "github.com/Metronome-Industries/metronome-go" "github.com/Metronome-Industries/metronome-go/option" ) func main() { client := metronome.NewClient( option.WithBearerToken("My Bearer Token"), ) response, err := client.V1.Contracts.Archive(context.TODO(), metronome.V1ContractArchiveParams{ ContractID: metronome.F("d7abd0cd-4ae9-4db7-8676-e986a4ebd8dc"), CustomerID: metronome.F("13117714-3f05-48e5-a6e9-a66093f13b4d"), VoidInvoices: metronome.F(true), }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Data) } ```