API classonlive

Primeros pasos

  • Si deseas usar la API de classonlive, vas a necesitar un TOKEN

  • Para conseguir el token, navega a tu panel de control de classonlive.com, ve a la sección de Conectar desde Mi Web y haz click en API de Classonlive. Una vez allí deberás registrar la IP desde dónde se van a hacer las peticiones. A la ip se le asociará un token parecido a: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC Debes cambiar la parte de {{TOKEN}} en las rutas, con el token asociado a tu IP. Sólo vas a poder hacer peticiones desde la ip que has registrado.

  • Esta api esta diseñada para crear webinars / conferencias en vivo / clases en directo. Estas clases en esta documentación serán llamadas como "content".

  • Esta api no funciona con cursos modulares, particulares o de pack.

GET Conseguir los datos de un "content"

www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

Respuesta:

content Hay 2 posibles ejemplos.
Content de un sólo día:
{ "contentId": 45758, "title": "example", "teacher": "[email protected]", "oneDayDate": "2019-02-28T10:30:00.000Z", "durartion": "d30m", "type": "One_to_One" }
Content de horario semanal
{ "contentId": 32759, "title": "title example", "teacher": "[email protected]", "multipleDayFromDate": "2019-07-23T22:00:00.000Z", "multipleDayToDate": "2019-08-24T22:00:00.000Z", "type": "Broadcast", "dates": [ "2019-08-18T22:30:00.000Z", "2019-08-11T22:30:00.000Z", "2019-08-04T22:30:00.000Z", "2019-07-28T22:30:00.000Z" ] }

contentId Integer, identificador usado para borrar/editar el content

title String, titulo/nombre del content

teacher Integer, email del profesor

type String, 'Broadcast' (1 profesor, hasta 150 asistentes), 'Many_to_Many' (1 profesor, hasta 9 asistentes con audio/video), 'One_to_One' (1 profesor, 1 asistente con audio/video)

multipleDayFromDate Date, fecha de inicio, undefined si el content es de sólo un día

multipleDayToDate Date, finish date, undefined si el content es de sólo un día

dates Array de Dates, every live session in the content, undefined si el content es de sólo un día

oneDayDate Date, date de la sesión en directo, undefined si el content es de horario semanal

duration String, 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas), undefined si el content es de horario semanal

ok true

Boolean, true si no hay error

Example Requestget content data
curl --location --request GET "www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}" \
  --data ""

GET Conseguir todos tus contents

www.apiclassonlive.com/api/v1/{{TOKEN}}/content
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Respuesta:

contentList [ { "contentId": 31187, "title": "example multimple", "teacher": "[email protected]", "oneDayDate": null, "multipleDayFromDate": "2018-08-24T22:00:00.000Z", "multipleDayToDate": "2018-08-30T22:00:00.000Z", "type": "One_to_One" }, { "contentId": 31181, "title": "example single", "teacher": "[email protected]", "oneDayDate": "2018-06-21T12:00:00.000Z", "multipleDayFromDate": null, "multipleDayToDate": null, "type": "Broadcast" } ]

Lista (array) de contents, cada uno con:

contentId Integer, identificador usado para borrar/editar el content

title String, titulo/nombre del content

teacher Integer, email del profesor

type String, 'Broadcast' (1 profesor, hasta 150 asistentes), 'Many_to_Many' (1 profesor, hasta 9 asistentes con audio/video), 'One_to_One' (1 profesor, 1 asistente con audio/video)

multipleDayFromDate Date, fecha de inicio, null si el content es de sólo un día

multipleDayToDate Date, finish date, null si el content es de sólo un día

oneDayDate Date, date de la sesión en directo, null si el content es de horario semanal

ok true

Boolean, true si no hay error

Example Requestget all contents
curl --location --request GET "www.apiclassonlive.com/api/v1/{{TOKEN}}/content" \
  --data ""

POST Crear content de un sólo día

http://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/oneday
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
title título ejemplo

String, longitud min 1,max 400, Requerido

session 2019-08-24T22:12:00.000Z

Date, mayor que ahora + 1 hora, Requerido

teacher [email protected]

Email, debe pertenecer a una cuenta asociada con tu cuenta de classonlive (Tú o uno de tus Instructores)

type Broadcast

String, debe ser uno de 'Broadcast' (1 profesor, hasta 150 asistentes), 'Many_to_Many' (1 profesor, hasta 9 asistentes con audio/video), 'One_to_One' (1 profesor, 1 asistente con audio/video). Requerido

duration d30m

debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Respuesta:

contentId 3452

Integer, identificador usado para borrar/editar el content

