Skapa en fullständig kopia av ett befintligt projekt med konfigurerbara alternativ för vad som ska ingå.


Kopiera ett projekt

Mutation för att kopiera projekt tillåter dig att duplicera ett befintligt projekt inom samma företag eller till ett annat företag. Detta är användbart för att skapa projektmallar, ställa in liknande projekt eller flytta projekt mellan företag. Kopieringsoperationen körs asynkront för att hantera stora projekt effektivt.

Grundläggande exempel

mutation CopyProject {
  copyProject(
    input: {
      projectId: "proj_123abc"
      name: "New Project Copy"
      options: {
        todos: true
        todoLists: true
        people: true
      }
    }
  )
}

Avancerat exempel

mutation CopyProject {
  copyProject(
    input: {
      projectId: "proj_123abc"
      name: "Q2 Marketing Campaign"
      description: "Copy of Q1 campaign with updated timeline"
      imageURL: "https://example.com/campaign-logo.png"
      companyId: "comp_789xyz"
      options: {
        assignees: true
        automations: true
        checklists: true
        customFields: true
        discussions: false
        discussionComments: false
        dueDates: true
        files: true
        forms: true
        people: true
        projectUserRoles: true
        statusUpdates: false
        statusUpdateComments: false
        tags: true
        todoActions: true
        todoComments: false
        todoLists: true
        todos: true
      }
    }
  )
}

Indata parametrar

CopyProjectInput

Parameter Typ Obligatorisk Beskrivning
projectId String! ✅ Ja ID för projektet som ska kopieras
name String! ✅ Ja Namnet för det nya projektet (max 50 tecken)
description String Nej Beskrivningen för det nya projektet (max 500 tecken)
imageURL String Nej Bildens URL för det nya projektet
companyId String Nej ID för företaget där det nya projektet ska skapas. Om det inte anges, används källprojektets företag
options CopyProjectOptionsInput! ✅ Ja Konfiguration för vilka element som ska kopieras

CopyProjectOptionsInput

Parameter Typ Obligatorisk Beskrivning
assignees Boolean Nej Kopiera uppgiftstilldelningar (kräver people: true)
automations Boolean Nej Kopiera projektautomatiseringar och arbetsflöden
checklists Boolean Nej Kopiera uppgiftschecklistor
customFields Boolean Nej Kopiera anpassade fältdefinitioner och värden
discussions Boolean Nej Kopiera projektdiskussioner
discussionComments Boolean Nej Kopiera kommentarer på diskussioner (kräver discussions: true)
dueDates Boolean Nej Kopiera förfallodatum på uppgifter
files Boolean Nej Kopiera filbilagor
forms Boolean Nej Kopiera projektformulär
people Boolean Nej Kopiera projektmedlemmar
projectUserRoles Boolean Nej Kopiera användarroller och behörigheter (kräver people: true)
statusUpdates Boolean Nej Kopiera projektstatusuppdateringar
statusUpdateComments Boolean Nej Kopiera kommentarer på statusuppdateringar (kräver statusUpdates: true)
tags Boolean Nej Kopiera projektetiketter
todoActions Boolean Nej Kopiera uppgiftsåtgärder/deluppgifter
todoComments Boolean Nej Kopiera uppgiftskommentarer
todoLists Boolean Nej Kopiera uppgiftslistor/sektioner
todos Boolean Nej Kopiera uppgifter
coverConfig Boolean Nej Kopiera konfiguration för uppgiftens omslagsbild

Svar

Mutation returnerar ett Boolean värde:

  • true - Kopieringsjobbet har framgångsrikt köats
  • false - Kopieringsjobbet kunde inte startas

Kontrollera kopieringsstatus

Eftersom kopiering är asynkront, använd copyProjectStatus frågan för att kontrollera framsteg:

Kopieringsstatusfält

Fält Typ Beskrivning
queuePosition Int Position i kopieringskön
totalQueues Int Totalt antal objekt i kön
isActive Boolean Om kopieringsoperationen för närvarande är aktiv
oldProject Project Källprojektet som kopieras
newProjectName String Namnet på det nya projektet som skapas
isTemplate Boolean Om detta kopieras som en mall
oldCompany Company Källföretag
newCompany Company Målföretag
query CheckCopyStatus {
  copyProjectStatus {
    queuePosition
    totalQueues
    isActive
    oldProject {
      id
      name
    }
    newProjectName
    isTemplate
    oldCompany {
      id
      name
    }
    newCompany {
      id
      name
    }
  }
}

Nödvändiga behörigheter

För att kopiera ett projekt behöver du lämpliga behörigheter i både käll- och målplatser:

Scenario Nödvändiga behörigheter
Copy within same company OWNER, ADMIN, or MEMBER role in the source project
Copy to different company OWNER, ADMIN, or MEMBER role in the source project
• Must be a member of the target company

Källprojektet måste vara aktivt (inte arkiverat) för att kunna kopieras.

Felmeddelanden

Projektet hittades inte

{
  "errors": [{
    "message": "Record not found",
    "extensions": {
      "code": "PROJECT_NOT_FOUND"
    }
  }]
}

Uppstår när källprojektet inte finns eller du saknar åtkomst.

Företaget hittades inte

{
  "errors": [{
    "message": "Record not found",
    "extensions": {
      "code": "COMPANY_NOT_FOUND"
    }
  }]
}

Uppstår när målföretaget inte finns eller du saknar åtkomst.

Projektet är för stort

{
  "errors": [{
    "message": "Project is too large to copy",
    "extensions": {
      "code": "CREATE_PROJECT_LIMIT"
    }
  }]
}

Uppstår när projektet har mer än 250 000 uppgifter.

Kopiering pågår redan

{
  "errors": [{
    "message": "Oops!"
  }]
}

Uppstår när du redan har en kopieringsoperation som pågår.

Viktiga anteckningar

  • Asynkron operation: Mutation köar ett bakgrundsjobb och returnerar omedelbart. Använd copyProjectStatus för att spåra framsteg.
  • En kopia åt gången: Endast en kopieringsoperation per användare kan vara aktiv åt gången.
  • Större begränsningar: Projekt med mer än 250 000 uppgifter kan inte kopieras.
  • Logiska beroenden: Vissa alternativ fungerar bäst tillsammans:
    • assignees fungerar med people: true (tilldelningar kommer inte att kopieras utan personer)
    • discussionComments fungerar med discussions: true
    • statusUpdateComments fungerar med statusUpdates: true
    • projectUserRoles fungerar med people: true
  • Namnbehandling: Projektnamn trimmas och eventuella URL:er tas automatiskt bort.
  • Köprioritet: Företagskunder får högre prioritet i kopieringskön.
  • Statuscache: Kopieringsstatus cachas i 6 timmar efter slutförande.

AI-assistent

Svar genereras med hjälp av AI och kan innehålla misstag.

Hur kan jag hjälpa dig?

Fråga mig vad som helst om Blue eller denna dokumentation.

Tryck Enter för att skicka • Shift+Enter för ny rad • ⌘I för att öppna