{"id":17485818,"url":"https://github.com/p-gw/citrusapi.jl","last_synced_at":"2026-02-28T18:31:49.884Z","repository":{"id":36985011,"uuid":"478116710","full_name":"p-gw/CitrusAPI.jl","owner":"p-gw","description":"Connect to the LimeSurvey API from Julia","archived":false,"fork":false,"pushed_at":"2025-03-17T12:46:19.000Z","size":1165,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-17T13:44:55.974Z","etag":null,"topics":["julia","limesurvey"],"latest_commit_sha":null,"homepage":"","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/p-gw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-05T12:23:12.000Z","updated_at":"2024-01-12T18:29:03.000Z","dependencies_parsed_at":"2025-03-17T21:47:24.629Z","dependency_job_id":null,"html_url":"https://github.com/p-gw/CitrusAPI.jl","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-gw%2FCitrusAPI.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-gw%2FCitrusAPI.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-gw%2FCitrusAPI.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/p-gw%2FCitrusAPI.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/p-gw","download_url":"https://codeload.github.com/p-gw/CitrusAPI.jl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247535087,"owners_count":20954570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["julia","limesurvey"],"created_at":"2024-10-19T02:08:49.599Z","updated_at":"2026-02-28T18:31:49.856Z","avatar_url":"https://github.com/p-gw.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CitrusAPI\n\n[![Build Status](https://github.com/p-gw/CitrusAPI.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/p-gw/CitrusAPI.jl/actions/workflows/CI.yml?query=branch%3Amain)\n[![Coverage](https://codecov.io/gh/p-gw/CitrusAPI.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/p-gw/CitrusAPI.jl)\n\nThis Julia package provides a wrapper for the [LimeSurvey Remote Control 2 API](https://manual.limesurvey.org/RemoteControl_2_API). \n\n## Installation\nCitrusAPI is registered in the Julia General package registry. \nSimply install it by calling\n\n```julia\npkg\u003e add CitrusAPI\n```\n\n## Getting started\nIf your LimeSurvey server is set up correctly you can start by setting up a `CitrusClient` and connecting to the server. \n\n```julia\nclient = CitrusClient(\"https://your-limesurvey-server.com/index.php/admin/remotecontrol\")\nconnect!(client, \"username\", \"password\")\n```\n\nOnce the connection is established you can execute your desired API methods, e.g. getting a list of all surveys, \n\n```julia\nsurveys = list_surveys(client)\n```\n\nClose the session by disconnecting from the server.\n\n```julia\ndisconnect!(client)\n```\n\n## Available methods\nNote that CitrusAPI uses a more \"julian\" syntax for API methods. Methods that mutate data by either adding, deleting or modifying data are implemented as [bang functions](https://docs.julialang.org/en/v1/manual/style-guide/#bang-convention). For example the API method `add_survey` is implemented as the `add_survey!`.\n\n- `activate_survey!`\n- `activate_tokens!`\n- `add_group!`\n- `add_language!`\n- `add_participants!`\n- `add_response!`\n- `add_survey!`\n- `copy_survey!`\n- `cpd_import_participants!`\n- `delete_group!`\n- `delete_language!`\n- `delete_participants!`\n- `delete_question!`\n- `delete_response!`\n- `delete_survey!`\n- `export_responses_by_token`\n- `export_responses`\n- `export_statistics`\n- `export_timeline`\n- `get_group_properties`\n- `get_language_properties`\n- `get_participant_properties`\n- `get_question_properties`\n- `get_response_ids`\n- `get_session_key`\n- `get_site_settings`\n- `get_summary`\n- `get_survey_properties`\n- `get_uploaded_files`\n- `import_group!`\n- `import_question!`\n- `import_survey!`\n- `invite_participants`\n- `list_groups`\n- `list_participants`\n- `list_questions`\n- `list_survey_groups`\n- `list_surveys`\n- `list_users`\n- `mail_registered_participants`\n- `release_session_key`\n- `set_group_properties!`\n- `set_language_properties!`\n- `set_participant_properties!`\n- `set_question_properties!`\n- `set_quota_properties!`\n- `set_survey_properties!`\n- `updade_response!`\n- `upload_file!`\n\n## Convenience functions\n- `connect!`\n- `disconnect!`\n- `expire_survey!`\n- `is_active`\n- `start_survey!`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp-gw%2Fcitrusapi.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fp-gw%2Fcitrusapi.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp-gw%2Fcitrusapi.jl/lists"}