Vincular plano ao Aluno

Route (Rota)

Método Rota Descrição
POST /webservice/student/{student_id}/bind/plans Vincula um ou mais planos a um aluno

Headers (Cabeçalho)

Param Tipo Descrição Obrigatório
Accept String application/json Sim
content-type String application/json Sim
secret String *Secret Key Sim
token String **Webservice Token Sim

*Para conseguir a Secret Key acesse sua Plataforma, abra o Menu, vá na área de Usuários e acesse Webservice, lá você terá a lista de usuários com suas respectivas Secret Key

** Token gerado pela rota de autenticação

Route params (Parâmetros na rota)

Param Tipo Descrição Obrigatório
student_id String Id do aluno Sim

Body params (Parâmetros)

Param Tipo Descrição Obrigatório
plan JSON JSON com os dados do plano que irá ser vinculado Sim
plan.id String Id do Plano Sim
recurrence_option int *Indica o tipo de recorrência do plano Não
free boolean Caso true, o plano será vinculado ao Aluno gratuitamente. Não
invoice JSON JSON com dados da fatura, necessário caso o plano não seja gratuito ou público Não
invoice.translations JSON traduções para a fatura, pode ser "null" Não
invoice.value float Valor a ser pago Sim
invoice.status int **Status da fatura que irá ser vinculada ao Aluno Não

*Tipos de recorrência padrão da Plataforma:

  • 1 = Acesso por 1 ano, recorrência mensal;
  • 2 = Acesso por 6 meses, recorrência mensal;
  • = Assinatura mensal;
  • 4 = Assinatura bimestral;
  • 5 = Assinatura trimestral;
  • 6 = Assinatura semestral;
  • 7 = Assinatura anual;

** Status da Fatura

  • 0 = Paga;
  • 1= Aberta;
  • 2 = Atrasada;
  • 3 = Vencida;
  • 4 = Processando;
  • 5 = Em analíse;
  • 6 = Cancelada;

Exemplos

cURL

				
					curl --location --globoff 'https://dev3.nochalks.com/student/{{student_id}}/bind/plans' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'secret: {{._webservice_secret}}' \
--header 'token: {{._webservice_token}}' \
--data '{
  "plan": {
    "id": 1,
    "recurrence_option": 3
  },
  "free": true
}'
				
			

Node.js

				
					const axios = require('axios');
let data = JSON.stringify({
  "plan": {
    "id": 1,
    "recurrence_option": 3
  },
  "free": true
});

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://dev3.nochalks.com/student/{{student_id}}/bind/plans',
  headers: { 
    'Content-Type': 'application/json', 
    'Accept': 'application/json', 
    'secret': '{{._webservice_secret}}', 
    'token': '{{._webservice_token}}'
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});


				
			

PHP

				
					<?php
$client = new Client();
$headers = [
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'secret' => '{{._webservice_secret}}',
  'token' => '{{._webservice_token}}'
];
$body = '{
  "plan": {
    "id": 1,
    "recurrence_option": 3
  },
  "free": true
}';
$request = new Request('POST', 'https://dev3.nochalks.com/student/{{student_id}}/bind/plans', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();



				
			

Request (Requisição)

				
					{
	"plan": {
		"id": 1
	    "recurrence_option": 3 // Caso o plano seja recorrente
	},
	"free": false,
	"invoice": {
		"translations": [
            {
                "name": "Nome",
                "description": "<p>Português<\/p>",
                "language_id": 1,
                "invoice_id": 14
            },
            {
                "name": "Name",
                "description": "<p>English<\/p>",
                "language_id": 2,
                "invoice_id": 14
            }
        ],
		"value": 10,
		"status": 7
	}
}
				
			

Response (Respostas)

- Aluno atualizado (Status: 200)

				
					{
	"message": "Vinculado",
	"status": "success",
	"hasLimit": []
}
				
			
ESCOLHA UM ATENDIMENTO:
Contato por Chat CHAT
Contato por E-mail E-MAIL
Contato por Telefone TELEFONE
Contato por Whatsapp WHATSAPP