NAV
shell javascript

Connect API

Primeiramente, ficamos super felizes de abrir nossa API com sua equipe! 🚀

Criamos o Connect API para que sua organização possa integrar dados das suas marcas (sejam elas de sistemas internos ou ERPs) dentro de nossa plataforma. Permitimos que possam interagir com recursos do PLM, Donna e demais serviços que disponibilizaremos no futuro.

É importante lembrar que, atualmente seu acesso é restrito, com operações limitadas para que possamos evoluir sob-demanda com vocês, desenvolvedores. Prezamos muito em relação à segurança e privacidade de dados.

Para se comunicar com a gente é bem simples. Utilizamos o protocolo HTTP e a nossa interface é descrita no formato REST e JSON. Além disso também disponibilizamos bibliotecas para acelerar sua integração.

Aqui estão alguns links caso queira:

Autenticação

Para autorizar as requisições HTTP utilize o seguinte código:

$ curl "https://connect.colecao.moda" \
  -H "Authorization: Basic {authToken}"
const connectClient = new ConnectClient({
  apiUrl: "https://connect.colecao.moda",
  authToken: "{authToken}"
})

Antes de interagir com a API, você precisará obter um token de acesso. O token é gerado pela nossa equipe com algumas características: não expira e está associado apenas uma organização. Ou seja, qualquer acesso a dados estará limitado e restrito à organização vínculada.

Se precisar tirar alguma dúvida, por favor entre em contato com a gente através do email [email protected] que te iremos responder o quanto antes.

Uma vez obtido o token, você precisará fornece-lo no header Authorization da seguinte maneira: Authorization: Basic {authToken}

Verifique-se de substituir o authToken pelo seu token de acesso.

🚨 Atenção, caso precise trocar devido à questões de segurança ou suspeita de vazamento entre em contato com a gente o quanto antes!

Tecidos

Criar ou atualizar tecidos

PUT https://connect.colecao.moda/materials

$ curl -X "PUT" "https://connect.colecao.moda/materials" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "materials": [
    {
      "description": "PADRAO 3",
      "compositions": [],
      "construction": "42% ALGODAO 39% VISCOSE 19% POLIAMID",
      "supplier_integration_ids": [],
      "width": 1.4,
      "integration_id": "f1791b6e-401a-49dd-8298-2b9caec33a07",
      "weight": 54,
      "shrinkage": "8% X 8%",
      "colors": [],
      "code": "20770075",
      "prices": [],
      "name": "SILK MIX SRIPE 0",
      "stretch": ""
    }
  ]
}'
connectClient.upsertMaterials([{
  integration_id: "f1791b6e-401a-49dd-8298-2b9caec33a07",
  name: "SILK MIX SRIPE 0",
  code: "20770075",
  description: "PADRAO 3",
  weight: 54.0,
  width: 1.4,
  construction: "42% ALGODAO 39% VISCOSE 19% POLIAMID"
  shrinkage: "8% X 8%"
  stretch: ""
  prices: []
  colors: []
  compositions: []
  supplier_integration_ids: []
}])

Resposta

{}

Essa operação permite criar ou atualizar uma lista de tecidos.

Requisição HTTP

PUT https://connect.colecao.moda/materials

Definição do Schema

Campo Tipo Descrição
integration_id string ID de integração
name string Nome
code string Código
description string Descrição
weight numeric Peso em kg
width numeric Tamanho em metros
construction string Estrutura
shrinkage string Medidas de encolhimento
stretch string Alongamento
prices Array Preços
colors Array Cores
compositions Array Composições
supplier_integration_ids Array IDs dos fornecedores

Aviamentos

Criar ou atualizar aviamentos

PUT https://connect.colecao.moda/trimmings

