Get audit logs

GET api/v2/audit_logs/

Query parameters

Attribute
Type
Description
userId
string
Fetch audit logs with matching userId.
/audit_logs/?userId=1
before
date
Fetch audit logs sent before given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/audit_logs/?before=2019-05-01
after
date
Fetch audit logs sent after given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/audit_logs/?after=2019-05-01
cat0
string
Fetch audit logs with matching cat0.
/audit_logs/?cat0=activity
cat1
string
Fetch audit logs with matching cat1.
/audit_logs/?cat1=questions
cat2
string
Fetch audit logs with matching cat2.
/audit_logs/?cat2=questionnaire_update

Response attributes

Attribute
Type
Description
kind
string
"audit_log"
id
int
Identifier for the audit_log record.
datetime
datetime
Datetime of the action.
userId
int
Id of the user who triggered the action.
user_name
string
Username of the user who triggered the action.
cat0
string
cat0 of the action.
cat1
string
cat1 of the action.
cat2
string
cat2 of the action.
parameters
string
JSON describing the target of the action.

Sample request path

api/v2/audit_logs

Sample response

{
    "paging": {
        "count": 14,
        "limit": 100,
        "offset": 0
    },
    "results": [
        {
            "cat0": "activity",
            "cat1": "tests",
            "cat2": "start",
            "datetime": "2023-07-08T10:23:12",
            "id": 43,
            "kind": "audit_logs",
            "links": {
                "self": "https://www.experquiz.com/api/v2/audit_logs/43",
                "user": "https://www.experquiz.com/api/v2/users/6215066040926208"
            },
            "parameters": {
                "questionnaire_name": "Climat",
                "type_of_test": "test essai"
            },
            "userId": 6215066040926208,
            "user_name": "Xavier Perquiz"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single audit logs

GET api/v2/audit_logs/{id}

Response attributes

Attribute
Type
Description
kind
string
"audit_log"
id
int
Identifier for the audit_log record.
datetime
datetime
Datetime of the action.
userId
int
Id of the user who triggered the action.
user_name
string
Username of the user who triggered the action.
cat0
string
cat0 of the action.
cat1
string
cat1 of the action.
cat2
string
cat2 of the action.
parameters
string
JSON describing the target of the action.

Sample request path

api/v2/audit_logs/43

Sample response

{
    "paging": {
        "count": 1,
        "limit": 100,
        "offset": 0
    },
    "results": [
        {
            "cat0": "activity",
            "cat1": "tests",
            "cat2": "start",
            "datetime": "2023-07-08T10:23:12",
            "id": 43,
            "kind": "audit_logs",
            "links": {
                "self": "https://www.experquiz.com/api/v2/audit_logs/43",
                "user": "https://www.experquiz.com/api/v2/users/6215066040926208"
            },
            "parameters": {
                "questionnaire_name": "Climat",
                "type_of_test": "test essai"
            },
            "userId": 6215066040926208,
            "user_name": "Xavier Perquiz"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Authenticate and get JWT for new API session

The returned payload holds a 'token' value, which must be provided as Authorization header in subsequent requests: Authorization: Bearer [token]

POST api/v2/authenticate/

Sample request path

api/v2/authenticate

Sample request payload

{
    "credentials": {
        "password": "Foophai3EiYi0eit",
        "user_id": "api@1574292513576659.experquiz.com"
    }
}

Sample response

{
    "status": 200,
    "token": "eyJhbGciOiJIUzEENiIsInR5cCI6IkpXVCJ9.eyJlbnRlcnByaXNlX2lkIjo1NjI5NDk6NTM0MjEzMTIwLCJhdWQiOiJ3d3cuZXhwZXJxdWl6LmNvbSAhcGkvIiwiZXhwIjoxNTY4ODE5MjM2fQ.qASpR1WEIgEfORtVkvkdV9fLeuutJd-mYIoPSnDbZ5Y"
}

Get certification diplomas

GET api/v2/certifications/

Query parameters

Attribute
Type
Description
before
string
Fetch certification diplomas obtained before given date (YYYY-MM-DD).
/certifications/?before=2023-05-25
after
string
Fetch certification diplomas obtained after given date (YYYY-MM-DD).
/certifications/?after=2023-05-25

Response attributes

Attribute
Type
Description
kind
string
"certification"
id
string
Identifier for the certification.
topic
object
Base of the questionnaire.
questionnaire
object
Questionnaire on which the certification is based.
user
object
User who has been granted the certificate.
training_session
object
Training Session to which the certification is related.
module
object
Module to which the certification is related.
cycle
object
Cycle to which the certification is related.
score
int
Score obtained
certified
datetime
Date and time of certification (ISO).
created
datetime
Date and time of creation of the certification diploma (ISO).
url
string
Public URL to download this certificate

Sample request path

api/v2/certifications/

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "certified": "2023-05-27T16:10:00",
            "created": "2023-05-27T16:10:08",
            "cycle": {
                "id": 17541,
                "name": "Cycle stagiaire Formation Expert"
            },
            "id": "16355",
            "kind": "certification",
            "module": null,
            "questionnaire": {
                "id": "antarctique-006U6--15062",
                "name": "Certification"
            },
            "score": 82,
            "topic": {
                "id": "antarctique-006U6",
                "name": "Antarctique"
            },
            "training_session": {
                "id": 20765,
                "name": "Formation Expert"
            },
            "url": "https://storage.googleapis.com/docs-experquiz-com/ee93bcaf17d97ed7b2a8634c18fd06.pdf",
            "user": {
                "first_name": "Martin",
                "id": 378,
                "last_name": "Cather"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get certification diplomas obtained on a base

GET api/v2/topics/{topicId}/certifications/

Query parameters

Attribute
Type
Description
id
string
Fetch certificates obtained for given base.
/topics/antarctique-006U6/certifications

Response attributes

Attribute
Type
Description
kind
string
"certification"
id
string
Identifier for the certification.
topic
object
Base of the questionnaire.
questionnaire
object
Questionnaire on which the certification is based.
user
object
User who has been granted the certificate.
training_session
object
Training Session to which the certification is related.
module
object
Module to which the certification is related.
cycle
object
Cycle to which the certification is related.
score
int
Score obtained
certified
datetime
Date and time of certification (ISO).
created
datetime
Date and time of creation of the certification diploma (ISO).
url
string
Public URL to download this certificate

Sample request path

api/v2/topics/antarctique-006U6/certifications

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "certified": "2023-05-27T16:10:00",
            "created": "2023-05-27T16:10:08",
            "cycle": {
                "id": 17541,
                "name": "Cycle stagiaire Formation Expert"
            },
            "id": "16355",
            "kind": "certification",
            "module": null,
            "questionnaire": {
                "id": "antarctique-006U6--15062",
                "name": "Certification"
            },
            "score": 82,
            "topic": {
                "id": "antarctique-006U6",
                "name": "Antarctique"
            },
            "training_session": {
                "id": 20765,
                "name": "Formation Expert"
            },
            "url": "https://storage.googleapis.com/docs-experquiz-com/ee93bcaf17d97ed7b2a8634c18fd06.pdf",
            "user": {
                "first_name": "Martin",
                "id": 378,
                "last_name": "Cather"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get certification diplomas obtained for a questionnaire

GET api/v2/questionnaires/{qr_id}/certifications/

Query parameters

Attribute
Type
Description
qr_id
string
Fetch certificates obtained on a questionnaire.
/questionnaires/antarctique-006U6--15062/certifications

Response attributes

Attribute
Type
Description
kind
string
"certification"
id
string
Identifier for the certification.
topic
object
Base of the questionnaire.
questionnaire
object
Questionnaire on which the certification is based.
user
object
User who has been granted the certificate.
training_session
object
Training Session to which the certification is related.
module
object
Module to which the certification is related.
cycle
object
Cycle to which the certification is related.
score
int
Score obtained
certified
datetime
Date and time of certification (ISO).
created
datetime
Date and time of creation of the certification diploma (ISO).
url
string
Public URL to download this certificate

Sample request path

api/v2/questionnaires/antarctique-006U6--15062/certifications

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "certified_date": "2023-05-27T16:10:00",
            "created_date": "2023-05-27T16:10:08",
            "cycle": {
                "id": 17541,
                "name": "Cycle stagiaire Formation Expert"
            },
            "id": "16355",
            "kind": "certification",
            "module": null,
            "questionnaire": {
                "id": "antarctique-006U6--15062",
                "name": "Certification"
            },
            "score": 82,
            "topic": {
                "id": "antarctique-006U6",
                "name": "Antarctique"
            },
            "training_session": {
                "id": 20765,
                "name": "Formation Expert"
            },
            "url": "https://storage.googleapis.com/docs-experquiz-com/ee93bcaf17d97ed7b2a8634c18fd06.pdf",
            "user": {
                "first_name": "Martin",
                "id": 378,
                "last_name": "Cather"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get certification diplomas for a user

GET api/v2/users/{user_id}/certifications/

Query parameters

Attribute
Type
Description
user_id
int
Fetch certificates obtained by a given user.
/api/v2/users/4589361534337024/certifications

Response attributes

Attribute
Type
Description
kind
string
"certification"
id
string
Identifier for the certification.
topic
object
Base of the questionnaire.
questionnaire
object
Questionnaire on which the certification is based.
user
object
User who has been granted the certificate.
training_session
object
Training Session to which the certification is related.
module
object
Module to which the certification is related.
cycle
object
Cycle to which the certification is related.
score
int
Score obtained
certified
datetime
Date and time of certification (ISO).
created
datetime
Date and time of creation of the certification diploma (ISO).
url
string
Public URL to download this certificate

Sample request path

api/v2/users/4589361534337024/certifications

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "certified_date": "2023-05-27T16:10:00",
            "created_date": "2023-05-27T16:10:08",
            "cycle": null,
            "id": "16355",
            "kind": "certification",
            "module": {
                "id": 70765,
                "name": "Module G\u00e9n\u00e9ral"
            },
            "questionnaire": {
                "id": "antarctique-006U6--15062",
                "name": "Certification"
            },
            "score": 82,
            "topic": {
                "id": "antarctique-006U6",
                "name": "Antarctique"
            },
            "training_session": null,
            "url": "https://storage.googleapis.com/docs-experquiz-com/ee93bcaf17d97ed7b2a8634c18fd06.pdf",
            "user": {
                "first_name": "Martin",
                "id": 4589361534337024,
                "last_name": "Cather"
            }
        },
        {
            "certified_date": "2023-02-27T17:11:56",
            "created_date": "2023-05-27T17:20:08",
            "id": "16355",
            "kind": "certification",
            "questionnaire": {
                "id": "antarctique-006U6--45809",
                "name": "Bilan"
            },
            "score": 87,
            "topic": {
                "id": "antarctique-006U6",
                "name": "Antarctique (copie) 09-04-2023 11:02:31"
            },
            "url": "https://storage.googleapis.com/docs-experquiz-com/ee93bcaf17d97ed7b2a8634c1yt159.pdf",
            "user": {
                "first_name": "Martin",
                "id": 4589361534337024,
                "last_name": "Cather"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get emails and sms

GET api/v2/emails_and_sms/

Query parameters

Attribute
Type
Description
channel
string
Fetch bases with matching channel.
values: ["email", "sms"]
/emails_and_sms/?channel=email
status
string
Fetch bases with matching status.
values: ["created", "sent", "failed"]
/emails_and_sms/?status=sent
before
date
Fetch messages sent before given date (YYYY-MM-DD).
/emails_and_sms/?before=2019-05-01
after
date
Fetch messages sent after given date (YYYY-MM-DD).
/emails_and_sms/?after=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"emaillog"
id
string
Identifier for the emaillog.
channel
string
Channel used for this message. values: ["email", "sms"]
status
string
Message's status. values: ["created", "sent", "failed"]
to
string
Message's recipient.
subject
string
Message's topic.

Sample request path

api/v2/emails_and_sms

Sample response

{
    "paging": {
        "count": 1,
        "limit": 100,
        "offset": 0
    },
    "results": [
        {
            "channel": "email",
            "id": "0fc47ece-6dda-4878-9d55-c242c6f1f3df",
            "kind": "email",
            "length": 257,
            "sendDate": "2023-07-06T16:10:02",
            "status": "sent",
            "subject": "[ExperQuiz] Confirmez votre inscription",
            "to": "xavier.perquiz@experquiz.eu"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get evaluations

GET api/v2/evaluations/

Query parameters

Attribute
Type
Description
before
date
Fetch evaluations with start date before or at given date (YYYY-MM-DD).
/evaluations/?before=2023-12-31
after
date
Fetch evaluations with start date after or at given date (YYYY-MM-DD).
/evaluations/?after=2023-01-01
status
str
Fetch evaluations having given status
values: ["pending", "ongoing", "closed", "completed", "future"]
/evaluations/?status=closed

Response attributes

Attribute
Type
Description
kind
string
"evaluation"
id
int
Identifier for the evaluation
users
list of objects
List of users participating in evaluation
questionnaire
object
The questionnaire on which the evaluation is based
status
str
The status of the evaluation values: ["pending", "ongoing", "closed", "completed", "future"]
visible
bool
Whether the evaluation is visible
typeOfEval
str
The type of evaluation values: ["internal", "external", "register", "battle", "module"]
createdDate
datetime
Datetime when the evaluation was created
startDate
datetime
Datetime when the evaluation was started, i.e. when tests could be started.
endDate
datetime
Datetime when the evaluation was closed, i.e. when tests could not be started.
links
list of str
Links to related API endpoints.

Sample request path

api/v2/evaluations?after=2023-01-01&before=2023-12-31

Sample response

{
    "paging": {
        "count": 67,
        "limit": 2,
        "offset": 1
    },
    "results": [
        {
            "createdDate": "2023-01-25T18:22:35",
            "endDate": "2023-01-26T18:22:35",
            "id": 6793,
            "kind": "evaluation",
            "links": {
                "self": "https://www.experquiz.com/api/v2/evaluations/6793",
                "tests": "https://www.experquiz.com/api/v2/evaluations/6793/tests/"
            },
            "questionnaire": {
                "id": "test-A0L6U--156",
                "name": "Test Antarctique #2"
            },
            "startDate": "2023-01-25T18:22:35",
            "status": "closed",
            "topic": {
                "id": "test-A0L6U",
                "name": "Antarctique"
            },
            "typeOfEval": "internal",
            "users": [
                {
                    "id": 1035,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/939feb9ab2827991fe76555174cb8a/play",
                        "self": "https://www.experquiz.com/api/v2/users/1035"
                    },
                    "name": "ACKER Nathalie",
                    "score": -1
                },
                {
                    "id": 5949,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/54cd76a336a8071ac5246745683033/play",
                        "self": "https://www.experquiz.com/api/v2/users/5949"
                    },
                    "name": "ARENAS Christophe",
                    "score": -1
                }
            ],
            "visible": true
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get a single evaluations

GET api/v2/evaluations/{evaluationId}

Response attributes

Attribute
Type
Description
kind
string
"evaluation"
id
int
Identifier for the evaluation
users
list of objects
List of users participating in evaluation
questionnaire
object
The questionnaire on which the evaluation is based
status
str
The status of the evaluation values: ["pending", "ongoing", "closed", "completed", "future"]
visible
bool
Whether the evaluation is visible
typeOfEval
str
The type of evaluation values: ["internal", "external", "register", "battle", "module"]
createdDate
datetime
Datetime when the evaluation was created
startDate
datetime
Datetime when the evaluation was started, i.e. when tests could be started.
endDate
datetime
Datetime when the evaluation was closed, i.e. when tests could not be started.
links
list of str
Links to related API endpoints.

Sample request path

api/v2/evaluations/6793

Sample response

{
    "paging": {
        "count": 1,
        "limit": 1,
        "offset": 1
    },
    "results": [
        {
            "createdDate": "2023-01-25T18:22:35",
            "endDate": "2023-01-26T18:22:35",
            "id": 6793,
            "kind": "evaluation",
            "links": {
                "self": "https://www.experquiz.com/api/v2/evaluations/6793",
                "tests": "https://www.experquiz.com/api/v2/evaluations/6793/tests/"
            },
            "questionnaire": {
                "id": "test-A0L6U--156",
                "name": "Test Antarctique #2"
            },
            "startDate": "2023-01-25T18:22:35",
            "status": "closed",
            "topic": {
                "id": "test-A0L6U",
                "name": "Antarctique"
            },
            "typeOfEval": "internal",
            "users": [
                {
                    "id": 1035,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/939feb9ab2827991fe76555174cb8a/play",
                        "self": "https://www.experquiz.com/api/v2/users/1035"
                    },
                    "name": "ACKER Nathalie",
                    "score": -1
                },
                {
                    "id": 5949,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/54cd76a336a8071ac5246745683033/play",
                        "self": "https://www.experquiz.com/api/v2/users/5949"
                    },
                    "name": "ARENAS Christophe",
                    "score": -1
                }
            ],
            "visible": true
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get evaluations of a topic

GET api/v2/topics/{topicId}/evaluations

Query parameters

Attribute
Type
Description
before
date
Fetch evaluations with start date before given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?before=2023-12-31
after
date
Fetch audit logs sent after given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?after=2023-01-01
status
str
Fetch evaluations having given status
values: ["pending", "ongoing", "closed", "completed", "future"]
/evaluations/?status=closed

Response attributes

Attribute
Type
Description
kind
string
"evaluation"
id
int
Identifier for the evaluation
users
list of objects
List of users participating in evaluation
questionnaire
object
The questionnaire on which the evaluation is based
status
str
The status of the evaluation values: ["pending", "ongoing", "closed", "completed", "future"]
visible
bool
Whether the evaluation is visible
typeOfEval
str
The type of evaluation values: ["internal", "external", "register", "battle", "module"]
createdDate
datetime
Datetime when the evaluation was created
startDate
datetime
Datetime when the evaluation was started, i.e. when tests could be started.
endDate
datetime
Datetime when the evaluation was closed, i.e. when tests could not be started.
links
list of str
Links to related API endpoints.

Sample request path

api/v2/topics/test-A0L6U/evaluations

Sample response

{
    "paging": {
        "count": 67,
        "limit": 2,
        "offset": 1
    },
    "results": [
        {
            "createdDate": "2023-01-25T18:22:35",
            "endDate": "2023-01-26T18:22:35",
            "id": 6793,
            "kind": "evaluation",
            "links": {
                "self": "https://www.experquiz.com/api/v2/evaluations/6793",
                "tests": "https://www.experquiz.com/api/v2/evaluations/6793/tests/"
            },
            "questionnaire": {
                "id": "test-A0L6U--156",
                "name": "Test Antarctique #2"
            },
            "startDate": "2023-01-25T18:22:35",
            "status": "closed",
            "topic": {
                "id": "test-A0L6U",
                "name": "Antarctique"
            },
            "typeOfEval": "internal",
            "users": [
                {
                    "id": 1035,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/939feb9ab2827991fe76555174cb8a/play",
                        "self": "https://www.experquiz.com/api/v2/users/1035"
                    },
                    "name": "ACKER Nathalie",
                    "score": -1
                },
                {
                    "id": 5949,
                    "links": {
                        "invitation": "https://www.experquiz.com/ev/18874155296/54cd76a336a8071ac5246745683033/play",
                        "self": "https://www.experquiz.com/api/v2/users/5949"
                    },
                    "name": "ARENAS Christophe",
                    "score": -1
                }
            ],
            "visible": true
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get evaluations of a questionnaire

GET api/v2/topics/{topicId}/questionnaires/{questionnaireId}/evaluations

Query parameters

Attribute
Type
Description
before
date
Fetch evaluations with start date before given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?before=2023-12-31
after
date
Fetch audit logs sent after given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?after=2023-01-01
status
str
Fetch evaluations having given status
values: ["pending", "ongoing", "closed", "completed", "future"]
/evaluations/?status=closed

Response attributes

Attribute
Type
Description
kind
string
"evaluation"
id
int
Identifier for the evaluation
users
list of objects
List of users participating in evaluation
questionnaire
object
The questionnaire on which the evaluation is based
status
str
The status of the evaluation values: ["pending", "ongoing", "closed", "completed", "future"]
visible
bool
Whether the evaluation is visible
typeOfEval
str
The type of evaluation values: ["internal", "external", "register", "battle", "module"]
createdDate
datetime
Datetime when the evaluation was created
startDate
datetime
Datetime when the evaluation was started, i.e. when tests could be started.
endDate
datetime
Datetime when the evaluation was closed, i.e. when tests could not be started.
links
list of str
Links to related API endpoints.

Get evaluations of a user

Get all evaluations to which the given user has been invited

GET api/v2/users/{userId}/evaluations

Query parameters

Attribute
Type
Description
before
date
Fetch evaluations with start date before given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?before=2023-12-31
after
date
Fetch audit logs sent after given date (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS).
/evaluations/?after=2023-01-01
status
str
Fetch evaluations having given status
values: ["pending", "ongoing", "closed", "completed", "future"]
/evaluations/?status=closed

Response attributes

Attribute
Type
Description
kind
string
"evaluation"
id
int
Identifier for the evaluation
users
list of objects
List of users participating in evaluation
questionnaire
object
The questionnaire on which the evaluation is based
status
str
The status of the evaluation values: ["pending", "ongoing", "closed", "completed", "future"]
visible
bool
Whether the evaluation is visible
typeOfEval
str
The type of evaluation values: ["internal", "external", "register", "battle", "module"]
createdDate
datetime
Datetime when the evaluation was created
startDate
datetime
Datetime when the evaluation was started, i.e. when tests could be started.
endDate
datetime
Datetime when the evaluation was closed, i.e. when tests could not be started.
links
list of str
Links to related API endpoints.

Create new evaluation

Participants may be either existing users or identified by their emails or mobile number. Contacts will be created as needed.
Use links.self in response payload to retrieve full evaluation data.

POST api/v2/evaluations/

Request Json attributes

Attribute
Type
Description
questionnaire (required)
str
Id of the questionnaire on which the evaluation will be based
startDate
datetime
Date and time when the evaluation opens (ISO).
endDate
datetime
Date and time when the evaluation opens (ISO).
resendPeriod
int
Period in days for sending reminders.
actingUser (required)
int
Id of the user who is inviting.
users
list of int
Ids of the users
emails
list of str
Emails of mobiles of the users
emailSubject
str
Subject of the email sent to invitees.
emailMessage
str
Subject of the email sent to invitees.
smsMessage
str
Text of the SMS sent to invitees.
doNotSendInvitations
boolean
If True, invitation messages will not be sent to participants

Sample request path

api/v2/evaluations

Sample request payload

{
    "actingUser": 2700416661466195,
    "doNotSendInvitations": false,
    "emailMessage": "Bonjour,\n\nNous souhaitons vous soumettre une \u00e9valuation.\n\nLe test d\u00e9marrera d\u00e8s que vous aurez cliqu\u00e9 sur le lien ci-dessous.\n\nXavier Perquiz",
    "emailSubject": "Invitation \u00e0 une \u00e9valuation",
    "emails": [
        "jean.dutour@company.com",
        "helene.lamarck@company.com"
    ],
    "endDate": "2023-04-12T22:00:00",
    "questionnaire": "test-A0L6U--156",
    "resendPeriod": 2,
    "startDate": "2023-04-09T00:00:00",
    "users": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ]
}

Sample response

{
    "links": {
        "self": "https://www.experquiz.com/evaluations?uuid=b7c8360d-fb46-43fb-b467-ab24b1adbef2"
    },
    "status": "shaping",
    "uuid": "b7c8360d-fb46-43fb-b467-ab24b1adbef2"
}

Update existing evaluation

May only change endDate, add or remove participants. Participants may be either existing users or identified by their emails or mobile number. Contacts will be created as needed.

PUT api/v2/evaluations/

Request Json attributes

Attribute
Type
Description
questionnaire (required)
str
Id of the questionnaire on which the evaluation will be based
startDate
datetime
Date and time when the evaluation opens (ISO).
endDate
datetime
Date and time when the evaluation opens (ISO).
actingUser (required)
int
Id of the user who is inviting.
users
list of int
Ids of the users
emails
list of str
Emails of mobiles of the users

Sample request path

api/v2/evaluations

Sample request payload

{
    "actingUser": 2700416661466195,
    "doNotSendInvitations": false,
    "emails": [
        "jean.dutour@company.com"
    ],
    "endDate": "2023-04-12T23:00:00",
    "questionnaire": "test-A0L6U--156",
    "resendPeriod": 2,
    "users": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ]
}

Sample response

{
    "links": {
        "self": "https://www.experquiz.com/evaluations?uuid=b7c8360d-fb46-43fb-b467-ab24b1adbef2"
    },
    "status": "shaping",
    "uuid": "b7c8360d-fb46-43fb-b467-ab24b1adbef2"
}

Get user groups

GET api/v2/groups/

Response attributes

Attribute
Type
Description
kind
string
"group"
id
int
Identifier of the group.
name
string
name of the group.
links
object
API links.
links.self
string
API link: url to this group.
links.users
string
API link: url to users of this group.

Sample request path

api/v2/groups

Sample response

{
    "paging": {
        "count": 4,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "id": 5018171069169664,
            "links": {
                "self": "https://www.experquiz.com/api/v2/groups/5018171069169664",
                "users": "https://www.experquiz.com/api/v2/groups/5018171069169664/users/"
            },
            "name": "Etudes"
        },
        {
            "id": 5581121022590976,
            "links": {
                "self": "https://www.experquiz.com/api/v2/groups/5581121022590976",
                "users": "https://www.experquiz.com/api/v2/groups/5581121022590976/users/"
            },
            "name": "Formation"
        },
        {
            "id": 6144070976012288,
            "links": {
                "self": "https://www.experquiz.com/api/v2/groups/6144070976012288",
                "users": "https://www.experquiz.com/api/v2/groups/6144070976012288/users/"
            },
            "name": "Hotline"
        },
        {
            "id": 6707020929433600,
            "links": {
                "self": "https://www.experquiz.com/api/v2/groups/6707020929433600",
                "users": "https://www.experquiz.com/api/v2/groups/6707020929433600/users/"
            },
            "name": "Experts"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Update group assignment

Update group assignment for a given user

PUT api/v2/users/{user_id}/groups/{add|remove|set}

Request Json attributes

Attribute
Type
Description
groups (required)
list
List of group ids

Sample request path

api/v2/users/6636652185255936/groups/add

Sample request payload

{
    "groups": [
        5581121022590976,
        6144070976012288,
        6707020929433600
    ]
}

Sample response

{
    "groups": [
        5018171069169664,
        5581121022590976,
        6144070976012288,
        6707020929433600
    ]
}

Get medias

GET api/v2/medias/

Query parameters

Attribute
Type
Description
folder
string
Get medias in given folder.
/medias/?folder=antarctique-FN6TD

Response attributes

Attribute
Type
Description
id
string
Identifier of the media.
folder
string
Folder of the media.
filename
string
Filename of the media.
created
datetime
Date and time the media was created (ISO).
modified
datetime
Date and time the media was last modified (ISO).
src
string
Url of the media.
contentType
string
Content type of the media.
html
string
Html of the media, if type is 'embedded' or 'factsheet'..
links
object
API links.
links.self
string
API link: url to this media.

Sample request path

api/v2/medias/

Sample response

{
    "paging": {
        "count": 96,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "contentType": "image/png",
            "created": "2019-04-24T14:09:30",
            "filename": "antarctica.png",
            "folder": "enterprise/5488762045857792/topic/antarctique-FN6TD",
            "id": "05af774f386774d4d7c58976d798ab",
            "links": {
                "self": "https://www.experquiz.com/api/v2/medias/05af774f386774d4d7c58976d798ab"
            },
            "modified": "2019-04-24T14:09:30",
            "src": "/media/05af774f386774d4d7c58976d798ab"
        },
        {
            "contentType": "image/png",
            "created": "2019-04-24T14:09:30",
            "filename": "amundsen.jpg",
            "folder": "enterprise/5488762045857792/topic/antarctique-FN6TD",
            "id": "05b0c5712404aacb8ef2d3afb043c0",
            "links": {
                "self": "https://www.experquiz.com/api/v2/medias/05b0c5712404aacb8ef2d3afb043c0"
            },
            "modified": "2019-04-24T14:16:35",
            "src": "/media/05b0c5712404aacb8ef2d3afb043c0"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single media

GET api/v2/medias/{id}

Response attributes

Attribute
Type
Description
id
string
Identifier of the media.
folder
string
Folder of the media.
filename
string
Filename of the media.
created
datetime
Date and time the media was created (ISO).
modified
datetime
Date and time the media was last modified (ISO).
src
string
Url of the media.
contentType
string
Content type of the media.
html
string
Html of the media, if type is 'embedded' or 'factsheet'..
links
object
API links.
links.self
string
API link: url to this media.

Sample request path

api/v2/medias/05af774f386774d4d7c58976d798ab

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "contentType": "image/png",
            "created": "2019-04-24T14:09:30",
            "filename": "barchen.png",
            "folder": "enterprise/5488762045857792/topic/antarctique-FN6TD",
            "id": "05af774f386774d4d7c58976d798ab",
            "links": {
                "self": "https://www.experquiz.com/api/v2/medias/05af774f386774d4d7c58976d798ab"
            },
            "modified": "2019-04-24T14:09:30",
            "src": "/media/05af774f386774d4d7c58976d798ab"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get learning modules

GET api/v2/modules/

Query parameters

Attribute
Type
Description
author
int
Fetch learning modules with matching author id.
/modules/?author=6614661952700416
tag
string
Fetch learning modules with matching tag.
/modules/?tag=security
status
string
Fetch learning modules with matching status.
/modules/?status=active
name
string
Fetch learning modules with matching name.
/modules/?name=Antarctique101
after
string
Fetch learning modules modified after given date (YYYY-MM-DD).
/modules/?after=2023-03-25

Response attributes

Attribute
Type
Description
kind
string
"module"
id
int
Identifier for the module
created
datetime
Datetime when the evaluation was created
modified
datetime
Datetime when the module may be started.
name
str
Name of the module
description
str
Description of the module
elements
list of objects
List of the module's elements
links
list of str
Links to related API endpoints.

Sample request path

api/v2/modules/

Sample response

{
    "paging": {
        "count": 1,
        "limit": 100,
        "offset": 0
    },
    "results": [
        {
            "author": {
                "first_name": "Xavier",
                "id": 11283,
                "last_name": "Perquiz"
            },
            "created": "2023-06-01T08:53:11",
            "description": "",
            "elements": [
                {
                    "duration": 0,
                    "entity": {
                        "id": "test-4X38B--1849464"
                    },
                    "index": 0,
                    "kind": "Questionnaire",
                    "status": "active",
                    "title": "TEST",
                    "topic": {
                        "id": "test-4X38B",
                        "name": "TEST"
                    }
                },
                {
                    "duration": 0,
                    "entity": {
                        "id": "4de1ac12eda5cf564a55fe7cb11755"
                    },
                    "index": 1,
                    "kind": "MediaFile",
                    "status": "active",
                    "title": "Belgian_Endives",
                    "topic": {
                        "id": "test-4X38B",
                        "name": "TEST"
                    }
                }
            ],
            "id": 1849473,
            "kind": "learning_module",
            "links": {
                "self": "https://localhost:8080/api/v2/modules/1849473"
            },
            "modified": "2023-06-01T08:53:21",
            "module_name": "MODULE 01",
            "status": "active",
            "tags": [
                "security"
            ],
            "title": null
        }
    ],
    "status": {
        "status_code": 200
    }
}

Post module invitations

Participants may be either existing users or identified by their emails or mobile number. Contacts will be created as needed.

POST api/v2/modules/invitations

Request Json attributes

Attribute
Type
Description
module (required)
int
Id of the module to which invitations will be sent
startDate
datetime
Date and time when the evaluation opens (ISO).
endDate
datetime
Date and time when the evaluation opens (ISO).
resendPeriod
int
Period in days for sending reminders.
actingUser (required)
int
Id of the user who is inviting.
users
list of int
Ids of the users
emails
list of str
Emails of mobiles of the users
emailSubject
str
Subject of the email sent to invitees.
emailMessage
str
Subject of the email sent to invitees.
smsMessage
str
Text of the SMS sent to invitees.
group
int
Id of the group to which created contact users will be assigned. Null for none.

Sample request path

api/v2/modules/invitations

Sample request payload

{
    "actingUser": 2700416661466195,
    "doNotSendInvitations": false,
    "emailMessage": "Bonjour,\n\nNous souhaitons vous soumettre une \u00e9valuation.\n\nLe test d\u00e9marrera d\u00e8s que vous aurez cliqu\u00e9 sur le lien ci-dessous.\n\nXavier Perquiz",
    "emailSubject": "Invitation \u00e0 une \u00e9valuation",
    "emails": [
        "jean.dutour@company.com",
        "helene.lamarck@company.com"
    ],
    "endDate": "2023-04-12T22:00:00",
    "questionnaire": "test-A0L6U--156",
    "resendPeriod": 2,
    "startDate": "2023-04-09T00:00:00",
    "users": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ]
}

Sample response

{
    "links": {
        "self": "https://www.experquiz.com/evaluations?uuid=b7c8360d-fb46-43fb-b467-ab24b1adbef2"
    },
    "status": "shaping",
    "uuid": "b7c8360d-fb46-43fb-b467-ab24b1adbef2"
}

Get questionnaires

GET api/v2/questionnaires/

Query parameters

Attribute
Type
Description
topic
string
Fetch questionnaires with matching topic id.
/questionnaires/?topic=antarctique-FN6TD
author
int
Fetch questionnaires with matching author id.
/questionnaires/?author=6614661952700416
tag
string
Fetch questionnaires with matching tag.
/questionnaires/?tag=security
type
string
Fetch questionnaires with matching type.
/questionnaires/?type=static
name
string
Fetch questionnaires with matching name.
/questionnaires/?name=Antarctique%20Expert
after
string
Fetch questionnaires modified after given date (YYYY-MM-DD).
/questionnaires/?after=2018-03-25

Response attributes

Attribute
Type
Description
kind
string
"questionnaire"
id
string
Identifier for the questionnaire. Made up of {topicId}--{questionnaireId}
topic
object
Topic of the questionnaire.
created
datetime
Date and time of creation of questionnaire (ISO).
modified
datetime
Date and time of last modification of questionnaire (ISO).
name
string
Name of the questionnaire.
description
string
Description of the questionnaire.
type
string
Type of the questionnaire values: ["static", "dynamic"]
author
object
Author of the questionnaire.
questions
list of objects
Questions of the questionnaire, if type is 'static'.
tags
list of strings
Tags of the questionnaire.
links
object
API links.
links.self
string
API link: url to this questionnaire.
links.questions
string
API link: url to questions of this questionnaire.
links.play
string
API link: url start a test on this questionnaire (subject to permissions).

Sample request path

api/v2/questionnaires/

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "created": "2019-05-27T16:10:00",
            "description": "",
            "id": "antarctique-FN6TD--4933783551737856",
            "kind": "questionnaire",
            "modified": "2019-05-27T16:10:08",
            "name": "TESTQR",
            "questions": [
                {
                    "id": "antarctique-FN6TD--1",
                    "title": "La couverture de glace de l\u0027Antarctique"
                }
            ],
            "tags": [
                "experts"
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "antarctique"
            },
            "type": "static"
        },
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "created": "2019-03-27T11:10:00",
            "description": "",
            "id": "antarctique-FN6TD--5714161929551872",
            "kind": "questionnaire",
            "modified": "2019-03-27T11:10:08",
            "name": "Premier questionnaire antarctique",
            "questions": [
                {
                    "id": "antarctique-FN6TD--55",
                    "title": "Nommez les explorateurs"
                },
                {
                    "id": "antarctique-FN6TD--56",
                    "title": "Flore de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--54",
                    "title": "Le trait\u00e9 de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--1",
                    "title": "La couverture de glace de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--52",
                    "title": "Exploration de l\u0027Antarctique"
                }
            ],
            "tags": [
                "experts"
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "antarctique"
            },
            "type": "static"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get questionnaires of topic

GET api/v2/topics/{topicId}/questionnaires/

Query parameters

Attribute
Type
Description
topic
string
Fetch questionnaires with matching topic id.
/questionnaires/?topic=antarctica
author
int
Fetch questionnaires with matching author id.
/questionnaires/?author=6558741
tag
string
Fetch questionnaires with matching tag.
/questionnaires/?tag=security
name
string
Fetch questionnaires with matching name.
/questionnaires/?name=Antarctique%20Expert
type
string
Fetch questionnaires with matching 'type'.
/questionnaires/?archived=true

Response attributes

Attribute
Type
Description
id
string
Identifier for the questionnaire. Made up of {topicId}--{questionnaireId}
created
datetime
Date and time of creation of questionnaire (ISO).
modified
datetime
Date and time of last modification of questionnaire (ISO).
name
string
Name of the questionnaire.
description
string
Description of the questionnaire.
type
string
Type of the questionnaire values: ["static", "dynamic"]
author
object
Author of the questionnaire.
questions
list of objects
Questions of the questionnaire, if type is 'static'.
tags
list of strings
Tags of the questionnaire.
links
object
API links.
links.self
string
API link: url to this questionnaire.
links.questions
string
API link: url to questions of this questionnaire.
links.play
string
API link: url start a test on this questionnaire (subject to permissions).

Sample request path

api/v2/topics/antarct-VY8/questionnaires

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "description": "",
            "id": "antarctique-FN6TD--4933783551737856",
            "name": "TESTQR",
            "questions": [
                {
                    "id": "antarctique-FN6TD--1",
                    "title": "La couverture de glace de l\u0027Antarctique"
                }
            ],
            "tags": [
                "experts"
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "antarctique"
            },
            "type": "static"
        },
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "description": "",
            "id": "antarctique-FN6TD--5714161929551872",
            "name": "Premier questionnaire antarctique",
            "questions": [
                {
                    "id": "antarctique-FN6TD--55",
                    "title": "Nommez les explorateurs"
                },
                {
                    "id": "antarctique-FN6TD--56",
                    "title": "Flore de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--54",
                    "title": "Le trait\u00e9 de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--1",
                    "title": "La couverture de glace de l\u0027Antarctique"
                },
                {
                    "id": "antarctique-FN6TD--52",
                    "title": "Exploration de l\u0027Antarctique"
                }
            ],
            "tags": [
                "experts"
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "antarctique"
            },
            "type": "static"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single questionnaire

GET api/v2/questionnaires/{id}

Response attributes

Attribute
Type
Description
id
string
Identifier for the questionnaire. Made up of {topicId}--{questionnaireId}
created
datetime
Date and time of creation of questionnaire (ISO).
modified
datetime
Date and time of last modification of questionnaire (ISO).
name
string
Name of the questionnaire.
topic
object
Topic of the questionnaire.
description
string
Description of the questionnaire.
type
string
Type of the questionnaire values: ["static", "dynamic"]
author
object
Author of the questionnaire.
questions
list of objects
Questions of the questionnaire, if type is 'static'.
tags
list of strings
Tags of the questionnaire.
links
object
API links.
links.self
string
API link: url to this questionnaire.
links.questions
string
API link: url to questions of this questionnaire.
links.play
string
API link: url start a test on this questionnaire (subject to permissions).

Sample request path

api/v2/questionnaires/antarctique-FN6TD--5714161929551872

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "description": "",
            "id": "antarctique-FN6TD--4933783551737856",
            "links": {
                "questions": "/api/v2/questionnaires/antarctique-FN6TD--5714161929551872/questions/",
                "self": "/api/v2/questionnaires/antarctique-FN6TD--5714161929551872"
            },
            "name": "TESTQR",
            "questions": [
                {
                    "id": "antarctique-FN6TD--1",
                    "title": "La couverture de glace de l\u0027Antarctique"
                }
            ],
            "tags": [
                "experts"
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "antarctique"
            },
            "type": "static"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get questions of a topic

GET api/v2/topics/{topicId}/questions/

Query parameters

Attribute
Type
Description
author
int
Fetch questionnaires with matching author id.
/topics/antarctique-FN6TD/questions/?author=6558741
domain
string
Fetch questionnaires with matching domain id.
/topics/antarctique-FN6TD/questions/?domain=security
tag
string
Fetch questionnaires with matching tag.
/topics/antarctique-FN6TD/questions/?tag=expert
after
string
Fetch questionnaires with matching 'type'.
/topics/antarctique-FN6TD/questions/?after=2019-04-01

Response attributes

Attribute
Type
Description
kind
string
"question"
id
string
Identifier for the question.
topic
object
Topic of the question.
title
string
Title of the question.
questionType
string
Type of the question values: ["mcq", "mchk", "bool", "text", "sort", "match", "imga", "fill", "fsel", "free"]
questionText
string
Text of the question.
questionMedia
object
Media of the question.
level
int
Level of the question.
author
object
Author of the question.
tag
string
Tag of the question.
status
string
Status of the question.
essential
boolean
True if the question is essential.
domain
objects
Domain of the question.
answers
list of objects
Proposed answers to the question.
explain
string
Explanation of the question.
explainMedia
object
Media of the explanation.
rule
string
Rule (course reminder) of the question.
ruleMedia
object
Media of the rule.
created
datetime
Date and time when the question was created (ISO).
modified
datetime
Date and time when the question was last modified (ISO).
links
object
API links.
links.self
string
API link: url to this question.

Sample request path

api/v2/topics/antarct-VY8/questions/?tags=geographie

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "answers": [
                {
                    "answer": "Ernest Shackleton",
                    "correct": true,
                    "media": null,
                    "score": 1
                },
                {
                    "answer": "Roald Amundsen",
                    "correct": true,
                    "media": null,
                    "score": 1
                },
                {
                    "answer": "Robert Falcon Scott",
                    "correct": true,
                    "media": null,
                    "score": 1
                },
                {
                    "answer": "Francis Drake",
                    "correct": false,
                    "media": null,
                    "score": 1
                },
                {
                    "answer": "James Cook",
                    "correct": false,
                    "media": null,
                    "score": 1
                }
            ],
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "domain": {
                "domain": "Explorateurs",
                "id": "explorateurs"
            },
            "essential": false,
            "explain": "Shackleton, Amundsen and Scott sont les plus c\u00e9l\u00e8bres parmi les explorateurs du P\u00f4le Sud, au d\u00e9but du 20\u00e8me si\u00e8cle. James Cook et Francis Drake sont de grands explorateurs aussi, mais en des temps plus recul\u00e9s.",
            "explainMedia": null,
            "id": "antarctique-FN6TD--55",
            "level": 3,
            "links": {
                "self": "https://www.experquiz.com/api/v2/topics/antarctique-FN6TD/questions/antarctique-FN6TD--55"
            },
            "questionMedia": null,
            "questionText": "Parmi ces explorateurs, lesquels ont parcouru l\u0027Antarctique ?",
            "questionType": "mchk",
            "rule": null,
            "ruleMedia": null,
            "status": "active",
            "tags": [
                "aaa"
            ],
            "title": "Parmi ces explorateurs, lesquels ont parcouru l\u0027Antarctique ?"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get survey data

GET api/v2/surveys/

Query parameters

Attribute
Type
Description
after
date
Fetch surveys completed after given date.
/surveys/?after=2019-05-01
before
date
Fetch surveys completed before given date.
/surveys/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"survey"
id
int
Identifier for the survey.
user
object
User who has provided data
user.id
object
Id of the user
user.first_name
string
First name of the user
user.last_name
string
Last name of the user
user.email
string
Email of the user
survey_form
object
The survey form used for this survey
survey_form.id
int
Id of the survey form
survey_form.form_name
string
Name of the survey form
survey_data
list of objects
Collected data
survey_data[].field_name
string
Name of the field in the survey form
completed
date
Date when the survey was completed by user

Sample request path

api/v2/surveys?after=2023-05-01

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "completed": "2023-05-26T12:01:27",
            "id": "1817",
            "kind": "survey",
            "status": "completed",
            "survey_data": [
                {
                    "field_name": "satisfaction_overall",
                    "field_value": "good"
                },
                {
                    "field_name": "your_feedback",
                    "field_value": "training was pretty good, best I\u0027ve ever had !"
                }
            ],
            "survey_form": {
                "form_name": "satisfaction participant inter",
                "id": 898081
            },
            "user": {
                "email": "peter.mccloud@experquiz.net",
                "firstName": "Peter",
                "id": 1816,
                "lastName": "McCloud"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get survey forms

GET api/v2/survey_forms/

Query parameters

Attribute
Type
Description
after
date
Fetch surveys completed after given date.
/survey_forms/?after=2019-05-01
before
date
Fetch surveys completed before given date.
/survey_forms/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"surveyform"
id
int
Identifier for the survey form.
form_name
string
name of survey form
title
string
Title of survey form
created_at
string
Date when the survey form was completed
modified_at
string
Date when the survey form was edited
forms_fields
list of objects
List of survey forms fields
forms_fields[].id
string
Identifier for survey forms fields
forms_fields[].name
string
Name of survey forms fields
forms_fields[].label
string
Label of survey forms fields
forms_fields[].type
False
string values: "Type of survey forms field"
forms_fields[].choices
string
survey forms fields
forms_fields[].required
bool
Make survey form field required
forms_fields[].min_length
int
Min length of survey form field
forms_fields[].max_length
int
Survey forms fields max length
forms_fields[].validators
int
Survey forms fields max length
forms_fields[].user_data
bool
Survey form field user data
forms_fields[].to_int
bool
Survey form field to_int
forms_fields[].condition
string
Survey form field condition
forms_fields[].media
object
Survey form field media
forms_fields[].media.id
string
Survey form field media identifier
forms_fields[].media.key
string
Survey form field media urlsafe
forms_fields[].media.folder
string
Survey form field media folder
forms_fields[].media.filename
string
Survey form field media filename
forms_fields[].media.content_type
string
Survey form field media content_type

Sample request path

api/v2/survey_forms

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "created_at": "2023-09-03T07:51:09",
            "form_name": "My survey Form",
            "forms_fields": [
                {
                    "choices": "M\u00c9CONTENT,MOYEN,CONTENT,SUPER CONTENT",
                    "condition": "",
                    "id": "fee8a462df07d1abaft436cd030f31",
                    "label": "Votre niveau de satisfaction",
                    "max_length": null,
                    "media": {
                        "content_type": "image/png",
                        "filename": "baby-6578335_960_720.png",
                        "folder": "enterprise/1",
                        "id": "fee8a462df07d1abaft436cd030f32",
                        "key": "ahhofmV3My1iZXRhLWV4cGVycXVpei1jb21yLQsSCU1lZGlhRmlspsjdnftshaz0NjJkZjA3ZDFhYWJhZjQzNmNkMDMwZjMwDKIBA2UtMQ"
                    },
                    "min_length": null,
                    "name": "satisfaction",
                    "required": false,
                    "to_int": false,
                    "type": "select",
                    "user_data": null,
                    "validator": "none"
                }
            ],
            "id": "fee8a462df07d1abaft436cd030f30",
            "kind": "SurveyForm",
            "modified_at": "2023-09-03T07:59:17",
            "title": "My survey form title"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get tests

GET api/v2/tests/

Query parameters

Attribute
Type
Description
type
string
Fetch tests with matching type.
values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
/tests/?type=evaluation
topic
string
Fetch tests with matching topic id.
/tests/?topic=antarctique-FN6TD
questionnaire
string
Fetch tests with matching questionnaire id.
/tests/?questionnaire=antarctique-FN6TD--4933783551737856
after
date
Fetch tests created after given date.
/tests/?after=2019-05-01
before
date
Fetch tests created before given date.
/tests/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"test"
id
int
Identifier for the test.
typeOfTest
string
Type of test values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
topic
string
Topic to which the questionnaire is related.
questionnaire
object
Questionnaire on which the test is based.
startDateTime
datetime
Date and time the test was started (ISO).
endDateTime
datetime
Date and time the test was completed (ISO).
questions
list of objects
List of questions and results.
surveyData
list of objects
Data collected by survey.
status
string
Status of the test.
score
int
Score of the test.
globalScore
int
Global score of the test.
playTime
int
Total duration of the test.
evaluation
int
Id of the evaluation that the test relates to, if any.
tagsSuccess
list of objects
Success rate for each tag
domainsSuccess
list of objects
Success rate for each domain
links
object
API links.
links.self
string
API link: url to this test.
links.user
string
API link: url to the user of this test.
links.evaluation
string
API link: url to the evaluation of this test.

Sample request path

api/v2/api/v2/tests?after=2019-05-01

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "createdDate": "2023-01-12T15:41:07",
            "domainsSuccess": [
                {
                    "domain": "Exploration",
                    "id": "explor-UIIK1",
                    "successRate": 0.25
                },
                {
                    "domain": "Geographie",
                    "id": "geog-W9QTU",
                    "successRate": 0.42
                }
            ],
            "endDate": "2023-01-12T19:39:50",
            "evaluation": 841125875996,
            "globalScore": 200,
            "id": "1816--5800",
            "kind": "test",
            "links": {
                "evaluation": "https://www.experquiz.com/api/v2/evaluations/841125875996",
                "self": "https://www.experquiz.com/api/v2/tests/2--5800",
                "user": "https://www.experquiz.com/api/v2/users/2"
            },
            "playTime": 277,
            "questionnaire": {
                "id": "antarctique-34TD4--4738",
                "name": "Antarctique Public"
            },
            "questions": [
                {
                    "answer_text": "1,3,4",
                    "correct": false,
                    "id": "antarctique-FN6TD--55",
                    "time": 75,
                    "timeout": false,
                    "title": "Nommez les explorateurs"
                },
                {
                    "answer_text": "1",
                    "correct": true,
                    "id": "antarctique-FN6TD--56",
                    "time": 15,
                    "timeout": false,
                    "title": "Flore de l\u0027Antarctique"
                }
            ],
            "score": 160,
            "startDate": "2023-01-12T15:39:50",
            "status": "completed",
            "tagsSuccess": [
                {
                    "successRate": 0.22,
                    "tag": "general"
                },
                {
                    "successRate": 0.1,
                    "tag": "basic"
                },
                {
                    "successRate": 0.66,
                    "tag": "expert"
                }
            ],
            "topic": {
                "id": "antarctique-FN6TD",
                "name": "Antarctique"
            },
            "typeOfTest": "public",
            "user": {
                "email": "peter.mccloud@experquiz.com",
                "firstName": "Peter",
                "id": 1816,
                "lastName": "McCloud",
                "phone_mobile_e164": "+33000000000"
            }
        }
    ],
    "status": {
        "status_code": 200
    }
}

Tests of a topic

GET api/v2/topics/{topicId}/tests/

Query parameters

Attribute
Type
Description
after
date
Fetch tests created after given date.
/tests/?after=2019-05-01
before
date
Fetch tests created before given date.
/tests/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"test"
id
int
Identifier for the test.
typeOfTest
string
Type of test values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
topic
string
Topic to which the questionnaire is related.
questionnaire
object
Questionnaire on which the test is based.
startDateTime
datetime
Date and time the test was started (ISO).
endDateTime
datetime
Date and time the test was completed (ISO).
questions
list of objects
List of questions and results.
surveyData
list of objects
Data collected by survey.
status
string
Status of the test.
score
int
Score of the test.
globalScore
int
Global score of the test.
playTime
int
Total duration of the test.
evaluation
int
Id of the evaluation that the test relates to, if any.
tagsSuccess
list of objects
Success rate for each tag
domainsSuccess
list of objects
Success rate for each domain
links
object
API links.
links.self
string
API link: url to this test.
links.user
string
API link: url to the user of this test.
links.evaluation
string
API link: url to the evaluation of this test.

Tests of an evaluation

GET api/v2/evaluations/{evaluationId}/tests/

Query parameters

Attribute
Type
Description
after
date
Fetch tests created after given date.
/tests/?after=2019-05-01
before
date
Fetch tests created before given date.
/tests/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"test"
id
int
Identifier for the test.
typeOfTest
string
Type of test values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
topic
string
Topic to which the questionnaire is related.
questionnaire
object
Questionnaire on which the test is based.
startDateTime
datetime
Date and time the test was started (ISO).
endDateTime
datetime
Date and time the test was completed (ISO).
questions
list of objects
List of questions and results.
surveyData
list of objects
Data collected by survey.
status
string
Status of the test.
score
int
Score of the test.
globalScore
int
Global score of the test.
playTime
int
Total duration of the test.
evaluation
int
Id of the evaluation that the test relates to, if any.
tagsSuccess
list of objects
Success rate for each tag
domainsSuccess
list of objects
Success rate for each domain
links
object
API links.
links.self
string
API link: url to this test.
links.user
string
API link: url to the user of this test.
links.evaluation
string
API link: url to the evaluation of this test.

Tests of a user

GET api/v2/users/{userId}/tests/

Query parameters

Attribute
Type
Description
type
string
Fetch tests with matching type.
values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
users/4589361534337024/tests/?type=evaluation
topic
string
Fetch tests with matching topic id.
users/4589361534337024/tests/?topic=antarctique-FN6TD
questionnaire
string
Fetch tests with matching questionnaire id.
users/4589361534337024/tests/?questionnaire=antarctique-FN6TD--4933783551737856
after
string
Fetch tests created after given date.
users/4589361534337024/tests/?after=2019-05-01
before
string
Fetch tests created before given date.
users/4589361534337024/tests/?before=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"test"
id
int
Identifier for the test.
typeOfTest
string
Type of test values: ["public", "standard", "battle", "evaluation", "cycle", "training", "module"]
topic
string
Topic to which the questionnaire is related.
questionnaire
object
Questionnaire on which the test is based.
startDateTime
datetime
Date and time the test was started (ISO).
endDateTime
datetime
Date and time the test was completed (ISO).
questions
list of objects
List of questions and results.
surveyData
list of objects
Data collected by survey.
status
string
Status of the test.
score
int
Score of the test.
globalScore
int
Global score of the test.
playTime
int
Total duration of the test.
evaluation
int
Id of the evaluation that the test relates to, if any.
tagsSuccess
list of objects
Success rate for each tag
domainsSuccess
list of objects
Success rate for each domain
links
object
API links.
links.self
string
API link: url to this test.
links.user
string
API link: url to the user of this test.
links.evaluation
string
API link: url to the evaluation of this test.

Get topics

GET api/v2/topics/

Query parameters

Attribute
Type
Description
author
int
Fetch bases with matching author.
/topics/?author=6558741
tag
string
Fetch bases with matching tag.
/topics/?tag=security
archived
boolean
Fetch bases with status 'archived'.
/topics/?archived=true
after
date
Fetch bases created after given date (YYYY-MM-DD).
/topics/?after=2019-05-01

Response attributes

Attribute
Type
Description
kind
string
"topic"
id
string
Identifier for this questions base (derived from name)
created
datetime
Date and time the base was created (ISO).
modified
datetime
Date and time the base was last modified (ISO).
name
string
Name of the questions base.
short
string
Short name of the question base.
author
object
User Id of the author.
archived
boolean
Questions base is archived.
useHtmlEditor
boolean
Questions editing for the base uses html editor.
useMath
boolean
Html editor allows maths formulas and tables.
withLevel
boolean
Questions in the base have a difficulty level.
withExplain
boolean
Questions in the base have an explanation.
withExplain
boolean
Questions in the base have an explanation.
withRule
boolean
Questions in the base have reminder paragraph.
withDomain
boolean
The base is structured in domains.
withSequence
boolean
Questions in the base may define sequences.
withUDScores
boolean
Questions in the base have user-defined scores.
withUDTiming
boolean
Questions in the base have user-defined timing.
withAnswerScore
boolean
Questions in the base have per-answer scores.
tags
list of strings
Tags assigned to the questions base.
domains
list of objects
List of domains defined within this topic.
links
object
API links.
links.self
string
API link: url to this topic.
links.questions
string
API link: url to questions of this topic.
links.questionnaires
string
API link: url to questionnaires of this topic.
links.medias
string
API link: url to medias of this topic.
links.tests
string
API link: url to tests of this topic.

Sample request path

api/v2/topics

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "author": 6558741,
            "created": "2019-04-03T17:54:09",
            "domains": [
                {
                    "id": "exploration",
                    "name": "Exploration"
                },
                {
                    "id": "geography",
                    "name": "Geography"
                }
            ],
            "id": "antarct-VY8",
            "modified": "2019-06-22T14:06:47",
            "name": "Antarctica",
            "short": "Ant",
            "tags": [
                "exploration",
                "geology",
                "animals",
                "treaty"
            ],
            "useHtmlEditor": true,
            "withDomain": true,
            "withExplain": true,
            "withLevel": true,
            "withRule": true,
            "withUDScores": true,
            "withUDTiming": false
        },
        {
            "author": 6558741,
            "created": "2019-05-25T17:55:09",
            "id": "security-QA8",
            "modified": "2019-05-25T17:55:09",
            "name": "Security",
            "short": "Sec",
            "tags": [
                "work",
                "emergency",
                "alert",
                "prevention"
            ],
            "useHtmlEditor": false,
            "withDomain": false,
            "withExplain": false,
            "withLevel": true,
            "withRule": true,
            "withUDScores": true,
            "withUDTiming": false
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single topic

GET api/v2/topics/{topicId}

Response attributes

Attribute
Type
Description
kind
string
"topic"
id
string
Identifier for this questions base (derived from name)
name
string
Name of the questions base.
short
string
Short name of the question base.
author
object
User Id of the author.
archived
boolean
Questions base is archived.
created
datetime
Date and time the base was created (ISO).
modified
datetime
Date and time the base was last modified (ISO).
useHtmlEditor
boolean
Questions editing for the base uses html editor.
useMath
boolean
Html editor allows maths formulas and tables.
withLevel
boolean
Questions in the base have a difficulty level.
withExplain
boolean
Questions in the base have an explanation.
withExplain
boolean
Questions in the base have an explanation.
withRule
boolean
Questions in the base have reminder paragraph.
withDomain
boolean
The base is structured in domains.
withSequence
boolean
Questions in the base may define sequences.
withUDScores
boolean
Questions in the base have user-defined scores.
withUDTiming
boolean
Questions in the base have user-defined timing.
withAnswerScore
boolean
Questions in the base have per-answer scores.
tags
list of strings
Tags assigned to the questions base.
domains
list of objects
List of domains defined within this topic.
links
object
API links.
links.self
string
API link: url to this topic.
links.questions
string
API link: url to questions of this topic.
links.questionnaires
string
API link: url to questionnaires of this topic.
links.medias
string
API link: url to medias of this topic.
links.tests
string
API link: url to tests of this topic.

Sample request path

api/v2/topics/antarctique-FN6TD

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "author": {
                "first_name": "Jeff",
                "id": 6614661952700416,
                "last_name": "McKenzie"
            },
            "created": "2019-04-03T17:54:09",
            "domains": [
                {
                    "id": "exploration",
                    "name": "Exploration"
                },
                {
                    "id": "geography",
                    "name": "Geography"
                }
            ],
            "id": "antarctique-FN6TD",
            "links": {
                "media": "https://www.experquiz.com/api/v2/medias/?folder=antarctique-FN6TD",
                "questionnaires": "https://www.experquiz.com/api/v2/topics/antarctique-FN6TD/questionnaires/",
                "questions": "https://www.experquiz.com/api/v2/topics/antarctique-FN6TD/questions/",
                "self": "https://www.experquiz.com/api/v2/topics/antarctique-FN6TD",
                "tests": "https://www.experquiz.com/api/v2/tests/?topic_id=antarctique-FN6TD"
            },
            "modified": "2019-06-22T14:06:47",
            "name": "Antarctica",
            "short": "Ant",
            "tags": [
                "exploration",
                "geology",
                "animals",
                "treaty"
            ],
            "useHtmlEditor": true,
            "withDomain": true,
            "withExplain": true,
            "withLevel": true,
            "withRule": true,
            "withUDScores": true,
            "withUDTiming": false
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get training sessions

GET api/v2/trainings/

Query parameters

Attribute
Type
Description
name
string
Fetch training sessions with matching name.
/trainings/?name=Antarctica 101
startdate
date
Fetch bases with matching start date.
/trainings/?startdate=2019-01-23
enddate
date
Fetch bases with matching end date.
/trainings/?enddate=2019-01-23
tag
string
Fetch bases with matching tag.
/trainings/?tag=security

Response attributes

Attribute
Type
Description
id
int
Identifier of the training session.
name
string
Name of the training session.
description
string
Description of the training session.
location
string
Location of the training session.
created
datetime
Creation date and time of the training session (ISO).
documents
list of objects
Documents used in the training session.
questionnaires
list of objects
Questionnaires used in the training session.
tags
list
Tags assigned to the training session.
startDate
date
First day of the training session.
endDate
date
Last day of the training session.
classroomStartDate
date
First day of face-to-face part of the training session.
classroomEndDate
date
Last day of face-to-face part of the training session.
participants
list of objects
List of participants to the training session.

Sample request path

api/v2/trainings/

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "classroomEndDate": "2019-04-14",
            "classroomStartDate": "2019-04-12",
            "created": "2019-03-10T09:46:10",
            "description": "Initiation \u00e0  l\u0027Antarctique.   Grace \u00e0 cette formation de 2 jours, vous saurez tout ce qui est essentiel sur l\u0027Antarctique, le continent perdu, ses manchots, son \u00e9paisseur de glace, et ses bases d\u0027exploration scientifique.",
            "documents": [],
            "endDate": "2019-04-16",
            "id": 4970892069175296,
            "location": "Limoges",
            "name": "Antarctique 404",
            "participants": [
                {
                    "first_name": "Isabelle",
                    "id": 5440383534235648,
                    "last_name": "Lorion",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/5440383534235648"
                    }
                },
                {
                    "first_name": "Jeff",
                    "id": 6614661952700416,
                    "last_name": "McKenzie",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/6614661952700416"
                    }
                },
                {
                    "first_name": "Aim\u00e9",
                    "id": 6003333487656960,
                    "last_name": "Loretti",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/6003333487656960"
                    }
                }
            ],
            "questionnaires": [],
            "startDate": "2019-04-09",
            "tags": [
                "a.1",
                "b.2"
            ],
            "topic": "antarctique-FN6TD"
        },
        {
            "created": "2019-03-10T09:46:10",
            "description": "Initiation \u00e0  l\u0027Antarctique",
            "documents": [],
            "endDate": "2019-03-17",
            "id": 5556931766779904,
            "name": "ANTARCTIQUE 101",
            "participants": [
                {
                    "first_name": "Am\u00e9lie",
                    "id": 5510752278413312,
                    "last_name": "Duval",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/5510752278413312"
                    }
                },
                {
                    "first_name": "Alexandre",
                    "id": 5299646045880320,
                    "last_name": "Cather",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/5299646045880320"
                    }
                }
            ],
            "questionnaires": [],
            "startDate": "2019-03-10",
            "tags": [],
            "topic": "antarctique-FN6TD"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single training session

GET api/v2/trainings/{id}

Response attributes

Attribute
Type
Description
id
int
Identifier of the training session.
description
string
Description of the training session.
location
string
Location of the training session.
created
datetime
Creation date and time of the training session (ISO).
documents
list of objects
Documents used in the training session.
questionnaires
list of objects
Questionnaires used in the training session.
tags
list
Tags assigned to the training session.
startDate
date
First day of the training session.
endDate
date
Last day of the training session.
classroomStartDate
date
First day of face-to-face part of the training session.
classroomEndDate
date
Last day of face-to-face part of the training session.
participants
list of objects
List of participants to the training session.
trainers
list of objects
Trainer for the training session (List with single item)

Sample request path

api/v2/topics/antarct-VY8

Sample response

{
    "paging": {
        "count": 1,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "created": "2019-03-10T09:46:10",
            "description": "Initiation \u00e0  l\u0027Antarctique.   Grace \u00e0 cette formation de 2 jours, vous saurez tout ce qui est essentiel sur l\u0027Antarctique, le continent perdu, ses manchots, son \u00e9paisseur de glace, et ses bases d\u0027exploration scientifique.",
            "documents": [],
            "endDate": "2019-04-16",
            "id": 4970892069175296,
            "name": "Antarctique 404",
            "participants": [
                {
                    "first_name": "Isabelle",
                    "id": 5440383534235648,
                    "last_name": "Lorion",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/5440383534235648"
                    }
                },
                {
                    "first_name": "Jeff",
                    "id": 6614661952700416,
                    "last_name": "McKenzie",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/6614661952700416"
                    }
                },
                {
                    "first_name": "Aim\u00e9",
                    "id": 6003333487656960,
                    "last_name": "Loretti",
                    "links": {
                        "self": "https://www.experquiz.com/api/v2/users/6003333487656960"
                    }
                }
            ],
            "questionnaires": [],
            "startDate": "2019-04-09",
            "tags": [
                "a.1",
                "b.2"
            ],
            "topic": "antarctique-FN6TD"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Create new training session

POST api/v2/trainings/

Request Json attributes

Attribute
Type
Description
name (required)
string
Name of the training session.
description
string
Description of the training session.
location
string
Location of the training session.
topic (required)
string
id of the questions base (topic) that this training session relates to.
created
datetime
Creation date and time of the training session (ISO).
duration (required)
float
Duration of the training session.
documents
list of ids
List of ids of documents used in the training session, but not directly shared with participants.
documentsShared
list of ids
List of ids of documents used in the training session and directly shared with participants.
questionnaires
list of ids
List of ids of questionnaires used in the training session, but not directly shared with participants.
questionnairesShared
list of ids
List of ids of questionnaires used in the training session and directly shared with participants.
tags
list
Tags assigned to the training session.
startDate (required)
date
First day of the training session.
endDate (required)
date
Last day of the training session.
classroomStartDate
date
First day of face-to-face part of the training session.
classroomEndDate
date
Last day of face-to-face part of the training session.
participants
list of ids
List of ids of participants to the training session.
trainer (required)
int
Id of the trainer user for the training session.
clone
int
Id of existing training session to be used as model

Sample request path

api/v2/trainings

Sample request payload

{
    "description": "An introduction to Antarctica, covering geography, exploration and fauna",
    "documents": [
        "15802f7bf75d479802657d72c345fa",
        "9802657d72c345fa15802f7bf75d47"
    ],
    "duration": 3.5,
    "endDate": "2018-04-12",
    "location": "Strasbourg",
    "name": "Antarctica 101",
    "participants": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ],
    "startDate": "2018-04-09",
    "tags": [
        "exploration",
        "ecology",
        "fauna",
        "ice pack"
    ],
    "topic": "antarctique-FN6TD",
    "trainer": 4458751238778533
}

Sample response

{
    "description": "An introduction to Antarctica, covering geography, exploration and fauna",
    "documents": [
        "15802f7bf75d479802657d72c345fa",
        "9802657d72c345fa15802f7bf75d47"
    ],
    "duration": 3.5,
    "endDate": "2018-04-12",
    "id": 7785335587751238,
    "location": "Strasbourg",
    "name": "Antarctica 101",
    "participants": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ],
    "startDate": "2018-04-09",
    "tags": [
        "exploration",
        "ecology",
        "fauna",
        "ice pack"
    ],
    "topic": "antarctique-FN6TD",
    "trainer": 4458751238778533
}

Update training session

PUT api/v2/trainings/ PUT api/v2/trainings/{training_id}

Request Json attributes

Attribute
Type
Description
id (required)
int
Identifier of the training session to be updated.
name
string
Name of the training session.
description
string
Description of the training session.
location
string
Location of the training session.
topic
string
id of the questions base (topic) that this training session relates to.
created
datetime
Creation date and time of the training session (ISO).
duration
float
Duration of the training session.
documents
list of ids
List of ids of documents used in the training session, but not directly shared with participants.
documentsShared
list of ids
List of ids of documents used in the training session and directly shared with participants.
questionnaires
list of ids
List of ids of questionnaires used in the training session, but not directly shared with participants.
questionnairesShared
list of ids
List of ids of questionnaires used in the training session and directly shared with participants.
tags
list
Tags assigned to the training session.
startDate
date
First day of the the training session.
endDate
date
Last day of the training session.
classroomStartDate
date
First day of face-to-face part of the training session.
classroomEndDate
date
Last day of face-to-face part of the training session.
participants
list of ids
List of ids of participants to the training session.
trainer
int
Id of the trainer user for the training session.

Sample request path

api/v2/trainings

Sample request payload

{
    "description": "An introduction to Antarctica, covering geography, exploration and fauna",
    "documents": [
        "15802f7bf75d479802657d72c345fa",
        "9802657d72c345fa15802f7bf75d47"
    ],
    "duration": 4.5,
    "endDate": "2018-04-12",
    "id": 7785335587751238,
    "location": "Nantes",
    "name": "Antarctica 101",
    "participants": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ],
    "startDate": "2018-04-09",
    "tags": [
        "exploration",
        "ecology",
        "fauna",
        "ice pack"
    ],
    "trainer": 4458751238778533
}

Sample response

{
    "description": "An introduction to Antarctica, covering geography, exploration and fauna",
    "documents": [
        "15802f7bf75d479802657d72c345fa",
        "9802657d72c345fa15802f7bf75d47"
    ],
    "duration": 4.5,
    "endDate": "2018-04-12",
    "id": 7785335587751238,
    "location": "Nantes",
    "name": "Antarctica 101",
    "participants": [
        5440383534235648,
        6614661952700416,
        6003333487656960
    ],
    "startDate": "2018-04-09",
    "tags": [
        "exploration",
        "ecology",
        "fauna",
        "ice pack"
    ],
    "trainer": 4458751238778533
}

Get users

GET api/v2/users/

Query parameters

Attribute
Type
Description
email
string
Fetch users with matching email.
/users/?email=john.lennon@experquiz.net
mobile
string
Fetch users with matching mobile phone (e164 format).
/users/?mobile=+33661234567
employeeid
string
Fetch users with matching employee id.
/users/?employeeid=123
usertype
string
Fetch users with matching user type.
values: ["employee", "client", "trainee", "contractor", "other"]
/users/?usertype=client
status
string
Fetch users with matching status.
values: ["active", "inactive", "created", "invited", "contact"]
/users/?status=active
tag
string
Fetch users with matching tag.
/users/?tag=expert
search
string
Fetch users with search string.
/users/?search=william

Response attributes

Attribute
Type
Description
kind
string
"user"
id
int
Identifier of the user.
email
string
Email of the user.
mobile
string
Mobile phone number of the user, in E164 format.
preferredChannel
string
Preferred communication channel of the user values: ["email", "mobile"]
firstName
string
First name of the user.
lastName
string
Last name of the user.
language
string
Preferred language of the user values: ["fr", "en", "es"]
userType
string
Type of the user values: ["employee", "trainee", "contractor", "client", "other"]
employeeId
string
Employee Id of the user.
gender
string
Gender of the user values: ["M", "F"]
country
string
Country of the user.
city
string
City of the user.
zip
string
Zip code of the user within country.
jobTitle
string
Job title of the user.
direction
string
Direction of the user within company.
pole
string
Pole of the user within company.
department
string
Department of the user within company.
team
string
Team of the user within company.
enterpriseName
string
Name of the organization of the user, if userType is not 'employee'
birthDate
date
Date of birth of the user (YYYY-MM-DD)
hiringDate
date
Hiring date of the user (YYYY-MM-DD)
activeFromDate
date
Date when user's account will become active (YYYY-MM-DD)
activeUntilDate
date
Date after which users's account will stop being active (YYYY-MM-DD)
permissions
list
User's permissions.
groups
list
Groups of the user
scopeIncludesAllUsers
boolean
All users are in the user's scope, relative to permissions
groupsScope
list
Groups that are within the user's scope, relative to permissions
scopeIncludesAllTopics
boolean
All topics are in the user's scope, relative to permissions
topicsScope
list
Topics that are within the user's scope, relative to permissions
links
object
API links.
links.self
string
API link: url to this user.
links.tests
string
API link: url to tests of this user.

Sample request path

api/v2/users

Sample response

{
    "paging": {
        "count": 2,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "activeUntilDate": "2016-10-31",
            "birthDate": "1973-10-03",
            "createdDate": "2019-02-28",
            "department": "Direction G\u00e9n\u00e9rale",
            "email": "zula.milne@experquiz.net",
            "employeeId": "498",
            "enterpriseName": "ContractorCo",
            "firstName": "Zula",
            "gender": "F",
            "groups": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                },
                {
                    "id": 5018171069169664,
                    "name": "Etudes"
                }
            ],
            "groupsScope": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                }
            ],
            "hiringDate": "1999-09-29",
            "id": 6636652185255936,
            "jobTitle": "Chef de projet",
            "kind": "user",
            "language": "fr",
            "lastName": "Milne",
            "links": {
                "self": "https://www.experquiz.com/api/v2/users/6636652185255936",
                "tests": "https://www.experquiz.com/api/v2/users/6636652185255936/tests/"
            },
            "permissions": [],
            "phoneMobileE164": "+33600002013",
            "preferredChannel": "email",
            "scopeIncludesAllTopics": false,
            "scopeIncludesAllUsers": false,
            "status": "inactive",
            "tags": [],
            "topicsScope": [],
            "userType": "contractor"
        },
        {
            "email": "daniel.alhoo@exper.exp",
            "employeeId": "B27054AB",
            "enterpriseName": "",
            "firstName": "Daniel",
            "gender": "M",
            "groups": [
                {
                    "id": 5018171069169664,
                    "name": "Etudes"
                },
                {
                    "id": 6144070976012288,
                    "name": "Hotline"
                }
            ],
            "groupsScope": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                }
            ],
            "id": 4589361534337024,
            "kind": "user",
            "language": "fr",
            "lastName": "ALHOO",
            "links": {
                "self": "https://www.experquiz.com/api/v2/users/4589361534337024",
                "tests": "https://www.experquiz.com/api/v2/users/4589361534337024/tests/"
            },
            "permissions": [
                "questions_view",
                "questions_edit",
                "users_view"
            ],
            "preferredChannel": "email",
            "scopeIncludesAllTopics": true,
            "scopeIncludesAllUsers": false,
            "status": "created",
            "tags": [
                "aaa",
                "ccc",
                "ddd"
            ],
            "topicsScope": [],
            "userType": "employee"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get users of a single group

GET api/v2/groups/{id}/users/

Response attributes

Attribute
Type
Description
kind
string
"user"
id
int
Identifier of the user.
email
string
Email of the user.
mobile
string
Mobile phone number of the user, in E164 format.
preferredChannel
string
Preferred communication channel of the user values: ["email", "mobile"]
firstName
string
First name of the user.
lastName
string
Last name of the user.
language
string
Preferred language of the user values: ["fr", "en", "es"]
userType
string
Type of the user values: ["employee", "trainee", "contractor", "client", "other"]
employeeId
string
Employee Id of the user.
gender
string
Gender of the user values: ["M", "F"]
country
string
Country of the user.
city
string
City of the user.
zip
string
Zip code of the user within country.
jobTitle
string
Job title of the user.
direction
string
Direction of the user within company.
pole
string
Pole of the user within company.
department
string
Department of the user within company.
team
string
Team of the user within company.
enterpriseName
string
Name of the organization of the user, if userType is not 'employee'
birthDate
date
Date of birth of the user (YYYY-MM-DD)
hiringDate
date
Hiring date of the user (YYYY-MM-DD)
activeFromDate
date
Date when user's account will become active (YYYY-MM-DD)
activeUntilDate
date
Date after which users's account will stop being active (YYYY-MM-DD)
permissions
list
User's permissions.
groups
list
Groups of the user
scopeIncludesAllUsers
boolean
All users are in the user's scope, relative to permissions
groupsScope
list
Groups that are within the user's scope, relative to permissions
scopeIncludesAllTopics
boolean
All topics are in the user's scope, relative to permissions
topicsScope
list
Topics that are within the user's scope, relative to permissions
links
object
API links.
links.self
string
API link: url to this user.
links.tests
string
API link: url to tests of this user.

Sample request path

api/v2/groups/4560774232014848/users/

Sample response

{
    "paging": {
        "count": 4,
        "limit": 15,
        "offset": 0
    },
    "results": [
        {
            "activeUntilDate": "2016-10-31",
            "birthDate": "1973-10-03",
            "createdDate": "2019-02-28",
            "department": "Direction G\u00e9n\u00e9rale",
            "email": "zula.milne@experquiz.net",
            "employeeId": "498",
            "enterpriseName": "ContractorCo",
            "firstName": "Zula",
            "gender": "F",
            "groups": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                },
                {
                    "id": 5018171069169664,
                    "name": "Etudes"
                }
            ],
            "groupsScope": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                }
            ],
            "hiringDate": "1999-09-29",
            "id": 6636652185250936,
            "jobTitle": "Chef de projet",
            "kind": "user",
            "language": "fr",
            "lastName": "Milne",
            "links": {
                "self": "https://www.experquiz.com/api/v2/users/6636652185250936",
                "tests": "https://www.experquiz.com/api/v2/users/6636652185250936/tests/"
            },
            "permissions": [
                "questions_view"
            ],
            "phoneMobileE164": "+33600002013",
            "preferredChannel": "email",
            "scopeIncludesAllTopics": false,
            "scopeIncludesAllUsers": false,
            "status": "inactive",
            "tags": [],
            "topicsScope": [],
            "userType": "contractor"
        },
        {
            "email": "daniel.alhoo@exper.exp",
            "employeeId": "B27054AB",
            "enterpriseName": "",
            "firstName": "Daniel",
            "gender": "M",
            "groups": [
                {
                    "id": 5018171069169664,
                    "name": "Etudes"
                },
                {
                    "id": 6144070976012288,
                    "name": "Hotline"
                }
            ],
            "groupsScope": [
                {
                    "id": 4560774232014848,
                    "name": "Qualit\u00e9"
                }
            ],
            "id": 4589361534337024,
            "kind": "user",
            "language": "fr",
            "lastName": "ALHOO",
            "links": {
                "self": "https://www.experquiz.com/api/v2/users/4589361534337024",
                "tests": "https://www.experquiz.com/api/v2/users/4589361534337024/tests/"
            },
            "permissions": [
                "questions_view"
            ],
            "preferredChannel": "email",
            "scopeIncludesAllTopics": false,
            "scopeIncludesAllUsers": false,
            "status": "created",
            "tags": [
                "aaa",
                "ccc",
                "ddd"
            ],
            "topicsScope": [],
            "userType": "employee"
        }
    ],
    "status": {
        "status_code": 200
    }
}

