Skip to main content
PATCH
/
med-contest
/
exposes
/
{medId}
Enviar evidência da disputa
curl --request PATCH \
  --url https://gateway.3xpay.co/med-contest/exposes/{medId} \
  --header 'Content-Type: multipart/form-data' \
  --header 'api_key: <api-key>' \
  --header 'api_secret: <api-key>' \
  --form file='@example-file' \
  --form 'description=<string>'
{
  "id": 1024,
  "transactionId": 50231,
  "status": "WAITING_CONTENT",
  "content": "https://s3.../comprovante.pdf",
  "description": "Comprovante de pagamento original.",
  "external_med_id": "dispute_8f3a...",
  "processor_name": "woovi",
  "retry_count": 0,
  "last_error": "<string>",
  "created_at": "2026-05-12T10:30:00.000Z",
  "updated_at": "2026-05-12T10:30:00.000Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.3xpay.co/llms.txt

Use this file to discover all available pages before exploring further.

Envia o arquivo de evidência e a descrição da defesa para o medId indicado. Internamente, o gateway encaminha a defesa ao PSP upstream.
Pode ser chamado mais de uma vez para anexar evidências adicionais — a última prevalece no campo content.

Status final retornado

O status na resposta indica o resultado imediato do envio:
StatusSignificado
DEFENSE_SUBMITTEDDefesa entregue ao PSP com sucesso (caminho feliz).
DEFENSE_FAILEDO PSP rejeitou o envio (erro de transporte/4xx). Detalhes em last_error. Pode chamar o PATCH novamente para tentar outra evidência.
REQUESTEDO PSP da transação ainda não tem caminho server-to-server suportado (hoje apenas Woovi). Nesses casos o time interno é notificado e acompanha manualmente.

Exemplo cURL

curl -X PATCH "https://gateway.3xpay.co/med-contest/exposes/1024" \
  -H "api_key: SUA_API_KEY" \
  -H "api_secret: SEU_API_SECRET" \
  -F "file=@/caminho/comprovante.pdf" \
  -F "description=Comprovante de pagamento original emitido pelo nosso PSP."
O arquivo tem tamanho máximo de 10 MB e a descrição até 2000 caracteres. Ambos os campos são obrigatórios.

Authorizations

api_key
string
header
required
api_secret
string
header
required

Path Parameters

medId
integer
required

ID numérico da disputa.

Body

multipart/form-data
file
file
required

Documento de evidência (PDF, imagem, etc.). Tamanho máximo: 10 MB.

description
string
required

Descrição/texto da defesa. Máximo 2000 caracteres.

Maximum string length: 2000

Response

Evidência registrada com sucesso

Registro da disputa de MED. O campo id é o medId usado nos demais endpoints.

id
integer

ID numérico da disputa (medId).

Example:

1024

transactionId
integer

ID interno da transação relacionada.

Example:

50231

status
enum<string>

Status do registro de disputa.

Available options:
WAITING_CONTENT,
REQUESTED,
DEFENSE_SUBMITTED,
DEFENSE_FAILED,
APPROVED,
REJECTED,
REFUNDED,
CANCELLED
content
string | null

URL do arquivo de evidência armazenado. null enquanto a evidência não foi enviada.

Example:

"https://s3.../comprovante.pdf"

description
string | null

Descrição/texto da defesa enviada com a evidência.

Example:

"Comprovante de pagamento original."

external_med_id
string | null

ID da disputa no PSP upstream (preenchido após o envio).

Example:

"dispute_8f3a..."

processor_name
string | null

Nome do PSP upstream que recebeu a defesa.

Example:

"woovi"

retry_count
integer

Quantidade de tentativas de envio.

Example:

0

last_error
string | null

Mensagem do último erro de transporte, se houver.

created_at
string<date-time>
Example:

"2026-05-12T10:30:00.000Z"

updated_at
string<date-time>
Example:

"2026-05-12T10:30:00.000Z"