$ curl -X "PUT" "https://connect.colecao.moda/trimmings" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "trimmings": [
    {
      "prices": [],
      "colors": [],
      "code": "10100116112",
      "width": 10,
      "integration_id": "f1791b6e-401a-49dd-8298-2b9caec33a07",
      "compositions": [],
      "description": "100% COTTON",
      "name": "ETIQUETA COMPOSICAO TAM PP PRETO",
      "supplier_integration_ids": []
    }
  ]
}'
connectClient.upsertTrimmings([{
  integration_id: "f1791b6e-401a-49dd-8298-2b9caec33a07",
  name: "ETIQUETA COMPOSICAO TAM PP PRETO",
  code: "10100116112",
  description: "100% COTTON",
  width: 10.0,
  prices: [],
  colors: [],
  compositions: [],
  supplier_integration_ids: []
}])

Resposta

{}

Essa operação permite criar ou atualizar uma lista de aviamentos.

Requisição HTTP

PUT https://connect.colecao.moda/trimmings

Definição do Schema

Campo Tipo Descrição
integration_id string ID de integração
name string Nome
code string Código
description string Descrição
width numeric Tamanho em metros
prices Array Preços
colors Array Cores
compositions Array Composições
supplier_integration_ids Array IDs dos fornecedores

Fornecedores

Criar ou atualizar fornecedores

PUT https://connect.colecao.moda/suppliers

$ curl -X "PUT" "https://connect.colecao.moda/suppliers" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "suppliers": [
    {
      "address": "R. Des. Vítor Lima",
      "phone": "+554811112222",
      "postal_code": "88040-401",
      "code": "XXX",
      "business_name": "C.M Sistemas LTDA",
      "document": "24897729000170",
      "address_number": "260/113",
      "integration_id": "cc448a75-79f6-43c8-a003-980dbcdb2749",
      "neighborhood": "Trindade",
      "email": "[email protected]",
      "contact_person": "Renan",
      "description": "Coleção.Moda"
    }
  ]
}'
connectClient.upsertSuppliers([{
  integration_id: "cc448a75-79f6-43c8-a003-980dbcdb2749",
  business_name: "C.M Sistemas LTDA",
  code: "XXX",
  description: "Coleção.Moda",
  document: "24897729000170",
  address: "R. Des. Vítor Lima",
  address_number: "260/113",
  neighborhood: "Trindade",
  postal_code: "88040-401",
  phone: "+554811112222",
  contact_person: "Renan",
  email: "[email protected]"
}])

Resposta

{}

Essa operação permite criar ou atualizar uma lista de fornecedores.

Requisição HTTP

PUT https://connect.colecao.moda/suppliers

Definição do Schema

Campo Tipo Descrição
integration_id string ID de integração
business_name string Nome da empresa
code string Código
description string Descrição
document string CNPJ
address string Endereço
address_number string Número do Endereço
postal_code string CEP
neighborhood string Bairro
phone string Telefone
contact_person string Nome do contato
email string Email do contato

Campos Customizáveis

Atualizar campos customizáveis

PUT https://connect.colecao.moda/custom_fields

$ curl -X "PUT" "https://connect.colecao.moda/custom_fields" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "custom_fields": [
    {
      "alias": "alias_do_campo_customizado_1",
      "values": [
        {
          "value": "120,12"
        },
        {
          "value": "125,12"
        }
      ]
    },
    {
      "alias": "alias_do_campo_customizado_2",
      "values": [
        {
          "value": "remoteID1"
        }
      ]
    }
  ]
}'
connectClient.updateCustomFields([
  {
    "alias": "alias_do_campo_customizado_1",
    "values": [
      {
        "value": "120,12"
      },
      {
        "value": "125,12"
      }
    ]
  },
  {
    "alias": "alias_do_campo_customizado_2",
    "values": [
      {
        "value": "remoteID1"
      }
    ]
  }
])

Resposta

{}

Essa operação permite atualizar uma lista de campos customizáveis.

Requisição HTTP

PUT https://connect.colecao.moda/custom_fields

Definição do Schema

Campo Tipo Descrição
alias string Nome do campo
values Array Valores do campo

Peças

Atualizar peça

PUT https://connect.colecao.moda/theme_clothings/{id}

$ curl -X "PUT" "https://connect.colecao.moda/theme_clothings/{id}" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "code": "32100"
}'
connectClient.updateThemeClothing({
  id: "1",
  code: "32100"
})

Resposta

{}

Essa operação permite atualizar dados de uma peça préviamente criada.

Requisição HTTP