Get single user

GET api/v2/users/{userId}

Response attributes

Attribute
Type
Description
kind
string
"user"
id
int
Identifier of the user.
email
string
Email of the user.
mobile
string
Mobile phone number of the user, in E164 format.
preferredChannel
string
Preferred communication channel of the user values: ["email", "mobile"]
firstName
string
First name of the user.
lastName
string
Last name of the user.
language
string
Preferred language of the user values: ["fr", "en", "es"]
userType
string
Type of the user values: ["employee", "trainee", "contractor", "client", "other"]
employeeId
string
Employee Id of the user.
gender
string
Gender of the user values: ["M", "F"]
country
string
Country of the user.
city
string
City of the user.
zip
string
Zip code of the user within country.
jobTitle
string
Job title of the user.
direction
string
Direction of the user within company.
pole
string
Pole of the user within company.
department
string
Department of the user within company.
team
string
Team of the user within company.
enterpriseName
string
Name of the organization of the user, if userType is not 'employee'
birthDate
date
Date of birth of the user (YYYY-MM-DD)
hiringDate
date
Hiring date of the user (YYYY-MM-DD)
activeFromDate
date
Date when user's account will become active (YYYY-MM-DD)
activeUntilDate
date
Date after which users's account will stop being active (YYYY-MM-DD)
permissions
list
User's permissions.
groups
list
Groups of the user
scopeIncludesAllUsers
boolean
All users are in the user's scope, relative to permissions
groupsScope
list
Groups that are within the user's scope, relative to permissions
scopeIncludesAllTopics
boolean
All topics are in the user's scope, relative to permissions
topicsScope
list
Topics that are within the user's scope, relative to permissions
links
object
API links.
links.self
string
API link: url to this user.
links.tests
string
API link: url to tests of this user.

