Delete a dispute evidence file
Query
mutation ShopifyPaymentsDisputeFileUploadDestroy($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId, destroy: true}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }
Variables
{ "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }
cURL
curl -X POST \ https://your-development-store.myshopify.com/admin/api/unstable/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "mutation ShopifyPaymentsDisputeFileUploadDestroy($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId, destroy: true}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }", "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" } }'
React Router
import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql mutation ShopifyPaymentsDisputeFileUploadDestroy($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId, destroy: true}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, { variables: { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }, }, ); const json = await response.json(); return json.data; }
Ruby
session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY mutation ShopifyPaymentsDisputeFileUploadDestroy($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId, destroy: true}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } } QUERY variables = { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" } response = client.query(query: query, variables: variables)
Node.js
const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: { "query": `mutation ShopifyPaymentsDisputeFileUploadDestroy($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId, destroy: true}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }, }, });
Response
{ "disputeEvidenceUpdate": { "disputeEvidence": { "disputeFileUploads": [], "dispute": { "amount": { "amount": "11.5", "currencyCode": "USD" }, "evidenceDueBy": "2024-11-20T19:00:00-05:00", "evidenceSentOn": null, "finalizedOn": null, "id": "gid://shopify/ShopifyPaymentsDispute/598735659", "initiatedAt": "2013-05-04T00:00:00Z", "reasonDetails": { "reason": "FRAUDULENT", "networkReasonCode": "4827" }, "status": "NEEDS_RESPONSE", "type": "CHARGEBACK" } }, "userErrors": [] } }
Updates dispute evidence
Query
mutation ShopifyPaymentsDisputeEvidenceUpdate($id: ID!, $input: ShopifyPaymentsDisputeEvidenceUpdateInput!) { disputeEvidenceUpdate(id: $id, input: $input) { disputeEvidence { uncategorizedText dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }
Variables
{ "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "input": { "customerFirstName": "Kermit", "customerLastName": "The frog", "customerEmailAddress": "kermit@example.com", "shippingAddress": { "address1": "1 Infinite Loop", "address2": "Muppet Studio", "city": "Cupertino", "zip": "95014", "country": "US", "province": "California" }, "uncategorizedText": "Test uncategorized text", "accessActivityLog": "Test access activity log", "cancellationPolicyDisclosure": "Test cancellation policy disclosure", "cancellationRebuttal": "Test cancellation rebuttal", "refundPolicyDisclosure": "Test refund policy disclosure", "refundRefusalExplanation": "Test refund refusal explanation" } }
cURL
curl -X POST \ https://your-development-store.myshopify.com/admin/api/unstable/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "mutation ShopifyPaymentsDisputeEvidenceUpdate($id: ID!, $input: ShopifyPaymentsDisputeEvidenceUpdateInput!) { disputeEvidenceUpdate(id: $id, input: $input) { disputeEvidence { uncategorizedText dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }", "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "input": { "customerFirstName": "Kermit", "customerLastName": "The frog", "customerEmailAddress": "kermit@example.com", "shippingAddress": { "address1": "1 Infinite Loop", "address2": "Muppet Studio", "city": "Cupertino", "zip": "95014", "country": "US", "province": "California" }, "uncategorizedText": "Test uncategorized text", "accessActivityLog": "Test access activity log", "cancellationPolicyDisclosure": "Test cancellation policy disclosure", "cancellationRebuttal": "Test cancellation rebuttal", "refundPolicyDisclosure": "Test refund policy disclosure", "refundRefusalExplanation": "Test refund refusal explanation" } } }'
React Router
import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql mutation ShopifyPaymentsDisputeEvidenceUpdate($id: ID!, $input: ShopifyPaymentsDisputeEvidenceUpdateInput!) { disputeEvidenceUpdate(id: $id, input: $input) { disputeEvidence { uncategorizedText dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, { variables: { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "input": { "customerFirstName": "Kermit", "customerLastName": "The frog", "customerEmailAddress": "kermit@example.com", "shippingAddress": { "address1": "1 Infinite Loop", "address2": "Muppet Studio", "city": "Cupertino", "zip": "95014", "country": "US", "province": "California" }, "uncategorizedText": "Test uncategorized text", "accessActivityLog": "Test access activity log", "cancellationPolicyDisclosure": "Test cancellation policy disclosure", "cancellationRebuttal": "Test cancellation rebuttal", "refundPolicyDisclosure": "Test refund policy disclosure", "refundRefusalExplanation": "Test refund refusal explanation" } }, }, ); const json = await response.json(); return json.data; }
Ruby
session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY mutation ShopifyPaymentsDisputeEvidenceUpdate($id: ID!, $input: ShopifyPaymentsDisputeEvidenceUpdateInput!) { disputeEvidenceUpdate(id: $id, input: $input) { disputeEvidence { uncategorizedText dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } } QUERY variables = { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "input": { "customerFirstName": "Kermit", "customerLastName": "The frog", "customerEmailAddress": "kermit@example.com", "shippingAddress": { "address1": "1 Infinite Loop", "address2": "Muppet Studio", "city": "Cupertino", "zip": "95014", "country": "US", "province": "California" }, "uncategorizedText": "Test uncategorized text", "accessActivityLog": "Test access activity log", "cancellationPolicyDisclosure": "Test cancellation policy disclosure", "cancellationRebuttal": "Test cancellation rebuttal", "refundPolicyDisclosure": "Test refund policy disclosure", "refundRefusalExplanation": "Test refund refusal explanation" } } response = client.query(query: query, variables: variables)
Node.js
const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: { "query": `mutation ShopifyPaymentsDisputeEvidenceUpdate($id: ID!, $input: ShopifyPaymentsDisputeEvidenceUpdateInput!) { disputeEvidenceUpdate(id: $id, input: $input) { disputeEvidence { uncategorizedText dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "input": { "customerFirstName": "Kermit", "customerLastName": "The frog", "customerEmailAddress": "kermit@example.com", "shippingAddress": { "address1": "1 Infinite Loop", "address2": "Muppet Studio", "city": "Cupertino", "zip": "95014", "country": "US", "province": "California" }, "uncategorizedText": "Test uncategorized text", "accessActivityLog": "Test access activity log", "cancellationPolicyDisclosure": "Test cancellation policy disclosure", "cancellationRebuttal": "Test cancellation rebuttal", "refundPolicyDisclosure": "Test refund policy disclosure", "refundRefusalExplanation": "Test refund refusal explanation" } }, }, });
Response
{ "disputeEvidenceUpdate": { "disputeEvidence": { "uncategorizedText": "Test uncategorized text", "dispute": { "amount": { "amount": "11.5", "currencyCode": "USD" }, "evidenceDueBy": "2024-11-20T19:00:00-05:00", "evidenceSentOn": null, "finalizedOn": null, "id": "gid://shopify/ShopifyPaymentsDispute/598735659", "initiatedAt": "2013-05-04T00:00:00Z", "reasonDetails": { "reason": "FRAUDULENT", "networkReasonCode": "4827" }, "status": "NEEDS_RESPONSE", "type": "CHARGEBACK" } }, "userErrors": [] } }
Upload a file to a dispute
Query
mutation ShopifyPaymentsDisputeFileUpload($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }
Variables
{ "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }
cURL
curl -X POST \ https://your-development-store.myshopify.com/admin/api/unstable/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "mutation ShopifyPaymentsDisputeFileUpload($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }", "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" } }'
React Router
import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql mutation ShopifyPaymentsDisputeFileUpload($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, { variables: { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }, }, ); const json = await response.json(); return json.data; }
Ruby
session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY mutation ShopifyPaymentsDisputeFileUpload($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } } QUERY variables = { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" } response = client.query(query: query, variables: variables)
Node.js
const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: { "query": `mutation ShopifyPaymentsDisputeFileUpload($id: ID!, $fileId: ID!) { disputeEvidenceUpdate(id: $id, input: {uncategorizedFile: {id: $fileId}}) { disputeEvidence { disputeFileUploads { id } dispute { amount { amount currencyCode } evidenceDueBy evidenceSentOn finalizedOn id initiatedAt reasonDetails { reason networkReasonCode } status type } } userErrors { field message } } }`, "variables": { "id": "gid://shopify/ShopifyPaymentsDisputeEvidence/819974671", "fileId": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" }, }, });
Response
{ "disputeEvidenceUpdate": { "disputeEvidence": { "disputeFileUploads": [ { "id": "gid://shopify/ShopifyPaymentsDisputeFileUpload/567271523" } ], "dispute": { "amount": { "amount": "11.5", "currencyCode": "USD" }, "evidenceDueBy": "2024-11-20T19:00:00-05:00", "evidenceSentOn": null, "finalizedOn": null, "id": "gid://shopify/ShopifyPaymentsDispute/598735659", "initiatedAt": "2013-05-04T00:00:00Z", "reasonDetails": { "reason": "FRAUDULENT", "networkReasonCode": "4827" }, "status": "NEEDS_RESPONSE", "type": "CHARGEBACK" } }, "userErrors": [] } }