Headers dos Métodos

Todos os métodos aqui listados são do tipo POST e a autenticação deverá ser com Basic Authentication recebendo como parâmetro um content-type: application/json.

Register

  • /web-api/v1/Profile/Account/Register

Realizar o cadastro de um novo cliente na plataforma para que o mesmo esteja habilitado a realizar compras.

Request

Parâmetros de entrada Tipo Descrição
CustomerType String É o tipo de cliente que se está cadastrando. No momento só é possivel cadastrar cliente do tipo “Person” (Pessoa). obrigatório
E-mail String É o e-mail do cliente a ser cadastrado. Esta informação será usada posteriormente para login.
Password String Senha do cliente que está cadastrando.
Password Check String verificação da senha que está se cadastrando. Deve ser o mesmo valor do campo “Password” a fim de permitir o cadastro.
Name String Nome do cliente. obrigatório
Surname String Sobrenome do cliente. obrigatório
BirthDate String Data de nascimento. obrigatório
Gender String Sexo do cliente. Informar "M" (masculin) ou "F" (feminino). obrigatório.
CPF String CPF do cliente. obrigatório
Phone String Telefone do cliente.
ExtendedProperties metadata coleção de objetos
Name String Nome do endereço (Ex: Casa, escritório). obrigatório
ContactName String Nome da pessoa de contato no endereço.
AddressLine String Nome do logradouro (Rua 123, avenida 123).
City String Cidade. obrigatório
Neighborhood String Bairro. obrigatório
Number String Número do endereço. obrigatório.
State String Estado do endereço. obrigatório
PostalCode String CEP do endereço. obrigatório
AddressNotes String Notas sobre o endereço
Landmark String Ponto de Referência
Latitude   Ponto latitudinal do endereço
Longitude   Ponto longitudinal do endereço
ExtendedProperties metadata coleção de objetos
etAsShippingAddress Boolean  
{
    "Customer": {
        "CustomerType": "Person",
        "Email": "[email protected]",
        "Password": "123",
        "Password_Check": "123",
        "Name": "João",
        "Surname":"Silva",
        "BirthDate": "01/01/1990",
        "Gender": "M",
        "Cpf": "79915457090",
        "Contact": {
            "Phone": "555 5555"
        },
        "ExtendedProperties": []
    },
    "Addresses": [
        {
            "ID": 0,
            "Name": null,
            "ContactName": "Nome de contato",
            "AddressLine": "Linha de endereço",
            "City": "Cidade",
            "Neighbourhood": "vizinhança",
            "Number": "123",
            "State": "RS",
            "PostalCode": "01234567",
            "AddressNotes": null,
            "Landmark": null,
            "Latitude": null,
            "Longitude": null,
            "ExtendedProperties": [],
            "SetAsShippingAddress": true
        }
    ]
}

Response:

Retornará as informações pertinentes ao cadastro e, também, disponibilizará dados da sessão com o intuito do customer já ter a possibilidade de compra.