teacherLink https://subdomain.classonlive.com/sala-webinar/title-example?code=O5IcVl/tGpGFd9aqUKmCA==

String, link que el profesor puede usar para entrar a la sesión en directo

ok true

Boolean, true si no hay error

Example RequestCrear content de un sólo día
curl --location --request POST "http://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/oneday" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "title=asdasd&session=1589983688438&[email protected]&type=Broadcast&duration=d30m"

POST añadir alumno/asistente

http://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/student
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
email [email protected]

Email del asistente. Requerido

contentId 45758

Integer, debe ser un content que pertenezca a tu cuenta. Requerido

name John Smith

String. El nombre del estudiante. NO requerido.

Respuesta:

studentLink https://subdomain.classonlive.com/sala-webinar/title-example?code=O5IcVl/tGpGFd9aqUKmCA==

String, link que el asistente puede usar para entrar a la sesión en directo

ok true

Boolean, true si no hay error

isNewUser true

Boolean, true if the student email is new in database.

password 173251

String, the password of the new user, undefined if is not new user

Example Requestaddstudent
curl --location --request POST "http://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/student" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "[email protected]&contentId=45758"

GET Conseguir el nombre de un usuario

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/username/{{EMAIL}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{EMAIL}} [email protected]

El email de la cuenta de la que deseas conocer el nombre

Respuesta:

name name example

String, nombre del usuario

ok true

Boolean, true si no hay error

Example Requestget username
curl --location --request GET "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/username/{{EMAIL}}" \
  --data ""

PUT Poner nombre

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/username
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
email [email protected]

Email de asistente/profesor al que cambiar el nombre. Requerido

name guillermo

String, nuevo nombre. Max 200 caracteres. Requerido

Respuesta:

email [email protected]

Stirng, email de la cuenta a la que se le ha cambiado el nombre

newName new Name

String, el nuevo nombre

ok true

Boolean, true si no hay error

Example Requestset username
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/username" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "[email protected]&name=guillermo"

DELETE borrar asistente del content

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/student
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
email [email protected]

Email del asistente. Requerido

contentId 3452

Id de el content, debe ser un content que pertenezca a tu cuenta. Requerido

Respuesta:

contentId 3452

Integer, el identificado del curso

email [email protected]

String, email del asistente

ok true

Boolean, true si no hay error

Example Requestdelete student from content
curl --location --request DELETE "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/student" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "[email protected]&contentId=45758"

POST Crear content de horario semanal

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/multipleday
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
title titulo curso

String, longitud entre 1 y 400, Requerido.

startDate 2019-07-23T22:00:00.000Z

Fecha, debe ser mayor que la hora actual más 24h, Requerido

teacher [email protected]

Email, debe pertenecer a una cuenta asociada con tu cuenta de classonlive (Tú o uno de tus Instructores)

type Broadcast

String, debe ser uno de 'Broadcast' (1 profesor, hasta 150 asistentes), 'Many_to_Many' (1 profesor, hasta 9 asistentes con audio/video), 'One_to_One' (1 profesor, 1 asistente con audio/video). Requerido

endDate 2019-09-24T22:00:00.000Z

Fecha mayor que startDate, Requerido

