I've spent some time reading and haven't found a solution. I want to filter the results of an array (DATA) based on if the "enable_job_application_form": equals 1.
Meaning I would filter the output to jobs that have the job application form enabled.
I'm doing this currently on the server connecting to the API (for&if statements) but I would like to do the filtering before the api returns the results.
I've not come across a solution where this is done, only solutions where one line is removed. I also have to mention that I do not possess any C# skills, I did some C back in the day along with scripting and some older languages.
Hope you can help as I imagine this must be very simple.
Here is an example of the current results:
{
"data": [{
"id": 286,
"slug": "16414896142650005207alj",
"name": "nameofjob286",
"company_slug": "16344942941460006343JBm",
"contact_slug": "23048656",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "",
"city": "",
"locality": "",
"state": null,
"country": "",
"address": "",
"created_on": "2022-01-06T17:20:14.000000Z",
"created_by": 5207,
"updated_on": "2022-01-31T11:55:03.000000Z",
"updated_by": 5207,
"owner": 5207,
"enable_job_application_form": 0,
"job_posting_status": 0,
"job_code": "J86455032",
"show_company_logo": 1,
"specialization": "",
"qualification_id": 0,
"currency_id": 52,
"job_description_text": "",
"job_description_file": "",
"job_questions": [],
"collaborators": [],
"custom_fields": [{
"field_id": 1,
"entity_type": "job",
"field_name": "deadline",
"field_type": "date",
"value": "2022-01-22T00:00:00.000000Z"
}, {
"field_id": 2,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "Intellecta"
}, {
"field_id": 3,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "4348"
}, {
"field_id": 4,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 5,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 6,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 7,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 8,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 9,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 10,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 11,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 12,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 13,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 14,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}],
"resource_url": "https:\/\/private",
"application_form_url": "https:\/\/private",
"shared_job_image": "",
}, {
"id": 284,
"slug": "16414883861930005207Mge",
"name": "jobname284",
"company_slug": "16344942941460006343JBm",
"contact_slug": "23048656",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "",
"city": "",
"locality": "",
"state": null,
"country": "",
"address": "",
"created_on": "2022-01-06T16:59:46.000000Z",
"created_by": 5207,
"updated_on": "2022-01-31T11:55:03.000000Z",
"updated_by": 5207,
"owner": 5207,
"enable_job_application_form": 0,
"job_posting_status": 0,
"job_code": "J76215748",
"show_company_logo": 1,
"specialization": "",
"qualification_id": 0,
"currency_id": 52,
"job_description_text": "",
"job_description_file": "",
"job_questions": [],
"collaborators": [],
"custom_fields": [{
"field_id": 1,
"entity_type": "job",
"field_name": "deadline",
"field_type": "date",
"value": "2022-01-22T00:00:00.000000Z"
}, {
"field_id": 2,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "Intellecta"
}, {
"field_id": 3,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "4348"
}, {
"field_id": 4,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 5,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 6,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 7,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 8,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 9,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 10,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 11,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 12,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 13,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 14,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}],
"resource_url": "https:\/\/private",
"application_form_url": "https:\/\/private",
"shared_job_image": "",
}, {
"id": 299,
"slug": "16433788484340013965OkJ",
"name": "jobname299",
"company_slug": "16344942941460006343JBm",
"contact_slug": "23048656",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "",
"city": "",
"locality": "",
"state": "",
"country": "",
"address": "",
"created_on": "2022-01-28T14:07:28.000000Z",
"created_by": 13965,
"updated_on": "2022-01-28T14:58:07.000000Z",
"updated_by": 13965,
"owner": 13965,
"enable_job_application_form": 0,
"job_posting_status": 0,
"job_code": "",
"show_company_logo": 0,
"specialization": "",
"qualification_id": 0,
"currency_id": 52,
"job_description_text": "",
"job_description_file": "",
"job_questions": [],
"collaborators": [],
"custom_fields": [{
"field_id": 1,
"entity_type": "job",
"field_name": "deadline",
"field_type": "date",
"value": "2022-02-02T00:00:00.000000Z"
}, {
"field_id": 2,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 3,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 4,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 5,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 6,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 7,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 8,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 9,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 10,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 11,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 12,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 13,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 14,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}],
"resource_url": "https:\/\/private",
"application_form_url": "https:\/\/private",
"shared_job_image": "",
}, {
"id": 17,
"slug": "23109811",
"name": "jobname17",
"company_slug": "13600728",
"contact_slug": "23048656",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "[{\";
"city": "",
"locality": "",
"state": "",
"country": "",
"address": "",
"created_on": "2020-07-03T15:37:58.000000Z",
"created_by": 6788,
"updated_on": "2022-01-28T14:50:31.000000Z",
"updated_by": 5207,
"owner": 6755,
"enable_job_application_form": 1,
"job_posting_status": 0,
"job_code": "J52254182",
"show_company_logo": 0,
"specialization": "",
"qualification_id": 0,
"currency_id": 52,
"job_description_text": "<span style=\",
"job_description_file": "",
"job_questions": [],
"collaborators": [],
"custom_fields": [{
"field_id": 1,
"entity_type": "job",
"field_name": "deadline",
"field_type": "date",
"value": "2033-09-01T00:00:00.000000Z"
}, {
"field_id": 2,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "privatevalue"
}, {
"field_id": 3,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "5390"
}, {
"field_id": 4,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 5,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 6,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 7,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 8,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 9,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 10,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 11,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 12,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 13,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 14,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}],
"resource_url": "https:\/\/filtered",
"application_form_url": "https:\/\/filtered",
"shared_job_image": "",
}, {
"id": 298,
"slug": "16432996108500013965Rgj",
"name": "Testjob298",
"company_slug": "22994397",
"contact_slug": "23014749",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "",
"city": "",
"locality": "",
"state": "",
"country": "",
"address": "",
"created_on": "2022-01-27T16:06:50.000000Z",
"created_by": 13965,
"updated_on": "2022-01-28T13:39:52.000000Z",
"updated_by": 6755,
"owner": 13965,
"enable_job_application_form": 1,
"job_posting_status": 0,
"job_code": "J21310859",
"show_company_logo": 1,
"specialization": "",
"qualification_id": 0,
"currency_id": 52,
"job_description_text": "<span style=...private HTML",
"job_description_file": "",
"job_questions": [],
"collaborators": [],
"custom_fields": [{
"field_id": 1,
"entity_type": "job",
"field_name": "deadline",
"field_type": "date",
"value": "2022-02-15T00:00:00.000000Z"
}, {
"field_id": 2,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "private"
}, {
"field_id": 3,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": "4699"
}, {
"field_id": 4,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "text",
"value": null
}, {
"field_id": 5,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 6,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 7,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 8,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 9,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 10,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 11,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 12,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 13,
"entity_type": "job",
"field_name": "nameoffield",
"field_type": "checkbox",
"value": null
}, {
"field_id": 14,
"entity_type": "job",
"field_name": "nameoffield14",
"field_type": "checkbox",
"value": null
}],
"resource_url": "https:\/\/filteredouttheurl",
"application_form_url": "https:\/\/filteredouttheurl",
"shared_job_image": "https:\/\/filteredouttheurl.JPG"
}],
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http:\/\/filteredendpointurl,
"per_page": 100,
"to": 70,
"total": 70,
"first_page_url": "http:\/\/filteredendpointurl?page=1",
"next_page_url": null,
"last_page_url": "http:\/\/filteredendpointurl?page=1",
"prev_page_url": null
}
Here is an example of wanted results: Note I had to trim the answer because of the 30000 limit.
{
"data": [{
"id": 17,
"slug": "23109811",
"name": "jobname17",
"company_slug": "13600728",
"contact_slug": "23048656",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "[{\";
"city": "",
"locality": "",
"state": "",
"country": "",
"address": "",
"created_on": "2020-07-03T15:37:58.000000Z",
"created_by": 6788,
"updated_on": "2022-01-28T14:50:31.000000Z",
"updated_by": 5207,
"owner": 6755,
"enable_job_application_form": 1,
"restremovedforexample":1
}, {
"id": 298,
"slug": "16432996108500013965Rgj",
"name": "Testjob298",
"company_slug": "22994397",
"contact_slug": "23014749",
"secondary_contact_slugs": null,
"note_for_candidates": "",
"number_of_openings": 1,
"minimum_experience": 0,
"maximum_experience": 3,
"min_annual_salary": 0,
"max_annual_salary": 0,
"salary_type": {
"id": 2,
"label": "Annual Salary"
},
"job_status": {
"id": 1,
"label": "Open"
},
"job_status_comment": "",
"city": "",
"locality": "",
"state": "",
"country": "",
"address": "",
"created_on": "2022-01-27T16:06:50.000000Z",
"created_by": 13965,
"updated_on": "2022-01-28T13:39:52.000000Z",
"updated_by": 6755,
"owner": 13965,
"enable_job_application_form": 1,
"restremovedforexample":1
}],
"resource_url": "https:\/\/filteredouttheurl",
"application_form_url": "https:\/\/filteredouttheurl",
"shared_job_image": "https:\/\/filteredouttheurl.JPG"
}]
CodePudding user response:
The most straightforward way may be:
<set-body>@{
var json = context.Response.Body.As<JObject>();
var data = json["data"];
foreach(var item in data.ToArray())
{
if ((int)item["enable_job_application_form"] == 1)
{
item.Remove();
}
}
return json.ToString();
}</set-body>
