Bulk Provision Data
curl --request POST \
--url https://api.smarterproctoring.com/v2/installs/{installSid}/provision \
--header 'Content-Type: application/json' \
--header 'token: <api-key>' \
--data '
{
"course": {
"ids": {
"sid": "<string>",
"api": "<string>",
"lms": "<string>",
"external": "<string>"
},
"title": "<string>",
"code": "<string>"
},
"enrollment": "<unknown>"
}
'import requests
url = "https://api.smarterproctoring.com/v2/installs/{installSid}/provision"
payload = {
"course": {
"ids": {
"sid": "<string>",
"api": "<string>",
"lms": "<string>",
"external": "<string>"
},
"title": "<string>",
"code": "<string>"
},
"enrollment": "<unknown>"
}
headers = {
"token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
course: {
ids: {sid: '<string>', api: '<string>', lms: '<string>', external: '<string>'},
title: '<string>',
code: '<string>'
},
enrollment: '<unknown>'
})
};
fetch('https://api.smarterproctoring.com/v2/installs/{installSid}/provision', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.smarterproctoring.com/v2/installs/{installSid}/provision",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'course' => [
'ids' => [
'sid' => '<string>',
'api' => '<string>',
'lms' => '<string>',
'external' => '<string>'
],
'title' => '<string>',
'code' => '<string>'
],
'enrollment' => '<unknown>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.smarterproctoring.com/v2/installs/{installSid}/provision"
payload := strings.NewReader("{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.smarterproctoring.com/v2/installs/{installSid}/provision")
.header("token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smarterproctoring.com/v2/installs/{installSid}/provision")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body"<string>"Provision
Bulk Provision Data
Provisions multiple types of data (e.g., courses, exams, enrollments) in a single bulk operation for the specified install.
POST
/
v2
/
installs
/
{installSid}
/
provision
Bulk Provision Data
curl --request POST \
--url https://api.smarterproctoring.com/v2/installs/{installSid}/provision \
--header 'Content-Type: application/json' \
--header 'token: <api-key>' \
--data '
{
"course": {
"ids": {
"sid": "<string>",
"api": "<string>",
"lms": "<string>",
"external": "<string>"
},
"title": "<string>",
"code": "<string>"
},
"enrollment": "<unknown>"
}
'import requests
url = "https://api.smarterproctoring.com/v2/installs/{installSid}/provision"
payload = {
"course": {
"ids": {
"sid": "<string>",
"api": "<string>",
"lms": "<string>",
"external": "<string>"
},
"title": "<string>",
"code": "<string>"
},
"enrollment": "<unknown>"
}
headers = {
"token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
course: {
ids: {sid: '<string>', api: '<string>', lms: '<string>', external: '<string>'},
title: '<string>',
code: '<string>'
},
enrollment: '<unknown>'
})
};
fetch('https://api.smarterproctoring.com/v2/installs/{installSid}/provision', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.smarterproctoring.com/v2/installs/{installSid}/provision",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'course' => [
'ids' => [
'sid' => '<string>',
'api' => '<string>',
'lms' => '<string>',
'external' => '<string>'
],
'title' => '<string>',
'code' => '<string>'
],
'enrollment' => '<unknown>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.smarterproctoring.com/v2/installs/{installSid}/provision"
payload := strings.NewReader("{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.smarterproctoring.com/v2/installs/{installSid}/provision")
.header("token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smarterproctoring.com/v2/installs/{installSid}/provision")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"course\": {\n \"ids\": {\n \"sid\": \"<string>\",\n \"api\": \"<string>\",\n \"lms\": \"<string>\",\n \"external\": \"<string>\"\n },\n \"title\": \"<string>\",\n \"code\": \"<string>\"\n },\n \"enrollment\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body"<string>"Authorizations
Path Parameters
Install Sid
Pattern:
^AI[a-f0-9]{32}$Body
application/json
Course data
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Enrollment object is optional but can only exist if user is provided.
Exam schema ensuring required and optional fields meet validation criteria.
Show child attributes
Show child attributes
Optional signon object.. If provided, integrationSid must be present. This will return the signon information to redirect the user to.
Show child attributes
Show child attributes
Response
default - application/json
Successful
The response is of type string.
Was this page helpful?
⌘I