PUT https://connect.colecao.moda/theme_clothings/{id}

Definição do Schema

Campo Tipo Descrição
id string ID da peça
integration_id string ID de integração
code string Código
custom_fields Array Campos customizados

Atualizar peças

PUT https://connect.colecao.moda/theme_clothings

$ curl -X "PUT" "https://connect.colecao.moda/theme_clothings" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "theme_clothings": [
    {
      "id": "1",
      "custom_fields": [
        {
          "alias": "alias_do_campo_customizado_1",
          "values": [
            {
              "value": "120,12"
            },
            {
              "value": "125,12"
            }
          ]
        },
        {
          "alias": "alias_do_campo_customizado_2",
          "values": [
            {
              "value": "remoteID1"
            }
          ]
        }
      ]
    },
    {
      "id": "2",
      "custom_fields": [
        {
          "alias": "alias_do_campo_customizado_1",
          "values": [
            {
              "value": "133,12"
            },
            {
              "value": "154,12"
            }
          ]
        },
        {
          "alias": "alias_do_campo_customizado_2",
          "values": [
            {
              "value": "remoteID2"
            }
          ]
        }
      ]
    }
  ]
}'
connectClient.updateThemeClothings([
  {
    "id": "1",
    "custom_fields": [
      {
        "alias": "alias_do_campo_customizado_1",
        "values": [
          {
            "value": "120,12"
          },
          {
            "value": "125,12"
          }
        ]
      },
      {
        "alias": "alias_do_campo_customizado_2",
        "values": [
          {
            "value": "remoteID1"
          }
        ]
      }
    ]
  },
  {
    "id": "2",
    "custom_fields": [
      {
        "alias": "alias_do_campo_customizado_1",
        "values": [
          {
            "value": "133,12"
          },
          {
            "value": "154,12"
          }
        ]
      },
      {
        "alias": "alias_do_campo_customizado_2",
        "values": [
          {
            "value": "remoteID2"
          }
        ]
      }
    ]
  }
])

Resposta

{}

Essa operação permite atualizar uma lista de peças.

Requisição HTTP

PUT https://connect.colecao.moda/theme_clothings

Fluxos de execução

Atualizar fluxo de execução

PUT https://connect.colecao.moda/workflow_executions/{uuid}

$ curl -X "PUT" "https://connect.colecao.moda/workflow_executions/{uuid}" \
     -H 'Authorization: 4eC39HqLyjWDarjtT1zdp7dc' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
  "status": "failed",
  "error": "Algo deu errado",
  "error_code": "unknown"
}'
connectClient.updateWorkflowExecution({
  uuid: "e8585890-2cc3-4a1b-9810-7905a97ab503",
  status: "failed",
  error: "Algo deu errado",
  error_code: "unknown"
})

Resposta

{}

Essa operação permite atualizar uma execução de fluxo.

Requisição HTTP

PUT https://connect.colecao.moda/workflow_executions/{uuid}

Definição do Schema

Campo Tipo Descrição
uuid string UUID da execução
status string Status (completed ou failed)
error string Mensagem de erro
error_code string Código do erro (unknown, unprocessable, internal_error)

Eventos

Tipo Descrição
workflow_executed Fluxo executado
collection_created_v2 Coleção criada
collection_started_v2 Coleção iniciada
theme_clothing_completed_v2 Peça completa
theme_clothing_created_v2 Peça criada
theme_clothing_deleted_v2 Peça cancelada
theme_clothing_incompleted_v2 Peça descompleta
theme_clothing_moved_v2 Peça moveu de tema
theme_clothing_stage_completed_v2 Etapa da peça completa
theme_clothing_stage_created_v2 Etapa da peça criada
theme_clothing_undeleted_v2 Peça removida de canceladas
theme_clothing_updated_v2 Peça atualizada
theme_clothing_variant_created_v2 Variante da peça criada
theme_clothing_variant_deleted_v2 Variante da peça deletada
theme_clothing_variant_updated_v2 Variante da peça atualizada

Erros

Código HTTP Significado
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
410 Gone
429 Too Many Requests
500 Internal Server Error
503 Service Unavailable