Realizando cadastro de um novo cliente

Para fazer um cadastro de um novo cliente deve ser usado o serviço a seguir:

POST "api/Partnes"

Com os seguintes dados sendo passados para o serviço, (Lembre-se que para alguns campos, pode-se usar o padrão descrito na seção ‘Obtento os valores padrões para um novo cliente‘):

{
        //Não é obrigatório quando se tratar de Novo Cliente
    "cardCode": "String",
    //Razão Social
    "cardFName": "String",
    //Nome Fantasia
    "cardName": "String",
    //Tipo de Cliente: 0 - Lead , 1 - Cliente (Novos Sempre serão leads)
    "cardType": 0,
    //Código da Transportadora - Os códigos possíveis para esses campos devem ser capturados em /api/carriers
    "carrierCode": "String",
    //Celular
    "cellular": "String",
    //Tipo de Cliente: 0 - Pessoa Fisica / 1 - Jurídica
    "cmpPrivate": 0,
    //Observações
    "comments": "String",
    //Desconto Especial - Somente se o usuário logado tiver acesso.
    "discCustom": 0,
    //Desconto do Parceiro - Somente se o usuário logado tiver acesso.
    "discount": 0,
    //E-Mail do Cliente é obrigatório
    "e_Mail": "String",
    //Caso tenha sido feito a consulta na SEFAZ em
    //  /api/partner/GetByTaxId/{CNPJ}?sefaz=true&uf={Estado}& deve passar true nesse campo
    "fromSefaz": false,
    //Grupo do Cliente : Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
    "groupCode": 0,
    //Condição de Pagamento : Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
    "groupNum": 0,
    // 0 para CIF e 1 para FOB, : Existe um valor padrão apra esse campo que pode ser capturado em Capturar os grupos disponíveis em /api/partnes/new conforme descrito na seção 1.1
    "incotermsId": 0,
    // Site do Cliente
    "intrntSite": "String",
    // Taxa de Juros
    "intrstRate": 0,
    // Lista de preço, caso tenha acesso pode ser capturado através de /api/partnes/new ou deixe em branco para o SalesOne preenche-lo com o valor da resposta da query
    "listNum": 0,
    // Observações curtas
    "notes": "String",
    // Lista de endereços do cliente, pode se repetir várias vezes, pode-se capturar o endereço atravéz de /api/address/ByZipCode/{CEP}
    "partnerAddresses": [
        {
                //Tipo de Endereço - 0 Endereço de Cobrança. 1 - Endereço de Faturamento
                "addressType": 0,
                //Tipo do Logradouro
                "addrType": "String",
                //Nome do Endereço - Alias para o endereço.: Explo : "Matriz"
                "address": "String",
                //Bairro
                "block": "String",
                //Complemento
                "building": "String",
                //Código do Cliente Caso o cliente já exista
                "cardCode": "String",
                //País
                "country": "String",
                //Município
                "county": "String",
                //Detalhes do Município
                "countyName": {
                    "absId": 0,
                    "country": "String",
                    "ibgeCode": "String",
                    "name": "String",
                    "state": "String"
                },
                //Geolocalização do Endereço
                "glbLocNum": "String",
                //Estado
                "state": "String",
                //Endereço
                "street": "String",
                //Número do Endereço
                "streetNo": "String",
                //CNPJ do Endereço Caso for depósito
                "taxId0": "String",
                //CEP
                "zipCode": "String"
        }
    ],
    //Empresas que o cliente pode fazer pedido
    "partnerCompanies": [
        {
            //Id da Empresa
            "companyId": 0
        }
    ],
    //Contato dos parceiros
    "partnerContacts": [
        {
                //Endereço
            "address": "String",
            //Telefone Celular
            "cellolar": "String",
            //E-mail
            "e_Mail": "String",
            //Primeiro Nome
            "firstName": "String",
            //Último Nome
            "lastName": "String",
            //Nome do Mail
            "middleName": "String",
            //Nome do Contato
            "name": "String",
            //Posição (Pode ser um valor novo ou as sugestão apresentada na seção 2.2)
            "position": "String",
            //Telefone
            "tel1": "String",
            //Telefone
            "tel2": "String",
            //Titulo (Sr(a), Dr(a), Pr.. etc)
            "title": "String"
        }
    ],
    //Forma de Pagamento do Parceiro
    "partnerPayMethods": [
        {
            "cardCode": "String",
            "pymCode": "String"
        }
    ],
    //Telefone
    "phone1": "String",
    //Telefone
    "phone2": "String",
    //Forma de Pagamento Padrão (Deve ser uma das presentes em partnerPayMethods)
    "pymCode": "String",
    //Todos os campos que qryGroup são uma referência ao campo partnerProperties o id é o valor presente depois de qryGroup, por exemplo: O id da primeira característica é 1 , então o campo que deve ser preenchido com "Y" é qryGroup1... se caso não desejar habilite essa característica e preencha com "N" em qryGroup1 e assim por diante:
    "qryGroup1": "Y or N",
    "qryGroup10": "Y or N",
    "qryGroup11": "Y or N",
    "qryGroup12": "Y or N",
    "qryGroup13": "Y or N",
    "qryGroup14": "Y or N",
    "qryGroup15": "Y or N",
    "qryGroup16": "Y or N",
    "qryGroup17": "Y or N",
    "qryGroup18": "Y or N",
    "qryGroup19": "Y or N",
    "qryGroup2": "Y or N",
    "qryGroup20": "Y or N",
    "qryGroup21": "Y or N",
    "qryGroup22": "Y or N",
    "qryGroup23": "Y or N",
    "qryGroup24": "Y or N",
    "qryGroup25": "Y or N",
    "qryGroup26": "Y or N",
    "qryGroup27": "Y or N",
    "qryGroup28": "Y or N",
    "qryGroup29": "Y or N",
    "qryGroup3": "Y or N",
    "qryGroup30": "Y or N",
    "qryGroup4": "Y or N",
    "qryGroup5": "Y or N",
    "qryGroup6": "Y or N",
    "qryGroup7": "Y or N",
    "qryGroup8": "Y or N",
    "qryGroup9": "Y or N",
    //Endereço Padrão de Entrega, deve ser um valor presente em partnerAddress.address
    "shipToDef": "String",
    //Código do Vendedor, pode-se capturar o valor padrão presente em
    "slpCode": 0,
    //Endereço Padrão de Entrega, deve ser um valor presente em partnerAddress.address
    "billToDef": "String",
    //CNPJ do Parceiro
    "taxId0": "String",
    //Inscrição Estadual, quando não houver IE deve ser preenchido com o valor "Isento"
    "taxId1": "String",
    //CPF, quando se tratar de pessoa física
    "taxId4": "String",
}

O resultado dessa chamada será o retorno do cadastro completo do cliente caso obtiver sucesso na requisição (Status 201) ou a mensagem de erro que será reportado na propriedade responseStatus (Status 40x) conforme reportado an seção ‘Caminho do SalesOne e status das requisições‘.