Packages

An elixir client for MangoPay API.

Current section

Files

Jump to
mangopay lib mango_pay dispute_document.ex
Raw

lib/mango_pay/dispute_document.ex

defmodule MangoPay.DisputeDocument do
@moduledoc """
Functions for MangoPay [dispute document](https://docs.mangopay.com/endpoints/v2.01/dispute-documents#e214_the-dispute-document-object).
"""
use MangoPay.Query.Base
set_path "dispute-documents"
@doc """
Get a dispute.
## Examples
{:ok, dispute} = MangoPay.DisputeDocument.get(id)
"""
def get id do
_get id
end
@doc """
Get a dispute.
## Examples
dispute = MangoPay.DisputeDocument.get!(id)
"""
def get! id do
_get! id
end
@doc """
Create a dispute document.
## Examples
params = %{
"Tag": "custom meta",
"Type": "DELIVERY_PROOF"
}
{:ok, dispute_document} = MangoPay.DisputeDocument.create("dispute_id", params)
"""
def create dispute_id, params do
_create params, resource_document(dispute_id)
end
@doc """
Create a dispute document.
## Examples
params = %{
"Tag": "custom meta",
"Type": "DELIVERY_PROOF"
}
dispute_document = MangoPay.DisputeDocument.create!("dispute_id", params)
"""
def create! dispute_id, params do
_create! params, resource_document(dispute_id)
end
@doc """
Create a page for a dispute document.
## Examples
params = %{
File: "blahblah"
}
{:ok, dispute_document_page} = MangoPay.DisputeDocument.create_page("dispute_id", "dispute_document_id", params)
"""
def create_page dispute_id, dispute_document_id, params do
_create params, resource_document(dispute_id, dispute_document_id) ++ ["pages"]
end
@doc """
Create a page for a dispute document.
## Examples
params = %{
File: "blahblah"
}
dispute_document_page = MangoPay.DisputeDocument.create_page!("dispute_id", "dispute_document_id", params)
"""
def create_page! dispute_id, dispute_document_id, params do
_create! params, resource_document(dispute_id, dispute_document_id) ++ ["pages"]
end
@doc """
Submit a dispute document.
## Examples
params = %{
"Status": "CREATED"
}
{:ok, dispute_document} = MangoPay.DisputeDocument.submit("dispute_id", params)
"""
def submit dispute_id, dispute_document_id do
_update %{"Status": "CREATED"}, resource_document(dispute_id, dispute_document_id)
end
@doc """
Submit a dispute document.
## Examples
params = %{
"Status": "CREATED"
}
dispute_document = MangoPay.DisputeDocument.submit!("dispute_id", params)
"""
def submit! dispute_id, dispute_document_id do
_update! %{"Status": "CREATED"}, resource_document(dispute_id, dispute_document_id)
end
@doc """
All dispute documents by dispute.
## Examples
dispute_id = Id of a dispute object
query = %{
"Page": 1,
"Per_Page": 25,
"Sort": "CreationDate:DESC",
"BeforeDate": 1463440221,
"AfterDate": 1431817821,
"Status": "CREATED, SUCCEEDED",
"Type": "DELIVERY_PROOF"
}
{:ok, dispute_documents} = MangoPay.DisputeDocument.all_by_dispute(dispute_id, query)
"""
def all_by_dispute id, query \\ %{} do
_all resource_document(id), query
end
@doc """
All dispute documents by dispute.
## Examples
dispute_id = Id of a dispute object
query = %{
"Page": 1,
"Per_Page": 25,
"Sort": "CreationDate:DESC",
"BeforeDate": 1463440221,
"AfterDate": 1431817821,
"Status": "CREATED, SUCCEEDED",
"Type": "DELIVERY_PROOF"
}
dispute_documents = MangoPay.DisputeDocument.all_by_dispute!(dispute_id, query)
"""
def all_by_dispute! id, query \\ %{} do
_all! resource_document(id), query
end
@doc """
Consult a dispute document page.
## Examples
{:ok, dispute_document} = MangoPay.DisputeDocument.consult(dispute_id)
"""
def consult id do
_create %{}, [resource(id), "consult"]
end
@doc """
Consult a dispute document page.
## Examples
dispute_document = MangoPay.DisputeDocument.consult!("dispute_id")
"""
def consult! id do
_create! %{}, [resource(id), "consult"]
end
def resource_document(dispute_id), do: ["disputes", dispute_id, "documents"]
def resource_document(dispute_id, dispute_document_id), do: resource_document(dispute_id) ++ ["#{dispute_document_id}"]
end