Beam Help
Richiedi supporto

How-to · Zoho DESK

Come eliminare gli allegati di transizione in Zoho Desk

Rimuovi allegati specifici dalle transizioni dei ticket in modo programmatico.

Eliminare un allegato di transizione in Zoho Desk richiede una chiamata API mirata che fa riferimento al ticket, alla specifica bozza di transizione e all'allegato che si desidera rimuovere — tre ID che lavorano insieme.


Perché è importante


Quando gli agenti lavorano attraverso le transizioni blueprint in Zoho Desk, possono allegare file a una bozza di transizione prima di inviarla. Se viene allegato un file errato o obsoleto, è necessario un modo pulito per rimuoverlo in modo programmatico senza influire sugli altri allegati o thread del ticket. Questo è particolarmente rilevante per i team che automatizzano i flussi di lavoro di supporto tramite la REST API di Zoho Desk.


> Nota: Beam Help è un servizio di supporto esperto indipendente per Zoho — non siamo il supporto ufficiale di Zoho.


---


Procedura passo dopo passo


Passaggio 1. Raccogli i tre identificatori richiesti prima di effettuare qualsiasi chiamata API: il ticketId del ticket in fase di transizione, il transitionId della bozza di transizione blueprint attiva e l'attachmentId del file specifico che desideri eliminare. [1]


Passaggio 2. Se non sei sicuro dell'attachmentId, recupera prima l'elenco degli allegati sulla bozza di transizione inviando una richiesta GET a /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments. La risposta includerà gli ID di tutti i file attualmente allegati a quella bozza. [7]


Passaggio 3. Una volta ottenuti tutti e tre gli ID, invia una richiesta DELETE al seguente endpoint:


DELETE /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments/{attachmentId}

Sostituisci {ticketId}, {transitionId} e {attachmentId} con i valori effettivi raccolti nei passaggi precedenti. [1]


Passaggio 4. Se stai lavorando in Python, la chiamata corrisponde all'operazione op16deleteattachmentof_transition. Un'implementazione minimale è la seguente: [1]


def op_16_delete_attachment_of_transition(self, ticketId: str, transitionId: str, attachmentId: str, p: dict = None):
    return self.c.request(
        "DELETE",
        f"/api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments/{attachmentId}",
        p,
        None
    )

Passa il contesto delle credenziali/sessione tramite self.c e fornisci i tre ID stringa come argomenti. [1]


Passaggio 5. Conferma l'eliminazione rieseguendo la richiesta GET del Passaggio 2. Se l'elenco degli allegati non contiene più l'attachmentId di destinazione, l'operazione è riuscita. [7]


---


Errori comuni


  • Endpoint errato per il tipo di allegato sbagliato. Zoho Desk espone diversi endpoint distinti per l'eliminazione degli allegati. Usa /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments/{attachmentId} specificamente per gli allegati delle bozze di transizione. [1] Non confonderlo con l'endpoint generale degli allegati del ticket (/api/v1/tickets/{ticketId}/attachments/{attachmentId}) [6], l'endpoint degli allegati a livello di thread (/api/v1/tickets/{ticketid}/threads/{threadid}/attachments/{attachment_id}) [2], o l'endpoint degli allegati delle attività (/api/v1/tasks/{taskId}/attachments/{attachmentId}). [5] Ognuno fa riferimento a una risorsa diversa.

  • transitionId non aggiornato o non valido. Le transizioni blueprint sono oggetti bozza legati a uno specifico stato del flusso di lavoro. Se la transizione è già stata inviata o annullata, il transitionId potrebbe non essere più valido e la chiamata di eliminazione fallirà. Verifica sempre che la transizione sia ancora in stato di bozza prima di tentare l'eliminazione. [1]

  • attachmentId mancante. Tentare il DELETE senza aver prima confermato l'attachmentId tramite l'endpoint GET è una causa comune di errori 404. Usa l'endpoint di elenco per confermare che il file esiste sulla transizione prima di eliminarlo. [7]

---


Cosa verificare


  • Tutti e tre gli ID sono corretti e aggiornati — conferma che ticketId, transitionId e attachmentId siano validi e che la bozza di transizione sia ancora aperta prima di emettere il DELETE. [1]
  • Viene utilizzato l'endpoint corretto — verifica di stare chiamando il percorso specifico per le transizioni, non una route di allegati a livello di ticket o di thread. [1][2][6]
  • L'eliminazione è confermata — riesegui il GET su /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments e verifica che il file rimosso non compaia più nella risposta. [7]

Sources cited

  1. [1] DELETE /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments/{attachmentId}
  2. [2] DELETE /api/v1/tickets/{ticket_id}/threads/{thread_id}/attachments/{attachment_id}
  3. [3] DELETE /api/v1/tickets/{ticket_id}/attachments/{attachment_id}
  4. [4] DELETE /api/v1/products/{productId}/attachments/{attachmentId}
  5. [5] DELETE /api/v1/tasks/{taskId}/attachments/{attachmentId}
  6. [6] DELETE /api/v1/tickets/{ticketId}/attachments/{attachmentId}
  7. [7] GET /api/v1/tickets/{ticketId}/transitions/{transitionId}/attachments
  8. [8] DELETE /api/v1/accounts/{accountId}/attachments/{attachmentId}
Elimina Allegato di Transizione | Beam Help — Beam Help