Parâmetros de saída Tipo Descrição
Basket Object Contém todas as informações pertinentes ao cadastro do cliente, mais o carrinho gerado.
Shopper Object Contém as informações do cliente.
BasketID Int Identificar do carrinho do cliente.
Items Coleção de objetos Contém os itens para compra do cliente
DeliveryGroups Coleção de objetos  
SingleDeliveryOption boolean Indica se há apenas um método de entrega.
SelectedDeliveryOption String Método de entrega.
PostalCode String O CEP cadastrado no carrinho.
IsPostalCodeReadonly Boolean Se o CEP é apenas leitura.
Awards Coleção de objetos Retorna todos os premios aplicados no carrinho
ItemAwards Coleção de objetos Retorna todos os descontos aplicados no carrinho
Discounts Coleção de objetos Retorna todos os descontos aplicados no carrinho
Upsells Coleção de objetos Retorna todos os upsells aplicados no carrinho
PaymentTerms Coleção de objetos Retorna todos os prazos do carrinho
Payments Coleção de objetos Retorna todos os pagamentos aplicados no carrinho
CreditCompetence Object  
ItemDiscounts String Retorna todos os descontos de produtos aplicados no carrinho..
DeliveryDiscounts String Retorna todos os descontos de entrega aplicados no carrinho.
GiftCertificates String  
Coupons String Retorna todos os cupons aplicados no carrinho.
DeliveryAmount Decimal Retorna o total do frete do carrinho
DeliveryDiscountAmount Decimal Retorna o total de descontos do frete do carrinho
DeliveryLoyaltyProgramPoints Decimal Retorna o total de pontos de fidelidade para a entrega.
DiscountAmount Decimal Retorna o total de descontos do carrinho
SubTotal Decimal Retorna o Subtotal do carrinho
Total Decimal Retorna o total do carrinho
IsFreeShipping Boolean Retorna se essa linha do basket será usada ou não como opção de forma de entrega.
TaxAmount Decimal Retorna Total das taxas
TaxationAmount Decimal Retorna Total de STs
LoyaltyCardAmount Decimal Retorna o total de cartão fidelidade do carrinho
MinETADays Int Retorna o numero mínimo de dias para entrega
MaxETADays Int Retorna o número máximo de dias para a entrega.
DeliveryETADays Int Retorna o número de dias para a entrega baseado na forma selecionada (prazo de entrega)
HasAnyAvailableWrapping Boolean Se tem opção de embalagem.
HasAnyAdditionalService Boolean Se possui algum serviço adicional.
HasAnyWishlist Boolean Se há alguma lista de desejos.
HasAnyCustomization Boolean Se tem alguma lista customizada.
HasLoyaltyProgram Boolean Se há algum programa de fidelidade.
Wishlist Coleção de objetos  
ProductAdditionals Coleção de objetos  
ProductAdditionalServices Coleção de objetos  
IsValid Boolean Se o carrinho é valido como um todo.
HasAnyOutOfStockItem Boolean Se há produtos sem estoque
HasPartiallyAnyOutOfStockItem Boolean Se há produtos parcialmente sem estoque
Sellers Coleção de objetos Coleção de vendedores
HasSeller Boolean Se possui algum vendedor
LoyaltyProgramTotalOfProductPoints Decimal Total de pontos no programa de fidelidade com base nos produtos.
LoyaltyProgramMode String Modo de como funciona o programa de fidelidade (P = por produto, O = por pedido)
HasAllUndeliverableItems Boolean Todos os produtos não podem ser entregues
IsReadOnly Boolean Estado do carrinho é apenas leitura
OrderTypeID Int ID do tipo de ordem
HasCompetenceDiscount Boolean  
Quote Object Orçamento
BasketHash String Código de hash de todo o carrinho
ShopperTicket Object  
ShopperTicketID String Identificação
WebSiteID Int ID do website cujo ticket pertence
CustomerID Int ID do cliente
CommingFromUrl String URL de origem
UtmSource String  
UtmMedium String  
UtmCampaign String  
UtmTerm String  
UtmContent String  
LastTicketID String ID do ultimo ticket criado para o cliente
CreatedDate String Data da criação
TrafficSourceID Int Identificação da fonte do trafego.
BasketID Int ID do carrinho relacionado ao ticket
CustomerGroupIDs Coleção de Int ID(s) dos grupos de clientes
IsAuthenticated Boolean Se o cliente está autenticado
Name String Nome do cliente
IsGuest Boolean Se é visitante
Email String E-mail do cliente
SessionID String SessionID do cliente
IsActive Boolean Se o cliente está ativo
isNewShopper Boolean Se o cliente é novo no sistema
LastOrderID String ID do último pedido realizado
CustomerImpersonation Object Informações de personificação de cliente
JsonWebToken String Token para utilização de Json na Web.
StateChanged Boolean Se o estado do cliente mudou
IsValid Boolean Se a estrutura de dados está válida
Errors Coleção de objetos Coleção de erros que podem ocorrer internamente
IsValid Boolean Se a estrutura de dados está válida
StateChanged Boolean se o estado do cliente mudou
Errors Coleção de objetos Coleção de erros que podem ocorrer internamente
{
    "Basket": {
        "Shopper": {
            "Basket": {
                "BasketID": 6896,
                "Items": [],
                "DeliveryGroups": [],
                "SingleDeliveryOption": false,
                "SelectedDeliveryOption": null,
                "PostalCode": "01234567",
                "IsPostalCodeReadonly": false,
                "Awards": [],
                "ItemAwards": [],
                "Discounts": [],
                "Upsells": [],
                "PaymentTerms": [],
                "Payments": [],
                "CreditCompetence": {
                    "Reference": null,
                    "Amount": 0,
                    "ClaimedAmount": 0,
                    "AvailableAmount": 0
                },
                "ItemDiscounts": [],
                "DeliveryDiscounts": [],
                "GiftCertificates": [],
                "Coupons": [],
                "DeliveryAmount": 0,
                "DeliveryDiscountAmount": 0,
                "DeliveryLoyaltyProgramPoints": null,
                "DiscountAmount": 0,
                "SubTotal": 0,
                "Total": 0,
                "IsFreeShipping": true,
                "TaxAmount": 0,
                "TaxationAmount": 0,
                "LoyaltyCardAmount": 0,
                "MinETADays": -1,
                "MaxETADays": -1,
                "DeliveryETADays": -1,
                "HasAnyAvailableWrapping": false,
                "HasAnyAdditionalService": false,
                "HasAnyWishlist": false,
                "HasAnyCustomization": false,
                "HasLoyaltyProgram": false,
                "Wishlist": null,
                "ProductAdditionals": [],
                "ProductAdditionalServices": [],
                "IsValid": true,
                "HasAnyOutOfStockItem": false,
                "HasPartiallyAnyOutOfStockItem": false,
                "Sellers": [],
                "HasSeller": false,
                "LoyaltyProgramTotalOfProductPoints": 0,
                "LoyaltyProgramMode": "0",
                "HasAllUndeliverableItems": true,
                "IsReadOnly": false,
                "OrderTypeID": 0,
                "HasCompetenceDiscount": false,
                "Quote": null,
                "BasketHash": null
            },
            "ShopperTicket": {
                "ShopperTicketID": "7432fa45-70c5-4741-a607-6ef686ec18a8",
                "WebSiteID": 1,
                "CustomerID": 252675,
                "CommingFromUrl": null,
                "UtmSource": null,
                "UtmMedium": null,
                "UtmCampaign": null,
                "UtmTerm": null,
                "UtmContent": null,
                "LastTicketID": "ff8397fb-0966-4ee2-ae9f-74d1c016317a",
                "CreatedDate": "2018-08-22T14:12:24.0875239-03:00",
                "TrafficSourceID": null,
                "BasketID": 6896,
                "CustomerGroupIDs": null,
                "IsAuthenticated": true,
                "Name": "João",
                "IsGuest": false,
                "Email": "[email protected]",
                "SessionID": "dwo4dde5hkkkdbvlnmdwtwmq",
                "IsActive": true,
                "IsNewShopper": false,
                "LastOrderID": null,
                "CustomerImpersonation": null,
                "JsonWebToken": null
            }
        },
        "StateChanged": false,
        "IsValid": true,
        "Errors": []
    },
    "IsValid": true,
    "StateChanged": false,
    "Errors": []
}

