Sample code for 30+ languages & platforms
C#

IntakeQ: Send a Questionnaire

See more IntakeQ Examples

Send an intake package using the API.

Chilkat C# Downloads

C#
bool success = false;

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

Chilkat.Http http = new Chilkat.Http();

//  Implements the following CURL command:

//  curl -H "Content-Type: application/json" \
//       -H 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxxx' \
//       -X POST \
//       -d '{     		
//  	"QuestionnaireId": "00000000-0000-0000-0000-000000000000",     		
//  	"ClientId": 123, 
//  	"ClientName": "Dexter Morgan",
//  	"ClientEmail": "dexter@email.com",
//  	"ClientPhone": "2222222222", 
//  	"PractitionerId": "00000000-0000-0000-0000-000000000000",
//  }' https://intakeq.com/api/v1/intakes/send

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

//  Use this online tool to generate code from sample JSON:
//  Generate Code to Create JSON

//  The following JSON is sent in the request body.

//  {
//    "QuestionnaireId": "00000000-0000-0000-0000-000000000000",
//    "ClientId": 123,
//    "ClientName": "Dexter Morgan",
//    "ClientEmail": "dexter@email.com",
//    "ClientPhone": "2222222222",
//    "PractitionerId": "00000000-0000-0000-0000-000000000000"
//  }

Chilkat.JsonObject json = new Chilkat.JsonObject();
json.UpdateString("QuestionnaireId","00000000-0000-0000-0000-000000000000");
json.UpdateInt("ClientId",123);
json.UpdateString("ClientName","Dexter Morgan");
json.UpdateString("ClientEmail","dexter@email.com");
json.UpdateString("ClientPhone","2222222222");
json.UpdateString("PractitionerId","00000000-0000-0000-0000-000000000000");

http.SetRequestHeader("Content-Type","application/json");
http.SetRequestHeader("X-Auth-Key","xxxxxxxxxxxxxxxxxxxxxxxxx");

Chilkat.HttpResponse resp = new Chilkat.HttpResponse();
success = http.HttpJson("POST","https://intakeq.com/api/v1/intakes/send",json,"application/json",resp);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

Chilkat.StringBuilder sbResponseBody = new Chilkat.StringBuilder();
resp.GetBodySb(sbResponseBody);
Chilkat.JsonObject jResp = new Chilkat.JsonObject();
jResp.LoadSb(sbResponseBody);
jResp.EmitCompact = false;

Debug.WriteLine("Response Body:");
Debug.WriteLine(jResp.Emit());

int respStatusCode = resp.StatusCode;
Debug.WriteLine("Response Status Code = " + Convert.ToString(respStatusCode));
if (respStatusCode >= 400) {
    Debug.WriteLine("Response Header:");
    Debug.WriteLine(resp.Header);
    Debug.WriteLine("Failed.");
    return;
}

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

//  {
//    "Id": "00000000-0000-0000-0000-000000000000",
//    "ClientName": "test",
//    "ClientEmail": "test@email.com",
//    "ClientId": 9999,
//    "Status": "Completed",
//    "DateCreated": 1458526480368,
//    "DateSubmitted": 1458526532654,
//    "QuestionnaireName": "test",
//    "Practitioner": "test@email.com",
//    "PractitionerName": "FirstName LastName",
//    "Questions": [
//      {
//        "Id": "xxxx-1",
//        "Text": "Full name",
//        "Answer": "Dexter Morgan",
//        "QuestionType": "OpenQuestion",
//        "Rows": [
//        ],
//        "ColumnNames": [
//        ],
//        "OfficeUse": false,
//        "OfficeNote": "aaa"
//      },
//      {
//        "Id": "xxxx-2",
//        "Text": "Full name",
//        "Answer": "Dexter Morgan",
//        "QuestionType": "OpenQuestion",
//        "Rows": [
//        ],
//        "ColumnNames": [
//        ],
//        "OfficeUse": false,
//        "OfficeNote": "aaa"
//      }
//    ],
//    "AppointmentId": "xxxxxxxx",
//    "ConsentForms": [
//      {
//        "Id": "00000000-0000-0000-0000-000000000000",
//        "Name": "HIPAA Release Form",
//        "DocumentType": "Html",
//        "Signed": true,
//        "DateSubmitted": 1458526532654
//      }
//    ]
//  }

//  Sample code for parsing the JSON response...
//  Use the following online tool to generate parsing code from sample JSON:
//  Generate Parsing Code from JSON

string Text;
string Answer;
string QuestionType;
bool OfficeUse;
string OfficeNote;
int j;
int count_j;
string Name;
string DocumentType;
bool Signed;

string Id = jResp.StringOf("Id");
string ClientName = jResp.StringOf("ClientName");
string ClientEmail = jResp.StringOf("ClientEmail");
int ClientId = jResp.IntOf("ClientId");
string Status = jResp.StringOf("Status");
int DateCreated = jResp.IntOf("DateCreated");
int DateSubmitted = jResp.IntOf("DateSubmitted");
string QuestionnaireName = jResp.StringOf("QuestionnaireName");
string Practitioner = jResp.StringOf("Practitioner");
string PractitionerName = jResp.StringOf("PractitionerName");
string AppointmentId = jResp.StringOf("AppointmentId");
int i = 0;
int count_i = jResp.SizeOfArray("Questions");
while (i < count_i) {
    jResp.I = i;
    Id = jResp.StringOf("Questions[i].Id");
    Text = jResp.StringOf("Questions[i].Text");
    Answer = jResp.StringOf("Questions[i].Answer");
    QuestionType = jResp.StringOf("Questions[i].QuestionType");
    OfficeUse = jResp.BoolOf("Questions[i].OfficeUse");
    OfficeNote = jResp.StringOf("Questions[i].OfficeNote");
    j = 0;
    count_j = jResp.SizeOfArray("Questions[i].Rows");
    while (j < count_j) {
        jResp.J = j;
        j = j + 1;
    }

    j = 0;
    count_j = jResp.SizeOfArray("Questions[i].ColumnNames");
    while (j < count_j) {
        jResp.J = j;
        j = j + 1;
    }

    i = i + 1;
}

i = 0;
count_i = jResp.SizeOfArray("ConsentForms");
while (i < count_i) {
    jResp.I = i;
    Id = jResp.StringOf("ConsentForms[i].Id");
    Name = jResp.StringOf("ConsentForms[i].Name");
    DocumentType = jResp.StringOf("ConsentForms[i].DocumentType");
    Signed = jResp.BoolOf("ConsentForms[i].Signed");
    DateSubmitted = jResp.IntOf("ConsentForms[i].DateSubmitted");
    i = i + 1;
}