Foxpro / KSeF / Sprawdzenie statusu aktywnej sesji interaktywnej
Back to Collection Items
LOCAL loHttp
LOCAL lnSuccess
LOCAL loQueryParams
LOCAL loResp
LOCAL loSbResponseBody
LOCAL loJResp
LOCAL lnRespStatusCode
LOCAL lcElementReferenceNumber
LOCAL lcAcquisitionTimestamp
LOCAL lcInvoiceNumber
LOCAL lcKsefReferenceNumber
LOCAL lcCreationTimestamp
LOCAL lcEntityType
LOCAL lcLastUpdateTimestamp
LOCAL lcProcessingCode
LOCAL lcProcessingDescription
LOCAL lcReferenceNumber
LOCAL lcTimestamp
LOCAL lcNumberOfElements
LOCAL lcPageOffset
LOCAL lcPageSize
LOCAL i
LOCAL lnCount_i
* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
loHttp = CreateObject('Chilkat.Http')
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loQueryParams = CreateObject('Chilkat.JsonObject')
loQueryParams.UpdateInt("PageSize",10)
loQueryParams.UpdateInt("PageOffset",0)
loQueryParams.UpdateString("IncludeDetails","true")
loHttp.SetRequestHeader("Accept","application/json")
loHttp.SetRequestHeader("SessionToken","{{apiKey}}")
loResp = loHttp.QuickRequestParams("GET","https://ksef.mf.gov.pl/api/online/Session/Status",loQueryParams)
IF (loHttp.LastMethodSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loQueryParams
CANCEL
ENDIF
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder')
loSbResponseBody = CreateObject('Chilkat.StringBuilder')
loResp.GetBodySb(loSbResponseBody)
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loJResp = CreateObject('Chilkat.JsonObject')
loJResp.LoadSb(loSbResponseBody)
loJResp.EmitCompact = 0
? "Response Body:"
? loJResp.Emit()
lnRespStatusCode = loResp.StatusCode
? "Response Status Code = " + STR(lnRespStatusCode)
IF (lnRespStatusCode >= 400) THEN
? "Response Header:"
? loResp.Header
? "Failed."
RELEASE loResp
RELEASE loHttp
RELEASE loQueryParams
RELEASE loSbResponseBody
RELEASE loJResp
CANCEL
ENDIF
RELEASE loResp
* Sample JSON response:
* (Sample code for parsing the JSON response is shown below)
* {
* "creationTimestamp": "<dateTime>",
* "entityType": "<string>",
* "lastUpdateTimestamp": "<dateTime>",
* "processingCode": "<integer>",
* "processingDescription": "<string>",
* "referenceNumber": "27171215-HY-2C82107214-1D5F90FA88-2E",
* "timestamp": "<dateTime>",
* "invoiceStatusList": [
* {
* "elementReferenceNumber": "67730731-BT-BB0B759DA9-D861FFD666-F7",
* "processingCode": "<integer>",
* "processingDescription": "<string>",
* "acquisitionTimestamp": "<dateTime>",
* "invoiceNumber": "<string>",
* "ksefReferenceNumber": "M589364889-24840303-BAD08EE6BCE5-9D"
* },
* {
* "elementReferenceNumber": "23341031-IK-42BD8BA85B-E2BAE0244C-4F",
* "processingCode": "<integer>",
* "processingDescription": "<string>",
* "acquisitionTimestamp": "<dateTime>",
* "invoiceNumber": "<string>",
* "ksefReferenceNumber": "UUX0645446-28171227-5D321BCCA530-F1"
* }
* ],
* "numberOfElements": "<long>",
* "pageOffset": "<integer>",
* "pageSize": "<integer>"
* }
* Sample code for parsing the JSON response...
* Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
lcCreationTimestamp = loJResp.StringOf("creationTimestamp")
lcEntityType = loJResp.StringOf("entityType")
lcLastUpdateTimestamp = loJResp.StringOf("lastUpdateTimestamp")
lcProcessingCode = loJResp.StringOf("processingCode")
lcProcessingDescription = loJResp.StringOf("processingDescription")
lcReferenceNumber = loJResp.StringOf("referenceNumber")
lcTimestamp = loJResp.StringOf("timestamp")
lcNumberOfElements = loJResp.StringOf("numberOfElements")
lcPageOffset = loJResp.StringOf("pageOffset")
lcPageSize = loJResp.StringOf("pageSize")
i = 0
lnCount_i = loJResp.SizeOfArray("invoiceStatusList")
DO WHILE i < lnCount_i
loJResp.I = i
lcElementReferenceNumber = loJResp.StringOf("invoiceStatusList[i].elementReferenceNumber")
lcProcessingCode = loJResp.StringOf("invoiceStatusList[i].processingCode")
lcProcessingDescription = loJResp.StringOf("invoiceStatusList[i].processingDescription")
lcAcquisitionTimestamp = loJResp.StringOf("invoiceStatusList[i].acquisitionTimestamp")
lcInvoiceNumber = loJResp.StringOf("invoiceStatusList[i].invoiceNumber")
lcKsefReferenceNumber = loJResp.StringOf("invoiceStatusList[i].ksefReferenceNumber")
i = i + 1
ENDDO
RELEASE loHttp
RELEASE loQueryParams
RELEASE loSbResponseBody
RELEASE loJResp
Curl Command
curl -G -d "PageSize=10"
-d "PageOffset=0"
-d "IncludeDetails=true"
-H "SessionToken: {{apiKey}}"
-H "Accept: application/json"
https://ksef.mf.gov.pl/api/online/Session/Status
Postman Collection Item JSON
{
"name": "Sprawdzenie statusu aktywnej sesji interaktywnej",
"request": {
"auth": {
"type": "apikey",
"apikey": [
{
"key": "key",
"value": "SessionToken",
"type": "string"
},
{
"key": "value",
"value": "{{apiKey}}",
"type": "string"
},
{
"key": "in",
"value": "header",
"type": "string"
}
]
},
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/online/Session/Status?PageSize=10&PageOffset=0&IncludeDetails=true",
"host": [
"{{baseUrl}}"
],
"path": [
"online",
"Session",
"Status"
],
"query": [
{
"key": "PageSize",
"value": "10"
},
{
"key": "PageOffset",
"value": "0"
},
{
"key": "IncludeDetails",
"value": "true"
}
]
},
"description": "Sprawdzenie statusu obecnego przetwarzania interaktywnego"
},
"response": [
{
"name": "Sprawdzanie statusu sesji zakończone poprawnie",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "SessionToken",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/online/Session/Status?PageSize=10&PageOffset=0&IncludeDetails=true",
"host": [
"{{baseUrl}}"
],
"path": [
"online",
"Session",
"Status"
],
"query": [
{
"key": "PageSize",
"value": "10"
},
{
"key": "PageOffset",
"value": "0"
},
{
"key": "IncludeDetails",
"value": "true"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"creationTimestamp\": \"<dateTime>\",\n \"entityType\": \"<string>\",\n \"lastUpdateTimestamp\": \"<dateTime>\",\n \"processingCode\": \"<integer>\",\n \"processingDescription\": \"<string>\",\n \"referenceNumber\": \"27171215-HY-2C82107214-1D5F90FA88-2E\",\n \"timestamp\": \"<dateTime>\",\n \"invoiceStatusList\": [\n {\n \"elementReferenceNumber\": \"67730731-BT-BB0B759DA9-D861FFD666-F7\",\n \"processingCode\": \"<integer>\",\n \"processingDescription\": \"<string>\",\n \"acquisitionTimestamp\": \"<dateTime>\",\n \"invoiceNumber\": \"<string>\",\n \"ksefReferenceNumber\": \"M589364889-24840303-BAD08EE6BCE5-9D\"\n },\n {\n \"elementReferenceNumber\": \"23341031-IK-42BD8BA85B-E2BAE0244C-4F\",\n \"processingCode\": \"<integer>\",\n \"processingDescription\": \"<string>\",\n \"acquisitionTimestamp\": \"<dateTime>\",\n \"invoiceNumber\": \"<string>\",\n \"ksefReferenceNumber\": \"UUX0645446-28171227-5D321BCCA530-F1\"\n }\n ],\n \"numberOfElements\": \"<long>\",\n \"pageOffset\": \"<integer>\",\n \"pageSize\": \"<integer>\"\n}"
},
{
"name": "Nie znaleziono danych",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "SessionToken",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/online/Session/Status?PageSize=10&PageOffset=0&IncludeDetails=true",
"host": [
"{{baseUrl}}"
],
"path": [
"online",
"Session",
"Status"
],
"query": [
{
"key": "PageSize",
"value": "10"
},
{
"key": "PageOffset",
"value": "0"
},
{
"key": "IncludeDetails",
"value": "true"
}
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"exception\": {\n \"exceptionDetailList\": [\n {\n \"exceptionCode\": \"<integer>\",\n \"exceptionDescription\": \"<string>\"\n }\n ],\n \"serviceCode\": \"<string>\",\n \"serviceCtx\": \"<string>\",\n \"serviceName\": \"<string>\",\n \"timestamp\": \"<dateTime>\",\n \"referenceNumber\": \"20560508-TX-BC1107E227-31DE9417C0-CE\"\n }\n}"
},
{
"name": "Nieautoryzowany dostęp",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "SessionToken",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/online/Session/Status?PageSize=10&PageOffset=0&IncludeDetails=true",
"host": [
"{{baseUrl}}"
],
"path": [
"online",
"Session",
"Status"
],
"query": [
{
"key": "PageSize",
"value": "10"
},
{
"key": "PageOffset",
"value": "0"
},
{
"key": "IncludeDetails",
"value": "true"
}
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"exception\": {\n \"exceptionDetailList\": [\n {\n \"exceptionCode\": \"<integer>\",\n \"exceptionDescription\": \"<string>\"\n }\n ],\n \"serviceCode\": \"<string>\",\n \"serviceCtx\": \"<string>\",\n \"serviceName\": \"<string>\",\n \"timestamp\": \"<dateTime>\",\n \"referenceNumber\": \"20560508-TX-BC1107E227-31DE9417C0-CE\"\n }\n}"
}
]
}