<?php
$request = new HttpRequest();
$request->setUrl('http://aotg.cloud:8080/api/public/v1/Debtor/{[%21MzAwLUEwMDE%21]}');
$request->setMethod(HTTP_METH_DELETE);
$request->setHeaders(array(
'cache-control' => 'no-cache',
'SOTC_AUTH' => 'SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d'
));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
AOTG API: Delete Debtor: Difference between revisions
Content added Content deleted
No edit summary |
|||
(8 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
*'''debtorId''' is a unique identifier created in AOTG. |
*'''debtorId''' is a unique identifier created in AOTG. |
||
*See [[AOTG API: Get List of Debtor#Response_From_Result|Get List of Debtor]] on how to obtain '''Id''' (that is created in AOTG). |
*See [[AOTG API: Get List of Debtor#Response_From_Result|Get List of Debtor]] on how to obtain '''Id''' (that is created in AOTG). |
||
{{AOTGApiMethodsSpec|DELETE|/api/public/v1/Debtor/{debtorId} |
{{AOTGApiMethodsSpec|DELETE|/api/public/v1/Debtor/{debtorId}|Params=None}} |
||
==API Request Flow== |
==API Request Flow== |
||
[[File:AOTGApiCompleteOrFailFlow.png|link=]] |
[[File:AOTGApiCompleteOrFailFlow.png|link=]] |
||
#Submit Delete request of a debtor with an Id of the debtor |
#Submit Delete request of a debtor with an Id of the debtor |
||
#Check the successful request status, if the action is |
#Check the successful request status, if the action is '''Completed''' or '''Failed'''. |
||
#To get the failed reason, use RESULT method to retrieve the message of completed or failed. |
#To get the failed reason, use RESULT method to retrieve the message of completed or failed. |
||
Line 165: | Line 165: | ||
}} |
}} |
||
====Response==== |
====Response Status==== |
||
⚫ | |||
200 OK |
|||
=====Completed status===== |
|||
*'''Completed''' status Indicates that the DELETE request has been performed and succeeded. |
|||
<syntaxhighlight lang="json-object"> |
|||
{ |
|||
⚫ | |||
"Status": "Completed" |
|||
} |
|||
</syntaxhighlight> |
|||
=====Failed status===== |
|||
*'''Failed''' status Indicates that the DELETE request has been performed but has error. |
|||
<syntaxhighlight lang="json-object"> |
|||
{ |
|||
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6", |
|||
"Status": "Failed" |
|||
} |
|||
</syntaxhighlight> |
|||
==Use RESULT method to get the failed reason of DELETE request== |
==Use RESULT method to get the failed reason of DELETE request== |
||
===Code Snippets=== |
|||
{{AOTGApiCodeSnippetTab |
{{AOTGApiCodeSnippetTab |
||
|PHPHttp= |
|PHPHttp= |
||
Line 251: | Line 235: | ||
}} |
}} |
||
<br/> |
|||
===Response Successful from HTTP RESULT=== |
====Response Successful from HTTP RESULT==== |
||
200 OK |
200 OK |
||
===Result of Failed reason=== |
====Result of Failed reason==== |
||
====Debtor record not found==== |
=====Debtor record not found===== |
||
<tabber> |
<tabber> |
||
Body= |
Body= |
||
Line 290: | Line 275: | ||
</tabber> |
</tabber> |
||
====Account in use, can't delete debtor==== |
=====Account in use, can't delete debtor===== |
||
<tabber> |
<tabber> |
||
Body= |
Body= |
Latest revision as of 04:34, 28 March 2019
Delete Debtor
Delete a specific Debtor.
- debtorId is a unique identifier created in AOTG.
- See Get List of Debtor on how to obtain Id (that is created in AOTG).
API Method
Http Method: DELETE
Method: /api/public/v1/Debtor/{debtorId}
Content-Type: application/json
Parameters: None
API Request Flow
- Submit Delete request of a debtor with an Id of the debtor
- Check the successful request status, if the action is Completed or Failed.
- To get the failed reason, use RESULT method to retrieve the message of completed or failed.
Code Snippets
- Add header of "SOTC_AUTH", and assign value of AccessToken.
var client = new RestClient("http://aotg.cloud:8080/api/public/v1/Debtor/{[%21MzAwLUEwMDE%21]}");
var request = new RestRequest(Method.DELETE);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("SOTC_AUTH", "SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d");
IRestResponse response = client.Execute(request);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://aotg.cloud:8080/api/public/v1/Debtor/{[%21MzAwLUEwMDE%21]}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => "",
CURLOPT_HTTPHEADER => array(
"SOTC_AUTH: SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d",
"cache-control: no-cache"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Code is not available
Response
- Successful Response indicates DELETE request has been performed.
Response Successful HTTP Request
200 OK
Response Successful Body
- Id and Name can be used to retrieve the status and reason of the failed status.
{
"Id": "f0268032-c161-4548-a74a-adb7143274a6",
"Name": "DeleteDebtor",
"StartTimestamp": "2019-02-28T05:02:28.7462812Z",
"EndTimestamp": "2019-02-28T05:02:28.7462812Z"
}
AOTG Cloud Server returns successful response when the request has been performed. But this response does not indicate the status of the delete. |
Get Status of the DELETE
Code Snippets
<?php
$request = new HttpRequest();
$request->setUrl('http://aotg.cloud:8080/api/public/v1/Result/f0268032-c161-4548-a74a-adb7143274a6');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'cache-control' => 'no-cache',
'SOTC_AUTH' => 'SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d'
));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
var client = new RestClient("http://aotg.cloud:8080/api/public/v1/Result/f0268032-c161-4548-a74a-adb7143274a6");
var request = new RestRequest(Method.GET);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("SOTC_AUTH", "SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d");
IRestResponse response = client.Execute(request);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://aotg.cloud:8080/api/public/v1/Result/f0268032-c161-4548-a74a-adb7143274a6",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => "",
CURLOPT_HTTPHEADER => array(
"SOTC_AUTH: SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d",
"cache-control: no-cache"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Code is not available
Response Status
4 possible responses from process status.
InQueue status
- InQueue status Indicates that the requests to AOTG Server is waiting to be processed.
- Usually this happen when many requests are called to AOTG Web API in within a second.
- Make sure the request in the loop has pause time,
- or use 'batch' method to process multiple records in single request if applicable.
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6", "Status": "InQueue"
Processing status
- Processing status indicates that the request is not complete.
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6", "Status": "Processing"
Completed status
- Completed status Indicates that the request has been performed and succeeded.
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6", "Status": "Completed"
Failed status
- Failed status indicates that the request has been performed but has error.
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6", "Status": "Failed"
Use RESULT method to get the failed reason of DELETE request
Code Snippets
<?php
$request = new HttpRequest();
$request->setUrl('http://aotg.cloud:8080/api/public/v1/Result/DeleteDebtor/f0268032-c161-4548-a74a-adb7143274a6/result');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'cache-control' => 'no-cache',
'SOTC_AUTH' => 'SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d'
));
try {
$response = $request->send();
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
var client = new RestClient("http://aotg.cloud:8080/api/public/v1/Result/DeleteDebtor/f0268032-c161-4548-a74a-adb7143274a6/result");
var request = new RestRequest(Method.GET);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("SOTC_AUTH", "SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d");
IRestResponse response = client.Execute(request);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://aotg.cloud:8080/api/public/v1/Result/DeleteDebtor/f0268032-c161-4548-a74a-adb7143274a6/result",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => "",
CURLOPT_HTTPHEADER => array(
"SOTC_AUTH: SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d",
"cache-control: no-cache"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Code is not available
Response Successful from HTTP RESULT
200 OK
Result of Failed reason
Debtor record not found
{
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6",
"RequestName": "DeleteDebtor",
"HostName": "---",
"IPAddress": "---",
"RequestTypeName": null,
"ResultJson": "{\"Message\":\"Debtor record not found (AccNo=300-A002).\",\"StackTrace\":\" at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)\\r\\n at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)\\r\\n at PSW.SOTC.Accounting.InProcess.AppServiceDispatcher.<DispatchRequest>d__13.MoveNext()\",\"Source\":\"PSW.SOTC.Accounting.Provider.Autocount\"}",
"RequestParamJson": null,
"ResultStream": null,
"ResultTypeName": "PSW.SOTC.Accounting.Provider.Models.ExceptionEntity",
"Status": "Failed",
"Version": "1.2.19051.12002",
"AccountBookInfo": "Plug-In 1.9 Test-1.0.9.77",
"AccountBookDBInfo": "1.0.9.77",
"Timestamp": "2019-02-28T04:52:00.3825908Z",
"ResultedTimestamp": null,
"ProcessingInterval": 0.3498795,
"InQueueInterval": null,
"ResultFileURL": null
}
{
"Message": "Debtor record not found (AccNo=300-A002).",
"StackTrace": " at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification) at PSW.SOTC.Accounting.InProcess.AppServiceDispatcher.<DispatchRequest>d__13.MoveNext()",
"Source": "PSW.SOTC.Accounting.Provider.Autocount"
}
Account in use, can't delete debtor
{
"RequestId": "f0268032-c161-4548-a74a-adb7143274a6",
"RequestName": "DeleteDebtor",
"HostName": "---",
"IPAddress": "---",
"RequestTypeName": null,
"ResultJson": "{\"Message\":\"Account in use, can't delete debtor.\",\"StackTrace\":\" at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)\\r\\n at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)\\r\\n at PSW.SOTC.Accounting.InProcess.AppServiceDispatcher.<DispatchRequest>d__13.MoveNext()\",\"Source\":\"PSW.SOTC.Accounting.Provider.Autocount\"}",
"RequestParamJson": null,
"ResultStream": null,
"ResultTypeName": "PSW.SOTC.Accounting.Provider.Models.ExceptionEntity",
"Status": "Failed",
"Version": "1.2.19051.12002",
"AccountBookInfo": "Plug-In 1.9 Test-1.0.9.77",
"AccountBookDBInfo": "1.0.9.77",
"Timestamp": "2019-02-28T05:02:31.0804976Z",
"ResultedTimestamp": null,
"ProcessingInterval": 0.47969649999999997,
"InQueueInterval": null,
"ResultFileURL": null
}
{
"Message": "Account in use, can't delete debtor.",
"StackTrace": " at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification) at PSW.SOTC.Accounting.InProcess.AppServiceDispatcher.<DispatchRequest>d__13.MoveNext()",
"Source": "PSW.SOTC.Accounting.Provider.Autocount"
}
See Also AOTG API
- Introduction to AOTG API
- Begin AutoCount Accounting Integration via AOTG API
- AOTG API Authenticate (Get AccessToken)
Debtor |
AR Invoice |
Item |
Create |
Update |
GL/AR/AP |
General |
Go to top
|
Resources For AutoCount Software Developers
|