monday {"hour":"22","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

tuesday {"hora":"02","minutes":"30","duration":"d1h"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

wednesday {"hora":"02","minutes":"30","duration":"d15h"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

thursday {"hora":"04","minutes":"45","duration":"d3h"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

friday {"hora":"02","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

sunday {"hora":"02","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

Respuesta:

contentId 3452

Integer, identificador usado para borrar/editar el content

ok true

Boolean, true si no hay error

Example RequestCrear multipleday content
curl --location --request POST "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/multipleday" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "title=titulo%20curso&startDate=2019-07-23T22%3A00%3A00.000Z&[email protected]&type=Broadcast&endDate=2019-09-24T22%3A00%3A00.000Z&monday=%7B%22hora%22%3A%2222%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&tuesday=%7B%22hora%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d1h%22%7D&thursday=%7B%22hora%22%3A%2204%22%2C%22minutes%22%3A%2245%22%2C%22duration%22%3A%22d3h%22%7D&friday=%7B%22hora%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&saturday=%7B%22hora%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&sunday=%7B%22hora%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D"

GET consigue el link para acceder a un content para un email(asistente o profesor))

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/email/{{EMAIL}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

{{EMAIL}} [email protected]

El email(asistente o profesor) de quién quieres generar el link para acceder

Respuesta:

link https://subdomain.classonlive.com/sala-webinar/title-example?code=O5IcVl/tGpGFd9aqUKmCA==

String, link que el profesor o asistente puede usar para entrar en la sesión en directo

ok true

Boolean, true si no hay error

Example Requestgetlink to content for email(asistente o profesor))
curl --location --request GET "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/email/{{EMAILSTUDENT}}" \
  --data ""

PUT Cambiar el profesor de un curso

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/teacher
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
teacher [email protected]

Email, debe pertenecer a una cuenta asociada con tu cuenta de classonlive (Tú o uno de tus Instructores)

Respuesta:

contentId 3452

Integer, identificador usado para borrar/editar el content

teacherLink https://subdomain.classonlive.com/sala-webinar/title-example?code=O5IcVl/tGpGFd9aqUKmCA==

String, link que el profesor puede usar para entrar a la sesión en directo

ok true

Boolean, true si no hay error

Example Requestset profesor to content
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/teacher" \
  --header "Content-Type: application/json" \
  --data "{
    \"teacher\": \"[email protected]\"
}"

DELETE Borrar content

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

Respuesta:

ok true

Boolean, true si no hay error

Example Requestdelete content
curl --location --request DELETE "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}" \
  --data ""

POST Añadir cuenta de profesor

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/teacher

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
email [email protected]

Email de el nuevo profesor. Requerido

Respuesta:

isNewUser true

Boolean, indica si es un usuario nuevo

password 173251

String, la contraseña, undefined si no es nuevo usuario y ya tenia una contraseña

ok true

Boolean, true si no hay error

Example RequestAdd profesor
curl --location --request POST "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/teacher" \
  --header "Content-Type: application/json" \
  --data "{\"email\":\"[email protected]\"}"

DELETE Borrar cuenta de profesor

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/teacher
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
teacher [email protected]

Email, debe pertenecer a una cuenta asociada con tu cuenta de classonlive (uno de tus Instructores)

Respuesta:

ok true

Boolean, true si no hay error

Example Requestdelete profesor
curl --location --request DELETE "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/teacher" \
  --header "Content-Type: application/json" \
  --data "{\"teacher\":\"[email protected]ple.com\"}"

PUT Cambiar título a un content

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/title
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
title nuevo título

String, el nuevo título, máximo 400 caracteres.

Respuesta:

ok true

Boolean, true si no hay error

Example Requestset title to content
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/title" \
  --header "Content-Type: application/json" \
  --data "{
    \"title\": \"nuevo titulo\"
}"

PUT Cambiar la fecha de un curso (de sólo un día)

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/session
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un curso que te pertenezca

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
duration d30m

String, debe ser uno entre: 'd30m'(30 min), 'd1h'(1 hour), 'd15h' (1h 30m), 'd2h'(2 hours), 'd3h'(3 hours), 'd4h'(4 hours), 'd5h'(5 hours), 'd6h'(6 hours), 'd7h'(7 hours), 'd8h'(8 hours)

date 1556029400835

Date, fecha de la sesión en directo

Response:

ok true

Boolean, true si no hya error

Example RequestCambiar la fecha de un curso
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/session" \
                                --header "Content-Type: application/x-www-form-urlencoded" \
                                --data "duration=d30m&date=1556029400835"

PUT Editar un curso con horario semanal

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/multipleday
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 43622

El contentId de un content que te pertenezca, debe ser de un content de horario semanal

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
startDate 2019-07-23T22:00:00.000Z

Fecha, debe ser mayor que la hora actual más 24h, Requerido

teacher [email protected]

Email, debe pertenecer a una cuenta asociada con tu cuenta de classonlive (Tú o uno de tus Instructores)

type Broadcast

String, debe ser uno de 'Broadcast' (1 profesor, hasta 150 asistentes), 'Many_to_Many' (1 profesor, hasta 9 asistentes con audio/video), 'One_to_One' (1 profesor, 1 asistente con audio/video). Requerido

endDate 2019-09-24T22:00:00.000Z

Fecha mayor que startDate, Requerido

monday {"hour":"22","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

tuesday {"hora":"02","minutes":"30","duration":"d1h"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

wednesday {"hora":"02","minutes":"30","duration":"d15h"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

friday {"hora":"02","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

saturday {"hora":"02","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

sunday {"hora":"02","minutes":"30","duration":"d30m"}

Object, Requerido. Debe tener la ssiguentes claves:

hour: debe ser uno de [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], Requerido minutes: debe ser uno de [00, 15, 30, 45], La hora debe ser UTM

duration: debe ser uno de 'd30m'(30 min), 'd1h'(1 hora), 'd15h' (1h 30m), 'd2h'(2 horas), 'd3h'(3 horas), 'd4h'(4 horas), 'd5h'(5 horas), 'd6h'(6 horas), 'd7h'(7 horas), 'd8h'(8 horas). Requerido

Requerido como mínimo un día, es decir al menos uno entre: [monday, tuerday, wednesday, thursday, friday, saturday, sunday]

Response:

contentId 3452

Integer, use it to edit/delete the content

ok true

Boolean, true si no hay error

Example Requestcreate multipleday content
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/{{CONTENTID}}/multipleday" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "startDate=2019-07-23T22%3A00%3A00.000Z&[email protected]&type=Broadcast&endDate=2019-09-24T22%3A00%3A00.000Z&monday=%7B%22hour%22%3A%2222%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&tuesday=%7B%22hour%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d1h%22%7D&thursday=%7B%22hour%22%3A%2204%22%2C%22minutes%22%3A%2245%22%2C%22duration%22%3A%22d3h%22%7D&friday=%7B%22hour%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&saturday=%7B%22hour%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D&sunday=%7B%22hour%22%3A%2202%22%2C%22minutes%22%3A%2230%22%2C%22duration%22%3A%22d30m%22%7D"

PUT Cambiar email de un alumno/profesor

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/useremail
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

Headers

Content-Type application/x-www-form-urlencoded

Body

urlencoded
email [email protected]

Email, the email of the user you want to change.

newEmail [email protected]

Email, the new email.

Response:

ok true

Boolean, true si no hay error

email [email protected]

el nuevo email

Example Requestedit user email
curl --location --request PUT "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/useremail" \
  --header "Content-Type: application/json" \
  --data "[email protected]&[email protected]"

GET Listar los alumnos del content

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/student/findbycontent/{{CONTENTID}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{CONTENTID}} 1254

El contentId de un content que te pertenezca. El contentId es un identificador.

Headers

Content-Type application/x-www-form-urlencoded

Response:

ok true

Boolean, true si no hay error

students [ { "name": "student name", "email": "[email protected]" }, { "name": "student name2", "email": "[email protected]" } ]

Array de estudiantes, con su nombre(name) y email(email)

Example RequestListar los alumnos del content
curl --location --request GET "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/student/findbycontent/{{CONTENTID}}" \
                                --data ""

GET Buscar contents

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/search/{{SEARCH}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{SEARCH}} exampletext

El texto para la búsqueda por título

Headers

Content-Type application/x-www-form-urlencoded

Response:

ok true

Boolean, true si no hay error

contentList [ { "contentId": 32769, "title": "asdasd", "teacher": "[email protected]", "oneDayDate": "2019-04-28T14:00:00.000Z", "multipleDayFromDate": null, "multipleDayToDate": null, "type": "Many_to_Many" }, { "contentId": 32772, "title": "therealtest", "teacher": "[email protected]", "oneDayDate": null, "multipleDayFromDate": "2019-07-23T22:00:00.000Z", "multipleDayToDate": "2019-08-24T22:00:00.000Z", "type": "Broadcast" } ]

List of contents, every one with:

contentId Integer, use it to edit/delete the content

title String, title of the content

teacher Integer, email of the techer

type String, 'Broadcast' (1 teacher, up to 150 assitants), 'Many_to_Many' (1 teacher, up to 9 assitants with audio/video), 'One_to_One' (1 teacher, 1 assitant with audio/video)

multipleDayFromDate Date, start date, null if content is single day

multipleDayToDate Date, finish date, null if content is single day

oneDayDate Date, date of the live session, null if content is multiple day

Example RequestBuscar contents
curl --location --request GET "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/search/{{SEARCH}}" \
                                --data ""

GET Buscar estudiantes

https://www.apiclassonlive.com/api/v1/{{TOKEN}}/content/search/{{SEARCH}}
{{TOKEN}} eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJjbGFzc29ubGl2ZSIsI.mRhdGEiOiJ7XC

El TOKEN asociado a la ip cuando la registraste

{{SEARCH}} exampletext

El texto para la búsqueda (busca por nombre y email)

Headers

Content-Type application/x-www-form-urlencoded

Response:

ok true

Boolean, true si no hay error

students [ { "name": "name example", "email": "[email protected]", "content": "title", "contentId": 32634 }, { "name": "jonh", "email": "[email protected]", "content": "another title", "contentId": 32677 } ]

Lista de estudiantes, cada uno con su nombre, email, y el título y contentid de el content que están apuntados

Example RequestBuscar estudiantes
curl --location --request GET "https://www.apiclassonlive.com/api/v1/{{TOKEN}}/student/search/{{SEARCH}}" \
                                --data ""