INSC ManualFundacoes » Histórico » Versão 11
Versão 10 (Alexandre Menezes, 16/08/2017 14:01) → Versão 11/14 (Alexandre Menezes, 16/08/2017 14:02)
h1. Manual para Fundações (Escola de Extensão)
{{toc}}
h2. Pré-requisito: token_key
Antes de mais nada, é preciso registrar a Fundação junto ao Sistema de Inscrições, solicitando um token_key para utilizar os Webservices disponíveis.
Para solicitar, abrir um chamado em http://atendimento.setic.ufsc.br, com Service: Sistema de Inscrições.
h2. Ambiente de Homologação
Para os testes, usar a URL: http://staging.inscricoes.ufsc.br
*IMPORTANTE:* o valor de _token_key_ é diferente para cada sistema (homologação e produção)
h2. Integração com o SIGPEX
Cada edição ofertada na Escola de Extensão, ao ser aprovada pela PROEX, tem dados da atividade no sistema de inscrições gravados no formulário do projeto, e devem ser acessadas pelo próprio SIGPEX.
Dados obrigatórios nas chamadas dos webservices:
|_.Rótulo do Campo no SIGPEX|_.Parâmetro passado no Webservice|
|Código da Atividade|activity_code|
|Chave de Acesso a atividade|activity_key|
Juntamente com esses dois parâmetros, deve-se informar também o *token_key*, já devidamente registrado junto ao Sistema de Inscrições.
h2. Serviços Disponíveis
h3. Inscrever pessoa em uma atividade
*URL:* http://inscricoes.ufsc.br/api/v1/activities/XXX/subscribe_person, onde XXX é o _activity_code_
*Tipo de request:* POST
*Parâmetros:* activity_key, token_key, name, cpf, birthday, email, gender, mother_name, codigo_retorno
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|""|Post feito com sucesso|
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|404|Atividade não encontrada|Não existe atividade no sistema de inscrições com o código fornecido|
*IMPORTANTE:*
* é imprescindível que haja um serviço criado pela fundação para que seja informado o número da inscrição (enrolment_id).
* o nome da pessoa e o nome da mãe não podem ter abreviações, pois caso contrário, não será salvo no cadastro da UFSC
*WebService de Retorno*
Este é o WebService que deve ser implementado pela fundação
POST http://fundacao.org.br/path/subscription_return (codigo_retorno, enrolment_id)
h3. Buscar todos os inscritos de uma determinada atividade
*URL:* http://inscricoes.ufsc.br/api/v1/activities/XXX/participants, onde XXX é o _activity_code_
*Tipo de request:* GET
*Parâmetros:* activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|""|Lista de objetos JSON, contendo os seguintes atributos: enrolment_id, name, cpf, passport, email, mobile, phone|
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|404|Atividade não encontrada|Não existe atividade no sistema de inscrições com o código fornecido|
*IMPORTANTE: é imprescindível guardar o valor de enrolment_id, pois estes deve ser informado como parâmetro nos demais webservices relativos a inscrição.*
*Exemplos:*
resp = conn.get("/api/v1/activities/854/participants.json", "token_key" => "dcbb7b36acd4438d07abafb8e28605a4")
resp.status
=> 200
resp.body
=> [{
"enrolment_id":"1",
"status":"waiting_review",
"name":"Fulano de Tal",
"cpf":"11122233344",
"passport":"",
"email":"fulano.de.tal@email.com",
"mobile":"(48) 91234-5678",
"phone":"(48) 3210-9876"
}, ...]
resp = conn.get("/api/v1/activities/99/participants.json", "token_key" => "dcbb7b36acd4438d07abafb8e28605a4")
resp.status
=> 404
resp.body
=> {"message":"Atividade não encontrada"}
h3. Informar o pagamento de uma inscrição (ou parcela)
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/payment, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key, payment_amount,payment_date,payment_installment
|_.Parâmetro|_.Descrição|_.Observação|
|payment_amount|Valor pago|A parte decimal do valor pago deve ser separada por ponto ("."). Ex. 145.44. Caso seja separado por vírgula (","), é considerada apenas a parte inteira do valor.|
|payment_date|Data do pagamento|São aceitos diversas formas de informar a data, menos timestamp. Ex. 09/06/2017 12:00:23 ou 2017-06-09 12:00:23 são válidas. Caso a data não seja "entendida", o campo fica com valor nulo|
|payment_installment|Número da parcela|São aceitos quaisquer valores para este campo. Sugere-se que pagamentos a vista, seja utilizado o valor 1, significando apenas uma parcela.|
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Pagamento registrado com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h3. Aprovar (homologar) uma inscrição
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/approve, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Inscrição homologada com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h3. Cancelar uma inscrição homologada
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/deny, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Homologação de inscrição cancelada com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h2. Testes no Ambiente de Homologação
Para poder testar no ambiente de homologação, foram criadas atividades com os seguintes dados
|_.Fundação|_.Código da Atividade|_.Chave de Acesso da Atividade|
|FAPEU|116|2fb82c2ee46cf4c9e8845cbaff365875|
|FEESC|117|36de1619a87a6803ab50af076672f97d|
|FEPESE|118|189e725f4587b679740f0f7783745056|
|FUNJAB|119|0f393578a85c7c5fe754cf050968c26c|
h2. Tabela de Status
Esses valores são os possíveis quando retorna uma inscrição na chamada de listagem dos participantes de uma atividade
|_.Status|_.Significado|
|enrolment_approved|Inscrição aprovada|
|enrolment_denied|Inscrição rejeitada|
|incomplete|Incompleta (faltam dados para os campos adicionais)|
|waiting_review|Aguardando análise|
h2. Fluxo da Informação
h3. 1º passo: registro da atividade de extensão e submissão ao edital
Antes de mais nada, é preciso ter registrada a ação de extensão (SIGPEX) para poder concorrer ao edital da Escola de Extensão. Uma vez selecionado o projeto, seguem-se os demais passos.
h3. 2º passo: criação da atividade no sistema de inscrições
Num dos atributos que caracterizam a ação de extensão, é explicitado que o projeto se destina à Escola de Extensão. Desta forma, no SIGPEX, é mostrado um espaço exclusivo para a Escola de Extensão, onde a PROEX e as Fundações terão acesso.
Neste espaço, a PROEX deverá criar a atividade no sistema de inscrições por meio de um botão "Criar Atividade". São passados diversos parâmetros, entre eles, a fundação responsável por gerenciar a atividade.
Esta ação de criar atividade, além de criar uma atividade no sistema de inscrições, retorna o código e a chave de acesso da Atividade para que a fundação responsável possa gerenciar as inscrições.
h3. 3º passo: formalização da atividade com a fundação
Em construção...
{{toc}}
h2. Pré-requisito: token_key
Antes de mais nada, é preciso registrar a Fundação junto ao Sistema de Inscrições, solicitando um token_key para utilizar os Webservices disponíveis.
Para solicitar, abrir um chamado em http://atendimento.setic.ufsc.br, com Service: Sistema de Inscrições.
h2. Ambiente de Homologação
Para os testes, usar a URL: http://staging.inscricoes.ufsc.br
*IMPORTANTE:* o valor de _token_key_ é diferente para cada sistema (homologação e produção)
h2. Integração com o SIGPEX
Cada edição ofertada na Escola de Extensão, ao ser aprovada pela PROEX, tem dados da atividade no sistema de inscrições gravados no formulário do projeto, e devem ser acessadas pelo próprio SIGPEX.
Dados obrigatórios nas chamadas dos webservices:
|_.Rótulo do Campo no SIGPEX|_.Parâmetro passado no Webservice|
|Código da Atividade|activity_code|
|Chave de Acesso a atividade|activity_key|
Juntamente com esses dois parâmetros, deve-se informar também o *token_key*, já devidamente registrado junto ao Sistema de Inscrições.
h2. Serviços Disponíveis
h3. Inscrever pessoa em uma atividade
*URL:* http://inscricoes.ufsc.br/api/v1/activities/XXX/subscribe_person, onde XXX é o _activity_code_
*Tipo de request:* POST
*Parâmetros:* activity_key, token_key, name, cpf, birthday, email, gender, mother_name, codigo_retorno
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|""|Post feito com sucesso|
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|404|Atividade não encontrada|Não existe atividade no sistema de inscrições com o código fornecido|
*IMPORTANTE:*
* é imprescindível que haja um serviço criado pela fundação para que seja informado o número da inscrição (enrolment_id).
* o nome da pessoa e o nome da mãe não podem ter abreviações, pois caso contrário, não será salvo no cadastro da UFSC
*WebService de Retorno*
Este é o WebService que deve ser implementado pela fundação
POST http://fundacao.org.br/path/subscription_return (codigo_retorno, enrolment_id)
h3. Buscar todos os inscritos de uma determinada atividade
*URL:* http://inscricoes.ufsc.br/api/v1/activities/XXX/participants, onde XXX é o _activity_code_
*Tipo de request:* GET
*Parâmetros:* activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|""|Lista de objetos JSON, contendo os seguintes atributos: enrolment_id, name, cpf, passport, email, mobile, phone|
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|404|Atividade não encontrada|Não existe atividade no sistema de inscrições com o código fornecido|
*IMPORTANTE: é imprescindível guardar o valor de enrolment_id, pois estes deve ser informado como parâmetro nos demais webservices relativos a inscrição.*
*Exemplos:*
resp = conn.get("/api/v1/activities/854/participants.json", "token_key" => "dcbb7b36acd4438d07abafb8e28605a4")
resp.status
=> 200
resp.body
=> [{
"enrolment_id":"1",
"status":"waiting_review",
"name":"Fulano de Tal",
"cpf":"11122233344",
"passport":"",
"email":"fulano.de.tal@email.com",
"mobile":"(48) 91234-5678",
"phone":"(48) 3210-9876"
}, ...]
resp = conn.get("/api/v1/activities/99/participants.json", "token_key" => "dcbb7b36acd4438d07abafb8e28605a4")
resp.status
=> 404
resp.body
=> {"message":"Atividade não encontrada"}
h3. Informar o pagamento de uma inscrição (ou parcela)
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/payment, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key, payment_amount,payment_date,payment_installment
|_.Parâmetro|_.Descrição|_.Observação|
|payment_amount|Valor pago|A parte decimal do valor pago deve ser separada por ponto ("."). Ex. 145.44. Caso seja separado por vírgula (","), é considerada apenas a parte inteira do valor.|
|payment_date|Data do pagamento|São aceitos diversas formas de informar a data, menos timestamp. Ex. 09/06/2017 12:00:23 ou 2017-06-09 12:00:23 são válidas. Caso a data não seja "entendida", o campo fica com valor nulo|
|payment_installment|Número da parcela|São aceitos quaisquer valores para este campo. Sugere-se que pagamentos a vista, seja utilizado o valor 1, significando apenas uma parcela.|
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Pagamento registrado com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h3. Aprovar (homologar) uma inscrição
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/approve, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Inscrição homologada com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h3. Cancelar uma inscrição homologada
*URL:* http://inscricoes.ufsc.br/api/v1/enroments/XXX/deny, onde XXX é o _enrolment_id_
*Tipo de request:* POST
*Parâmetros:* activity_code, activity_key, token_key
*Retorno:*
|_.HTTP Status|_.Mensagem(message)|_.Descrição|
|200|Homologação de inscrição cancelada com sucesso||
|401|API Token Inválido|O Token fornecido no webservice não existe cadastrado no sistema de inscrições|
|401|Acesso Negado.|O Token fornecido não possui permissão para executar a ação solicitada|
|401|Acesso Negado: Serviço ou chave da atividade direfente na atividade|A chave de acesso a atividade não está correta ou a fundação que está acessando a atividade não foi escolhida como administradora do curso (no SIGPEX)|
|401|Acesso Negado: Inscrição não pertence a atividade informada||
|401|Acesso Negado: Serviço não autorizado a acessar a atividade informada||
|401|Acesso Negado: Chave de acesso não pertence a atividade informada||
|404|Inscrição não encontrada|Não existe inscrição no sistema de inscrições com o código fornecido|
h2. Testes no Ambiente de Homologação
Para poder testar no ambiente de homologação, foram criadas atividades com os seguintes dados
|_.Fundação|_.Código da Atividade|_.Chave de Acesso da Atividade|
|FAPEU|116|2fb82c2ee46cf4c9e8845cbaff365875|
|FEESC|117|36de1619a87a6803ab50af076672f97d|
|FEPESE|118|189e725f4587b679740f0f7783745056|
|FUNJAB|119|0f393578a85c7c5fe754cf050968c26c|
h2. Tabela de Status
Esses valores são os possíveis quando retorna uma inscrição na chamada de listagem dos participantes de uma atividade
|_.Status|_.Significado|
|enrolment_approved|Inscrição aprovada|
|enrolment_denied|Inscrição rejeitada|
|incomplete|Incompleta (faltam dados para os campos adicionais)|
|waiting_review|Aguardando análise|
h2. Fluxo da Informação
h3. 1º passo: registro da atividade de extensão e submissão ao edital
Antes de mais nada, é preciso ter registrada a ação de extensão (SIGPEX) para poder concorrer ao edital da Escola de Extensão. Uma vez selecionado o projeto, seguem-se os demais passos.
h3. 2º passo: criação da atividade no sistema de inscrições
Num dos atributos que caracterizam a ação de extensão, é explicitado que o projeto se destina à Escola de Extensão. Desta forma, no SIGPEX, é mostrado um espaço exclusivo para a Escola de Extensão, onde a PROEX e as Fundações terão acesso.
Neste espaço, a PROEX deverá criar a atividade no sistema de inscrições por meio de um botão "Criar Atividade". São passados diversos parâmetros, entre eles, a fundação responsável por gerenciar a atividade.
Esta ação de criar atividade, além de criar uma atividade no sistema de inscrições, retorna o código e a chave de acesso da Atividade para que a fundação responsável possa gerenciar as inscrições.
h3. 3º passo: formalização da atividade com a fundação
Em construção...