Login

/web-api/v1/Profile/Account/Login

Realizar o login do cliente na plataforma retornando os dados de sessão para que o mesmo possa ser identificado e autorizado.

Request

c Tipo Descrição
key String É o login do cliente cadastrado previamente na loja. É necessário que seja informado um e-mail.
Password String É a senha cadastrada para o cliente em questão.
{
    "Key": "[email protected]",
    "Password": "123"
}

Response:

Após o request, o endpoint deverá retornar informações pertinentes a sessão que o usuário permanecerá logado:

Parâmetros de entrada Tipo Descrição
CustomerID String É o código do cliente criado. Este código é imutável e deve ser guardado para futuras requisições.
SessionID String É o código que indica a sessão de navegação do usuário. Este código é temporário e pode variar, mas deve ser utilizado sempre nas requisições de uma mesma sessão de usuário.
ShopperTicketID String É o código permanente da sessão, utilizado para identificar a origem do carrinho. Este código pode ser utilizado sempre nas requisições de uma mesma sessão de usuário e deve ser utilizado nas rotas de Checkout.
DocumentNumber String CPF quando o cliente for pessoa física ou CNPJ quando for pessoa jurídica
{
    "CustomerID": 0,
    "SessionID": "String",
    "ShopperTicketID": "String",
    "DocumentNumber": "String"
}

