Sample code for 30+ languages & platforms
Visual FoxPro

Yousign: List Files

See more Yousign Examples

List Yousign files.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loHttp
LOCAL loSbResponseBody
LOCAL loJson
LOCAL lnRespStatusCode
LOCAL lcId
LOCAL lcName
LOCAL lcV_type
LOCAL lcContentType
LOCAL lcDescription
LOCAL lcCreatedAt
LOCAL lcUpdatedAt
LOCAL lcSha256
LOCAL lcWorkspace
LOCAL lcCreator
LOCAL lnV_protected
LOCAL lnPosition
LOCAL lcParent
LOCAL lnFieldsCompatible
LOCAL lcCompany
LOCAL i
LOCAL lnCount_i

lnSuccess = 0

* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loHttp = CreateObject('Chilkat.Http')

* Implements the following CURL command:

* curl --location --request GET 'https://staging-api.yousign.com/files' \
* --header 'Authorization: Bearer YOUR_API_KEY' \
* --header 'Content-Type: application/json'

* Use the following online tool to generate HTTP code from a CURL command
* Convert a cURL Command to HTTP Source Code

* Adds the "Authorization: Bearer YOUR_API_KEY" header.
loHttp.AuthToken = "YOUR_API_KEY"
loHttp.SetRequestHeader("Content-Type","application/json")

loSbResponseBody = CreateObject('Chilkat.StringBuilder')
lnSuccess = loHttp.QuickGetSb("https://staging-api.yousign.com/files",loSbResponseBody)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loSbResponseBody
    CANCEL
ENDIF

loJson = CreateObject('Chilkat.JsonObject')
loJson.LoadSb(loSbResponseBody)
loJson.EmitCompact = 0

? "Response Body:"
? loJson.Emit()

lnRespStatusCode = loHttp.LastStatus
? "Response Status Code = " + STR(lnRespStatusCode)
IF (lnRespStatusCode >= 400) THEN
    ? "Response Header:"
    ? loHttp.LastHeader
    ? "Failed."
    RELEASE loHttp
    RELEASE loSbResponseBody
    RELEASE loJson
    CANCEL
ENDIF

* Sample JSON response:
* (Sample code for parsing the JSON response is shown below)

* {
*   "id": "\/files\/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
*   "name": "abc.pdf",
*   "type": "signable",
*   "contentType": "application\/pdf",
*   "description": null,
*   "createdAt": "2020-05-27T09:14:12+02:00",
*   "updatedAt": "2020-05-27T09:14:12+02:00",
*   "sha256": "ea2a92b0eff5bebfa3ccd869fd61e27bb7fe973d0dff63f106d8b0d614469fa0",
*   "metadata": [
*   ],
*   "workspace": "\/workspaces\/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
*   "creator": null,
*   "fileObjects": [
*   ],
*   "protected": false,
*   "position": 0,
*   "parent": null,
*   "fieldsCompatible": true,
*   "company": "\/companies\/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
* }

* Use the following online tool to generate parsing code from sample JSON:
* Generate Parsing Code from JSON

lcId = loJson.StringOf("id")
lcName = loJson.StringOf("name")
lcV_type = loJson.StringOf("type")
lcContentType = loJson.StringOf("contentType")
lcDescription = loJson.StringOf("description")
lcCreatedAt = loJson.StringOf("createdAt")
lcUpdatedAt = loJson.StringOf("updatedAt")
lcSha256 = loJson.StringOf("sha256")
lcWorkspace = loJson.StringOf("workspace")
lcCreator = loJson.StringOf("creator")
lnV_protected = loJson.BoolOf("protected")
lnPosition = loJson.IntOf("position")
lcParent = loJson.StringOf("parent")
lnFieldsCompatible = loJson.BoolOf("fieldsCompatible")
lcCompany = loJson.StringOf("company")
i = 0
lnCount_i = loJson.SizeOfArray("metadata")
DO WHILE i < lnCount_i
    loJson.I = i
    i = i + 1
ENDDO
i = 0
lnCount_i = loJson.SizeOfArray("fileObjects")
DO WHILE i < lnCount_i
    loJson.I = i
    i = i + 1
ENDDO

RELEASE loHttp
RELEASE loSbResponseBody
RELEASE loJson