Histórico da Página
RESTWeb Web Service REST
Produto: | TOTVS Automação Fiscal |
Versões: | 12.1.2317+ |
Este documento tem o objetivo de fornecer informações para utilização do Web Service REST de integração com o TOTVS Automação Fiscal.
Para mais detalhes sobre o conceito de um serviços REST clique aqui.
Para mais detalhes sobre serviços REST na arquitetura Protheus clique aqui.
Índice
|
---|
Definição do Serviço
Nome: WSTSSSetup
Objetivo: Realizar a configuração do TSS (TOTVS Service SOA) e obter o ID da entidade.
Descrição: Essa interface de integração irá realizar a criação de entidade, configuração do certificado digital e também disponibilizará método para consultar o ID da entidade, de acordo com parâmetros.
Métodos: POST e GET.
Configurações do Serviço
A Configuração do serviço REST está documentada no link Configuração REST SERVER - Protheus.
Estas parametrizações estão localizadas fisicamente no arquivo appserver.ini da pasta de instalação "[...]\BIN\APP"
Nota | ||
---|---|---|
| ||
Na seção HTTPURI, a chave PrepareIn deve ser comentada. Segue exemplo de configuração do WS REST para utilização no modulo TAF: [HTTPV11] [HTTPREST] [HTTPURI] [HTTPJOB] [TAF_CFGJOB]
*A chave PrepareIn deve conter o código do Grupo de Empresas(sigamat.emp/syscompany) utilizado no modulo TAF, abaixo exemplos configurações possíveis para as mesmas:
** A chave Instances na seção TAF_CFGJOB é opcional, se a mesma não existir o sistema ira considerar a quantidade de threads declarada na chave instances da seção HTTPURI. Obs: O servidor cria Threads especificas para cada grupo de empresas de acordo com a configuração da chave Instances, por isso essa configuração deve ser realizada considerando a capacidade computacional do servidor. |
Definição dos métodos
POST
Descrição do Método: O método POST segue o conceito do próprio método em qualquer outro tipo de serviço REST, devendo seu conteúdo ser enviado no corpo da mensagem (body) no formato json.
O objetivo do método é configurar uma nova entidade no TSS (TOTVS Service SOA) ou atualizar certificado digital de uma entidade existente.
Estrutura da mensagem enviada no POST (Request):
Autenticação
A autenticação utilizada no serviço REST é a Basic, a mesma é obrigatória no header das requisições caso o ambiente esteja com a chave Security da seção HTTPREST configurada com o valor "1".
Exemplo:
Bloco de código | ||
---|---|---|
| ||
Authentication: Basic YWRtaW46IA== |
Obs: A senha deve utilizar a criptografia base64.
O Serviço TSS também possui autenticação (JWT) a partir da versão 12.1.33, para a configuração é necessário seguir os passos deste documento: https://tdn.totvs.com/x/1RhcIw
Quando esta autenticação está em uso é necessário informar a chave TokenAuthTSS no header das requisições com o Token retornado pelo Serviço WSTSSTOKEN: https://tdn.totvs.com/x/YaYtJg
Exemplo:
Bloco de código | ||
---|---|---|
| ||
TokenAuthTSS: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRpZCI6IjE2ODA1NmNjLTczNTYtNDAwMC04NUI0LWZlNjhiMjZhYjJjZiIsICJjbGllbnRfaWQiOiJiZDFlMjhkNGRmYmIwZDY2YjY0MGVhOTQyOThiMmU3N2MyNDMzMzRjIiwiaXNzIjoiVE9UVlNfVFNTXzEyLjEuMDMzIiwiaWF0IjoxNjMyMTUzNjkzLCJleHAiOjE2MzIxNTU0OTR9.ZTIwMjk4NTJkZTgwYWU3N2VlMTE5OTU1ZGJjYWFlODZlYTJhZTc1OGUxYjI2YWE5MWIwMWYzOTVmMDU2YTNiNTkzZjdiM2NhOGNhZGU3ZDI3ZGNhNmI1N2QyODc1NjM3Nzg5MzNhYTAzYzNlNzQ4N2QzMThkMWU0YmE3NmEyMjU |
Definição dos métodos
POST
Descrição do Método: O método POST segue o conceito do próprio método em qualquer outro tipo de serviço REST, devendo seu conteúdo ser enviado no corpo da mensagem (body) no formato json.
O objetivo do método é configurar uma nova entidade no TSS (TOTVS Service SOA) ou atualizar certificado digital de uma entidade existente.
Estrutura da mensagem enviada no POST (Request):
Atributo | Pai | Nivel | Ocorrência | Formato |
---|---|---|---|---|
registrationType | - | 1 | 1 | Integer(1) |
registrationNumber |
Atributo
Pai
Nivel
Ocorrência
Formato
url
-
1
1
150
registrationType
-
1
1
Integer(1)
registrationNumber
-
1
1
String(14)
ie
-
1
1
String(12)
uf
-
1
1
String(02)
countyCode
-
1
1
String(5)
companyName
-
1
1
String(250)
- | 1 | 1 | String( |
14) |
ie | - | 1 | 0:1 |
Memo - Base64
String(12) | ||||
uf | - | 1 | 1 | String( |
2) |
- url – atributo raiz
- registrationType - estrutura dos itens.
- registrationNumber - Código Identificador da filial do ERP emissor.
- ie - Determina se o arquivo enviado em TAFMSG é .txt (1)ou .Xml(2).
- uf - Sequência do arquivo; A Mensagem em TAFMSG pode ser enviada em mais de 1 registro, para isso deve-se repetir as informações dos demais campos e alterar a sequencia de acordo com a ordem das informações enviadas.
- countyCode - Chave do Registro.
- companyName - Arquivo/Evento a ser integrado, a mensagem deve ser enviada com criptografia BASE64.
- branchName - Data da Integração.
- digitalCertificate - Hora da Integração.
- password - Prioridade de processamento do registro.
companyName | - | 1 | 1 | String(250) |
branchName | - | 1 | 0:1 | String(250) |
countyCode | - | 1 | 1 | String(5) |
digitalCertificate | - | 1 | 1 | Memo - Base64 |
password | - | 1 | 1 | String(50) |
grantNumber | - | 1 | 0:1 | String(14) |
url | - | 1 | 1 | 150 |
slot | - | 1 | 0:1 | String(1) |
label | - |
Aviso | ||
---|---|---|
| ||
Os atributos não obrigatórios têm que fazer parte da estrutura, somente o seu preenchimento é opcional. |
Aviso | ||
---|---|---|
| ||
Para a utilização de caracteres especiais nos conteúdos dos atributos, é necessário a definição do encode correto no Header das mensagens de todos os métodos. Authorization : Basic ****** Content-Type : application/json;charset=UTF-8 |
Estrutura da mensagem de retorno do POST (Response):
Atributo
Pai
Nivel
Ocorrência
Formato
ticketCode
-
1 | 0:1 | String( |
50) |
module | - | 1 | 0: |
-
1 | String(150) | ||
idHex | - | 1 | 0:1 |
String( |
150) |
typeCert | - | 1 | 0:1 | String( |
2) |
key
registryKey
2
1
String(100)
success
registryKey
2
1
boolean(true : false)
error
registryKey
2
0:N
-
coderr
error
3
1
Int(3)
description
error
3
1
String(100)
keyAmount
registryKey
1
0:1
Int(9999)
- ticketCode – atributo raiz
- registryKey – Array contendo os TAFKEY requisitados.
- coderr - Código de erro que impediu a integração do lote
- description - Descrição do erro que impossibilitou a integração do lote.
- key – Código do TAFKEY
- success – Informa se o TAFKEY foi integrado ou não.
- error – Array contendo os erros que impediram a integração do registro. Atributo gerado somente quando success for igual a false.
- coderr – Código do erro que impossibilitou a integração.
- description – Descrição do erro que impossibilitou a integração.
- keyAmount – Número de registros enviados no POST.
- registrationType - Tipo da Entidade a ser criada:
- 1 - Pessoa Jurídica
- 2 - Pessoa Física
- registrationNumber - Número de Inscrição da Entidade a ser criada, seguindo a regra abaixo:
- Se registrationType for 1, então deverá ser enviado o CNPJ
- Se registrationType for 2, então deverá ser enviado o CPF
- ie - Número da Inscrição Estadual
- uf - Sigla da Unidade Federativa
- companyName - Nome da Pessoa/ Razão Social da Companhia
- branchName - Nome Fantasia
- countyCode - Código do município conforme tabela do IBGE
- digitalCertificate - Conteúdo do certificado digital, criptografado em Base64
- password - Senha do certificado digital
- grantNumber - Número de Inscrição do Transmissor. Quando enviado, mesmo em branco, substituirá o Número de Inscrição do Transmissor atual no TSS.
- url – URL do TSS (TOTVS Service SOA)
- slot – URL do TSS (TOTVS Service SOA)
- label - Label do Certificado A3.
- module - Caminho na máquina física da DLL do fabricante do certificado A3.
- idHex - Id Hexadecimal do certificado A3.
- typeCert - Tipo do certificado. São aceitos os valores "A1" ou "A3"
Aviso | ||
---|---|---|
| ||
Os atributos não obrigatórios têm que fazer parte da estrutura, somente o seu preenchimento é opcional. |
Estrutura da mensagem de retorno do POST (Response):
Atributo | Pai | Nivel | Ocorrência | Formato |
---|---|---|---|---|
idCompany | - | 1 | 1 | String(8) |
returnMessage | - | 1 | 1 | String |
- idCompany – Código da entidade
- returnMessage – Mensagem de retorno do TSS
Exemplos de requisição utilizando o método POST:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
Bloco de código | ||||||
| ||||||
{"ticketCode" : "WIO9753123654789789363655241452363", "loteregistrationType": [1, {"sourceBranchregistrationNumber" : "010030114268000115", "messageTypeie" : "2", "messageSequentialuf" : "001SP", "registryTypecompanyName" : "S-1010eSocial", "registryKeybranchName" : "KEYIO7878874854545454998598525eSocial", "integrationMessagecountyCode": "PGVTb2NpYWw+PGV2dFRhYlJ1YnJpY2EgaWQ9J1MtMTAxMDEzMDUyMDE2MTU0MDE2JyB2ZXJzYW89JzEuMSc+PGlkZUV2ZW50bz48dHBBbWI+MzwvdHBBbWI+PHByb2NFbWk+MTwvcHJvY0VtaT48dmVyUHJvYz48L3ZlclByb2M+PC9pZGVFdmVudG8+PGlkZUVtcHJlZ2Fkb3I+PHRwSW5zYz4xPC90cEluc2M+PG5ySW5zYz41MzExMzc5MTAwMDEyMjwvbnJJbnNjPjwvaWRlRW1wcmVnYWRvcj48aW5mb1J1YnJpY2E+PGFsdGVyYWNhbz48aWRlUnVicmljYT48Y29kUnVicj45OTg8L2NvZFJ1YnI+PGluaVZhbGlkPjIwMTYtMDM8L2luaVZhbGlkPjwvaWRlUnVicmljYT48ZGFkb3NSdWJyaWNhPjxkc2NSdWJyPkJBU0UgUEVOU0FPIFBHVE88L2RzY1J1YnI+PG5hdFJ1YnI+OTk4OTwvbmF0UnVicj48dHBSdWJyPjM8L3RwUnVicj48Y29kSW5jQ1A+MDA8L2NvZEluY0NQPjxjb2RJbmNJUlJGPjAwPC9jb2RJbmNJUlJGPjxjb2RJbmNGR1RTPjAwPC9jb2RJbmNGR1RTPjxjb2RJbmNTSU5EPjAwPC9jb2RJbmNTSU5EPjxyZXBEU1I+TjwvcmVwRFNSPjxyZXAxMz5OPC9yZXAxMz48cmVwRmVyaWFzPk48L3JlcEZlcmlhcz48cmVwUmVzYz5OPC9yZXBSZXNjPjwvZGFkb3NSdWJyaWNhPjwvYWx0ZXJhY2FvPjwvaW5mb1J1YnJpY2E+PC9ldnRUYWJSdWJyaWNhPjwvZVNvY2lhbD4=50308", "integrationDatepassword" : "20161210123456", "integrationTimeurl": "14localhost:15:229090", "erpownerdigitalCertificate" : "DATASUL" }, {"sourceBranch" : "0100", "messageType" : "2", "messageSequential" : "001", "registryType" : "S-2200", "registryKey" : "KEYYZE7878RE4854545454998598576", "integrationMessage": "PGVTb2NpYWw+PGV2dENhZEluaWNpYWwgSWQ9J0lEMTUzMTEzNzkxMDAwMDAwMjAxNjEyMDkxNDU5NTQwMDAwMSc+PGlkZUV2ZW50bz48aW5kUmV0aWY+MTwvaW5kUmV0aWY+PG5yUmVjaWJvPjwvbnJSZWNpYm8+PHRwQW1iPjM8L3RwQW1iPjxwcm9jRW1pPjE8L3Byb2NFbWk+PHZlclByb2M+MS4wPC92ZXJQcm9jPjwvaWRlRXZlbnRvPjxpZGVFbXByZWdhZG9yPjx0cEluc2M+MTwvdHBJbnNjPjxuckluc2M+NTMxMTM3OTE8L25ySW5zYz48L2lkZUVtcHJlZ2Fkb3I+PHRyYWJhbGhhZG9yPjxjcGZUcmFiPjMyMDA5MDM3ODQ2PC9jcGZUcmFiPjxuaXNUcmFiPjEyMjAzNjcxODQ0PC9uaXNUcmFiPjxubVRyYWI+IEdUIFhNQlBFUkhVSlpOQ1FGU0lWTEFPRDwvbm1UcmFiPjxzZXhvPk08L3NleG8+PHJhY2FDb3I+MTwvcmFjYUNvcj48ZXN0Q2l2PjI8L2VzdENpdj48Z3JhdUluc3RyPjwvZ3JhdUluc3RyPjxuYXNjaW1lbnRvPjxkdE5hc2N0bz4xOTc2LTA0LTEzPC9kdE5hc2N0bz48Y29kTXVuaWM+MTIwMDEwNTwvY29kTXVuaWM+PHVmPlNQPC91Zj48cGFpc05hc2N0bz4wMTM8L3BhaXNOYXNjdG8+PHBhaXNOYWM+MDEzPC9wYWlzTmFjPjxubU1hZT5ORVVTQSBDQVJWQUxITyBORVZFUzwvbm1NYWU+PG5tUGFpPkpPU0UgUkVZTkFMRE8gQ1JFU1BPIE5FVkVTPC9ubVBhaT48L25hc2NpbWVudG8+PGRvY3VtZW50b3M+PENUUFM+PG5yQ3Rwcz4wMDAzNTgwMDwvbnJDdHBzPjxzZXJpZUN0cHM+MDAwNzM8L3NlcmllQ3Rwcz48dWZDdHBzPlNQPC91ZkN0cHM+PC9DVFBTPjxSRz48bnJSZz4xNi43MjEuMDMwPC9uclJnPjxvcmdhb0VtaXNzb3I+U1NQPC9vcmdhb0VtaXNzb3I+PGR0RXhwZWQ+MTk4Mi0wMy0wMjwvZHRFeHBlZD48L1JHPjxDTkg+PG5yUmVnQ25oPjAwMDAwMDAwMDA8L25yUmVnQ25oPjx1ZkNuaD48L3VmQ25oPjxkdFZhbGlkPjwvZHRWYWxpZD48Y2F0ZWdvcmlhQ25oPjwvY2F0ZWdvcmlhQ25oPjwvQ05IPjwvZG9jdW1lbnRvcz48ZW5kZXJlY28+PGV4dGVyaW9yPjxwYWlzUmVzaWQ+MDEzPC9wYWlzUmVzaWQ+PGRzY0xvZ3JhZD5BTEJBPC9kc2NMb2dyYWQ+PG5yTG9ncmFkPjE0NDQ8L25yTG9ncmFkPjxiYWlycm8+UFEuIEpBQkFRVUFSQTwvYmFpcnJvPjxubUNpZD5TQU4gTFVJWjwvbm1DaWQ+PGNvZFBvc3RhbD4wNDM0NjAwMDwvY29kUG9zdGFsPjwvZXh0ZXJpb3I+PC9lbmRlcmVjbz48aW5mb0RlZmljaWVuY2lhPjxkZWZGaXNpY2E+TjwvZGVmRmlzaWNhPjxkZWZWaXN1YWw+TjwvZGVmVmlzdWFsPjxkZWZBdWRpdGl2YT5OPC9kZWZBdWRpdGl2YT48ZGVmTWVudGFsPk48L2RlZk1lbnRhbD48ZGVmSW50ZWxlY3R1YWw+TjwvZGVmSW50ZWxlY3R1YWw+PHJlYWJSZWFkYXA+TjwvcmVhYlJlYWRhcD48L2luZm9EZWZpY2llbmNpYT48YXBvc2VudGFkb3JpYT48dHJhYkFwb3NlbnQ+TjwvdHJhYkFwb3NlbnQ+PC9hcG9zZW50YWRvcmlhPjxjb250YXRvPjxmb25lUHJpbmM+MDAxMzQ3MzU1NTUgLzwvZm9uZVByaW5jPjxmb25lQWx0ZXJuYXQ+MDExNzg5Nzk4Nzk4PC9mb25lQWx0ZXJuYXQ+PGVtYWlsQWx0ZXJuYXQ+UkVZTkFMRE9ASE9UTUFJTC5DT008L2VtYWlsQWx0ZXJuYXQ+PC9jb250YXRvPjwvdHJhYmFsaGFkb3I+PHZpbmN1bG8+PG1hdHJpY3VsYT4wMDAwMDAwMDAwMDAwMDAwMDAwNzwvbWF0cmljdWxhPjx0cFJlZ1RyYWI+MTwvdHBSZWdUcmFiPjx0cFJlZ1ByZXY+MTwvdHBSZWdQcmV2PjxpbmZvUmVnaW1lVHJhYj48L2luZm9SZWdpbWVUcmFiPjxpbmZvQ29udHJhdG8+PGNvZENhdGVnPjMwMjwvY29kQ2F0ZWc+PHJlbXVuZXJhY2FvPjx2clNhbEZ4PjEwMDAuMDA8L3ZyU2FsRng+PHVuZFNhbEZpeG8+NTwvdW5kU2FsRml4bz48L3JlbXVuZXJhY2FvPjxkdXJhY2FvPjx0cENvbnRyPjE8L3RwQ29udHI+PC9kdXJhY2FvPjxsb2NhbFRyYWJhbGhvPjwvbG9jYWxUcmFiYWxobz48L2luZm9Db250cmF0bz48L3ZpbmN1bG8+PC9ldnRDYWRJbmljaWFsPjwvZVNvY2lhbD4=", "integrationDate" : "", "integrationTime" : "", "registryPriority" : "0", "integrationQueue" : "1", "erpowner" : "DATASUL", "registryPredecessor" : "KEYIO7878874854545454998598525", "transferBranch" : "0200", } ] } |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"ticketCode": "WIO9753123654789789363655241452363",
"registryKey": [
{
"key": "KEYIO7878874854545454998598525",
"success": true
},
{
"key": "KEYYZE7878RE4854545454998598576",
"success": true
}
],
"keyAmount": 2
} |
GET
Descrição do Método: O método GET retorna os status dos registros integrados de acordo com os parâmetros (atributos) enviados na URL.
A Consulta pode combinar parâmetros utilizando a sintaxe “Query String” conforme exemplo abaixo:
http://172.16.31.214:8085/rest/wstafst2?ticketCode=F95975312365478978936365524145236352&RegistryKey=KEYQWE7878RE4854545454998598571&startRecNo=0
lotQuantity
- ticketCode – Código do TAFTICKET, Obrigatório caso registryKey não seja informado.
- registryKey – Código do TAFKEY, Obrigatório caso ticketCode não seja informado.
- startRecNo - Numero do RecNo Inicial a ser considerado na consulta.
Observação : O Tamanho máximo do Response é 850 kB ou 500 registros, quando a mensagem chega neste valor é realizado um retorno contendo os registros que já foram incrementados na resposta. O Controle dos itens restantes é feito através do lastRecNo que informa o RecNo do ultimo registro que fez parte da mensagem anterior (respeitando a chave), caso o mesmo seja diferente de maxRecNo é por que existem itens a serem retornados, caso o contrario a consulta está completa.
Estrutura da Resposta do método GET (Response):
Atributo
Pai
Nivel
Ocorrência
Formato
type
-
1
1
-
code
-
1
1:N
String(36-100)
Items
-
1
1
-
success
Items
2
1
boolean(true : false)
proccessed
Items
2
1
boolean(true : false)
description
Items
2
1
String(100)
registryKey
Items
2
0:1
String(100)
ticketCode
Items
2
0:1
String(36)
errorCode
Items
2
0:1
String(6)
errorDescription
Items
2
0:1
String(60)
errorDetail
Items
2
0:1
String(220)
statusCode
Items
2
0:1
String(1)
statusDescription
Items
2
0:1
String(25)
active
Items
2
0:1
boolean(true : false)
- type – Determina o agrupamento do retorno que pode ser por ticketCode (TAFTICKET) ou registryKey (TAFKEY), o agrupamento depende dos parâmetros enviados no request, quando o registryKey é informado e o ticketCode omitido, o retorno será por registryKey caso contrário por ticketCode.
- code – Código do registro indicado no atributo type.
- items – Itens do response.
- success – informa que o envio do registro pelo método POST foi realizado com sucesso.
- proccessed – Informa se o registro foi processado (Job2) e integrado com sucesso no seu respectivo cadastro.
- description – Descrição do status atual do registro.
- registryKey – código do TAFKEY, esse atributo somente é exibido quando type for igual a ticketCode.
- ticketCode – código do TAFTICKET, esse atributo somente é exibido quando type for igual a registryKey.
- errorCode – Código do erro contido no campo TAFCODERR na tabela TAFXERP, atributo exibido somente quando proccessed for igual a false.
- errorDescription – Descrição do errorCode, atributo exibido somente quando proccessed for igual a false.
- errorDetail – Detalhes do erro, alguns tipos de erros possuem detalhes e são armazenados no campo TAFERR na tabela TAFXERP, atributo exibido somente quando proccessed for igual a false.
- statusCode – Status do registro no TAF, atributo exibido somente quando proccessed for igual a true.
- statusDescription – Descrição do status no TAF, atributo exibido somente quando proccessed for igual a true.
- active – Informa se o registro está ativo no TAF, atributo exibido somente quando proccessed for igual a true.
- registryPriority: Retornar a prioridade definida para o registro, atributo exibido somente quando proccessed for igual a false.
- integrationQueue: Retorna o status de fila do registro. Retorna branco quando o registro não foi definido para integração utilizando fila de processamento (atributo integrationQueue do método POST), retorna 'F' quando o registro foi retornado para a fila de processamento ou 'R' quando o erro da integração é impeditivo e o registro foi rejeitado pelo TAF. Atributo exibido somente quando proccessed for igual a false.
- lastRecNo - Numero do RecNo do ultimo registro retornado na requisição.
- maxRecNo - Informa o numero do RecNo do ultimo registro relacionado a consulta, deve ser utilizado juntamente com o lastRecNo para controlar a paginação e garantir o retorno de todos os registros.
- streamingErrors – Agrupa todos os erros de transmissão retornados do Governo para o TAF. Os erros são listados por streamingErrorCode e streamingErrorDetail.
- streamingErrorCode – Código do erro retornado pelo Governo para o TAF, após transmissão do registro.
- streamingErrorDetail – Descrição do erro retornado pelo Governo para o TAF, após transmissão do registro.
Exemplos de requisição utilizando o método GET:
- Consulta pelo ticketCode:
Request:
http://172.16.31.214:8085/rest/wstafst2?ticketCode=WIO9753123654789789363655241452363&startRecNo=0
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"type": "ticketCode",
"code": "WIO9753123654789789363655241452363",
"items": [
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento.",
"registryKey": "KEYIO7878874854545454998598525",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
},
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento.",
"registryKey": "KEYYZE7878RE4854545454998598576",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
}
],
"lastRecNo": 82,
"maxRecNo": 82
} |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"type": "ticketCode",
"code": "WIO9753123654789789363655241452363",
"items": [
{
"success": true,
"proccessed": false,
"description": "Registro Inconsistente.",
"registryKey": "KEYIO7878874854545454998598525",
"errorCode": "000007",
"errorDescription": "A operacao solicitada no XML esta em desacordo com o cenario do registro na base do TAF",
"errorDetail": ""
},
{
"success": true,
"proccessed": true,
"description": "Registro Processado.",
"registryKey": "KEYYZE7878RE4854545454998598576",
"statusCode": " ",
"statusDescription": "Registro Integrado",
"active": true
}
],
"lastRecNo": 82,
"maxRecNo": 82
} |
Observação: O exemplo acima contem os 2 tipos de retorno possíveis para um TAFKEY, o atributo proccessed define se vão ser apresentados os atributos de Erro ou de Sucesso conforme descrito acima na tabela de estrutura da resposta do método GET.
"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"
} |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"returnMessage": "Certificado (PFX)- Ok\nAutoridades certificadoras convertidas para formato apache - Ok\nCertificado convertido para formato apache - Ok\nPrivateKey convertida para formato apache - Ok\nPassword - Ok\n\nRegistrado para: eSocial do Futuro\nValidade de 18/02/2019 ate 18/02/2020\n",
"idCompany": "000008"
} |
GET
Descrição do Método: O método GET retorna o ID da entidade, de acordo com parâmetros (atributos) enviados na URL.
A Consulta pode combinar parâmetros utilizando a sintaxe “Query String” conforme exemplo abaixo:
Estrutura da mensagem enviada no GET (Request):
Atributo | Pai | Nivel | Ocorrência | Formato |
---|---|---|---|---|
registrationType | - | 1 | 1 | Integer(1) |
registrationNumber | - | 1 | 1 | String(14) |
ie | - | 1 | 0:1 | String(12) |
uf | - | 1 | 1 | String(02) |
companyName | - | 1 | 1 | String(250) |
branchName | - | 1 | 0:1 | String(250) |
countyCode | - | 1 | 1 | String(5) |
grantNumber | - | 1 | 0:1 | String(14) |
url | - | 1 | 1 | 150 |
- registrationType - Tipo da Entidade a ser criada:
- 1 - Pessoa Jurídica
- 2 - Pessoa Física
- registrationNumber - Número de Inscrição da Entidade a ser criada, seguindo a regra abaixo:
- Se registrationType for 1, então deverá ser enviado o CNPJ
- Se registrationType for 2, então deverá ser enviado o CPF
- ie - Número da Inscrição Estadual
- uf - Sigla da Unidade Federativa
- companyName - Nome da Pessoa/ Razão Social da Companhia
- branchName - Nome Fantasia
- countyCode - Código do município conforme tabela do IBGE
- grantNumber - Número de Inscrição do Transmissor.
- url – URL do TSS (TOTVS Service SOA)
Estrutura da Resposta do método GET (Response):
Atributo | Pai | Nivel | Ocorrência | Formato |
---|---|---|---|---|
idCompany | - | 1 | 1 | String(8) |
returnMessage | - | 1 | 1 | String |
- idCompany – Código da entidade
- returnMessage – Mensagem de retorno do TSS
Exemplos de requisição utilizando o método GET:
Request:
http://localhost:8080/rest/WSTSSSETUP/v1?registrationType=1registrationNumber=30114268000115&uf=SP&companyName=eSocial&branchName=eSocial&countyCode=50308&url=localhost:9090
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"returnMessage": "",
"idCompany": "000008"
} |
- Consulta pelo ticketCode + registryKey:
Request:
http://172.16.31.214:8085/rest/wstafst2?ticketCode=WIO9753123654789789363655241452363&RegistryKey=KEYYZE7878RE4854545454998598576&startRecNo=0
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"type": "ticketCode",
"code": "WIO9753123654789789363655241452363",
"items": [
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento do Job2.",
"registryKey": "KEYYZE7878RE4854545454998598576",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
}
],
"lastRecNo": 81,
"maxRecNo": 81
} |
Aviso | ||
---|---|---|
| ||
Quando a consulta for por ticketCode + registryKey o retorno será agrupado por ticketCode. |
- Consulta pelo registryKey:
Request:
http://172.16.31.214:8085/rest/wstafst2?registryKey=KEYYZE7878RE4854545454998598576&startRecNo=0
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"type": "registryKey",
"code": "KEYYZE7878RE4854545454998598576",
"items": [
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento do Job2.",
"ticketCode": "WIO9753123654789789363655241452363",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
}
],
"lastRecNo": 80,
"maxRecNo": 80
} |
Controle de Paginação:
Quando o retorno de uma requisição ultrapassa o valor de 850 Kb a mensagem de resposta é "quebrada" e retornada com o conteúdo até então incrementado, exemplo:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"type": "ticketCode",
"code": "WIO9753123654789789363655241452363",
"items": [
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento",
"registryKey": "KEYIO7878874854545454998598525",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
},
*
*
*
{several items}
*
*
*
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento",
"registryKey": "KEYQIU7878RE4854545454998598544",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
}
],
"lastRecNo": 150,
"maxRecNo": 322
} |
No exemplo acima a consulta retornou até o registro 150, sendo que o registro com maior RecNo pertencente a consulta é o 322, isso não quer dizer que foram retornados 150 registros e que faltam 172, o RecNo apenas informa a sequencia do registro na tabela TAFST2 porém o lastRecNo menor que o maxRecNo indica que ainda existem registro a serem retornados para a chave requisitada. Para o retorno dos demais registros deve-se realizar uma nova requisição com o startRecNo igual a lastRecNo + 1, este procedimento deve ser adotado até que o lastRecNo seja igual ao maxRecNo conforme exemplo abaixo:
Request:
http://172.16.31.214:8085/rest/wstafst2?ticketCode=WIO9753123654789789363655241452363&startRecNo=151
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"type": "ticketCode",
"code": "WIO9753123654789789363655241452363",
"items": [
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento",
"registryKey": "KEYIO7878874854545454998598888",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
},
*
*
*
{several items}
*
*
*
{
"success": true,
"proccessed": false,
"description": "Aguardando Processamento",
"registryKey": "KEYQIU7878RE4854545454998598987",
"errorCode": "",
"errorDescription": "",
"errorDetail": ""
}
],
"lastRecNo": 322,
"maxRecNo": 322
} |
Códigos De Erros De Validação:
- 800 – Campo não informado na estrutura do arquivo.
- 801 – Campo obrigatório não enviado.
- 802 – Campo com valor inválido.
803 – TAFFIL não encontrado no complemento de empresas.
Aviso title Atenção! No método POST caso o primeiro item do lote não esteja com o TAFFIL cadastrado no complemento de empresas o sistema irá rejeitar o lote inteiro, caso contrario é realizado uma avaliação item a item verificando se a filial é válida e se pertence ao mesmo grupo de empresas no TAF, neste caso é rejeitado somente os registros inválidos dentro do lote.
- 804 – Layout Inválido.
- 805 – Código de Prioridade inválido!
- 806 – Campo com erro na codificação ou criptografia
- 807 – Código de Fila inválido!
- 808 – Estrutura da tabela TAFST2 está desatualizada
- 809 - Não há configuração de empresas na chave PrepareIn seção TAF_CFGJOB
- 810 - Chave # de Identificação de filial não encontrada.
- 811 - Não foi possível identificar a filial # no corpo da mensagem.
- 812 - Código da Filial ERP # não pertence ao mesmo Grupo de Empresas no TAF considerando os registros integrados anteriormente neste lote.
- 813 - O TAFKEY # já existe na TAFST2 e encontra-se pendente de processamento ou em processamento.
Legenda:
# - valor variável.
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"coderr": 803,
"description": "O valor do campo sourceBranch (TAFFIL) não está no cadastro no complemento de empresas."
} |
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"ticketCode": "WIO9753123654789789363655241452363",
"registryKey": [
{
"key": "KEYIO7878874854545454998598525",
"success": false,
"error": [
{
"coderr": 801,
"description": "Campo TAFFIL (sourceBranch) e Obrigatorio."
},
{
"coderr": 803,
"description": "O valor do campo TAFFIL (sourceBranch) nao esta cadastro no complemento de empresas."
}
{
"coderr": 805,
"description": "Codigo de Prioridade invalido! Codigo enviado: '8'. Codigos validos: 0 - Urgente, 1 - Prioridade Critica, 2 - Prioridade Alta, 3 - Prioridade Media, 4 - Prioridade Baixa, 5 - Nao Prioritario"
}
]
},
{
"key": "KEYYZE7878RE4854545454998598576",
"success": true
},
{
"key": "KEYQWE7878RE4854545454998598571",
"success": true
},
{
"key": "KEYQIU7878RE4854545454998598544",
"success": true
}
],
"keyAmount": 4
} |
RESTFAULT*
- 701 - startRecno e ticketCode não informados no GET (é obrigatório que pelo menos 1 deles seja informado)
- 702 - Erro na criação/abertura da tabela TAFST2 ou TAFXERP
- 703 - O parâmetro searchMode deve ser preenchido com 1 ou 2.
- 704 - Arquivo vazio (Não foi enviado uma mensagem no body do POST)
- 705 - Erro ao realizar parser da mensagem (o arquivo enviado no Body não é um json válido)
Aviso | ||
---|---|---|
| ||
Apesar do código de erro iniciar com 7 o status HTTP de um request que submetido a RestFault é 500 - Erro Interno no Servidor. |