Delete single user

DELETE api/v2/users/{userId}

Create a user

POST api/v2/users

Request Json attributes

Attribute
Type
Description
email
string
Email of the user.
mobile
string
Mobile phone number of the user, in E164 format.
preferredChannel (required)
string
Preferred communication channel of the user values: ["email", "mobile"]
firstName
string
First name of the user.
lastName (required)
string
Last name of the user.
language
string
Preferred language of the user values: ["fr", "en", "es"]
password
string
Password of the user.
userType
string
Type of the user values: ["employee", "trainee", "contractor", "client", "other"]
employeeId
string
Employee Id of the user.
gender
string
Gender of the user values: ["M", "F"]
country
string
Country of the user.
city
string
City of the user.
zip
string
Zip code of the user within country.
direction
string
Direction of the user within company.
pole
string
Pole of the user within company.
department
string
Department of the user within company.
team
string
Team of the user within company.
enterpriseName
string
Name of the organization of the user, if userType is not 'employee'
birthDate
date
Date of birth of the user (YYYY-MM-DD)
hiringDate
date
Hiring date of the user (YYYY-MM-DD)
activeFromDate
date
Date when user's account will become active (YYYY-MM-DD)
activeUntilDate
date
Date after which users's account will stop being active (YYYY-MM-DD)
permissions
list
User's permissions.

Response attributes

Attribute
Type
Description
email
string
Email of the user.
mobile
string
Mobile phone number of the user, in E164 format.
preferredChannel
string
Preferred communication channel of the user values: ["email", "mobile"]
firstName
string
First name of the user.
lastName
string
Last name of the user.
language
string
Preferred language of the user values: ["fr", "en", "es"]
userType
string
Type of the user values: ["employee", "trainee", "contractor", "client", "other"]
employeeId
string
Employee Id of the user.
gender
string
Gender of the user values: ["M", "F"]
country
string
Country of the user.
city
string
City of the user.
zip
string
Zip code of the user within country.
jobTitle
string
Job title of the user.
direction
string
Direction of the user within company.
pole
string
Pole of the user within company.
department
string
Department of the user within company.
team
string
Team of the user within company.
enterpriseName
string
Name of the organization of the user, if userType is not 'employee'
birthDate
date
Date of birth of the user (YYYY-MM-DD)
hiringDate
date
Hiring date of the user (YYYY-MM-DD)
activeFromDate
date
Date when user's account will become active (YYYY-MM-DD)
activeUntilDate
date
Date after which users's account will stop being active (YYYY-MM-DD)
permissions
list
User's permissions.