API Profile

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

SetAsShippingAddress

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 realizado a manutenção da sessão ativa.

Login Social

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

Descrição

access_token

String

access_token fornecido pelo OAuth do Facebook. Este access_token deve ser gerado usando os mesmos dados de credencial configurados na plataforma.

{
    "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"
}

Did this page help you?