Logout

/web-api/v1/Profile/Account/Logout

Realizar o logout do cliente na loja de maneira segura.

Request

Parâmetros de entrada Tipo Descrição
CustomerID Int É o código do cliente.
SessionID String É o código que indica a sessão do usuário logado.
{
    "CustomerID": 0,
    "SessionID": "String"
}

Response:

Obtém-se somente um "HTTP CODE 200" onde indicará que o logout fora realizado com êxito.

Keep Alive

/web-api/v1/Profile/Account/KeepAlive

Manter a sessão do usuário ativa enquanto o mesmo utiliza o aplicativo.

Request:

Parâmetros de entrada Tipo Descrição
CustomerID Int Código do cliente
SessionID String É o código que indica a sessão do usuário logado.
{
    "CustomerID": 1037,
    "SessionID": "k1nfyjuyq5evdkfux5ckmjar"
}

Response:

O retorno é somente um "HTTP CODE 200" que indicará que fora realizada a manutenção da sessão ativa.

Login Social

Apple

/OAuth/Apple/Login

Fazer o login do cliente usando o code da Apple.

Para logar através do provedor de Login da Apple devemos obter o code através do Authorization Response, do Login da Apple, após devemos chamar o método de login POST /OAuth/Apple/Login passando por parâmetro o "code".

Request:

Parâmetros de entrada Tipo Descrição
code String Obtido no Authorization Response, atráves do request utilizando o parâmetro state com o valor webapi, além das credenciais configuradas na plataforma.
{
    "CustomerID": 0,
    "SessionID": "String",
    "ShopperTicketID": "String",
    "DocumentNumber": "String"
}

Facebook

/OAuth/Facebook/Login

Fazer o login do cliente usando o access_token do Facebook.

Para logar através do provedor de login do Facebook devemos obter o Token de Acesso através do Login do Facebook, após devemos chamar o método de login POST /OAuth/Facebook/Login passando por parâmetro o "access_token".

Request:

Parâmetros de entrada Tipo
access_token String
{
    "CustomerID": 0,
    "SessionID": "String",
    "ShopperTicketID": "String",
    "DocumentNumber": "String"
}

Twitter

/OAuth/Twitter/Login

Fazer o login do cliente usando os "oauth_token" e "oauth_verifier" do Twitter.

Após seguir os passos "Step 1: Obtaining a request token" e "Step 2: Redirecting the user" descritos na documentação oficial de Log in with Twitter, devemos chamar o método de login POST /OAuth/Twitter/Login passando os parâmetros "oauth_token" e "oauth_verifier" como propriedades do objeto raiz.

Request:

Parâmetros de entrada Tipo Descrição
oauth_token String Fornecido do processo de OAuth do Twitter. Este oauth_token deve ser gerado usando os mesmos dados de credencial configurados na plataforma.
oauth_verifier String Fornecido do processo de OAuth do Twitter. Este oauth_verifier deve ser gerado usando os mesmos dados de credencial configurados na plataforma.
{
    "CustomerID": 0,
    "SessionID": "String",
    "ShopperTicketID": "String",
    "DocumentNumber": "String"
}
  • Sem rótulos